Primanje SMS-a u C#
Sljedeći vodič će pokazati kako možete dobiti poruke primljene vašim SMS Gatewayem pomoću C# aplikacije. Ovaj C# primjer koristi HTTP zahtjeve kako bi zatražio poruke iz vašeg foldera "inbox" u SMS Gatewayu. SMS Gateway prikuplja sve te primljene poruke i šalje ih C# aplikaciji kao odgovor na HTTP zahtjev. Vodič također pokazuje kako možete koristiti HTTP server vezu za simuliranje dolaznih poruka. Za dovršetak ovog vodiča potrebno je ne više od pet minuta, pa krenimo odmah.
Što je C# SMS API?
C# SMS API je izvrstan alat za slanje SMS poruka iz bilo koje vrste C# projekta ili aplikacije iniciranjem HTTP zahtjeva i prosljeđivanjem SMS Gatewayu.
Preduvjeti
- Instalirani Visual Studio 2019 Community Edition
- Instalirani Ozeki 10 SMS Gateway
- Konfigurirana HTTP Server veza
Primanje SMS-a u C#
- Otvorite Visual Studio
- Kreirajte novi Console App projekt
- Kopirajte C# primjer koda s ove stranice
- Zalijepite kod u svoju C# aplikaciju
- Otvorite Ozeki 10 SMS Gateway
- Odaberite HTTP Server vezu
- Pošaljite testne poruke koristeći HTTP Server vezu
- Pokrenite svoju C# aplikaciju kako biste dobili sve dolazne poruke
Primjer C# koda u nastavku može prikupiti sve dolazne poruke koristeći HTTP zahtjeve. Ovaj primjer koda je besplatan za korištenje, možete ga mijenjati i implementirati u svoj vlastiti projekt ili aplikaciju. Ako želite samo testirati rješenje, morate slijediti korak-po-korak upute u nastavku ili pogledati gornji video koji pokazuje kako možete koristiti ovaj primjer C# koda.
using System; using System.Net.Http; using System.Xml; using System.Threading.Tasks; namespace ReceiveSMS { class Program { static async Task Main(string[] args) { var username = "john"; var password = "Xc3ffs"; var httpUrl = "https://127.0.0.1:9508/"; var folder = "inbox"; var limit = "3"; var sendString = $"{httpUrl}api?action=receivemessage&username=" + $"{username}&password={password}&folder={folder}&limit=" + $"{limit}&afterdownload=delete"; Console.WriteLine("Sending request: " + sendString + "\n"); var handler = new HttpClientHandler(); handler.ServerCertificateCustomValidationCallback = (sender, cert, chain, sslPolicyErrors) => { return true; }; using var client = new HttpClient(handler); try { var response = await client.GetStringAsync(sendString); Console.WriteLine("Http response received: "); DisplayMessages(response); } catch (Exception e) { Console.WriteLine(e.Message); } } static void DisplayMessages(string response) { var xmlDoc = new XmlDocument(); xmlDoc.LoadXml(response); var nodes = xmlDoc.SelectNodes("response/data/message"); foreach (XmlNode node in nodes) { try { var sender = node.SelectSingleNode("originator").InnerText; var text = node.SelectSingleNode("messagedata").InnerText; DisplayMessage(sender, text); } catch (System.NullReferenceException e) { Console.WriteLine("The inbox is empty!"); } } } static void DisplayMessage(string sender, string text) { Console.WriteLine($"{sender}: {text}"); } } }
Korak 1 - Otvorite Visual Studio
Prvi korak vodiča je kreiranje C# aplikacije u koju možete smjestiti primjer koda s ove stranice. Najbolji alat za kreiranje C# aplikacije je Visual Studio. Možete ga preuzeti iz odjeljka Preduvjeti ako ga već nemate. Ako je Visual Studio već instaliran na vašem računalu, samo ga trebate otvoriti s radne površine kao što možete vidjeti na Slici 1.
Korak 2 – Izradite novi projekt
Nakon što otvorite Visual Studio, pojavit će se prozor dobrodošlice. Možete otvoriti nedavni projekt ili kreirati potpuno novi iz ovog prozora. Kao što prikazuje Slika 2, sada trebate kreirati novi projekt, tako da samo trebate odabrati tu opciju iz tog prozora.
Korak 3 – Odaberite Console App
Nakon što ste odlučili kreirati novi projekt, sljedeći prozor prikazuje sve dostupne opcije koje možete odabrati ako želite kreirati novu C# aplikaciju. Kako biste pratili ovaj vodič, trebate samo kreirati jednostavnu Console App, tako da, kao što prikazuje Slika 3, samo odaberite tu opciju i kliknite na 'Next'.
Korak 4 – Konfigurirajte svoj projekt
Prije nego što konačno kreirate Console App projekt, trebate napraviti neke konfiguracije na projektu. To su vrlo jednostavne konfiguracije; samo trebate dati naziv svom projektu kao što možete vidjeti na Slici 4. U ovom prozoru možete također odrediti lokaciju projektnih datoteka. Ako ste završili sa svim konfiguracijama, samo kliknite na 'Create' kako biste kreirali Console App projekt.
Korak 5 – Umetnite primjer koda u projekt
Kreirani projekt sadrži jednu C# datoteku, a to je Program.cs. Ovo je datoteka u koju trebate umetnuti primjer koda. Za to, samo se pomaknite gore do primjera koda, označite cijeli kod i pritisnite Ctrl+C na tipkovnici. Ova operacija je kopirala kod u vaš međuspremnik. Nakon toga, idite na datoteku Program.cs, izbrišite kod koji možete pronaći ovdje, i kao na Slici 5, pritisnite Ctrl+V kako biste zalijepili kod u tu datoteku.
Korak 6 – Simulirajte neke dolazne poruke
Sljedeća stvar koju trebate učiniti je čekanje na neke dolazne poruke u vašem SMS Gatewayu. Ovo može potrajati neko vrijeme, tako da možete odabrati opciju simuliranja nekih poruka koristeći HTTP Server vezu. Dakle, kao što prikazuje Slika 6, samo otvorite HTML formu HTTP Server veze. Ova forma pruža mogućnost kreiranja nekih poruka. Samo trebate upisati 'Ozeki' kao primatelja i upisati neki tekst u polje 'MessageData'. Za slanje testne poruke, samo kliknite na 'Submit'.
Korak 7 – Pokrenite primjer C# koda
Posljednji korak koji trebate izvesti je pokretanje C# koda i dobivanje primljenih poruka. Da biste to učinili, samo kliknite na gumb 'Run' u Visual Studiju kao što možete vidjeti na Slici 7. Time će se pojaviti konzolni prozor koji ispisuje HTTP zahtjev koji je vaša aplikacija poslala. Također ispisuje odgovor poruke iz SMS Gatewaya, što je lista svih poruka koje se mogu naći u vašem inboxu.
Zaključak
Ovaj vodič vam je dao sve potrebne informacije o tome kako možete primati SMS poruke u C#. Primanje poruka u C# znači da možete implementirati funkcionalnost primanja poruka u bilo kojem vašem C# projektu. To će rezultirati svestranim i široko korištenim projektom. Ovo rješenje se vrti oko Ozeki SMS Gatewaya, što znači da možete pratiti poruke kada prolaze kroz sustav i lako otkriti greške zahvaljujući mogućnosti niskog nivoa logiranja Ozeki SMS Gatewaya.
Pobrinite se da ne stanete ovdje u procesu učenja. Slobodno pogledajte druge članke na Ozeki web stranici. Na primjer, počnite s slanjem SMS poruka koristeći C#. Još jedan dobar članak za učenje je kako simulirati dolazne poruke za potrebe testiranja.
Sljedeća stvar koju trebate učiniti je preuzimanje Ozeki SMS Gatewaya i počnite s razvojem odmah!
More information
- Kako simulirati dolazne SMS poruke za C# testiranje
- Kako primiti SMS u C#