Jak přijímat SMS z Perlu

Nejjednodušší způsob, jak přijímat SMS zprávy z Perlu, je použít vestavěné HTTP/Rest SMS API Ozeki SMS Gateway. Když použijete toto 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 odešle tuto SMS na cílové telefonní číslo a vrátí HTTP 200 OK odpověď na váš požadavek.

jak přijímat sms z perl
Obrázek 1 - Jak přijímat SMS z Perlu

Perl kód pro přijímání SMS z mobilu

Níže uvedený Perl sms kód ukazuje, jak můžete přijímat SMS pomocí HTTP REST SMS API Ozeki SMS Gateway s využitím knihovny Perl Ozeki.Libs.Rest. Tato knihovna je poskytována zdarma a můžete ji používat a upravovat v jakémkoli svém projektu.

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");
}

Jak použít Perl sms příklad:

Tento Perl sms příklad lze použít v jakékoli Perl aplikaci. Pro použití je nutné přidat knihovnu Ozeki.Libs.Rest do vašeho projektu. Poté, co je knihovna přidána, musíte do hlavičky vašeho Perl zdrojového kódu vložit direktivu using Ozeki.Libs.Rest;. 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 přijímání SMS zpráv z SMS brány. SMS brána přepošle vaši zprávu do mobilní sítě buď přes bezdrátové připojení nebo přes internet.

Stáhnout ReceiveSms.pl

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

Co je v souboru ReceiveSms.pl.zip?

Soubor ReceiveSms.pl.zip obsahuje knihovnu Ozeki.Libs.Rest, která vám poskytuje všechny nástroje potřebné pro odesílání a přijímání SMS zpráv. V zipu také najdete soubor ReceiveSms.pl, který obsahuje ukázkový kód, který vám ukáže, jak přijmout SMS. Tento ukázkový kód je uveden níže.

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

Jak přijímat SMS v Perlu (Jednoduchý návod)

Pro přijímání SMS v Perlu:

  1. Stáhněte soubor ReceiveSms.pl.zip
  2. Extrahujte .zip soubor ze složky Stažené
  3. Otevřete soubor ReceiveSms.pl v textovém editoru
  4. Spusťte Ozeki SMS Gateway
  5. Klikněte na HTTP uživatele v záložce Uživatelé a aplikace
  6. Spusťte ReceiveSms.pl pro přijímání SMS pomocí příkazového řádku
  7. Zkontrolujte doručenou poštu v Ozeki SMS Gateway

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

Abyste mohli odesílat a přijímat SMS z Perlu, musíte nejprve nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj Perl kód ve Visual studiu. 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ě vašeho 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 Perl kód.

HTTP API URL pro přijímání SMS z Perlu

Pro odesílání SMS z Perlu musí váš Perl 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ěží Perl 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 přijímání SMS z Perlu

Pro autentizaci Perl 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 Perlu můžete použít následující kód pro toto kódování:

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

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 požadavek pro příjem SMS pomocí Perl

Pro příjem SMS bude vaše Perl aplikace 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 zakódovaný v JSON. Obsahuje číslo příjemce a text zprá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žadavku pro příjem SMS z C#

Pro odeslání SMS zpráv je třeba do HTTP požadavku zahrnout následující řádky jako hlavičky. Všimněte si, že zahrnujeme typ obsahu a autorizační hlavičku.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
	

HTTP odpověď přijatá v příkladu SMS v Perl

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é 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: 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"
	        }
	      ]
	    }
	  ]
	}
}

Jak přijímat SMS pomocí Perl s využitím Perl SMS API (Video návod)

Tato videa vám ukáží, jak nainstalovat modul Ozeki::Libs::Rest a jak použít příkladový program ReceiveSms.pl. Video vám ukáže, jak si můžete stáhnout složku projektu ReceiveSMS.pl, jak nastavit systém, který můžete začít používat. Video je dlouhé pouze 1:30, ale obsahuje všechny kroky, které je třeba provést. Návod je jasný a snadno sledovatelný, takže nebudete mít problém s kopírováním procesu.

Video 1 - Jak stáhnout a nastavit příkladové řešení (Video návod)

Příklad SMS v Perl: ReceiveSms.pl

Na obrázku 3 můžete vidět zdrojový kód ReceiveSMS.pl. Tento kód stáhne všechny příchozí zprávy ze serveru a vypíše je na obrazovku. Je třeba zadat přihlašovací údaje serveru do proměnných 'Username' a 'Password'. Pokud jste obeznámeni s programovacím jazykem Perl, klidně upravte kód tak, aby dokonale vyhovoval vašim potřebám.

Obrázek 3 - ReceiveSms.pl

Jak přijímat SMS pomocí Perl kódu (Video návod)

V tomto videu uvidíte kód v akci. Ukážeme vám, jak spustit kód a zkontrolovat jeho výsledky. Začneme otevřeným terminálem a otevřeným kódem a dovedeme vás ke čtení přijatých zpráv. Video je dlouhé pouze 1 minutu a je snadno sledovatelné. Nebudete mít problém s následováním kroků.

Video 2 - Jak přijímat SMS pomocí Perl kódu výše (Video návod)

Shrnutí

Tento článek vysvětlil, jak přijímat SMS zprávy z Perlu pomocí vestavěného HTTP REST SMS API Ozeki SMS Gateway. Pokud jste pečlivě následovali tutoriál, nyní jste schopni vytvořit HTTP uživatele v Ozeki SMS Gateway a použít poskytnutý repozitář k přijímání SMS zpráv s Perl SMS API. Tato knihovna je vám poskytována zdarma a můžete ji používat a upravovat v jakémkoli z vašich projektů.

Čím více znalostí máte, tím efektivnější můžete být, takže pokračujte ve čtení. Podívejte se na článek Jak stáhnout nejnovější Perl SMS knihovnu z Githubu a naučte se používat Perl SMS API šířeji.

Stáhněte si Ozeki SMS Gateway nyní a nechte práci začít!

More information