Hogyan kapjunk SMS-t Pythonból
A legegyszerűbb módja az SMS fogadásának Pythonból az Ozeki SMS Gateway beépített HTTP/Rest SMS API-jának használata. Amikor ezt az API-t használod, SMS üzeneteket fogadsz HTTP GET kérések kiadásával az SMS gateway felé. A HTTP Post válasz JSON formátumban formázott üzeneteket fog tartalmazni. Az SMS gateway az SMS üzeneteket a python konzolalkalmazásnak küldi, és egy HTTP 200 OK választ ad vissza a kérésedre.
Python kód SMS fogadásához
Az alábbi Python sms kódminta bemutatja, hogyan fogadhatsz SMS-t az Ozeki SMS Gateway http rest sms API-jával a Python ozekilibsrest könyvtár segítségével. Ez a könyvtár ingyenesen elérhető számodra, és bármilyen projektben felhasználhatod és módosíthatod.
ReceiveSms.py
from ozekilibsrest import Configuration, MessageApi configuration = Configuration( username="http_user", password="qwe123", api_url="http://127.0.0.1:9509/api" ) api = MessageApi(configuration) results = api.download_incoming() print(results) for result in results.messages: print(result)
Hogyan használd a Python sms példát:
Ez a Python sms példa bármilyen Python alkalmazásban használható. A használatához telepítened kell az ozekilibsrest csomagot a pip install ozekilibsrest paranccsal. A csomag telepítése után be kell illesztened a from ozekilibsrest import Configuration, Message, MessageApi utasítást a Python forráskódod fejléc részébe. Ez lehetővé teszi, hogy használd az ozekilibsrest könyvtár által biztosított osztályokat. A Message osztály segítségével létrehozhatod az SMS-t. A MessageApi osztály segítségével elküldheted az SMS-t az SMS gatewaynek. Az SMS gateway továbbítja az üzenetedet a mobilhálózatnak vezeték nélküli kapcsolaton vagy az interneten keresztül.
ReceiveSms.py letöltése
A cikkben ismertetett forráskód ingyenesen letölthető, felhasználható és módosítható.
Letöltés: ReceiveSms.py.zip (352B)
Mi található a ReceiveSms.py mappában?
A ReceiveSms.py mappa tartalmazza a python sms példa szkriptjét, amely bemutatja, hogyan fogadhatsz SMS üzeneteket Python használatával.
Hogyan telepítsük az ozekilibsrest könyvtárat
Az ozekilibsrest könyvtár telepítéséhez meg kell nyitnod a parancssort és a következő parancsot kell használnod. Ez telepíti az ozekilibsrest könyvtárat és a szükséges függőségeket.
pip install ozekilibsrest
Hogyan kapjunk SMS-t Pythonból (Gyors lépések)
SMS fogadása Pythonból:
- Töltsd le és telepítsd a Python-t
- Telepítsd az ozekilibsrest könyvtárat pip vagy codna segítségével
- Töltsd le a ReceiveSms.py.zip fájlt
- Csomagold ki a .zip fájlt a Letöltések mappából
- Nyisd meg a ReceiveSms.py fájlt bármilyen szövegszerkesztőben
- Indítsd el az Ozeki SMS Gateway-t
- Hozz létre egy HTTP API felhasználót az Ozeki-ben
- Futtasd a ReceiveSms.py kódot a parancssorból a teszt SMS üzenetek elküldéséhez
- Ellenőrizd a Küldött mappát az Ozeki SMS Gateway-ben
Ozeki SMS Gateway telepítése és HTTP API felhasználó létrehozása
Ahhoz, hogy SMS-t küldhess Pythonból, először telepítened kell az Ozeki SMS Gateway-t. Az SMS gateway telepíthető ugyanarra a számítógépre, ahol a Python kódodat fejleszted. A telepítés után a következő lépés az Ozeki SMS Gateway csatlakoztatása a mobilhálózathoz. Küldhetsz egy teszt SMS-t az Ozeki GUI-ból annak ellenőrzésére, hogy a mobilhálózati kapcsolatod működik. A környezet előkészítésének utolsó lépése egy HTTP sms api felhasználó létrehozása. Hozz létre egy felhasználót "http_user" felhasználónévvel és "qwe123" jelszóval, hogy a példa módosítás nélkül működjön.
Miután a környezet be van állítva, futtathatod a Python kódodat.
HTTP API url SMS küldéséhez Pythonból
Ahhoz, hogy SMS-t küldhess Pythonból, a Pythonodnak HTTP kérést kell küldenie az SMS gatewaynek. Az API url az alábbiakban látható. Figyelj arra, hogy az IP cím (127.0.0.1) helyére az SMS gateway IP címét kell beírnod. Ha az Ozeki SMS Gateway ugyanarra a számítógépre van telepítve, ahol a Python sms alkalmazás fut, ez lehet 127.0.0.1. Ha másik számítógépre van telepítve, annak IP címét kell megadnod.
http://127.0.0.1:9509/api?action=rest
HTTP hitelesítés SMS küldéséhez Pythonból
A Python sms kliens hitelesítéséhez a felhasználónevet és a jelszót base64 kódolt sztringként kell elküldened a szervernek egy HTTP kérésben. A használt formátum: base64(username+":"+password). Pythonban a következő kódot használhatod a kódoláshoz:
def create_authorization_header(username, password): username_password = f'{ username }:{ password }' return f'Basic { b64encode(username_password.encode()).decode() }'
Például ha a 'http_user' felhasználónevet és a 'qwe123' jelszót kódolod, a következő base64 kódolt sztringet kapod: aHR0cF91c2VyOnF3ZTEyMw==.
HTTP kérés fejléc SMS küldéséhez Pythonból
Az SMS üzenetek küldéséhez a következő sorokat kell belefoglalnod fejlécként az HTTP kérésbe. Figyelj arra, hogy tartalmazunk egy content type és egy Authorization fejlécet.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP kérés SMS küldéséhez Pythonból
Az SMS üzenetek beküldéséhez a Python alkalmazásod egy olyan HTTP kérést küld, mint az alábbi. Figyelj arra, hogy ez a kérés tartalmaz egy HTTP fejléc részt, a fejlécben meghatároztuk a mappát, ahonnan le szeretnénk tölteni az üzeneteket, és a műveletet. Elküldtük a Base64 kódolt jelszót és felhasználónevet is a kérés hitelesítéséhez.
GET /api?action=receivemsg&folder=inbox HTTP/1.1 Host: 127.0.0.1:9509 User-Agent: python-requests/2.26.0 Accept-Encoding: gzip, deflate Accept: */* Connection: keep-alive Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
HTTP válasz, amit a Python sms példa kap
Amint az SMS gateway megkapja ezt a kérést, generál egy HTTP választ. A HTTP válasz tartalmaz egy státuszkódot, hogy jelezze, sikeres volt-e az SMS beküldési kérés vagy sem. Egy JSON kódolt struktúrát is visszaad, amely hasznos részleteket nyújt az üzenet beküldéséről.
HTTP/1.1 200 OK Transfer-Encoding: chunked Content-Type: application/json; charset=utf8 Last-Modified: Fri, 17 Sep 2021 08:36:07 GMT Server: 10/10.3.124 Microsoft-HTTPAPI/2.0 User-Agent: OZEKI 10.3.124 (www.myozeki.com) Access-Control-Allow-Origin: * Date: Fri, 17 Sep 2021 07:08:11 GMT { "http_code": 200, "response_code": "SUCCESS", "response_msg": "", "data": { "folder": "inbox", "limit": "1000", "data": [ { "message_id": "31bc2fe0-c2a6-4ebe-afcd-6bcd9ea341fb", "from_connection": "admin@localhost", "from_address": "", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "http_user", "to_station": "%", "text": "Hello world 1!", "create_date": "2021-09-17 09:07:14", "valid_until": "2021-09-24 09:07:14", "time_to_send": "2021-09-17 09:07:14", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [] }, { "message_id": "b7b8d592-e182-4e96-a375-b4a6aa73e483", "from_connection": "admin@localhost", "from_address": "", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "http_user", "to_station": "%", "text": "Hello world 2!", "create_date": "2021-09-17 09:07:23", "valid_until": "2021-09-24 09:07:23", "time_to_send": "2021-09-17 09:07:23", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [] }, { "message_id": "b0308970-a3c9-45c4-bf97-14a914a66f57", "from_connection": "admin@localhost", "from_address": "", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "http_user", "to_station": "%", "text": "Hello world 3!", "create_date": "2021-09-17 09:07:33", "valid_until": "2021-09-24 09:07:33", "time_to_send": "2021-09-17 09:07:33", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [] } ] } }
Python sms példa: ReceiveSms.py
Hogyan töltsd le a ReceiveSMS.py projektet (Videó útmutató)
A következő videóban megtudhatod, hogyan használhatod a ReceiveSms.py Python projektet. A videó a letöltési oldallal kezdődik, és végigvezet a megnyitott kódszerkesztő panelig. Megtanulod, hogyan töltsd le és nyisd meg a kód fájlt. A videó mindössze 54 másodperc hosszú, de tartalmazza az összes szükséges információt a példa kód fájl sikeres használatához.
Az alábbi példa kód a ReceiveSms.py.zip mappa része.
Hogyan használd a projektet (Videó útmutató)
A következő klipben látni fogod, hogyan indíthatod el a ReceiveSms.py Python kódot. A videó a megnyitott kóddal kezdődik, és végigvezet az események lapjáig a küldött üzenet naplójával. Látni fogod, hogyan indítsd el a kódot és mi történik, ha a kód végrehajtódik. A videó egy kicsit rövidebb mint 1 perc, de tartalmazza az összes szükséges információt a projekt futtatásához.
Összegzés
Ez a cikk bemutatta az SMS fogadásának lépéseit egy kérésben Pythonból.
Ezzel a tudással és a biztosított eszközökkel képesnek kell lenned több ügyfél elérésére
egyetlen kóddal. Az Ozeki SMS Gateway fontos szerepet játszik ebben a folyamatban,
mivel ez a program szervezi az üzenetküldést.
Az Ozeki SMS Gateway nagy minőségben és teljesítménnyel működik, lehetővé téve számodra
akár 1000 SMS küldését másodpercenként.
Folytasd a tanulást az Ozeki oktató oldalain, ahol olyan témákról olvashatsz,
mint az
SMS törlése Pythonban.
Most már csak annyi a dolgod, hogy letöltöd az Ozeki
SMS Gateway-t és elkezdesz dolgozni!
More information