Ako poslať SMS z R

Najjednoduchší spôsob, ako poslať SMS z R, je použiť vstavané HTTP/Rest SMS API Ozeki SMS Gateway. Keď použijete toto API, budete posielať SMS správy vydaním HTTP POST požiadavky na SMS bránu. HTTP POST požiadavka bude obsahovať správu formátovanú v json formáte. SMS brána pošle túto SMS na telefón príjemcu a vráti HTTP 200 OK odpoveď na vašu požiadavku.

Čo je R?

R je programovací jazyk a prostredie používané najmä na štatistické výpočty a grafiku.

ako poslať sms z r
Obrázok 1 - Ako poslať SMS z R

R kód na odoslanie SMS na mobil

Ukážka R SMS kódu nižšie demonštruje, ako môžete poslať SMS pomocou HTTP REST SMS API Ozeki SMS Gateway pomocou knižnice R Ozeki.Libs.Rest. Táto knižnica je poskytovaná bezplatne a môžete ju používať a upravovať v akomkoľvek z vašich projektov.

SendSms.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"
)

msg <- Ozeki.Libs.Rest::Message$new()
msg$to_address <- "+36201111111"
msg$text <- "Hello world!"

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

result <- api$send(msg)

print(result$to_string())
	

Kód 1 - SendSms.R

Ako použiť príklad R SMS:

Tento príklad R SMS môže byť použitý v akejkoľvek R aplikácii. Na použitie je potrebné stiahnuť knižnicu Ozeki.Libs.Rest. Po stiahnutí knižnice je potrebné pridať odkaz na ňu vo vašom R zdrojovom kóde. To vám umožní používať triedy poskytované knižnicou Ozeki.Libs.Rest. Môžete použiť triedu Message na vytvorenie SMS. Môžete použiť triedu MessageApi na odoslanie SMS na SMS bránu. SMS brána prepošle vašu správu do mobilnej siete buď prostredníctvom bezdrôtového pripojenia alebo cez internet.

Stiahnuť SendSms.R

Zdrojový kód vysvetlený v tomto článku môže byť stiahnutý a používaný a upravovaný bezplatne.
Stiahnuť: SendSms.R.zip (350B)

Čo je v súbore SendSms.R.zip?

V SendSms.R.zip nájdete súbor SendSms.R, ktorý obsahuje ukážkový kód, ktorý vám ukáže, ako poslať SMS. Tento ukážkový kód je uvedený nižšie.

Obrázok 2 - Čo je vo vnútri SendSms.R.zip

Ako nainštalovať knižnicu Ozeki.Libs.Rest pomocou Windows shell
r
install.packages("devtools")
library(devtools)
install_github('ozekisms/r-send-sms-http-rest-ozeki')
	

Kód 2 - Príkaz na inštaláciu knižnice Ozeki.Libs.Rest

Môžete otestovať, či bola knižnica nainštalovaná, napísaním:

library(Ozeki.Libs.Rest)
	

Ak nevrátila žiadnu chybu, knižnica bola nainštalovaná správne.

Ako nainštalovať knižnicu Ozeki.Libs.Rest

V tomto videu vám ukážeme, ako nainštalovať knižnicu Ozeki.Libs.Rest na neskoršie použitie. Video začne otvorením príkazového riadku a prevedie vás cez všetky nainštalované balíčky. Video je dlhé len 1:29, ale veľmi podrobné. Toto video bude veľkým pomocníkom v procese.

Video 1 - Ako nainštalovať knižnicu Ozeki.Libs.Rest (Video návod)

Ako poslať SMS z R (Jednoduché pokyny)

Na odoslanie SMS z R:

  1. Nainštalujte HTTP API používateľa
  2. Povoľte Log komunikácie na karte Pokročilé
  3. Nastavte Visual Studio
  4. Stiahnite a rozbaľte súbor SendSms.R.zip
  5. Spustite aplikáciu Ozeki SMS Gateway
  6. Spustite R kód SendSms.R pomocou príkazového riadku
  7. Skontrolujte logy, či bola SMS odoslaná
Nainštalujte Ozeki SMS Gateway a vytvorte HTTP API používateľa

Na odoslanie SMS z R musíte najprv nainštalovať Ozeki SMS Gateway. SMS bránu je možné nainštalovať na rovnakom počítači, kde vyvíjate svoj R kód v akomkoľvek textovom editore, ako je napríklad Windows poznámkový blok. Po inštalácii je ďalším krokom pripojenie Ozeki SMS Gateway k mobilnej sieti. Môžete odoslať testovaciu SMS z Ozeki GUI na overenie, že vaše mobilné pripojenie funguje. Posledným krokom na prípravu vášho prostredia je vytvorenie HTTP SMS API používateľského účtu. Vytvorte používateľa s používateľským menom "http_user" a heslom "qwe123", aby príklad fungoval bez úprav.

Po nastavení prostredia môžete spustiť svoj R kód.

HTTP API URL na odoslanie SMS z R

Na odoslanie SMS z R bude vaše R musieť vydať HTTP požiadavku na SMS bránu. API URL je uvedené nižšie. Upozorňujeme, že IP adresa (127.0.0.1) by mala byť nahradená IP adresou vašej SMS brány. Ak je Ozeki SMS Gateway nainštalovaný na rovnakom počítači, kde beží R SMS aplikácia, môže to byť 127.0.0.1. Ak je nainštalovaný na inom počítači, mala by to byť IP adresa toho počítača.

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

HTTP autentifikácia na odosielanie SMS z R

Na autentifikáciu SMS klienta v R je potrebné odoslať používateľské meno a heslo v reťazci zakódovanom do base64 na server v HTTP požiadavke. Používa sa formát: base64(používateľské_meno+":"+heslo). V R môžete na toto kódovanie použiť nasledujúci kód:

používateľské_meno_heslo <- paste(používateľské_meno, ":", heslo, sep="")
používateľské_meno_heslo_zakódované <- base64enc::base64encode(charToRaw(používateľské_meno_heslo))
return (paste("Basic", používateľské_meno_heslo_zakódované, sep=" "))
	

Napríklad, ak zakódujete používateľské meno 'http_user' a heslo 'qwe123', dostanete nasledujúci reťazec zakódovaný do base64: aHR0cF91c2VyOnF3ZTEyMw==. Na odoslanie

HTTP hlavička požiadavky na odoslanie SMS z R

Na odoslanie SMS správ je potrebné zahrnúť nasledujúce riadky ako hlavičky do HTTP požiadavky. Upozorňujeme, že obsahujeme hlavičku typu obsahu a autorizačnú hlavičku.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
	
HTTP požiadavka na odoslanie SMS z R

Na odoslanie SMS vaša aplikácia v R odošle HTTP požiadavku podobnú nižšie uvedenej. Upozorňujeme, že táto požiadavka obsahuje časť HTTP hlavičky a časť tela HTTP. Telo HTTP je reťazec dát zakódovaný do JSON. Obsahuje číslo príjemcu a text správy.

POST /api?action=sendmsg HTTP/1.1
Content-Length: 329
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": "38ad4dfe-3fa3-449c-95c9-b5e9c6ce3b62",
			"to_address": "+36201111111",
			"text": "Hello world!",
			"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 odpoveď prijatá príkladom SMS v R

Keď SMS brána prijme túto požiadavku, vygeneruje HTTP odpoveď. HTTP odpoveď bude obsahovať stavový kód, ktorý indikuje, či bola požiadavka na odoslanie SMS úspešná alebo nie. Tiež vráti štruktúru zakódovanú do JSON, ktorá poskytne užitočné informácie o odoslaní sprá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 13:39:07 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": "38ad4dfe-3fa3-449c-95c9-b5e9c6ce3b62",
	      "from_station": "%",
	      "to_address": "+36201111111",
	      "to_station": "%",
	      "text": "Hello world!",
	      "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"
	    }
	  ]
	}
}
	
Pripojte svoju SMS bránu k mobilnej sieti a vytvorte HTTP API používateľský účet (Video návod)

Predpokladáme, že ste už nainštalovali Ozeki SMS Gateway, a že ste pripojili ju k mobilnej sieti. Aby ste mohli odosielať SMS na mobilný telefón z R, musíte nastaviť používateľský účet HTTP API v Ozeki SMS Gateway. V tomto videu vám vysvetlíme proces inštalácie HTTP API. Video je dlhé len 30 sekúnd a obsahuje všetky informácie, ktoré potrebujete na nastavenie HTTP API. Dozviete sa, ako vytvoriť nového používateľa v Ozeki SMS Gateway a ako ho nakonfigurovať.

Video 2 - Ako nastaviť používateľský účet HTTP API (Video návod)

Ako odoslať SMS z R pomocou SMS API v R (Video návod)

Toto video vám ukáže, ako si stiahnuť súbor SendSms.R.zip z tejto stránky. Ak si video pozriete, všimnete si, že obsah súboru SendSms.R.zip je umiestnený na pracovnej ploche Windows. Tiež uvidíte, že na odoslanie SMS používame príkazový riadok. Video je dlhé len 32 sekúnd a obsahuje všetky kroky, ktoré musíte vykonať. V tomto videu používame Ozeki SMS Gateway, čo je výkonná, no ľahko sa naučiteľná aplikácia brány.

Príklad SMS v R: SendSms.R

Príklad kódu nižšie je súčasťou súboru SendSms.R.

zdrojový kód r na odoslanie sms
Obrázok 3 - Súbor SendSms.R

Ako skontrolovať, že SMS bola prijatá HTTP používateľom

Po odoslaní SMS je dobré skontrolovať svoju SMS bránu, aby ste videli, čo prijala. Log môžete skontrolovať otvorením detailov HTTP používateľa v konzole na správu Ozeki SMS Gateway. Nasledujúce video vám ukáže, čo hľadať.

Video 4 - Ako skontrolovať, že SMS bola prijatá HTTP používateľom (Video návod)

Ako skontrolovať, že SMS bola odoslaná do mobilnej siete

Posledným krokom pri overovaní postupu je pozrieť si logy mobilného sieťového pripojenia. Možno budete musieť zapnúť logovanie v konfigurácii pripojenia pred odoslaním správy, aby ste videli logy. Ak je logovanie povolené, uvidíte telefónne číslo a text správy, ktorú ste odoslali.

Video 5 - Ako skontrolovať, že SMS bola odoslaná do mobilnej siete (Video návod)

Ako prijímať SMS na telefóne s Androidom (Video návod)

V tomto videu budete svedkami procesu prijímania SMS na telefóne s Androidom. Začne sa obyčajnou domovskou obrazovkou Androidu. Uvidíte, ako sa objaví notifikácia SMS. Tiež sa naučíte, ako otvoriť SMS správu z notifikácie. Video je dlhé len 18 sekúnd, ale prezentuje celý proces.

Video 6 - Ako prijímať SMS na telefóne s Androidom (Video návod)

Zhrnutie

Cieľom tohto sprievodcu bolo ukázať proces odosielania SMS v R s pomocou Ozeki SMS Gateway. Tieto znalosti vám dávajú možnosť osloviť zákazníkov pomocou jednoduchého kódu v R a Ozeki SMS Gateway. Dôležité je poznamenať, že Ozeki SMS Gateway funguje v každej krajine a môže odosielať a prijímať SMS cez rôzne mobilné pripojenia, čo znamená, že medzinárodné zasielanie správ je tiež možné s týmto programom.

Uistite sa, že svoje štúdium tu neukončíte, navštívte stránku s návodmi Ozeki, kde nájdete viac informácií o podobných témach, ako je odosielanie viacerých SMS a plánovanie SMS v R.

Ďalšou vecou, ktorú teraz urobiť, je stiahnuť si Ozeki SMS Gateway a začať pracovať!

More information