Kako primiti SMS u C#
Ovaj članak daje informacije o tome kako primiti SMS u C# pomoću Ozeki C# SMS API-ja. Pruža neke primjere koda koje možete koristiti i opisuje korake koje trebate poduzeti. Za dovršetak koraka potrebno vam je oko 5 minuta. Ukratko, za primanje SMS-a s C# SMS API-jem morate se prijaviti na događaj OnMessages received i napisati metodu rukovatelja događaja koja će obraditi dolazni SMS poslan putem Ozeki SMS pristupnika. Pročitajte dalje kako biste saznali više o ovom postupku!
Zašto biste htjeli primati SMS u C#?
Za primanje SMS-a u C# postoji više razloga. Možda želite prikupiti podatke s senzora ili mobilnih korisnika, možete kreirati SMS usluge koje šalju odgovor s informacijama ili jednostavno možete zatražiti od korisnika da potvrde da su primili SMS.
Preduvjeti
- Ozeki SMS pristupnik instaliran
- Microsoft Visual Studio
- Primjer primanja SMS-a u C# (OzekiConsole.zip)
Kako primiti SMS u C# (Brzi koraci)
Kako primiti SMS u C#- Preuzmite primjer primanja SMS-a u C#
- Otvori rješenje u Visual Studiju
- Poveži se s Ozeki SMS pristupnikom
- Primi simulirani SMS u C#
- Poveži se s mobilnom mrežom
- Primi SMS u C# koji je poslan s mobitela
- Provjeri zapisnike u SMS pristupniku
- Provjeri izvješće o isporuci na svom mobitelu
Primjer C# koda za primanje tekstualnih poruka
Primjer C# SMS koda u nastavku opisuje najvažnije korake za kreiranje usluge za primanje SMS-a. Ozeki C# SMS API dolazi besplatno. Možete mijenjati API biblioteku, primjere koji dolaze s njom i možete je koristiti u svom projektu te je slobodno redistribuirati ili njezine izvedenice. Sljedeći primjer pokazuje kako se pretplatiti na C# događaj OnMessageReceived i kako rukovati tim događajem. Primjer ispisuje dolaznu SMS poruku na konzolu.
class Program { static OzxClient Client; static void Main(string[] args) { Client = new OzxClient(); Client.AutoReconnect = true; Client.OnMessageReceived += Client_OnMessageReceived; Client.Connect("127.0.0.1",9580,"testuser","testpass"); } static void Client_OnMessageReceived(object sender, OzxArgs<IOzxMessage> e) { Console.WriteLine("Poruka primljena: " + e.Item.ToString()); } }
Parametar e.Item je puna OzxMessage. To znači da u svom C# SMS API događaju imate sve pojedinosti SMS poruka. Te pojedinosti uključuju ID pošiljatelja SMS-a, telefonski broj na koji je SMS poslan, tekst SMS-a i odgovarajuće vremenske oznake.
Jedna od najvećih prednosti korištenja Ozeki C# SMS API-ja je što dolazne SMS poruke dobivate trenutno. Čim stignu u SMS pristupnik, prosljeđuju se vašem C# SMS klijentu putem uspostavljene TCP/IP veze. To znači da nećete doživjeti nikakva kašnjenja.
Ako vaš C# SMS API klijent nije povezan s SMS pristupnikom kada je SMS primljen, SMS se pohranjuje u mapu dolaznih poruka SMS pristupnika. To znači da vaše dolazne poruke neće biti izgubljene čak i ako je SMS softver koji ste napisali koristeći C# SMS API offline. To je zbog činjenice da je Ozeki SMS pristupnik zapravo SMS poslužitelj.
Korak 1 - Preuzmite Ozeki C# SMS biblioteku
Idite na https://ozeki-sms-gateway.com/attachments/5755/OzekiConsole.zip i preuzmite zip datoteku pomoću preglednika. Zip datoteka će završiti u vašoj mapi za preuzimanja (Slika 2). Možete otvoriti preuzimanje izravno u Windows Exploreru. Preuzeti zip paket sadržavat će primjer koda koji možete koristiti za primanje SMS-a u C#.
Korak 2 - Raspakirajte C# SMS biblioteku
Raspakirajte C# SMS biblioteku klikom desnom tipkom miša na datoteku OzekiConsole.zip (Slika 2). To će otvoriti kontekstni izbornik. U kontekstnom izborniku odaberite "Extract All...". To će prikazati "Extract dijaloški prozor", gdje morate kliknuti Extract.
Kliknite gumb "Extract" u dijaloškom prozoru "Extract All" (Slika 3).
Korak 3 - Otvorite projekt u Visual Studiju
Otvori mapu OzekiConsole. Ova mapa će se pojaviti nakon što ste raspakirali OzekiConsol.zip paket. U mapi OzekiConsole dvokliknite na datoteku OzekiConsole.sln. To će prikazati dijaloški okvir "Kako želite otvoriti ovu datoteku?". U ovom dijaloškom okviru odaberite "Visual Studio". Nakon što je Visual Studio odabran, kliknite OK kako biste otvorili C# primjer projekta. (Slika 4)
Otvorite Program.cs klikom na datoteku u exploreru rješenja na lijevoj strani ekrana. Ovo je glavni kod ovog primjera C# projekta. Ovaj kod sadrži primjere kako poslati SMS iz C# i kako primiti SMS u C#. Kod nije predugačak, ima oko 300 redaka. Pokazuje punu funkcionalnost C# SMS API-ja. (Slika 5)
Korak 5 - Postavite točku prekida u kodu za primanje SMS-a
Pronađite rukovalac događaja OnMessageReceived i postavite točku prekida na početni redak procedure. Ova točka prekida će vam dati priliku da uhvatite događaj OnMessageReceived. Događaj OnMessageReceived se pokreće kada vaš C# SMS klijent primi SMS poruku od SMS pristupnika. (Slika 6)
Korak 6 - Kreirajte OZX korisnički račun za SMS API
Kako bi C# SMS API primjer mogao spojiti se na SMS pristupnik, potrebno je kreirati OZX korisnički račun u SMS pristupniku. Da biste to učinili, idite na upravljačku konzolu SMS pristupnika otvaranjem URL-a https://127.0.0.1:9515 i kliknite na link "Dodaj novog korisnika/aplikaciju" na desnoj strani ekrana. (Slika 7)
Link "Dodaj novog korisnika/aplikaciju" će prikazati popis instalabilnih tipova korisnika. Potrebno je pronaći OZX korisnički račun na popisu. OZX korisnički račun koristi visoko optimizirani SMS protokol koji omogućuje vašoj C# SMS aplikaciji komunikaciju s SMS pristupnikom preko mreže. Budući da SMS pristupnik i C# SMS klijent komuniciraju preko mreže, možete primiti tekstualnu poruku u svom C# projektu čak i ako projekt radi na drugom računalu. (Slika 8)
Unesite korisničko ime i lozinku. U našem primjeru koristimo testuser kao korisničko ime i testpass kao lozinku. C# SMS klijent će koristiti ove vjerodajnice za povezivanje s SMS pristupnikom. Ako želite više od jedne C# SMS API veze, možete kreirati više OZX korisničkih računa. Svaki korisnički račun će hostirati svoj vlastiti C# SMS API klijent. Da biste odlučili koji C# SMS klijent će primiti dolazni SMS, potrebno je kreirati dolazne rute u Ozeki SMS rutnoj tablici. (Slika 9)
Omogućite opcije logiranja za C# SMS API račun kako biste dobili komunikacijske zapise. Preporučujemo da prvo označite sve potvrdne okvire za logiranje kako biste dobili detaljne informacije o tome što se događa s porukom. Ako primate tekst, vidjet ćete ga u zapisniku prije nego što bude proslijeđen vašem C# SMS klijentu. (Slika 10)
Korak 6 - Dodajte novu rutu za simuliranje dolaznog SMS-a
Kreirajte novu SMS rutu kako biste omogućili administratoru slanje testnih SMS poruka C# SMS API klijentu. Jedna od najboljih stvari u korištenju Ozeki SMS pristupnika je što vam omogućuje upravljanje SMS porukama pomoću rutne tablice. Možete postaviti različite veze s mobilnom mrežom i odlučiti koja SMS poruka ide gdje. U našem primjeru želimo usmjeriti SMS poruke koje dolaze od administratorskog računa na C# SMS API klijent. U stvarnom sustavu nećete usmjeravati SMS poruke od administratorskog računa, umjesto toga ćete usmjeravati SMS poruke primljene na veze s mobilnom mrežom na vaš C# SMS API klijent.
Da biste kreirali novu SMS rutu, kliknite na Dodaj novu rutu u Ozeki SMS pristupniku (Slika 11).
Da biste primili tekst dok pišete svoj C# SMS kod, koristit ćete obrazac za sastavljanje SMS-a u SMS pristupniku i poslati SMS kao administrator. SMS ruta koju ćemo kreirati će usmjeravati SMS poruke koje dolaze od administratora na testuser račun. Testuser račun će proslijediti SMS C# SMS klijentu (Slika 12).
Odaberite testuser kao odredište za vaše dolazne SMS poruke u obrascu s detaljima rutiranja. Ova ruta će slati SMS poruke od administratora na testuser. Testuser će proslijediti primljene SMS poruke C# API klijentu (Slika 13).
Da biste pokrenuli svoj C# SMS projekt, potrebno je kliknuti na gumb Start u alatnoj traci Visual Studija. Nakon što kliknete ovaj gumb, Visual Studio će kompajlirati kod i pokrenuti ga u razvojnom okruženju. Izvođenje programa će se zaustaviti kada algoritam naiđe na točku prekida. Budući da je naš primjer konzolna aplikacija, vidjet ćete crnu konzolnu prozor koja će se pojaviti nakon pokretanja izvođenja. (Slika 14)
Upišite "help" u konzolni prozor. Tekst pomoći će navesti dostupne naredbe u ovom primjeru projekta. Prva naredba koju ćete koristiti je naredba "connect". Upišite "connect 127.0.0.1:9580 testuser testpass" u konzolni prozor kako biste povezali svoj C# SMS kod s SMS pristupnikom. Imajte na umu da 127.0.0.1 znači da SMS pristupnik radi na istom računalu na kojem se izvodi vaš C# SMS kod. 9580 je TCP/IP port koji koristi SMS pristupnik za prihvaćanje C# SMS klijenata (OZX korisnika), a testuser i testpass vjerodajnice su one koje smo definirali prilikom kreiranja OZX korisničkog računa u koraku 6 ovog SMS vodiča. (Slika 15)
Nakon što se povežete s SMS pristupnikom, spremni ste poslati svoj prvi SMS svom C# API klijentu.
Korak 8 - Pošaljite testni SMS
Pošaljite testnu SMS poruku klikom na gumb "New" u alatnoj traci Ozeki u upravljačkoj konzoli SMS pristupnika. Prilikom slanja testnog SMS-a, morat ćete definirati adresu primatelja i tekst poruke. Na kartici "Advanced" također možete definirati ID pošiljatelja, kao što je alfanumerički ID pošiljatelja za vaš SMS. (Slika 16)
Kliknite OK kako biste poslali testni SMS. Vaš SMS pristupnik će vam pružiti događaje vezane uz slanje SMS-a, a bit će vam prikazan ID poruke. Možete primijetiti GUID niz u posljednjem retku Slike 17.
Nakon što je SMS poslan od strane administratora, primljen je od strane OZX korisničkog računa pod nazivom testuser. Taj korisnički račun prosljeđuje SMS C# SMS klijentu preko mreže. C# SMS klijent prima tekst preko TCP/IP veze uspostavljene metodom "connect". Ako ste postavili točku prekida u događaju OnMessageReceived, ovdje će se izvođenje programa zaustaviti.
Korak 9 - Primite SMS u C# konzoli
Pročitajte liniju s primljenom porukom u C# konzoli. Vidjet ćete da je SMS poslao admin@localhost na telefonski broj +361111111. C# SMS API klijent je primio tekst 'Hello c sharp client' (Slika 18). Tekst poruke je predstavljen C# klijentu u obliku C# događaja. Rukovalac događaja OnMessageReceived poziva se kada se ovaj događaj pokrene, a poruka je stavljena u ulazni parametar metode OzMessageReceived.
Sljedeća stvar koju želite učiniti je pogledati zapisnik u SMS pristupniku.
Korak 10 - Pogledajte zapisnike u SMS pristupniku
Otvorite stranicu s detaljima testuser-a klikom na poveznicu testuser u nadzornoj ploči Ozeki SMS pristupnika. To će nas odvesti do zapisnika događaja korisničkog računa testuser. U ovom zapisniku očekujemo vidjeti komunikaciju koja se odvija između C# SMS klijenta i SMS pristupnika. Također očekujemo vidjeti primljenu SMS poruku u zapisniku komunikacije. (Slika 19)
Pronađite liniju "Received." u kartici događaja testuser-a. U ovoj liniji vidjet ćete SMS primljen od strane C# SMS klijenta. Možete vidjeti datum i vrijeme događaja, kao i detalje poruke. Ispod čitljivog zapisa nalazi se zapisnik komunikacije OZX protokola. Ovaj zapisnik omogućuje vam otklanjanje poteškoća u komunikaciji u slučaju bilo kakvih problema. (Slika 20)
Primite tekstualnu poruku s mobilne mreže
U gornjim koracima simulirali smo dolaznu poruku. Administrator je poslao poruku koja je proslijeđena na C# SMS primjer. Sljedeći korak je povezivanje sustava s mobilnom mrežom. Za to imate različite opcije. Možete se spojiti na pružatelja SMS usluga putem interneta koristeći Android SMS pristupnika. (Slika 21)
Da biste gornje rješenje učinili funkcionalnim s Android telefonom, sve što trebate učiniti je stvoriti dolaznu rutu u Ozeki tablici SMS usmjeravanja. Morate stvoriti ovu rutu između veze s mobilnom mrežom i C# SMS API korisnika (testuser). Da biste pronašli najbolju metodu povezivanja s mobilnom mrežom za svoj projekt, pogledajte naš vodič kako povezati svoj SMS pristupnik s mobilnom mrežom. (Slika 22)
Ukratko
Ovo je bio dug i vrlo detaljan popis uputa koji će vam pomoći da započnete s razvojem C# SMS projekta koji može primati SMS poruke. Ako počnete koristiti ovo rješenje, brzo ćete otkriti da je ovo rješenje vrlo dobro ako želite primati SMS poruke brzo putem različitih veza s mobilnom mrežom. Ovo rješenje funkcionira bilo da želite primati SMS putem Android mobilnog telefona ili putem IP SMS veze, kao što je SMPP klijentska veza.
More information
- Kako poslati SMS iz C#
- Primanje SMS-a u C#
- C# SMS API povezivanje za slanje SMS-a
- C# SMS API - prekid veze s SMS pristupnikom
- C# SMS API - održavanje SMS veze aktivnom
- C# SMS API - slanje tekstualne poruke
- C# SMS API - SMS prihvaćen za isporuku
- C# SMS API - SMS nije prihvaćen za isporuku
- C# SMS API - poslano
- C# SMS API - slanje nije uspjelo
- C# SMS API - uspješno izvješće o isporuci
- C# SMS API - izvješće o neuspjeloj isporuci
- C# SMS API - alfanumerički ID pošiljatelja
- C# SMS API kako koristiti kratki broj kao ID pošiljatelja
- C# SMS API klasa tekstualne poruke