Jak přijímat SMS z Objective C
Nejjednodušší způsob, jak přijímat SMS z Objective-C, 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 formátovanou ve formátu json. SMS brána odešle tuto SMS na telefon příjemce a vrátí HTTP 200 OK odpověď na váš požadavek.
Objective-C kód pro přijímání SMS na mobil
Níže uvedený vzorový kód Objective-C pro SMS ukazuje, jak můžete přijímat SMS pomocí HTTP REST SMS API Ozeki SMS Gateway s využitím knihovny Ozeki.Libs.Rest. Tato knihovna je poskytována zdarma a můžete ji používat a upravovat v jakémkoli z vašich projektů.
ReceiveSms.m#import <Foundation/Foundation.h> #import "Ozeki.Libs.Rest.h" int main(int argc, const char * argv[]) { Configuration * configuration = [ [ Configuration alloc ] init]; [ configuration setUsername : @"http_user" ]; [ configuration setPassword : @"qwe123" ]; [ configuration setApiUrl : @"http://192.168.0.14:9509/api" ]; MessageApi * api = [ [ MessageApi alloc ] initWithConfiguration : configuration ]; MessageReceiveResult * result = [ api DownloadIncoming ]; NSLog(@"%@", result); for (Message * message in result.messages) { NSLog(@"%@", message); } return 0; }
Jak použít příklad Objective-C pro SMS:
Tento příklad Objective-C pro SMS lze použít v jakékoli základní aplikaci Objective C. Pro použití je nutné přidat hlavičkový soubor Ozeki.Libs.Rest.h a implementační soubor Ozeki.Libs.Rest.m do vašeho projektu. Po přidání odkazu na projekt je třeba vložit direktivu using Ozeki.Libs.Rest; do hlavičkové části vašeho zdrojového kódu Objective C. 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 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.m
Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: ReceiveSms.m.zip (45.2Kb)
Co obsahuje soubor ReceiveSms.m?
Soubor ReceiveSms.m 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 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 přijímat SMS z Objective-C (Rychlé kroky)
Pro přijímání SMS z Objective-C:
- Nainstalujte uživatele HTTP API na počítači s Windows
- Povolte Logování komunikačních událostí na kartě Pokročilé
- Nastavte Xcode
- Stáhněte a rozbalte soubor ReceiveSms.m.zip
- Otevřete soubor ReceiveSms.xcodeproj v Xcode
- Spusťte aplikaci Ozeki SMS Gateway na vašem počítači s Windows
- Spusťte kód Objective C ReceiveSms.m v Xcode
- Zkontrolujte protokoly, zda byla SMS odeslána
Instalace Ozeki SMS Gateway a vytvoření uživatele HTTP API
Abyste mohli odesílat SMS z Objective-C, musíte nejprve nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj kód Objective-C v Visual studiu. Po instalaci je dalším krokem připojení Ozeki SMS Gateway k mobilní síti. Můžete odeslat testovací SMS z grafického rozhraní Ozeki 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í 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 kód Objective-C.
URL HTTP API pro odesílání SMS z Objective-C
Pro odesílání SMS z Objective-C bude váš Objective-C muset 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ěží aplikace Objective-C pro SMS, 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 odesílání SMS z Objective-C
Pro autentizaci SMS klienta v Objective-C je nutné odeslat uživatelské jméno a heslo na server v HTTP požadavku jako řetězec zakódovaný v base64. Použitý formát je: base64(username+":"+password). V Objective-C můžete pro toto kódování použít následující kód:
NSString * username_password = [ NSString stringWithFormat : @"%@:%@", username, password ]; NSData * encode_data = [username_password dataUsingEncoding:NSUTF8StringEncoding]; NSString * username_password_encoded = [encode_data base64EncodedStringWithOptions : 0]; return [ NSString stringWithFormat : @"Basic %@", username_password_encoded ];
Například pokud zakódujete uživatelské jméno 'http_user' a heslo 'qwe123', získáte následující řetězec zakódovaný v base64: aHR0cF91c2VyOnF3ZTEyMw==. Pro odeslání
HTTP hlavička požadavku pro odesílání SMS z Objective-C
Pro odeslání SMS zpráv je nutné do HTTP požadavku zahrnout následující řádky jako hlavičky. Poznámka: zahrnujeme hlavičku Content-Type a Authorization.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP požadavek pro odesílání SMS z Objective-C
Pro odeslání SMS zpráv bude vaše aplikace v Objective-C odesílat HTTP požadavek podobný tomuto níže. Poznámka: tento požadavek obsahuje část HTTP hlavičky a část HTTP těla. HTTP tělo je řetězec dat zakódovaný v JSON. Obsahuje číslo příjemce a text zprávy.
GET /api?action=receivemsg&folder=inbox HTTP/1.1 Connection: keep-alive Accept: application/json Accept-Encoding: gzip, deflate Accept-Language: en-gb Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 192.168.0.14:9509 If-Modified-Since: Fri, 23 Jul 2021 11:01:18 GMT User-Agent: ReceiveSms.m (unknown version) CFNetwork/1220.1 Darwin/20.3.0
HTTP odpověď přijatá příkladem SMS v Objective-C
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á 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, 23 Jul 2021 11:38:29 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": "85583c80-68f8-a743-bdd4-a477dcce24c1", "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-23 12:04:54", "valid_until": "2021-07-30 12:04:54", "time_to_send": "2021-07-23 12:04:54", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ] }, { "message_id": "17f48ae0-ca34-2393-876a-e36446f51df1", "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-23 12:04:54", "valid_until": "2021-07-30 12:04:54", "time_to_send": "2021-07-23 12:04:54", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ] }, { "message_id": "e8fa747e-8b21-08e3-9cf4-f30c2ab9074d", "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-23 12:04:54", "valid_until": "2021-07-30 12:04:54", "time_to_send": "2021-07-23 12:04:54", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ] } ] } }
Jak stáhnout projekt (Video návod)
V tomto videu vám ukážeme, jak můžete stáhnout soubory projektu potřebné pro příjem SMS zpráv v Objective-C. Začínáme na této stránce s návodem a končíme otevřeným zdrojovým kódem. Dozvíte se, kam kliknout pro stažení souborů a co použít při otevírání kódu k úpravám. Video je dlouhé pouze 22 sekund, ale obsahuje všechny informace potřebné pro příjem SMS zpráv v Objective-C.
Příklad kódu níže je součástí projektu ReceiveSms.xcodeproj. V zip souboru je pouze jeden projekt: ReceiveSms.xcodeproj, a tři soubory: ReceiveSms.m, Ozeki.Libs.Rest.h, Ozeki.Libs.Rest.m.
V následujícím videu vám představíme, jak používat kód a co se stane, když jej použijete. Video je dlouhé 55 sekund, ale obsahuje všechny informace, které potřebujete k začátku práce s projektem. Začíná přihlášením do Ozeki SMS Gateway a provede vás až k přijatým zprávám. Naučíte se, jak otevřít a spustit kód a následně zkontrolovat log. Ozeki SMS Gateway nabízí skvělý uživatelský zážitek díky intuitivnímu a snadno naučitelnému grafickému rozhraní.
Závěr
Tento průvodce měl za cíl vysvětlit kroky přijímání SMS v Objective C s pomocí Ozeki SMS gateway. Po přečtení tohoto článku by přenos zpráv z doručené pošty do programu Objective C neměl způsobovat žádné problémy. Tímto můžete zajistit, že SMS zprávy jsou na svém určeném místě. Ozeki SMS Gateway lze stáhnout z našich webových stránek a lze jej vyzkoušet zdarma během zkušebního období.
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 Objective C.
Jediné, co teď zbývá, je stáhnout Ozeki SMS Gateway a začít pracovat!
More information
- Objective-C odeslat SMS pomocí HTTP REST API (ukázka kódu)
- Objective-C odeslat více SMS pomocí HTTP REST API (ukázka kódu)
- Objective-C naplánovat SMS pomocí HTTP REST API (ukázka kódu)
- Objective C přijmout SMS pomocí HTTP REST API (ukázka kódu)
- Objective C smazat SMS pomocí HTTP REST API (ukázka kódu)
- Jak stáhnout nejnovější Objective C SMS knihovnu z Githubu