Ako prijímať SMS z Perlu

Najjednoduchší spôsob, ako prijímať SMS správy z Perlu, je použiť vstavanú HTTP/Rest SMS API Ozeki SMS Gateway. Keď použijete toto API, budete odosielať SMS správy pomocou 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 odošle túto SMS príjemcovi a vráti HTTP 200 OK odpoveď na vašu požiadavku.

ako prijímať sms z perl
Obrázok 1 - Ako prijímať SMS z Perlu

Perl kód na prijímanie SMS z mobilného zariadenia

Ukážka Perl kódu pre SMS nižšie demonštruje, ako môžete prijímať SMS pomocou HTTP REST SMS API Ozeki SMS Gateway s použitím knižnice Perl 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.

ReceiveSms.pl
use Ozeki::Libs::Rest::Configuration;
use Ozeki::Libs::Rest::MessageApi;

my $configuration = new Ozeki::Libs::Rest::Configuration();
$configuration->{ Username } = "http_user";
$configuration->{ Password } = "qwe123";
$configuration->{ ApiUrl } = "http://127.0.0.1:9509/api";

my $api = new Ozeki::Libs::Rest::MessageApi($configuration);

my $result = $api->DownloadIncoming();

print($result->stringify, "\n");

foreach my $message (@{ $result->{ messages } }) {
    print($message->stringify, "\n");
}

Ako použiť Perl SMS príklad:

Tento Perl SMS príklad môže byť použitý v akejkoľvek Perl aplikácii. Na použitie je potrebné pridať knižnicu Ozeki.Libs.Rest do vášho projektu. Po pridaní knižnice musíte vložiť direktívu using Ozeki.Libs.Rest; do hlavičkovej časti vášho Perl zdrojového kódu. 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 prijatie SMS správ do SMS brány. SMS brána prepošle vašu správu do mobilnej siete buď cez bezdrôtové pripojenie alebo cez internet.

Stiahnuť ReceiveSms.pl

Zdrojový kód vysvetlený v tomto článku môže byť stiahnutý, použitý a upravený bezplatne.
Stiahnuť: ReceiveSms.pl.zip (76.0Kb)

Čo obsahuje súbor ReceiveSms.pl.zip?

Súbor ReceiveSms.pl.zip obsahuje knižnicu Ozeki.Libs.Rest, ktorá vám poskytuje všetky potrebné nástroje na odosielanie a prijímanie SMS správ. Nájdete v ňom tiež súbor ReceiveSms.pl, ktorý obsahuje ukážkový kód, ktorý vám ukáže, ako prijímať SMS. Tento ukážkový kód je uvedený nižšie.

Obrázok 2 - Čo je vo vnútri ReceiveSms.pl.zip

Ako prijímať SMS v Perli (Jednoduchý návod)

Na prijímanie SMS v Perli:

  1. Stiahnite si súbor ReceiveSms.pl.zip
  2. Extrahujte .zip súbor z priečinka Stiahnuté
  3. Otvorte súbor ReceiveSms.pl v textovom editore
  4. Spustite Ozeki SMS Gateway
  5. Kliknite na HTTP používateľa v karte Používatelia a aplikácie
  6. Spustite ReceiveSms.pl na prijímanie SMS pomocou príkazového riadku
  7. Skontrolujte Doručenú poštu v Ozeki SMS Gateway
Inštalácia Ozeki SMS Gateway a vytvorenie HTTP API používateľa

Na to, aby ste mohli odosielať a prijímať SMS z Perlu, musíte najprv nainštalovať Ozeki SMS Gateway. SMS bránu je možné nainštalovať na rovnaký počítač, kde vyvíjate svoj Perl kód v Visual studio. 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 menom "http_user" a heslom "qwe123", aby príklad fungoval bez úprav.

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

HTTP API URL na prijímanie SMS z Perlu

Na odosielanie SMS z Perlu musí váš Perl 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ží Perl 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 prijímanie SMS z Perlu

Na autentifikáciu Perl SMS klienta musíte odoslať používateľské meno a heslo v base64 kódovanom reťazci na server v HTTP požiadavke. Používaný formát je: base64(používateľské meno+":"+heslo). V Perli môžete použiť nasledujúci kód na toto kódovanie:

my ($self, $Username, $Password) = @_;
my $Username_Password = "${Username}:${Password}";
my $Username_Password_encoded = encode_base64($Username_Password);
return "Basic ${Username_Password_encoded}";
	

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

HTTP požiadavka na prijatie SMS pomocou Perl

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

GET /api?action=receivemsg&folder=inbox HTTP/1.1
Connection: TE, close
Content-Type: application/json
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 192.168.0.14:9509
Te: deflate,gzip;q=0.3
User-Agent: libwww-perl/6.43
	
HTTP hlavička požiadavky na prijatie SMS z C#

Na odoslanie SMS správ musíte do HTTP požiadavky zahrnúť nasledujúce riadky ako hlavičky. Všimnite si, že zaraďujeme hlavičku typu obsahu a autorizačnú hlavičku.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
	
HTTP odpoveď prijatá Perl príkladom SMS

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. Taktiež vráti štruktúru zakódovanú v JSON, ktorá vám 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: Fri, 02 Jul 2021 16:00:35 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": "a860555d-db45-11eb-82d5-c00c4d4e2ea7",
	      "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-02 14:56:18",
	      "valid_until": "2021-07-09 14:56:18",
	      "time_to_send": "2021-07-02 14:56:18",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    },
	    {
	      "message_id": "a8607b04-db45-11eb-818e-c00c4d4e2ea7",
	      "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-02 14:56:18",
	      "valid_until": "2021-07-09 14:56:18",
	      "time_to_send": "2021-07-02 14:56:18",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    },
	    {
	      "message_id": "a8609539-db45-11eb-80db-c00c4d4e2ea7",
	      "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-02 14:56:18",
	      "valid_until": "2021-07-09 14:56:18",
	      "time_to_send": "2021-07-02 14:56:18",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    }
	  ]
	}
}
Ako prijímať SMS pomocou Perl pomocou Perl SMS API (Video tutoriál)

Tieto videá vám ukážu, ako nainštalovať modul Ozeki::Libs::Rest a ako použiť príkladový program ReceiveSms.pl. Video vám ukáže, ako si môžete stiahnuť priečinok projektu ReceiveSMS.pl, ako nastaviť systém, ktorý môžete začať používať. Video je dlhé len 1:30, ale obsahuje všetky kroky, ktoré musíte urobiť. Tutoriál je jasný a ľahko sa sleduje, takže nebudete mať problém s kopírovaním procesu.

Video 1 - Ako stiahnuť a nastaviť príkladové riešenie (Video tutoriál)

Perl príklad SMS: ReceiveSms.pl

Na obrázku 3 môžete vidieť zdrojový kód ReceiveSMS.pl. Tento kód stiahne všetky prichádzajúce správy zo servera a vypíše ich na obrazovku. Musíte poskytnúť prihlasovacie údaje servera v premenných 'Username' a 'Password'. Ak ste oboznámení s programovacím jazykom Perl, môžete kód upraviť tak, aby dokonale vyhovoval vašim potrebám.

Obrázok 3 - ReceiveSms.pl

Ako prijímať SMS pomocou Perl kódu (Video tutoriál)

V tomto videu uvidíte kód v akcii. Ukážeme vám, ako spustiť kód a skontrolovať jeho výsledky. Začne s otvoreným terminálom a otvoreným kódom a prevedie vás k čítaniu prijatých správ. Video je dlhé len 1 minútu a je ľahko sledovateľné. Nebudete mať problém s nasledovaním krokov.

Video 2 - Ako prijímať SMS pomocou vyššie uvedeného Perl kódu (Video tutoriál)

Aby sme to zhrnuli

Tento článok vysvetľuje, ako prijímať SMS správy z Perlu pomocou vstavaného HTTP REST SMS API Ozeki SMS Gateway. Ak ste postupovali podľa tutoriálu pozorne, teraz môžete vytvoriť HTTP používateľa v Ozeki SMS Gateway a použiť poskytnuté úložisko na prijímanie SMS správ s Perl SMS API. Táto knižnica je vám poskytovaná zadarmo a môžete ju používať a upravovať v akomkoľvek z vašich projektov.

Čím viac vedomostí máte, tým efektívnejší môžete byť, takže pokračujte v čítaní. Pozrite si článok Ako stiahnuť najnovšiu Perl SMS knižnicu z Githubu a naučte sa, ako širšie využívať Perl SMS API.

Stiahnite si Ozeki SMS Gateway hneď teraz a nechajte prácu začať!

More information