Jak odeslat více SMS z R
Nejjednodušší způsob, jak odeslat více SMS z R, je použít vestavěné HTTP/Rest SMS API Ozeki SMS Gateway. Při použití tohoto API budete odesílat SMS zprávy vytvořením HTTP POST požadavku na SMS bránu. HTTP POST požadavek bude obsahovat zprávu ve formátu JSON. SMS brána poté odešle tuto SMS na telefon příjemce a vrátí HTTP 200 OK odpověď na váš požadavek.
R kód pro odeslání více SMS zpráv na mobil
Ukázka R kódu pro SMS níže ukazuje, jak můžete odesílat SMS pomocí HTTP REST SMS API Ozeki SMS Gateway s využitím knihovny R Ozeki.Libs.Rest. Tato knihovna je poskytována zdarma a můžete ji používat a upravovat v jakémkoli svém projektu.
SendMultipleSms.Rlibrary(Ozeki.Libs.Rest) configuration <- Ozeki.Libs.Rest::Configuration$new( username = "http_user", password = "qwe123", api_url = "http://127.0.0.1:9509/api" ) msg1 <- Ozeki.Libs.Rest::Message$new() msg1$to_address <- "+36201111111" msg1$text <- "Hello world 1" msg2 <- Ozeki.Libs.Rest::Message$new() msg2$to_address <- "+36202222222" msg2$text <- "Hello world 2" msg3 <- Ozeki.Libs.Rest::Message$new() msg3$to_address <- "+36203333333" msg3$text <- "Hello world 3" api <- Ozeki.Libs.Rest::MessageApi$new(configuration) result <- api$send(list(msg1, msg2, msg3)) print(result$to_string())
Jak použít R příklad pro SMS:
Tento R příklad pro SMS lze použít v jakékoli R aplikaci. Pro jeho použití je nutné stáhnout knihovnu Ozeki.Libs.Rest. Po stažení knihovny je třeba přidat odkaz na ni ve vašem R zdrojovém kódu. To vám umožní používat třídy poskytované knihovnou Ozeki.Libs.Rest. Třídu Message můžete použít k vytvoření SMS. Třídu MessageApi můžete použít k odeslání SMS na SMS bránu. SMS brána poté přepošle vaši zprávu do mobilní sítě buď přes bezdrátové připojení nebo přes internet.
Stáhnout SendMultipleSms.R
Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: SendMultipleSms.R.zip (407B)
Co obsahuje soubor SendMultipleSms.R.zip?
V SendMultipleSms.R.zip najdete soubor SendMultipleSms.R, který obsahuje ukázkový kód, který vám ukáže, jak odeslat SMS. Tento ukázkový kód je uveden níže.
Jak odeslat SMS z R (Jednoduchý návod)
Pro odeslání SMS z R:
- Nainstalujte HTTP API uživatele
- Povolte Logování komunikačních událostí na záložce Pokročilé
- Nastavte Visual Studio
- Stáhněte a rozbalte soubor SendMultipleSms.R.zip
- Spusťte aplikaci Ozeki SMS Gateway
- Spusťte R kód SendMultipleSms.R pomocí příkazového řádku
- Zkontrolujte logy, zda byla SMS odeslána
Instalace Ozeki SMS Gateway a vytvoření HTTP API uživatele
Pro odesílání SMS z R je nejprve nutné nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj R kód v jakémkoli textovém editoru, například Windows poznámkovém bloku. Po instalaci je dalším krokem připojení Ozeki SMS Gateway k mobilní síti. Můžete odeslat testovací SMS z Ozeki GUI pro ověření, že vaše připojení k mobilní síti funguje. Posledním krokem k přípravě prostředí je vytvoření HTTP SMS API uživatelského účtu. Vytvořte uživatele s uživatelským jménem "http_user" a heslem "qwe123", aby příklad fungoval bez úprav.
Po nastavení prostředí můžete spustit svůj R kód.
HTTP API URL pro odesílání SMS z R
Pro odesílání SMS z R musí vaše R aplikace odeslat HTTP požadavek na SMS bránu. API URL je uvedeno níže. Poznámka: IP adresa (127.0.0.1) by měla být nahrazena IP adresou vaší SMS brány. Pokud je Ozeki SMS Gateway nainstalována na stejném počítači, kde běží R SMS aplikace, může to být 127.0.0.1. Pokud je nainstalována na jiném počítači, měla by to být IP adresa tohoto počítače.
http://127.0.0.1:9509/api?action=rest
HTTP autentizace pro odesílání SMS z R
Pro ověření R SMS klienta je nutné odeslat uživatelské jméno a heslo v base64 kódovaném řetězci na server v HTTP požadavku. Použitý formát je: base64(username+":"+password). V R můžete použít následující kód pro toto kódování:
username_password <- paste(username, ":", password, sep="") username_password_encoded <- base64enc::base64encode(charToRaw(username_password)) return (paste("Basic", username_password_encoded, sep=" "))
Například pokud zakódujete uživatelské jméno 'http_user' a heslo 'qwe123', získáte následující base64 kódovaný řetězec: aHR0cF91c2VyOnF3ZTEyMw==. Pro odeslání
HTTP hlavička požadavku pro odesílání SMS z R
Pro odeslání SMS zpráv je nutné do HTTP požadavku zahrnout následující řádky jako hlavičky. Poznámka: zahrnujeme hlavičku Content-Type a Authorization.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP požadavek pro odeslání SMS z R
Pro odeslání SMS bude vaše aplikace v R odesílat HTTP požadavek podobný tomu níže. Všimněte si, že tento požadavek obsahuje část HTTP hlavičky a část HTTP těla. HTTP tělo je řetězec dat zakódovaný v JSON. Obsahuje číslo příjemce a texty zpráv, které jsme odeslali.
POST /api?action=sendmsg HTTP/1.1 Content-Length: 962 Content-Type: application/json Accept: application/json Accept-Encoding: deflate, gzip Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 127.0.0.1:9509 User-Agent: libcurl/7.64.1 r-curl/4.3.2 httr/1.4.2 { "messages": [ { "message_id": "fcb65595-06bd-41fe-84e5-f3f8912ff0a1", "to_address": "+36201111111", "text": "Hello world 1", "create_date": "2021-07-13T12:46:23", "valid_until": "2021-07-20T12:46:23", "time_to_send": "2021-07-13T12:46:23", "is_submit_report_requested": true, "is_delivery_report_requested": true, "is_view_report_requested": true }, { "message_id": "e14c1980-ca12-4d83-92f3-b25ebf6e1b97", "to_address": "+36202222222", "text":"Hello world 2", "create_date": "2021-07-13T12:46:23", "valid_until": "2021-07-20T12:46:23", "time_to_send": "2021-07-13T12:46:23", "is_submit_report_requested": true, "is_delivery_report_requested": true, "is_view_report_requested": true }, { "message_id": "5f7f0290-172a-446e-a9fe-cf6b22c84fe6", "to_address": "+36203333333", "text": "Hello world 3", "create_date": "2021-07-13T12:46:23", "valid_until": "2021-07-20T12:46:23", "time_to_send": "2021-07-13T12:46:23", "is_submit_report_requested": true, "is_delivery_report_requested": true, "is_view_report_requested": true } ] }
HTTP odpověď přijatá příkladem SMS v R
Jakmile SMS brána obdrží tento požadavek, vygeneruje HTTP odpověď. HTTP odpověď bude obsahovat stavový kód, který indikuje, zda byl požadavek na odeslání SMS úspěšný nebo ne. Vrátí také strukturu zakódovanou v JSON, která vám poskytne užitečné informace o odeslání zpráv.
HTTP/1.1 200 OK User-Agent: OZEKI 10.3.123 (www.myozeki.com) Content-Type: application/json; charset=utf8 Last-Modified: Tue, 13 Jul 2021 14:08:09 GMT Server: 10/10.3.123 Transfer-Encoding: chunked { "http_code": 200, "response_code": "SUCCESS", "response_msg": "Messages queued for delivery.", "data": { "total_count": 3, "success_count": 3, "failed_count": 0, "messages": [ { "message_id": "fcb65595-06bd-41fe-84e5-f3f8912ff0a1", "from_station": "%", "to_address": "+36201111111", "to_station": "%", "text": "Hello world 1", "create_date": "2021-07-13 12:46:23", "valid_until": "2021-07-20 12:46:23", "time_to_send": "2021-07-13 12:46:23", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ], "status": "SUCCESS" }, { "message_id": "e14c1980-ca12-4d83-92f3-b25ebf6e1b97", "from_station": "%", "to_address": "+36202222222", "to_station": "%", "text": "Hello world 2", "create_date": "2021-07-13 12:46:23", "valid_until": "2021-07-20 12:46:23", "time_to_send": "2021-07-13 12:46:23", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ], "status": "SUCCESS" }, { "message_id": "5f7f0290-172a-446e-a9fe-cf6b22c84fe6", "from_station": "%", "to_address": "+36203333333", "to_station": "%", "text": "Hello world 3", "create_date": "2021-07-13 12:46:23", "valid_until": "2021-07-20 12:46:23", "time_to_send": "2021-07-13 12:46:23", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ], "status": "SUCCESS" } ] } }
Jak odeslat SMS z R pomocí SMS API v R (Video návod)
Toto video vám ukáže, jak stáhnout soubor SendMultipleSms.R.zip z této stránky. Pokud se podíváte na video, všimnete si, že obsah souboru SendMultipleSms.R.zip je umístěn na ploše Windows. Uvidíte také, že spouštíme příkazový řádek, abychom odeslali SMS.
Příklad SMS v R: SendMultipleSms.R
Níže uvedený příklad kódu je součástí souboru SendMultipleSms.R.
Jak ověřit, že SMS byla přijata HTTP uživatelem
Po odeslání SMS je dobré zkontrolovat vaši SMS bránu, abyste viděli, co přijala. Protokol můžete zkontrolovat otevřením detailů HTTP uživatele v konzoli pro správu Ozeki SMS Gateway. Následující video vám ukáže, na co se zaměřit.
Závěr
Tento článek měl za cíl vysvětlit kroky pro hromadné odesílání SMS v R s pomocí Ozeki SMS Gateway. Toto řešení je ideální pro oslovení více klientů pomocí jediného kódu v R. Doporučuje se využít těchto znalostí pro dosažení vysokého výkonu při sdílení informací. Ozeki SMS Gateway umožňuje ukládat SMS zprávy do databáze a nabízí několik možností reportování, které poskytují informace o zasílaných zprávách.
Pokračujte ve čtení na tutoriálové stránce Ozeki, kde najdete více informací o tématech jako mazání SMS v R.
Jediné, co teď zbývá, je stáhnout Ozeki SMS Gateway a začít pracovat!
More information
- R send SMS with the HTTP rest API (code sample)
- R send multiple SMS with the HTTP rest API (code sample)
- R schedule SMS with the HTTP rest API (code sample)
- R receive SMS with the HTTP rest API (code sample)
- R delete SMS with the HTTP rest API (code sample)
- How to download the latest R SMS library from Github