Jak poslat SMS z Perlu
Nejjednodušší způsob, jak poslat SMS z Perlu, je použít vestavěné HTTP/Rest SMS API Ozeki SMS Gateway. Když použijete toto API, budete posílat SMS zprávy pomocí HTTP Post požadavku na SMS bránu. HTTP Post požadavek bude obsahovat zprávu formátovanou v json formátu. SMS brána pošle tuto SMS na cílové telefonní číslo a vrátí HTTP 200 OK odpověď na váš požadavek.
Perl kód pro odeslání SMS na mobil
Ukázkový kód Perl SMS níže ukazuje, jak můžete posílat 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 vašem projektu.
SendSms.pluse 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 $msg = new Ozeki::Libs::Rest::Message(); $msg->{ ToAddress } = "+36201111111"; $msg->{ Text } = "Ahoj světe!"; my $api = new Ozeki::Libs::Rest::MessageApi($configuration); my $result = $api->Send($msg); print($result->stringify);
Jak použít příklad Perl SMS:
Tento příklad Perl SMS 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 vložit direktivu using Ozeki.Libs.Rest; do hlavičkové části vašeho Perl zdrojového 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 odeslání SMS na SMS bránu. 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 SendSms.pl
Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: SendSms.pl.zip (76.0Kb)
Co je v souboru SendSms.pl.zip?
Soubor SendSms.pl.zip obsahuje knihovnu Ozeki.Libs.Rest, která vám poskytuje všechny nástroje potřebné k odesílání a přijímání SMS zpráv. V zipu také najdete soubor SendSms.pl, který obsahuje ukázkový kód, který vám ukáže, jak odeslat SMS. Tento ukázkový kód je uveden níže.
Závislosti
Pro použití knihovny Ozeki::Libs::Rest musíte nainstalovat několik modulů:
Ubuntu
$ sudo apt-get install libdatetime-perl $ cpan $ install JSON $ install UUID::Generator::PurePerl $ install UUID::Object
Jak nainstalovat závislosti Perlu v Linuxu (Video návod)
V tomto videu vám ukážeme, jak nainstalovat závislosti Perlu na Linux OS. Video začne otevřením terminálu a skončí s nainstalovanými závislostmi. Video je dlouhé pouze 1:10, ale proces je vysvětlen podrobně. Pokud sledujete celé video, nebudete mít problém kroky zopakovat.
Windows
cpanm DateTime cpanm UUID::Generator::PurePerl cpanm UUID::Object cpanm JSON
Jak nainstalovat závislosti Perlu na Windows (Video návod)
V tomto videu vám ukážeme, jak nainstalovat závislosti Perlu na Windows OS. Video začne otevřením příkazového řádku a skončí s nainstalovanými závislostmi. Video je dlouhé pouze 46 sekund, ale proces je vysvětlen podrobně. Proces je snadný, takže s pomocí tohoto videa nebudete mít problém kroky následovat.
Jak poslat SMS z Perlu (Jednoduchý návod)
Pro odeslání SMS z Perlu:
- Nainstalujte HTTP API uživatele
- Povolte Logování komunikačních událostí na záložce Pokročilé
- Stáhněte a rozbalte soubor SendSms.pl.zip
- Otevřete soubor sendsms.pl v libovolném textovém editoru
- Spusťte aplikaci Ozeki SMS Gateway
- Spusťte Perl kód SendSms.pl v příkazovém řádku
- Zkontrolujte logy, zda byla SMS odeslána
Nainstalujte Ozeki SMS Gateway a vytvořte uživatele HTTP API
Abyste mohli odesílat SMS z Perlu, nejprve musíte nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj Perl kód v programu Windows Poznámkový blok nebo Visual Studio Code. Po instalaci je dalším krokem připojení Ozeki SMS Gateway k mobilní síti. Můžete vytvoření uživatele HTTP SMS API. 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.
URL HTTP API pro odesílá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. Všimněte si, že 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 toho počítače.
http://127.0.0.1:9509/api?action=rest
HTTP autentizace pro odesílání SMS z Perlu
Pro ověření 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 pro toto kódování použít následující kód:
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í
Hlavička HTTP požadavku pro odesílání SMS z Perlu
Pro odeslání SMS zpráv musíte 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 požadavek pro odesílání SMS z Perlu
Pro odeslání SMS vaše Perl aplikace odešle 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.
POST /api?action=sendmsg HTTP/1.1 Connection: TE, close Content-Length: 341 Content-Type: application/json; charset=utf8 Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 127.0.0.1:9509 Te: deflate,gzip;q=0.3 User-Agent: libwww-perl/6.52 { "messages": [ { "message_id": "fa32293f-db00-11eb-804d-ffacbeab4160", "to_address": "+36201111111", "text": "Hello world!", "create_date": "2021-07-02T06:44:40", "valid_until": "2021-07-09T06:44:40", "time_to_send": "2021-07-02T06:44:40", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [] } ] }
HTTP odpověď přijatá Perl SMS příkladem
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á vám poskytne užitečné informace 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, 29 Jun 2021 11:48:38 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": "fa32293f-db00-11eb-804d-ffacbeab4160", "from_station": "%", "to_address": "+36201111111", "to_station": "%", "text": "Hello world!", "create_date": "2021-07-02 06:44:40", "valid_until": "2021-07-09 06:44:40", "time_to_send": "2021-07-02 06:44:40", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": false, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ], "status": "SUCCESS" } ] } }
Připojte svou SMS bránu k mobilní síti a vytvořte uživatelský účet HTTP API
Předpokládáme, že jste již nainstalovali Ozeki SMS Gateway a připojili jste ho k mobilní síti. Abyste mohli odesílat SMS na mobilní telefon z Perlu, musíte v Ozeki SMS Gateway nastavit uživatelský účet HTTP API. V tomto videu vám vysvětlíme proces vytvoření nového uživatelského účtu HTTP API. Video začne otevřením aplikace Ozeki SMS Gateway a provede vás celým procesem vytvoření uživatelského účtu HTTP API. Během procesu se naučíte, jak nakonfigurovat nového uživatele a jak zapnout možnost logování. Video je dlouhé pouze 30 sekund a velmi podrobně vysvětluje celý proces. Nebudete mít žádný problém pochopit jednotlivé kroky.
Jak odeslat SMS z Perlu pomocí Perl SMS API (Video návod)
Toto video vám ukáže, jak stáhnout soubor SendSms.pl.zip z této stránky a jak otevřít soubor SendSms.pl v poznámkovém bloku. Pokud se podíváte na video, všimnete si, že obsah SendSms.pl zipu je umístěn na ploše Windows. Uvidíte také, že otevíráme soubor SendSms.pl pomocí poznámkového bloku Windows.
Příklad SMS v Perlu: SendSms.pl
Na obrázku 1 můžete vidět zdrojový kód příkladu projektu. Pokud jste obeznámeni s programovacím jazykem Perl, můžete kód upravit podle svých představ. Tento kód odešle SMS na telefonní číslo uložené v proměnné toAddress, s textem uloženým v proměnné Text.
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 podrobností HTTP uživatele z konzoly pro správu Ozeki SMS Gateway. Následující video vám ukáže, na co se zaměřit.
Jak ověřit, že SMS byla odeslána do mobilní sítě
Posledním krokem při ověřování postupu je podívat se na protokoly připojení k mobilní síti. Možná budete muset před odesláním zprávy zapnout protokolování v konfiguraci připojení, abyste viděli protokoly. Pokud je protokolování povoleno, uvidíte telefonní číslo a text odeslané zprávy.
Jak vypadá přijetí SMS na telefonu s Androidem (Video návod)
V tomto videu uvidíte, jak vypadá přijetí SMS zprávy na zařízení s Androidem. Začne to běžnou domovskou stránkou Androidu. Uvidíte vyskočit oznámení a poté otevřenou aplikaci Zprávy s viditelnou SMS. Video je dlouhé pouze 18 sekund, ale zachycuje celý proces.
Závěr
Tento průvodce měl za cíl ukázat, jak odesílat SMS v Perlu s pomocí Ozeki SMS Gateway. Pokud bylo vše pečlivě přečteno, zasílání zpráv vašim zákazníkům v Perlu s Ozeki SMS Gateway by nemělo způsobovat žádné problémy. Je třeba zdůraznit, že Ozeki SMS Gateway umožňuje ukládat SMS zprávy do databáze a nabízí různé možnosti reportování, které poskytují více informací o SMS připojení.
Pokračujte ve čtení na stránce s návody Ozeki, kde najdete více informací o tématech, jako je plánování SMS v Perlu.
Jediné, co teď zbývá, je stáhnout Ozeki SMS Gateway a začít pracovat!
More information
- Perl odeslat SMS pomocí HTTP REST API (ukázka kódu)
- Perl odeslat více SMS pomocí HTTP REST API (ukázka kódu)
- Perl naplánovat SMS pomocí HTTP REST API (ukázka kódu)
- Perl přijmout SMS pomocí HTTP REST API (ukázka kódu)
- Perl smazat SMS pomocí HTTP REST API (ukázka kódu)
- Jak stáhnout nejnovější Perl SMS knihovnu z Githubu