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

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

Video 1 - Kako primiti SMS u C# (Video tutorijal)

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.

otvorite visual studio
Slika 1 - Otvorite Visual Studio 2019

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.

kreiranje novog projekta u visual studiu
Slika 2 – Kreiranje novog projekta u Visual Studiju

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'.

odabir console app
Slika 3 – Odabir Console App

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.

konfiguriranje naziva projekta
Slika 4 – Konfiguriranje naziva projekta

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.

zamjena koda u visual studiu
Slika 5 – Zamjena koda u Visual Studiju

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'.

simuliranje dolaznih sms poruka u ozeki 10
Slika 6 – Simuliranje dolaznih SMS poruka u Ozeki 10

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.

pokretanje koda za primanje sms
Slika 7 – Pokretanje C# koda za primanje SMS poruka

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