Kako zakazati SMS u Objective C
Najjednostavniji način za slanje zakazanog SMS-a iz Objective-C je korištenje ugrađenog HTTP/Rest SMS API-ja Ozeki SMS Gatewaya. Kada koristite ovaj API, slat ćete SMS poruke slanjem HTTP Post zahtjeva SMS gatewayu. HTTP Post zahtjev će sadržavati poruku formatiranu u json formatu. SMS gateway će poslati ovaj SMS na telefon primatelja i vratit će HTTP 200 OK odgovor na vaš zahtjev.
Objective-C kod za slanje zakazanog sms-a na mobilni telefon
Objective-C sms primjer koda u nastavku pokazuje kako možete poslati SMS koristeći http rest sms api Ozeki SMS Gatewaya s Ozeki.Libs.Rest bibliotekom. Ova biblioteka vam je dostupna besplatno, a možete je koristiti i mijenjati u bilo kojem od vaših projekata.
SendScheduledSms.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 ]; Message * msg = [ [ Message alloc ] init ]; [ msg setToAddress : @"+36201111111" ]; [ msg setText : @"Hello world 1" ]; NSDateFormatter * dateFormat = [ [ NSDateFormatter alloc ] init ]; [ dateFormat setDateFormat : @"yyyy-MM-dd HH:mm:ss" ]; [ msg setTimeToSend: [ dateFormat dateFromString : @"2021-07-23 10:00:00" ] ] ; MessageSendResult * result = [ api SendMessage : msg ]; NSLog(@"%@", result); return 0; }
Kako koristiti Objective-C sms primjer:
Ovaj Objective C sms primjer može se koristiti u bilo kojoj Objective C core aplikaciji. Da biste ga koristili, morate dodati Ozeki.Libs.Rest.h header datoteku i Ozeki.Libs.Rest.m implementacijsku datoteku u svoj projekt. Nakon dodavanja reference na projekt, morate staviti direktivu using Ozeki.Libs.Rest; u zaglavlje vašeg Objective C izvornog koda. To će vam omogućiti korištenje klasa koje pruža Ozeki.Libs.Rest biblioteka. Možete koristiti klasu Message za kreiranje SMS-a. Možete koristiti klasu MessageApi za slanje SMS-a SMS gatewayu. SMS gateway će proslijediti vašu poruku mobilnoj mreži bilo putem bežične veze ili putem interneta.
Preuzmite SendScheduledSms.m
Izvorni kod objašnjen u ovom članku može se besplatno preuzeti, koristiti i mijenjati.
Preuzmi: SendScheduledSms.m.zip (46.2Kb)
Što se nalazi u datoteci SendScheduledSms.m?
Datoteka SendScheduledSms.m sadrži Ozeki.Libs.Rest biblioteku, koja vam daje sve alate potrebne za slanje i primanje SMS poruka. Također ćete pronaći SendScheduledSms projekt u zip datoteci, koji sadrži primjer koda koji pokazuje kako poslati SMS. Ovaj primjer koda je naveden u nastavku.
Kako poslati zakazani SMS iz Objective-C (Brzi koraci)
Za slanje zakazanog SMS-a iz Objective-C:
- Instalirajte HTTP API korisnika na Windows računalu
- Omogućite Log komunikacijske događaje na Advanced kartici
- Postavite Xcode
- Preuzmite i raspakirajte datoteku SendScheduledSms.m.zip
- Otvorite datoteku SendScheduledSms.xcodeproj u Xcodeu
- Pokrenite Ozeki SMS Gateway aplikaciju na svom Windows računalu
- Pokrenite SendScheduledSms.m Objective C kod u Xcodeu
- Provjerite zapisnike da vidite je li SMS poslan
Instalirajte Ozeki SMS Gateway i kreirajte HTTP API korisnika
Da biste mogli slati SMS iz Objective-C, prvo morate instalirati Ozeki SMS Gateway. SMS gateway se može instalirati na istom računalu na kojem razvijate svoj Objective-C kod u Visual studiju. Nakon instalacije, sljedeći korak je povezivanje Ozeki SMS Gatewaya s mobilnom mrežom. Možete poslati testni sms iz Ozeki GUI-ja kako biste potvrdili da vaša mobilna mrežna veza radi. Konačni korak za pripremu vašeg okruženja je kreiranje HTTP sms api korisničkog računa. Kreirajte korisnika s korisničkim imenom "http_user" i lozinkom "qwe123" kako bi primjer radio bez izmjena.
Nakon postavljanja okruženja, možete pokrenuti svoj Objective-C kod.
HTTP API url za slanje sms-a iz Objective-C
Za slanje SMS-a iz Objective-C, vaš Objective-C će morati poslati HTTP zahtjev SMS gatewayu. API url je prikazan u nastavku. Imajte na umu da IP adresa (127.0.0.1) treba biti zamijenjena IP adresom vašeg SMS gatewaya. Ako je Ozeki SMS Gateway instaliran na istom računalu na kojem se pokreće Objective-C sms aplikacija, ovo može biti 127.0.0.1. Ako je instaliran na drugom računalu, treba biti IP adresa tog računala.
http://127.0.0.1:9509/api?action=rest
HTTP autentifikacija za slanje SMS-a iz Objective-C
Za autentifikaciju Objective-C SMS klijenta, potrebno je poslati korisničko ime i lozinku u base64 kodiranom stringu na server u HTTP zahtjevu. Korišteni format je: base64(korisničko_ime+":"+lozinka). U Objective-C možete koristiti sljedeći kod za ovo kodiranje:
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 ];
Na primjer, ako kodirate korisničko ime 'http_user' i lozinku 'qwe123', dobit ćete sljedeći base64 kodirani string: aHR0cF91c2VyOnF3ZTEyMw==. Za slanje
HTTP zaglavlje zahtjeva za slanje SMS-a iz Objective-C
Za slanje SMS poruka, potrebno je uključiti sljedeće retke kao zaglavlja u HTTP zahtjev. Imajte na umu da uključujemo tip sadržaja i zaglavlje Autorizacije.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP zahtjev za slanje SMS-a iz Objective-C
Za slanje SMS poruka, vaša Objective-C aplikacija će poslati HTTP zahtjev sličan donjem primjeru. Imajte na umu da ovaj zahtjev sadrži dio HTTP zaglavlja i dio tijela HTTP-a. Tijelo HTTP-a je JSON kodirani podatkovni string. Sadrži broj primatelja i tekst poruke.
POST /api?action=sendmsg HTTP/1.1 Connection: keep-alive Content-Length: 333 Content-Type: application/json Accept: application/json Accept-Encoding: gzip, deflate Accept-Language: en-gb Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 192.168.0.14:9509 User-Agent: SendScheduledSms.m (unknown version) CFNetwork/1220.1 Darwin/20.3.0 { "messages": [ { "is_view_report_requested": false, "create_date": "2021-07-23T10:16:59", "message_id": "cab9eb77-309b-4aa4-99ba-cdac32388f7d", "time_to_send": "2021-07-23T10:20:00", "valid_until": "2021-07-30T10:16:59", "is_submit_report_requested": false, "to_address": "+36201111111", "text": "Hello world 1", "is_delivery_report_requested": false } ] }
HTTP odgovor primljen od Objective-C SMS primjera
Nakon što SMS gateway primi ovaj zahtjev, generirat će HTTP odgovor. HTTP odgovor će sadržavati statusni kod, kako bi naznačio je li zahtjev za slanje SMS-a uspješan ili ne. Također će vratiti JSON kodiranu strukturu koja vam pruža korisne detalje o slanju poruke.
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 09:58:42 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": "cab9eb77-309b-4aa4-99ba-cdac32388f7d", "from_station": "%", "to_address": "+36201111111", "to_station": "%", "text": "Hello world 1", "create_date": "2021-07-23 10:16:59", "valid_until": "2021-07-30 10:16:59", "time_to_send": "2021-07-23 10:20:00", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ], "status": "SUCCESS" } ] } }
Objective-C SMS primjer: SendScheduledSms.xcodeproj
Kako preuzeti primjer koda (Video tutorijal)
U ovom videu vidjet ćete kako možete preuzeti izvorni kod za planirano slanje SMS-a. Počet će sa stranicom za preuzimanje i odvest će vas do otvaranja projekta. Naučit ćete kako ga preuzeti i koji program koristiti za otvaranje projekta. Video traje samo 28 sekundi, ali je vrlo detaljan tako da nećete imati problema s praćenjem koraka. Ne gubite više vremena. Počnimo slati SMS!
Primjer koda u nastavku dio je projekta SendScheduledSms.xcodeproj. U zip datoteci nalazi se samo jedan projekt: SendScheduledSms.xcodeproj, i tri datoteke: SendScheduledSms.m, Ozeki.Libs.Rest.h, Ozeki.Libs.Rest.m.
Kako koristiti kod (Video tutorijal)
U ovom videu predstavit ćemo vam kako koristiti projekt SendScheduledSMS. Počet će s praznom karticom događaja u Ozeki SMS Gatewayu i odvest će vas do kartice događaja s zapisnikom prve poslane SMS poruke. Naučit ćete kako otvoriti karticu događaja i kako pokrenuti kod za planirano slanje SMS-a u Xcodeu. Ovaj video je izvrstan jer traje 1 minutu, ali sadrži sve informacije koje su vam potrebne.
Sažetak
Ovaj članak objašnjava kako zakazati poruke u Objective C. Ovo je vrlo korisna funkcija ako želite poslati SMS u određeno vrijeme. Ovo rješenje pomaže vama ili vašoj tvrtki da budete prilagođeniji potrošačima jer će poruke biti dostavljene kada klijenti nisu zauzeti. Važno je napomenuti da Ozeki SMS Gateway radi u bilo kojoj zemlji i može slati i primati SMS putem različitih mobilnih veza.
Pobrinite se da čitanje ne završi ovdje, posjetite Ozeki-ovu stranicu s tutorijalima gdje možete pronaći više informacija o temama poput brisanja u Objective C.
Sada jedino što preostaje je preuzeti Ozeki SMS Gateway i početi raditi!
More information
- Objective-C pošalji SMS s HTTP REST API-jem (primjer koda)
- Objective-C pošalji više SMS-ova s HTTP REST API-jem (primjer koda)
- Objective-C zakazani SMS s HTTP REST API-jem (primjer koda)
- Objective C primi SMS s HTTP REST API-jem (primjer koda)
- Objective C izbriši SMS s HTTP REST API-jem (primjer koda)
- Kako preuzeti najnoviju Objective C SMS biblioteku s Githuba