Odbieranie SMS w C#

Poniższy przewodnik pokaże, jak możesz odbierać wiadomości SMS z Twojej bramki SMS za pomocą aplikacji w C#. Ten przykład w C# wykorzystuje żądania HTTP, aby pobrać wiadomości z folderu skrzynki odbiorczej w bramce SMS. Bramka SMS zbiera wszystkie otrzymane wiadomości i wysyła je do aplikacji w C# jako odpowiedź na żądanie HTTP. Przewodnik pokazuje również, jak możesz wykorzystać połączenie z serwerem HTTP do symulacji przychodzących wiadomości. Wykonanie tego przewodnika zajmie nie więcej niż pięć minut, więc zaczynajmy już teraz.

Czym jest API SMS w C#?

API SMS w C# to świetne narzędzie umożliwiające wysyłanie wiadomości SMS z dowolnego projektu lub aplikacji opartej na C# poprzez inicjowanie żądań HTTP i przekazywanie ich do bramki SMS.

Wymagania wstępne

Odbieranie SMS w C#

  • Otwórz Visual Studio
  • Utwórz nowy projekt aplikacji konsolowej
  • Skopiuj przykładowy kod w C# z tej strony
  • Wklej kod do swojej aplikacji w C#
  • Otwórz bramkę SMS Ozeki 10
  • Wybierz połączenie z serwerem HTTP
  • Wyślij testowe wiadomości za pomocą połączenia z serwerem HTTP
  • Uruchom swoją aplikację w C#, aby odebrać wszystkie przychodzące wiadomości

Wideo 1 - Jak odbierać SMS w C# (Samouczek wideo)

Przykładowy kod w C# poniżej umożliwia odbieranie wszystkich przychodzących wiadomości za pomocą żądań HTTP. Ten przykładowy kod jest darmowy do użycia, możesz go modyfikować i wdrożyć w swoim własnym projekcie aplikacji. Jeśli chcesz tylko przetestować rozwiązanie, musisz postępować zgodnie z instrukcjami krok po kroku poniżej lub obejrzeć powyższe wideo, które pokazuje, jak możesz wykorzystać ten przykładowy kod w C#.

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}");
        }

    }
}

Krok 1 - Otwórz Visual Studio

Pierwszym krokiem przewodnika jest utworzenie aplikacji w C#, w której możesz umieścić przykładowy kod z tej strony. Najlepszym narzędziem do tworzenia aplikacji w C# jest Visual Studio. Możesz je pobrać z sekcji Wymagania wstępne, jeśli jeszcze go nie masz. Jeśli Visual Studio jest już zainstalowane na Twoim komputerze, wystarczy je otworzyć z pulpitu, jak widać na Rysunku 1.

open visual studio
Rysunek 1 - Otwórz Visual Studio 2019

Krok 2 - Utwórz nowy projekt

Po otwarciu programu Visual Studio pojawi się okno powitalne. Możesz otworzyć ostatni projekt lub utworzyć zupełnie nowy z tego okna. Jak pokazuje Rysunek 2, teraz musisz utworzyć nowy projekt, więc wystarczy wybrać tę opcję z tego okna.

create new project in visual studio
Rysunek 2 - Utwórz nowy projekt w Visual Studio

Krok 3 - Wybierz Aplikację Konsolową

Po podjęciu decyzji o utworzeniu nowego projektu, następne okno wyświetla wszystkie dostępne opcje, które możesz wybrać, jeśli chcesz utworzyć nową aplikację w języku C#. Aby postępować zgodnie z tym przewodnikiem, wystarczy utworzyć prostą Aplikację Konsolową, więc jak pokazuje Rysunek 3, wybierz tę opcję i kliknij 'Dalej'.

select console app
Rysunek 3 - Wybierz Aplikację Konsolową

Krok 4 - Skonfiguruj swój projekt

Przed ostatecznym utworzeniem projektu Aplikacji Konsolowej, musisz wykonać kilka konfiguracji projektu. Są to bardzo proste konfiguracje; wystarczy nadać nazwę projektowi, jak widać na Rysunku 4. W tym oknie możesz również określić lokalizację plików projektu. Jeśli zakończyłeś wszystkie konfiguracje, po prostu kliknij 'Utwórz', aby utworzyć projekt Aplikacji Konsolowej.

configure project name
Rysunek 4 - Skonfiguruj nazwę projektu

Krok 5 - Wstaw przykładowy kod do projektu

Utworzony projekt zawiera jeden plik C#, czyli Program.cs. To jest plik, w którym musisz umieścić przykładowy kod. W tym celu przewiń do przykładowego kodu, zaznacz cały kod i naciśnij Ctrl+C na klawiaturze. Ta operacja skopiowała kod do schowka. Następnie przejdź do pliku Program.cs, usuń kod, który tam znajdziesz, i jak na Rysunku 5, naciśnij Ctrl+V, aby wkleić kod do tego pliku.

replace code in visual studio
Rysunek 5 - Zastąp kod w Visual Studio

Krok 6 - Zasymuluj przychodzące wiadomości

Następną rzeczą, którą musisz zrobić, jest oczekiwanie na przychodzące wiadomości w twojej Bramce SMS. Może to zająć trochę czasu, więc możesz wybrać opcję symulacji niektórych wiadomości za pomocą połączenia HTTP Server. Tak więc, jak pokazuje Rysunek 6, po prostu otwórz formularz HTML połączenia HTTP Server. Ten formularz umożliwia tworzenie niektórych wiadomości. Wystarczy wpisać 'Ozeki' jako odbiorcę i wpisać jakiś tekst w polu 'MessageData'. Aby wysłać wiadomość testową, kliknij 'Wyślij'.

simulate some incoming sms in ozeki ten
Rysunek 6 - Zasymuluj przychodzące SMS w Ozeki 10

Krok 7 - Uruchom przykładowy kod C#

Ostatnim krokiem, który musisz wykonać, jest uruchomienie kodu C# i otrzymanie wiadomości. Aby to zrobić, wystarczy kliknąć przycisk 'Uruchom' w Visual Studio, jak widać na Rysunku 7. W ten sposób pojawi się okno konsoli, które wyświetli żądanie HTTP wysłane przez twoją aplikację. Wyświetli również odpowiedź z Bramki SMS, która jest listą wszystkich wiadomości znajdujących się w folderze skrzynki odbiorczej.

run the code to receive sms
Rysunek 7 - Uruchom kod C#, aby odbierać SMS

Podsumowanie

Ten samouczek dostarczył Ci wszystkich niezbędnych informacji o tym, jak możesz odbierać wiadomości SMS w języku C#. Odbieranie wiadomości w C# oznacza, że możesz zaimplementować funkcjonalność odbierania wiadomości w dowolnym projekcie C#. Doprowadzi to do wszechstronnego i szeroko stosowanego projektu. To rozwiązanie opiera się na Bramce SMS Ozeki, co oznacza, że możesz śledzić wiadomości przechodzące przez system i łatwo wykrywać błędy dzięki możliwości niskopoziomowego logowania Bramki SMS Ozeki.

Pamiętaj, aby nie zatrzymywać się tutaj w procesie nauki. Zachęcamy do sprawdzenia innych artykułów na stronie Ozeki. Na przykład zacznij od wysyłania wiadomości SMS za pomocą C#. Innym dobrym artykułem do nauki jest jak symulować przychodzące wiadomości do celów testowych.

Następną rzeczą do zrobienia jest pobranie Bramki SMS Ozeki i rozpoczęcie rozwoju już teraz!

More information