Hogyan küldjünk SMS-t Go nyelven
A legegyszerűbb módja az SMS küldésének Go nyelven az Ozeki SMS Gateway beépített HTTP/Rest SMS API-jának használata. Ezzel az API-val HTTP POST kérést küldhet az SMS gatewaynek. A HTTP POST kérés egy JSON formátumú üzenetet tartalmaz. Az SMS gateway továbbítja ezt az SMS-t a címzett telefonjára, és egy HTTP 200 OK választ küld vissza a kérésre.
Go kód SMS küldésére mobiltelefonra
Az alábbi Go SMS kódminta bemutatja, hogyan küldhet SMS-t az Ozeki SMS Gateway HTTP REST SMS API-jával a github.com/ozekisms/go_send_sms_http_rest_ozeki csomag segítségével. Ez a csomag ingyenesen használható, és bármely projektjében felhasználhatja vagy módosíthatja.
SendSms.gopackage main import ( "fmt" ozeki "github.com/ozekisms/go_send_sms_http_rest_ozeki" ) func main() { configuration := ozeki.NewConfiguration( "http_user", "qwe123", "http://127.0.0.1:9509/api", ) msg := ozeki.NewMessage() msg.ToAddress = "+36201111111" msg.Text = "Hello world!" api := ozeki.NewMessageApi(configuration) result := api.Send(msg) fmt.Println(result) }
A Go SMS példa használata:
Ez a Go SMS példa bármely Go alkalmazásban használható. A használathoz le kell töltenie a github.com/ozekisms/go_send_sms_http_rest_ozeki csomagot. A csomag letöltése után hivatkoznia kell rá a Go forráskódjában. Ez lehetővé teszi a github.com/ozekisms/go_send_sms_http_rest_ozeki csomag osztályainak használatát. Az Message osztállyal létrehozhatja az SMS-t. Az MessageApi osztállyal elküldheti az SMS-t az SMS gatewaynek. Az SMS gateway továbbítja az üzenetet a mobilhálózatnak vezeték nélküli kapcsolaton vagy az interneten keresztül.
SendSms.go letöltése
A cikkben ismertetett forráskód ingyenesen letölthető, használható és módosítható.
Letöltés: SendSms.go.zip (992B)
Mi található a SendSms.go.zip fájlban?
A SendSms.go.zip-ben található a SendSms.go fájl, amely tartalmazza a példakódot az SMS küldésének bemutatására. Ez a példakód az alábbiakban látható.
A github.com/ozekisms/go_send_sms_http_rest_ozeki csomag telepítése
go get github.com/ozekisms/go_send_sms_http_rest_ozeki
Hogyan küldjünk SMS-t Go nyelven (Egyszerű útmutató)
Az SMS küldése Go nyelven:
- Telepítsen egy HTTP API felhasználót
- Engedélyezze a Kommunikációs események naplózását a Speciális lapon
- Állítsa be a Visual Studio-t
- Töltse le, majd csomagolja ki a SendSms.go.zip fájlt
- Indítsa el az Ozeki SMS Gateway alkalmazást
- Futtassa a SendSend.go Go kódot a parancssorból
- Ellenőrizze a naplókat, hogy az SMS elküldésre került-e
Ozeki SMS Gateway telepítése és HTTP API felhasználó létrehozása
Ahhoz, hogy SMS-t tudjon küldeni Go nyelven, először telepítenie kell az Ozeki SMS Gateway-t. Az SMS gateway telepíthető ugyanarra a számítógépre, ahol a Go kódját fejleszti bármely szövegszerkesztőben, például a Windows Jegyzettömbben. A telepítés után a következő lépés az, hogy csatlakoztassa az Ozeki SMS Gateway-t a mobilhálózathoz. Küldhet egy teszt SMS-t az Ozeki GUI-ból annak ellenőrzésére, hogy a mobilhálózati kapcsolat működik. A környezet előkészítésének utolsó lépése egy HTTP SMS API felhasználói fiók létrehozása. Hozzon 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.
A környezet beállítása után futtathatja a Go kódját.
HTTP API URL az SMS küldéséhez Go nyelven
Az SMS küldéséhez Go nyelven a Go alkalmazásnak HTTP kérést kell küldenie az SMS gatewaynek. Az API URL az alábbiakban látható. Vegye figyelembe, hogy az IP-címet (127.0.0.1) az SMS gateway IP-címére kell cserélni. Ha az Ozeki SMS Gateway ugyanarra a számítógépre van telepítve, ahol a Go SMS alkalmazás fut, ez lehet 127.0.0.1. Ha másik számítógépre van telepítve, annak az IP-címét kell megadni.
http://127.0.0.1:9509/api?action=rest
HTTP hitelesítés az SMS küldéséhez Go nyelven
A Go SMS kliens hitelesítéséhez a felhasználónevet és a jelszót base64 kódolt sztringként kell elküldenie a szervernek egy HTTP kérésben. A használt formátum: base64(felhasználónév+":"+jelszó). Go nyelven a következő kódot használhatja a kódoláshoz:
import b64 "encoding/base64" func (api *MessageApi) createAuthorizationHeader(username string, password string) string { var usernamePassword string = username + ":" + password var usernamePasswordEncoded string = b64.StdEncoding.EncodeToString([]byte(usernamePassword)) return "Basic " + usernamePasswordEncoded }
Például, ha a 'http_user' felhasználónevet és a 'qwe123' jelszót kódolja, a következő base64 kódolt sztringet kapja: aHR0cF91c2VyOnF3ZTEyMw==. Az SMS küldéséhez
HTTP kérés fejléc az SMS küldéséhez Go nyelven
Az SMS üzenetek küldéséhez a következő sorokat kell tartalmaznia a HTTP kérés fejlécében. Vegye figyelembe, hogy egy tartalomtípus és egy Authorization fejléc is szerepel.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP kérés az SMS küldéséhez Go nyelven
Az SMS beküldéséhez a Go alkalmazása egy olyan HTTP kérést küld, amely hasonlít az alábbihoz. Vegye figyelembe, hogy ez a kérés tartalmaz egy HTTP fejléc részt és egy HTTP törzs részt. A HTTP törzs egy JSON kódolt adatsztring. Tartalmazza a címzett számát és az üzenet szövegét.
POST /api?action=sendmsg HTTP/1.1 Content-Length: 434 Content-Type: application/json Accept-Encoding: gzip Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 127.0.0.1:9509 User-Agent: Go-http-client/1.1 { "messages": [ { "message_id": "60ce97a2-dff6-11eb-990e-74d4355e997d", "from_connection": "", "from_address": "", "from_station": "", "to_connection": "", "to_address": "+36201111111", "to_station": "", "text": "Hello world!", "create_date": "2021-07-08T16:11:24", "valid_until": "2021-07-15T16:11:24", "time_to_send": "2021-07-08T16:11:24", "submit_report_requested": true, "view_report_requested": true, "delivery_report_requested": true, "tags": [], "status": "" } ] }
HTTP válasz a Go SMS példa által kapott
Miután az SMS gateway megkapja ezt a kérést, generál egy HTTP választ. A HTTP válasz tartalmaz egy állapotkódot, amely jelzi, hogy az SMS beküldési kérés sikeres volt-e vagy sem. Egy JSON kódolt struktúrát is visszaad, ami hasznos részleteket nyújt az üzenet beküldéséről.
HTTP/1.1 200 OK User-Agent: OZEKI 10.3.123 (www.myozeki.com) Content-Type: application/json; charset=utf8 Last-Modified: Thu, 08 Jul 2021 16:08:52 GMT Server: 10/10.3.123 Transfer-Encoding: chunked { "http_code": 200, "response_code": "SUCCESS", "response_msg": "Messages queued for delivery.", "data": { "total_count": 1, "success_count": 1, "failed_count": 0, "messages": [ { "message_id": "60ce97a2-dff6-11eb-990e-74d4355e997d", "from_station": "%", "to_address": "+36201111111", "to_station": "%", "text": "Hello world!", "create_date": "2021-07-08 16:11:24", "valid_until": "2021-07-15 16:11:24", "time_to_send": "2021-07-08 16:11:24", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": false, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ], "status": "SUCCESS" } ] } }
Csatlakoztassa az SMS gatewayt a mobilhálózathoz és hozzon létre egy HTTP API felhasználói fiókot
Feltételezzük, hogy már telepítette az Ozeki SMS Gateway-t, és csatlakoztatta a mobilhálózathoz. Ahhoz, hogy SMS-t tudjon küldeni mobiltelefonra Go nyelven, be kell állítania egy HTTP API felhasználói fiókot az Ozeki SMS Gateway-ben.
Hogyan küldjön SMS-t Go nyelven a Go SMS API-val (Videó útmutató)
Ez a videó bemutatja, hogyan töltheti le a SendSms.go.zip fájlt erről az oldalról. Ha megnézi a videót, észreveszi, hogy a SendSms.go.zip tartalma a Windows asztalra kerül. Azt is látni fogja, hogy a parancssort használjuk az SMS küldéséhez.
Go SMS példa: SendSms.go
Az alábbi példakód a SendSms.go része.
Hogyan ellenőrizze, hogy az SMS-t elfogadta-e a HTTP felhasználó
Az SMS beküldése után érdemes ellenőrizni az SMS gatewayt, hogy mit kapott. A naplót az Ozeki SMS Gateway kezelőfelületén keresztül tekintheti meg a HTTP felhasználó részleteinek megnyitásával. A következő videó bemutatja, hogy mire kell figyelnie.
Hogyan ellenőrizze, hogy az SMS eljutott-e a mobilhálózatra
A folyamat ellenőrzésének utolsó lépése a mobilhálózati kapcsolat naplóinak megtekintése. Lehet, hogy be kell kapcsolnia a naplózást a kapcsolat beállításaiban, mielőtt elküldi az üzenetet a naplók megtekintéséhez. Ha a naplózás engedélyezve van, látni fogja a telefonszámot és az elküldött üzenet szövegét.
Hogyan fogadjon SMS-t Android telefonon (Videó útmutató)
Ebben a videóban bemutatjuk, hogyan fogadhat SMS üzeneteket Android telefonján. Látni fog egy közönséges Android telefon kezdőképernyőt és egy bejövő SMS értesítést. Azt is megtanulja, hogyan nyithatja meg az SMS-t. A videó mindössze 18 másodperc hosszú, de az egész folyamat látható rajta.
Összegzés
Ennek a cikknek az volt a célja, hogy elmagyarázza az SMS küldését Go nyelven az Ozeki SMS Gateway segítségével. Ezzel a megoldással képes lesz üzeneteket küldeni Go kódokkal, minden szükséges tudást és eszközt a fenti útmutató tartalmaz. Az Ozeki SMS Gateway nagyon jól vezérelhető Go kódokkal, ami bizonyítja, hogy ez a program testreszabható és könnyen használható. Azt is meg kell említeni, hogy az Ozeki SMS Gateway egy Ön által vezérelt környezetben fut, ami azt jelenti, hogy a névjegyzék és az adatok biztonságban vannak.
További hasonló megoldásokról az Ozeki oktatóoldalán olvashat, ahol további információ található olyan témákról, mint SMS ütemezése Go nyelven.
Most már csak annyi a teendő, hogy letölti az Ozeki SMS Gateway-t és elkezd dolgozni!
More information