SMS-Versand mit JavaScript (Node.js): API-Bibliothek sms-node-client

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

Bibliothek sms-node-client: SMS-Versand aus Node.js



Moderne Webanwendungen erfordern oft die Integration mit SMS-Diensten für den Versand von Benachrichtigungen, Registrierungsbestätigungen oder Marketingkampagnen. Die Bibliothek sms-node-client bietet eine einfache und bequeme Schnittstelle für die Arbeit mit gängigen SMS-Gateways direkt aus Node.js. Sie abstrahiert die Komplexität von HTTP-Anfragen und Authentifizierung, sodass sich der Entwickler auf die Geschäftslogik konzentrieren kann.



In diesem Artikel betrachten wir die wichtigsten Funktionen der Bibliothek: Installation, Konfiguration der API-Verbindung, Versand einzelner und Massennachrichten sowie die Behandlung typischer Fehler.



Installation und Einbindung



Die Bibliothek wird über npm vertrieben. Führen Sie zur Installation folgenden Befehl im Stammverzeichnis Ihres Projekts aus:



npm install sms-node-client


Nach der Installation importieren Sie die Bibliothek in Ihre JavaScript-Datei:



const SMSClient = require('sms-node-client');

// oder mit ES6-Modulen (falls konfiguriert)// import SMSClient from 'sms-node-client';


Client-Konfiguration



Für die Arbeit mit der API müssen Sie ein Client-Objekt initialisieren und ihm die Verbindungsparameter übergeben: apiKey (Zugangsschlüssel) und apiSecret (geheimer Schlüssel). Diese Daten werden in der Regel von Ihrem SMS-Anbieter bereitgestellt.



const client = new SMSClient({  apiKey: 'ihr_api_schlüssel',  apiSecret: 'ihr_api_geheimnis',  // Optional: Basis-URL angeben, falls der Anbieter einen nicht standardmäßigen Endpunkt verwendet  // baseUrl: 'https://custom-sms-gateway.com/api/v1'});


Hauptmethoden der Bibliothek



Die Bibliothek bietet drei Hauptmethoden zum Versenden von Nachrichten:



  • sendSMS(phone, message, options?) — Versand einer einzelnen SMS an eine Nummer.
  • sendBulkSMS(messages, options?) — Massenversand an mehrere Nummern.
  • getStatus(messageId) — Überprüfung des Lieferstatus anhand der Nachrichten-ID.


Beispiel: Versand einer einzelnen SMS



Das einfachste Szenario ist das Senden einer Nachricht an eine Nummer. Die Methode gibt ein Promise zurück, daher ist die Verwendung von async/await praktisch.



async function sendSingleSMS() {  try {    const result = await client.sendSMS(      '+71234567890',            // Empfängernummer im internationalen Format      'Hallo! Dies ist eine Testnachricht aus Node.js.', // Nachrichtentext      { sender: 'MyApp' }       // Optional: Absendername (muss beim Anbieter registriert sein)    );

console.log('SMS erfolgreich gesendet:', result); // result.messageId - eindeutige Nachrichten-ID zur Statusverfolgung } catch (error) { console.error('Fehler beim SMS-Versand:', error.message); }}

sendSingleSMS();


Beispiel: Massenversand



Um denselben Text an mehrere Nummern zu senden, verwenden Sie die Methode sendBulkSMS. Sie akzeptiert ein Array von Objekten mit den Nummern.



async function sendBulk() {  const recipients = [    { phone: '+71234567890' },    { phone: '+70987654321' },    { phone: '+70123456789' }  ];

try { const result = await client.sendBulkSMS(recipients, { message: 'Sehr geehrter Kunde! Ihre Bestellung ist zur Abholung bereit.', sender: 'ShopBot' });

console.log(`${result.sentCount} Nachrichten gesendet`); // result.messages - Array mit Details zu jeder Nummer } catch (error) { console.error('Fehler beim Massenversand:', error); }}

sendBulk();


Überprüfung des Lieferstatus



Nach dem Versand können Sie prüfen, ob die Nachricht den Empfänger erreicht hat. Verwenden Sie dazu die messageId, die Sie beim Versand erhalten haben.



async function checkStatus(messageId) {  try {    const status = await client.getStatus(messageId);    console.log('Nachrichtenstatus:', status);    // status.s                    

Empfehlungen