Kako poslati več SMS sporočil iz Perla

Najenostavnejši način za pošiljanje več SMS sporočil iz Perla je uporaba vgrajenega HTTP/Rest SMS API-ja Ozeki SMS Gateway. Ko uporabljate ta API, boste SMS sporočila pošiljali z izdajo HTTP Post zahteve do SMS prehoda. HTTP Post zahteva bo vsebovala sporočilo v json formatu. SMS prehod bo poslal to SMS na telefonsko številko prejemnika in vrnil HTTP 200 OK odgovor na vašo zahtevo.

kako poslati več SMS sporočil iz Perla
Slika 1 - Kako poslati več SMS sporočil iz Perla

Perl koda za pošiljanje več SMS sporočil na mobilne naprave

Spodnji Perl SMS primer kode prikazuje, kako lahko pošiljate SMS z uporabo http rest SMS API-ja Ozeki SMS Gateway z uporabo knjižnice Perl Ozeki.Libs.Rest. Ta knjižnica vam je na voljo brezplačno in jo lahko uporabljate in spreminjate v katerem koli od vaših projektov.

SendMultipleSms.pl
use Ozeki::Libs::Rest::Configuration;
use Ozeki::Libs::Rest::MessageApi;
use Ozeki::Libs::Rest::Message;

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

my $msg1 = new Ozeki::Libs::Rest::Message();
$msg1->{ ToAddress } = "+36201111111";
$msg1->{ Text } = "Pozdravljen svet 1";

my $msg2 = new Ozeki::Libs::Rest::Message();
$msg2->{ ToAddress } = "+36202222222";
$msg2->{ Text } = "Pozdravljen svet 2";

my $msg3 = new Ozeki::Libs::Rest::Message();
$msg3->{ ToAddress } = "+36203333333";
$msg3->{ Text } = "Pozdravljen svet 3";

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

my $result = $api->Send(( $msg1, $msg2, $msg3 ));

print($result->stringify);

Kako uporabiti Perl SMS primer:

Ta Perl SMS primer lahko uporabite v kateri koli Perl aplikaciji. Za uporabo morate knjižnico Ozeki.Libs.Rest dodati v vaš projekt. Ko je knjižnica dodana, morate v glavni del vaše Perl izvorne kode dodati direktivo using Ozeki.Libs.Rest;. To vam bo omogočilo uporabo razredov, ki jih ponuja knjižnica Ozeki.Libs.Rest. Razred Message lahko uporabite za ustvarjanje SMS sporočila. Razred MessageApi lahko uporabite za pošiljanje SMS sporočil do SMS prehoda. SMS prehod bo vaše sporočilo posredoval v mobilno omrežje prek brezžične povezave ali prek interneta.

Prenesite SendMultipleSms.pl

Izvorna koda, razložena v tem članku, je na voljo za brezplačen prenos in uporabo.
Prenos: SendMultipleSms.pl.zip (76,1Kb)

Kaj je v datoteki SendMultipleSms.pl?

Datoteka SendMultipleSms.pl vsebuje knjižnico Ozeki.Libs.Rest, ki vam ponuja vsa orodja, potrebna za pošiljanje in prejemanje SMS sporočil. V zip datoteki boste našli tudi datoteko SendMultipleSms, ki vsebuje primer kode, ki vam pokaže, kako poslati SMS. Ta primer kode je naveden spodaj.

Slika 2 - Kaj je v SendMultipleSms.pl.zip

Kako poslati več SMS sporočil iz Perla (Hitri koraki)

Za pošiljanje več SMS sporočil iz Perla:

  1. Namestite Strawberry Perl
  2. Prenesite datoteko SendMultipleSms.pl.zip
  3. Razširite .zip datoteko iz mape Prenosi
  4. Odprite datoteko SendSms.pl v Notepad ali Visual Studio Code
  5. Zaženite Ozeki SMS Gateway
  6. Ustvarite HTTP API uporabnika v Ozeki
  7. Zaženite Perl kodo SendMultipleSms.pl v ukazni vrstici
  8. Preverite mapo Poslano v Ozeki SMS Gateway
Namestite Ozeki SMS Gateway in ustvarite HTTP API uporabnika

Za pošiljanje SMS sporočil iz Perla morate najprej namestiti Ozeki SMS Gateway. SMS prehod lahko namestite na isti računalnik, kjer razvijate svojo Perl kodo v Visual Studiu. Po namestitvi je naslednji korak povezovanje Ozeki SMS Gateway z mobilnim omrežjem. Lahko pošljete testno SMS sporočilo iz Ozeki GUI, da preverite, ali vaša mobilna omrežna povezava deluje. Zadnji korak pri pripravi vašega okolja je ustvarjanje HTTP SMS API uporabniškega računa. Ustvarite uporabnika z uporabniškim imenom "http_user" in geslom "qwe123", da primer deluje brez sprememb.

Ko je okolje pripravljeno, lahko zaženete svojo Perl kodo.

HTTP API URL za pošiljanje SMS iz Perla

Za pošiljanje SMS sporočil iz Perla mora vaš Perl izdati HTTP zahtevo do SMS prehoda. API URL je prikazan spodaj. Upoštevajte, da je treba IP naslov (127.0.0.1) zamenjati z IP naslovom vašega SMS prehoda. Če je Ozeki SMS Gateway nameščen na istem računalniku, kjer teče vaša Perl SMS aplikacija, je to lahko 127.0.0.1. Če je nameščen na drugem računalniku, mora biti to IP naslov tega računalnika.

http://127.0.0.1:9509/api?action=rest
HTTP avtentikacija za pošiljanje SMS iz Perla

Za avtentikacijo Perl SMS odjemalca morate uporabniško ime in geslo poslati v base64 kodiranem nizu na strežnik v HTTP zahtevi. Uporabljen format je: base64(uporabniško_ime+":"+geslo). V Perlu lahko za to kodiranje uporabite naslednjo kodo:

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

Na primer, če kodirate uporabniško ime 'http_user' in geslo 'qwe123', boste dobili naslednji base64 kodiran niz: aHR0cF91c2VyOnF3ZTEyMw==. Za pošiljanje

HTTP zahteva glava za pošiljanje SMS iz Perla

Za pošiljanje SMS sporočil morate vključiti naslednje vrstice kot glave v HTTP zahtevo. Upoštevajte, da vključujemo tip vsebine in glavo za avtorizacijo.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP zahteva za pošiljanje SMS iz Perla

Za oddajo SMS bo vaša Perl aplikacija poslala HTTP zahtevo, podobno spodnji. Upoštevajte, da ta zahteva vsebuje del HTTP glave in del HTTP telesa. HTTP telo je niz podatkov, kodiran v JSON. Vsebuje prejemnikovo številko in besedilo sporočila.


HTTP odziv, prejet v Perl SMS primeru

Ko SMS prehod prejme to zahtevo, bo ustvaril HTTP odziv. HTTP odziv bo vseboval statusno kodo, ki označuje, ali je bila zahteva za oddajo SMS uspešna ali ne. Prav tako bo vrnil strukturo, kodirano v JSON, ki vam bo zagotovila koristne podrobnosti o oddaji sporočila.

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": "Messages queued for delivery.",
	"data": {
	  "total_count": 3,
	  "success_count": 3,
	  "failed_count": 0,
	  "messages": [
	    {
	      "message_id": "ab4c1e78-db41-11eb-8298-c00c4d4e2ea7",
	      "from_station": "%",
	      "to_address": "+36201111111",
	      "to_station": "%",
	      "text": "Hello world 1",
	      "create_date": "2021-07-02 14:27:45",
	      "valid_until": "2021-07-09 14:27:45",
	      "time_to_send": "2021-07-02 14:27:45",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": false,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ],
	      "status": "SUCCESS"
	    },
	    {
	      "message_id": "ab4c4523-db41-11eb-838d-c00c4d4e2ea7",
	      "from_station": "%",
	      "to_address": "+36202222222",
	      "to_station": "%",
	      "text": "Hello world 2",
	      "create_date": "2021-07-02 14:27:45",
	      "valid_until": "2021-07-09 14:27:45",
	      "time_to_send": "2021-07-02 14:27:45",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": false,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ],
	      "status": "SUCCESS"
	    },
	    {
	      "message_id": "ab4c59cd-db41-11eb-82c0-c00c4d4e2ea7",
	      "from_station": "%",
	      "to_address": "+36203333333",
	      "to_station": "%",
	      "text": "Hello world 3",
	      "create_date": "2021-07-02 14:27:45",
	      "valid_until": "2021-07-09 14:27:45",
	      "time_to_send": "2021-07-02 14:27:45",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": false,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ],
	      "status": "SUCCESS"
	    }
	  ]
}
Perl SMS primer: SendMultipleSms.pl

V tem videoposnetku boste videli postopek prenosa in nastavitve projekta SendMultipleSMS.pl. Začelo se bo s prenosom projekta in končalo z opravljeno nastavitvijo. Naučili se boste vse korake postopka nastavitve, ki jih potrebujete za delujočo rešitev. Videoposnetek je dolg 1:44, vse korake pa prikazuje zelo podrobno. Po ogledu boste lahko samostojno prenesli in nastavili rešitev.

Video 1 - Kako prenesti in nastaviti zgornjo rešitev (Video vadnica)

Primerna koda

Na sliki 3 lahko vidite primer kode. Ta primer kode bo poslal več SMS sporočil več prejemnikom. Če ste seznanjeni z programskim jezikom Perl, lahko kodo po želji spremenite. Pošlje SMS na vse telefonske številke, shranjene kot spremenljivka 'ToAddress', z besedilom, shranjenim v spremenljivkah Text.

Slika 3 - SendMultipleSms.pl

Kako uporabiti primer projektne datoteke (Video vadnica)

V tem videoposnetku boste videli primer projekta v delu. Pokazali vam bomo, kaj morate storiti, da bo projekt poslal več SMS sporočil z enim samim zagonom. Videoposnetek je dolg le 1:12 in vsebuje vse informacije, ki jih potrebujete za zagon programa. Začel se bo z odprtim projektom in končal z vsemi poslanimi sporočili.

Video 2 - Kako uporabiti datoteko SendMultipleSms.pl (Video vadnica)

Povzetek

Zgornji vodnik je razložil korake za pošiljanje več SMS sporočil v Perl-u z Ozeki SMS prehodom. Če ste skrbno sledili vsakemu koraku, bi morali biti sposobni obvestiti več strank z enim Perl kodom in Ozeki SMS prehodom. S to rešitvijo lahko veliko število strank prejme svoja SMS sporočila hkrati. Pomembno je omeniti, da Ozeki SMS prehod ponuja visoko zmogljivost, kar pomeni, da lahko pošlje do 1000 SMS na sekundo.

Poskrbite, da ne končate branja tukaj, obiščite Ozekijevo stran z vadnicami, kjer najdete več informacij o podobnih temah, kot so načrtovanje SMS v Perl-u.

Edina stvar, ki jo morate storiti zdaj, je prenesti Ozeki SMS prehod in naj se delo začne!

More information