Jak přijímat SMS v Delphi
Nejjednodušší způsob, jak přijímat SMS z Delphi, je použít vestavěné HTTP/Rest SMS API Ozeki SMS Gateway. Když použijete toto API, budete odesílat SMS zprávy odeslání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 příjemci a vrátí HTTP 200 OK odpověď na váš požadavek.
Delphi kód pro přijímání SMS
Níže uvedený Delphi sms kód ukazuje, jak můžete odesílat SMS pomocí http rest sms api Ozeki SMS Gateway s využitím jednotky Ozeki.Libs.Rest v Delphi. Tato jednotka je poskytována zdarma a můžete ji používat a upravovat v jakémkoli z vašich projektů.
ReceiveSms.delphiprogram ReceiveSms; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils, Ozeki.Libs.Rest in 'Ozeki.Libs.Rest.pas'; var configuration : Ozeki.Libs.Rest.Configuration; var api : Ozeki.Libs.Rest.MessageApi; var result : MessageReceiveResult; var message : Ozeki.Libs.Rest.Message; var read : string; begin try configuration := Ozeki.Libs.Rest.Configuration.Create; configuration.Username := 'http_user'; configuration.Password := 'qwe123'; configuration.ApiUrl := 'http://127.0.0.1:9509/api'; api := Ozeki.Libs.Rest.MessageApi.Create(configuration); result := api.DownloadIncoming; Writeln(result.ToString); for message in result.Messages do begin Writeln(message.ToString); end; Readln(read); except on E: Exception do Writeln(E.ClassName, ': ', E.Message); end; end.
Jak použít Delphi sms příklad:
Tento Delphi sms příklad lze použít v jakékoli Delphi aplikaci. Pro použití je nutné přidat jednotku Ozeki.Libs.Rest.pas do vašeho projektu. Po přidání jednotky musíte do hlavičkové části vašeho Delphi zdrojového kódu vložit direktivu uses Ozeki.Libs.Rest in 'Ozeki.Libs.Rest.pas';. To vám umožní používat třídy poskytované jednotkou Ozeki.Libs.Rest. Třídu Message můžete použít 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ď prostřednictvím bezdrátového připojení nebo přes Internet.
Stáhnout ReceiveSms.delphi
Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: ReceiveSms.delphi.zip (11.9Kb)
Co obsahuje soubor ReceiveSms.delphi.zip?
Soubor ReceiveSms.delphi.zip obsahuje jednotku 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 projekt ReceiveSms, který obsahuje ukázkový kód, který vám ukáže, jak odeslat SMS. Tento ukázkový kód je uveden níže.
Jak odeslat SMS z Delphi (Jednoduchý návod)
Pro odeslání SMS z Delphi:
- Nainstalujte HTTP API uživatele
- Povolte Logování komunikačních událostí na kartě Pokročilé
- Nastavte Embarcadero Delphi Studio
- Stáhněte a rozbalte soubor ReceiveSms.delphi.zip
- Otevřete soubor ReceiveSms.dproj v Delphi Studio dvojitým kliknutím
- Spusťte aplikaci Ozeki SMS Gateway
- Spusťte Delphi kód ReceiveSms.dpr v Delphi Studio
- Zkontrolujte logy, zda byla SMS odeslána
Nainstalujte Ozeki SMS Gateway a vytvořte HTTP API uživatele
Abyste mohli odesílat SMS z Delphi, nejprve musíte nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj Delphi kód v 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 a ověřit, ž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živatele. 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 Delphi kód.
HTTP API url pro odesílání SMS z Delphi
Pro odeslání SMS z Delphi musí vaše Delphi odeslat HTTP požadavek na SMS bránu. API url je uvedena 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ěží Delphi sms aplikace, může to být 127.0.0.1. Pokud je nainstalována na jiném počítači, měla by být použita IP adresa toho počítače.
http://127.0.0.1:9509/api?action=rest
HTTP autentizace pro odesílání SMS z Delphi
Pro autentizaci klienta SMS v Delphi je třeba odeslat uživatelské jméno a heslo v řetězci zakódovaném do base64 na server v HTTP požadavku. Použitý formát je: base64(uživatelské_jméno+":"+heslo). V Delphi můžete pro toto kódování použít následující kód:
var usernamePassword := username + ':' + password; var Encoder := TBase64Encoding.Create(); var usernamePasswordEncoded := Encoder.Encode(usernamePassword); result := Format('Basic %s', [usernamePasswordEncoded]);
Například pokud zakódujete uživatelské jméno 'http_user' a heslo 'qwe123', získáte následující řetězec zakódovaný do base64: aHR0cF91c2VyOnF3ZTEyMw==. Pro odeslání
HTTP hlavička požadavku pro odesílání SMS z Delphi
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 požadavek pro odeslání SMS z Delphi
Pro odeslání SMS bude vaše aplikace v Delphi odesílat HTTP požadavek podobný tomuto níže. Všimněte si, že tento požadavek obsahuje pouze část HTTP hlavičky, která obsahuje všechny informace potřebné ke stažení všech zpráv z konkrétní složky.
GET /api?action=receivemsg&folder=inbox HTTP/1.1 Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 127.0.0.1:9509 Accept: application/json User-Agent: Mozilla/3.0 (compatible; Indy Library)
HTTP odpověď přijatá příkladem SMS v Delphi
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. Bude také vracet strukturu zakódovanou v JSONu, která vám poskytne užitečné podrobnosti o odeslání zprávy.
HTTP/1.1 200 OK Transfer-Encoding: chunked Content-Type: application/json; charset=utf8 Last-Modified: Tue, 27 Jul 2021 15:49:18 GMT Server: 10/10.3.123 Microsoft-HTTPAPI/2.0 User-Agent: OZEKI 10.3.123 (myozeki.com) Date: Tue, 27 Jul 2021 14:10:33 GMT { "http_code": 200, "response_code": "SUCCESS", "response_msg": "", "data": { "folder": "inbox", "limit": "1000", "data": [ { "message_id": "be5e98cf-2bcb-d8dc-94ae-aa909504afe7", "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-27 16:06:02", "valid_until": "2021-08-03 16:06:02", "time_to_send": "2021-07-27 16:06:02", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ] }, { "message_id": "466d737f-68d5-f64d-84d8-ac0a3f950543", "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-27 16:06:02", "valid_until": "2021-08-03 16:06:02", "time_to_send": "2021-07-27 16:06:02", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ] }, { "message_id": "36069eca-95c1-bced-8876-ece0dcd74acd", "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-27 16:06:02", "valid_until": "2021-08-03 16:06:02", "time_to_send": "2021-07-27 16:06:02", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ] } ] } }
Jak odeslat SMS z Delphi pomocí Delphi SMS API (Video návod)
Toto video vám ukáže, jak stáhnout soubor ReceiveSms.delphi.zip z této stránky a jak stáhnout jeho obsah v Delphi studiu. Pokud se podíváte na video, všimnete si, že obsah souboru ReceiveSms.delphi.zip je umístěn na plochu Windows. Uvidíte také, že dvakrát klikneme na soubor projektu ReceiveSms.dproj, abychom otevřeli projekt.
Příklad SMS v Delphi: ReceiveSms.dproj
V tomto řešení je pouze jeden projekt: ReceiveSms.dproj a dva soubory: ReceiveSms.dpr a Ozeki.Libs.Rest.pas.
Po odeslání SMS je vhodné zkontrolovat vaši SMS bránu, abyste viděli, co přijala. Protokol můžete zkontrolovat otevřením detailů HTTP uživatele v konzoli pro správu Ozeki SMS Gateway. Následující video vám ukáže, na co se zaměřit.
Závěrečné myšlenky
Podle tohoto návodu jste se naučili, jak použít HTTP SMS API uživatele v Ozeki SMS Gateway pro příjem SMS z Delphi. Tento příklad SMS v Delphi je jednoduchý a snadno nastavitelný, bude kompatibilní s jakýmkoli typem vaší Delphi aplikace. Tato služba může vaši organizaci učinit efektivnější, protože umožňuje rychlé a plynulé doručování důležitých informací.
Možná budete potřebovat Delphi SMS API s dalšími funkcemi, takže zde nekončete. Najděte více příležitostí v článku Jak stáhnout nejnovější Delphi SMS API jednotku z GitHubu.
Stáhněte si Ozeki SMS Gateway a rozviňte svůj byznys již nyní!
More information
- Delphi odeslat SMS pomocí HTTP REST API (ukázka kódu)
- Delphi odeslat více SMS pomocí HTTP REST API (ukázka kódu)
- Delphi naplánovat SMS pomocí HTTP REST API (ukázka kódu)
- Delphi přijmout SMS pomocí HTTP REST API (ukázka kódu)
- Delphi smazat SMS pomocí HTTP REST API (ukázka kódu)
- Jak stáhnout nejnovější Delphi SMS API jednotku z Githubu