Jak přijímat SMS z R

Nejjednodušší způsob, jak přijímat SMS z R, je použít vestavěné HTTP/Rest SMS API Ozeki SMS Gateway. Když použijete toto API, budete přijímat SMS zprávy pomocí HTTP Get požadavku na SMS bránu. HTTP Get požadavek bude obsahovat složku. SMS brána odešle SMS zprávy klientovi a vrátí HTTP 200 OK odpověď na váš požadavek.

jak přijímat sms z r
Obrázek 1 - Jak přijímat SMS z R

R kód pro přijímání SMS do mobilu

Ukázka R SMS kódu níže ukazuje, jak můžete přijímat 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 z vašich projektů.

ReceiveSms.R
library(Ozeki.Libs.Rest)


configuration <- Ozeki.Libs.Rest::Configuration$new(
  username = "http_user",
  password = "qwe123",
  api_url = "http://127.0.0.1:9509/api"
)

api <- Ozeki.Libs.Rest::MessageApi$new(configuration)

result <- api$download_incoming()

print(result$to_string())

for (message in result$messages) {
  print(message$to_string())
}
	

Kód 1 - ReceiveSms.R

Jak použít R SMS příklad:

Tento R SMS příklad 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. Můžete použít třídu Message k vytvoření SMS. Třídu MessageApi můžete použít k přijetí SMS na SMS bránu. SMS brána přepošle vaši zprávu do mobilní sítě buď prostřednictvím bezdrátového připojení nebo přes internet.

Stáhnout ReceiveSms.R

Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: ReceiveSms.R.zip (391B)

Co je v souboru ReceiveSms.R.zip?

V ReceiveSms.R.zip najdete soubor ReceiveSms.R, který obsahuje ukázkový kód, který vám ukáže, jak přijímat SMS. Tento ukázkový kód je uveden níže.

Obrázek 2 - Co je uvnitř ReceiveSms.R.zip

Jak přijímat SMS z R (Jednoduchý návod)

Pro odesílání SMS z R:

  1. Nainstalujte HTTP API uživatele
  2. Povolte Logování komunikačních událostí na záložce Pokročilé
  3. Nastavte Visual Studio
  4. Stáhněte a rozbalte soubor ReceiveSms.R.zip
  5. Spusťte aplikaci Ozeki SMS Gateway
  6. Spusťte R kód ReceiveSms.R pomocí příkazového řádku
  7. Zkontrolujte logy, zda byla SMS odeslána

Instalace Ozeki SMS Gateway a vytvoření HTTP API uživatele

Abyste mohli přijímat SMS z R, musíte nejprve 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 v poznámkovém bloku Windows. Po instalaci je dalším krokem připojení Ozeki SMS Gateway k mobilní síti. Můžete přijmout testovací SMS z Ozeki GUI a ověřit, zda vaše připojení k mobilní síti funguje. Posledním krokem k přípravě vašeho prostředí je vytvoření HTTP SMS API uživatele. 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 přijímá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 být použita IP adresa tohoto počítače.

http://127.0.0.1:9509/api?action=rest
	

HTTP autentizace pro přijímání SMS z R

Pro ověření R SMS klienta musíte 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 přijímání SMS z R

Pro přijetí SMS zpráv musíte 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 příjem SMS z R

Pro odeslání SMS váš aplikace v R odešle HTTP požadavek podobný tomu níže. Všimněte si, že tento požadavek obsahuje část HTTP hlavičky, která obsahuje všechna data potřebná pro příjem zpráv z konkrétní složky.

GET /api?action=receivemsg&folder=inbox HTTP/1.1
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
	

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. Také vrátí strukturu zakódovanou v JSON, která poskytne užitečné detaily o odeslání zprávy.

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 15:29:23 GMT
Server: 10/10.3.123
Transfer-Encoding: chunked

{
	"http_code": 200,
	"response_code": "SUCCESS",
	"response_msg": "",
	"data": {
	  "folder": "inbox",
	  "limit": "1000",
	  "data": [
	    {
	      "message_id": "85a57d61-808a-481b-98d7-6136bf87dce0",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36203333333",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "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"
	        }
	      ]
	    },
	    {
	      "message_id": "76d551d6-1096-4943-ae50-1efc71049b6f",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36201111111",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "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"
	        }
	      ]
	    },
	    {
	      "message_id": "52af9742-f533-4056-a9cf-2fb8d4ef0613",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36202222222",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "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"
	        }
	      ]
	    }
	  ]
	}
}
	

Jak přijímat SMS z R pomocí SMS API v R (Video návod)

Toto video vám ukáže, jak stáhnout soubor ReceiveSms.R.zip z této stránky. Pokud video sledujete, všimnete si, že obsah souboru ReceiveSms.R.zip je umístěn na plochu Windows. Uvidíte také, že spouštíme příkazový řádek, abychom přijali SMS.

Video 1 - Jak přijímat SMS z R pomocí SMS API v R (Video návod)

Příklad SMS v R: ReceiveSms.R

Níže uvedený příklad kódu je součástí souboru ReceiveSms.R.

zdrojový kód v R pro příjem SMS
Obrázek 3 - Soubor ReceiveSms.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.

Video 2 - Jak ověřit, že SMS byla přijata HTTP uživatelem (Video návod)

Závěr

Cílem tohoto průvodce bylo ukázat kroky pro příjem SMS v R pomocí Ozeki SMS Gateway. Toto řešení vám umožňuje přesunout zprávy ze složky Doručené do vašeho programu v R, takže tyto zprávy mohou být shromážděny na určeném místě. Ozeki SMS Gateway lze stáhnout z webových stránek Ozeki a lze ji vyzkoušet zdarma během zkušebního období.

Nezapomeňte pokračovat ve čtení na stránce s návody Ozeki, kde najdete články o podobných tématech, jako je plánování SMS v R.

Jediné, co teď zbývá, je stáhnout Ozeki SMS Gateway a začít pracovat!

More information