SMS-Versand mit C# (.NET): API-Bibliotheken und Codebeispiele

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

SMS-Versand mit C# (.NET): Überblick über Bibliotheken und APIs



In der modernen Entwicklung mit C# (.NET) besteht häufig die Notwendigkeit, SMS-Benachrichtigungen zu integrieren: Registrierungsbestätigungen, Zwei-Faktor-Authentifizierung, Benachrichtigungen über den Bestellstatus oder einfach Massenaussendungen. In diesem Artikel betrachten wir drei gängige Ansätze zum SMS-Versand aus C#-Anwendungen: die Nutzung der Cloud-Dienste Twilio, Vonage (ehemals Nexmo) und des russischen Dienstes SMSC.ru. Alle Codebeispiele sind für .NET 6/8 geschrieben und verwenden moderne asynchrone Methoden.



1. SMS-Versand über Twilio (globaler Anbieter)



Twilio ist einer der beliebtesten Dienste zum Versenden von SMS, Sprachnachrichten und anderen Kommunikationsformen. Es verfügt über eine hervorragende Dokumentation und ein offizielles NuGet-Paket.



Installation der Bibliothek

Fügen Sie das Paket über den NuGet Package Manager hinzu oder führen Sie den folgenden Befehl aus:

dotnet add package Twilio


Beispiel für den SMS-Versand mit C#

using Twilio;using Twilio.Rest.Api.V2010.Account;using Twilio.Types;

public class SmsService{ // Geben Sie die Account SID und den Auth Token aus der Twilio-Konsole an private readonly string _accountSid = "IHRE_ACCOUNT_SID"; private readonly string _authToken = "IHR_AUTH_TOKEN"; private readonly string _fromPhone = "+1234567890"; // In Twilio erworbene Nummer

public async Task<bool> SendSmsAsync(string toPhone, string message) { TwilioClient.Init(_accountSid, _authToken);

try { var msg = await MessageResource.CreateAsync( body: message, from: new PhoneNumber(_fromPhone), to: new PhoneNumber(toPhone) ); Console.WriteLine($"SMS gesendet! SID: {msg.Sid}"); return true; } catch (Exception ex) { Console.WriteLine($"Fehler: {ex.Message}"); return false; } }}


Wichtig: Die Absendernummer muss in Ihrem Twilio-Konto bestätigt sein. Bei Testkonten werden SMS nur an verifizierte Nummern gesendet.



2. SMS-Versand über Vonage (ehemals Nexmo)



Vonage ist ein weiterer leistungsstarker Cloud-Anbieter. Seine API ist einfach und das Paket lässt sich leicht über NuGet installieren.



Installation der Bibliothek

dotnet add package Vonage


Beispiel für den SMS-Versand

using Vonage;using Vonage.Request;using Vonage.Messaging;

public class VonageSmsService{ private readonly string _apiKey = "IHR_API_KEY"; private readonly string _apiSecret = "IHR_API_SECRET"; private readonly string _from = "YourApp"; // Absendername

public async Task<bool> SendSmsAsync(string toPhone, string message) { var credentials = Credentials.FromApiKeyAndSecret(_apiKey, _apiSecret); var client = new VonageClient(credentials);

var request = new SendSmsRequest { To = toPhone, From = _from, Text = message };

var response = await client.SmsClient.SendAnSmsAsync(request);

if (response.Messages[0].Status == "0") { Console.WriteLine($"SMS gesendet! ID: {response.Messages[0].MessageId}"); return true; } else { Console.WriteLine($"Fehler: {response.Messages[0].ErrorText}"); return false; } }}


Hinweis: Für den Versand an russische Nummern kann eine zusätzliche Konfiguration des Alpha-Namens erforderlich sein.



3. SMS-Versand über SMSC.ru (russischer Dienst)



Wenn sich Ihre Zielgruppe hauptsächlich in Russland und der GUS befindet, kann SMSC.ru eine bequemere und günstigere Option sein. Eine Bibliothek ist nicht erforderlich – eine HTTP-Anfrage reicht aus.



Beispiel für den Versand über HttpC

Empfehlungen