SMS fogadása Pythonban
Ez a dokumentum hasznos információkat nyújt arról, hogyan kérheti le az SMS Gateway által fogadott üzeneteket Python alkalmazásával. A Python SMS példa bemutatja, hogyan gyűjti össze az üzeneteket a beérkezett üzenetek mappájából HTTP kérések segítségével, és hogyan teszi azokat további felhasználásra elérhetővé. Az oldalon található egy videó útmutató és egy lépésről lépésre vezető útmutató, amelynek elvégzése legfeljebb öt percet vesz igénybe. Kezdjük is most!
Mi az a Python SMS API?
A Python SMS API lehetővé teszi SMS üzenetek küldését Python szkriptből. Ezzel a Python SMS API-val a Python szkripted HTTP kéréseket küldhet az SMS Gatewaynek, amely továbbítja az SMS üzenetet.
Előfeltételek
SMS fogadása Pythonban
- Nyisd meg a Jegyzettömb alkalmazást
- Másold be a példakódot erről az oldalról
- Mentsd el a fájlt ReceiveSMS.py néven
- Nyisd meg az Ozeki SMS Gatewayt és válaszd ki a HTTP Server kapcsolatot
- Nyisd meg a HTTP Server kapcsolat HTML űrlapját
- Küldj néhány teszt üzenetet
- Nyisd meg a Parancssort
- Írd be a 'python ReceiveSMS.py' parancsot a Parancssorba és nyomj Entert
Az alábbi példa Python SMS forráskód ingyenesen használható a projektekben, és módosítható is, hogy illeszkedjen a saját megoldásodba. A kód HTTP kérést kezdeményez az üzenetek lekéréséhez az SMS Gatewayből. A példa teszteléséhez kövesd az alábbi utasításokat, vagy nézd meg a videó útmutatót, amely világosan bemutatja az összes lépést, amelyet a Python SMS szkript számítógépen történő futtatásához meg kell tenni.
import requests import ssl import xml.etree.ElementTree as ET def main(): username = "john" password = "Xc3ffs" httpUrl = "https://127.0.0.1:9508/" folder = "inbox"; limit = "3"; sendString = (httpUrl + "api?action=receivemessage&username=" + username + "&password=" + password + "&folder=" + folder + "&limit=" + limit + "&afterdownload=delete") print("Sending html request: " + sendString + "\n") requests.packages.urllib3.disable_warnings() response = requests.get(sendString, verify=False) print("Http response received: ") DisplayMessages(response.text) def DisplayMessages(response): root = ET.fromstring(response) if root.findall('data/message/*') == []: print('The inbox is empty') return for child in root.findall('data/message'): sender = child.find('originator').text text = child.find('messagedata').text DisplayMessage(sender, text) def DisplayMessage(sender, text): print(sender + ": " + text) if __name__=="__main__": main()
1. lépés - Jegyzettömb megnyitása
Ennek az útmutatónak az első lépése a Jegyzettömb megnyitása a számítógépeden. Ez az alkalmazás szükséges a Python fájl létrehozásához, amelyet az útmutató végén fogsz futtatni. Tehát, ahogy az 1. ábra is mutatja, egyszerűen kattints a Jegyzettömb alkalmazás ikonjára az asztalon a megnyitáshoz.
2. lépés - A Python kód másolása
A következő lépésben a Python példa szkriptet kell beszerezned erről az oldalról. Ez egy könnyű feladat, mivel csak másolnod kell. Tehát, ehhez lépj a példakódhoz ezen az oldalon, jelöld ki a teljes forráskódot, és ahogyan a 2. ábra is mutatja, nyomd meg a Ctrl+C billentyűkombinációt a billentyűzeteden. Ez a művelet másolja a forráskódot a vágólapodra, és készen áll a szövegfájlba való beillesztésre.
3. lépés - A kód beillesztése szövegfájlba
A következő lépésben a Python forráskódot be kell illesztened az 1. lépésben megnyitott szövegdokumentumba. Ez a művelet a Ctrl+V billentyűkombinációval végezhető el, amely a forráskódot a vágólapról beilleszti a szövegfájlba. Ha helyesen végezted el, a Python kód a szövegfájlban lesz, ahogyan azt a 3. ábra mutatja.
4. lépés - A szöveg mentése Python fájlként
Ezen a ponton van egy szövegfájlod, amely tartalmazza a forráskódot, de még nem megfelelő fájlformátumban van. A Jegyzettömb bármilyen formátumban képes fájlokat menteni, így ezt a problémát meglehetősen könnyen megoldhatod. Tehát válaszd ki a 'Mentés másként' lehetőséget a Jegyzettömb-ben, és mentsd el a fájlt '.py' kiterjesztéssel. Ezt az eljárást a 4. ábra mutatja be.
5. lépés - Parancssor megnyitása
Most a Python szkript készen áll a használatra, de szükséged van egy környezetre, ahol futtathatod a szkriptet. Erre a célra egyszerűen használhatod a Parancssort. A megnyitáshoz navigálj a mappába, ahová mentetted a Python fájlt a Fájlkezelővel, és ahogyan az 5. ábra mutatja, írd be a 'cmd' parancsot a Fájlkezelő címsorába. Ha megnyomod az Entert, a Parancssor új ablakban jelenik meg.
6. lépés - Néhány teszt üzenet küldése
Miután beállítottad a Python fájlt, szükséged lesz néhány üzenetre a beérkezett üzenetek mappájába. A teszt gyors befejezéséhez szimulálhatsz bejövő üzeneteket a HTTP Server kapcsolattal az SMS Gatewayben. Ha még nem állítottad be ezt a kapcsolatot, itt láthatod, hogyan állíthatod be a HTTP Server kapcsolatot. Tehát nyisd meg az SMS Gatewayt, és válaszd ki a HTTP Server kapcsolatot. A kapcsolat menüjében nyisd meg a HTML űrlapot (6. ábra). Itt írhatsz üzeneteket az SMS Gatewaynek úgy, hogy a címzettnek az 'Ozeki' értéket állítod be.
7. lépés - A Python szkript futtatása
Az utolsó dolog, amit meg kell tenned az útmutató befejezéséhez, a Python szkript futtatása a Parancssorban. Ehhez egyszerűen írd be a 'python *fájlnév*.py' parancsot a Parancssorba, ahogyan azt a 7. ábra mutatja, és nyomj Entert. A Python SMS példa futtatása kiírja a Python program által kezdeményezett HTTP kérést. Ezután láthatod az SMS Gatewayből érkező üzeneteket is.
Összefoglalás
Ebből a cikkből megtanultad, hogyan használhatsz egy Python szkriptet a beérkezett üzenetek gyűjtésére. Képes leszel egy olyan rendszert építeni, amely HTTP kéréseket küld az Ozeki SMS Gatewaynek, és visszakapja az összes bejövő üzenetet. Az Ozeki SMS Gateway használata az SMS üzenetek kezeléséhez kényelmes, mivel lehetővé teszi a felhasználó számára az SMS üzenetek adatbázisba történő naplózását, és különféle jelentéskészítési lehetőségeket kínál, hogy több információt kapj az SMS kommunikációdról.
Más programozási nyelvek is használhatók az Ozeki SMS Gateway-vel való kommunikációra. Ha többet szeretnél megtudni az Ozeki SMS Gateway képességeiről, látogass el további oktatóanyagokra, például: Hogyan küldj SMS üzeneteket Ruby használatával.
Mindössze annyit kell tenned, hogy letöltöd az Ozeki SMS Gatewayt, és elkezded építeni a saját megoldásodat most!