Senden einer SMS ohne Telefonnummer mit alphanumerischen Absender-IDs und Node.js

March 06, 2023
Autor:in:
Prüfer:in:

Hallo und danke fürs Lesen! Dieser Blogpost ist eine Übersetzung von How to Send SMS Without a Phone Number using Alphanumeric Sender IDs and Node.js.

 

Das Senden von SMS ist eine bequeme Möglichkeit, Ihre Benutzer:innen über zeitkritische Angelegenheiten zu informieren. Diese Meldungen stehen oft in engem Zusammenhang mit einer Aktion, die Benutzer:innen gerade ausgelöst haben. Beispiel: Erhalt eines OTP (One-Time Password, Einmalkennwort) für eine Überweisung in ihrer Banking-App.

In diesen Situationen ist den Benutzer:innen wahrscheinlich nicht wichtig, welche Nummer die Nachricht gesendet hat. In anderen Fällen, insbesondere wenn Sie Benutzer:innen ohne Ankündigung Benachrichtigungen senden, möchten Sie sicher den Namen Ihres Unternehmens als Sender anzeigen. Mit alphanumerischen Absender-IDs können Sie genau das tun.

Wenn Benutzer:innen eine Nachricht von einer alphanumerischen Absender-ID erhalten, sieht das folgendermaßen aus:

SMS sent from an Alphanumeric Sender ID

In diesem Fall hat „Marius“ die Nachricht gesendet. Sie können sehen, dass die ID anstelle der Telefonnummer des Kontakts in der iOS-Messaging-App angezeigt wird.

Das ist nötig, um eine SMS von einer Nummer mit einer alphanumerischen Absender-ID zu senden

  • Sie benötigen ein Twilio-Konto.
  • Der Code am Ende dieses Beitrags verwendet JavaScript. Stellen Sie daher sicher, dass Ihre Node.js-Umgebung eingerichtet ist.

Das ist bei alphanumerischen Absender-IDs anders

Alphanumerische Absender-IDs verhalten sich anders als Telefonnummern und haben einige Vorteile:

  • Ihr Unternehmen ist sofort identifizierbar. Der Empfänger muss Ihre Telefonnummer nicht in seinen Kontakten haben, um sie zu erkennen, was Ihre Öffnungsrate verbessern kann.
  • Alphanumerische Absender-IDs können in vielen Ländern verwendet werden, ohne dass in jedem Land eine eigene Telefonnummer erforderlich ist. Dies kann besonders hilfreich sein, wenn Sie ein Regulatory Bundle benötigen, um überhaupt erst eine Nummer kaufen zu können.
  • In den meisten Ländern ist die Verwendung einer alphanumerischen Absender-ID kostenlos.
  • Es ist nicht möglich, auf Nachrichten zu antworten, die von einer alphanumerischen Absender-ID gesendet wurden. Das bedeutet, dass Sie keine eingehenden Nachrichten verarbeiten müssen.

Bitte beachten Sie, dass alphanumerische Absender-IDs nur in bestimmten Ländern unterstützt werden. In einigen Ländern ist, eventuell gegen Gebühr, eine Voranmeldung erforderlich.

Insgesamt kann man sagen, dass alphanumerische Absender-IDs für die richtigen Anwendungsfälle sehr nützlich sind. Im Rest dieses Beitrags beschäftigen wir uns damit, unser Twilio-Konto so einzurichten, dass wir eine alphanumerische Absender-ID senden können. Außerdem erfahren Sie, wie diese Einrichtung mit Node.js funktioniert.

Einrichten Ihrer alphanumerischen Absender-ID

Wir empfehlen, über einen Messaging-Dienst mit alphanumerischer Absender-ID zu senden. Messaging-Dienste haben viele Vorteile. Einer davon ist die Absicherung, die Nachricht mit einer gewöhnlichen Telefonnummer zu senden, wenn keine alphanumerische Absender-ID unterstützt wird. Dies kann zum Beispiel vorkommen, wenn sie versuchen, Nachrichten in ein Land zu senden, das keine alphanumerischen Absender-IDs unterstützt. Die Einrichtung Ihres Messaging-Dienstes dauert nur einige Minuten. Legen wir los.

Erstellen und konfigurieren eines Messaging-Dienstes

Um einen Messaging-Dienst zu erstellen, öffnen Sie die Twilio-Konsole und wählen Sie unter Explore Products > Messaging > Services aus. Klicken Sie auf Create Messaging Service (Messaging-Dienst erstellen), um den Assistenten zu starten.

Messaging Services view in the Twilio Console

Im ersten Schritt geben Sie Ihrem neuen Messaging-Dienst einen Namen und bestätigen anschließend den Vorgang, indem Sie auf Create Messaging Service (Messaging-Dienst erstellen) klicken.

Screenshot of the first step to create a Messaging Service in the Twilio Console

Fügen Sie anschließend Ihrem Messaging-Dienst eine alphanumerische Absender-ID hinzu, indem Sie auf Add Sender (Sender hinzufügen) klicken, den Absendertyp im Pop-up-Fenster „Add Senders“ (Sender hinzufügen) auf „Alpha Sender“ (Alpha-Absender) setzen und dann auf Continue (Weiter) klicken.

Screenshot of the second step to create a Messaging Service in the Twilio Console

Geben Sie dann eine alphanumerische Absender-ID Ihrer Wahl ein. Diese wird in den Messaging-Apps der Empfänger angezeigt, wie im Beispiel am Anfang zu sehen ist.

Beachten Sie, dass einige Regeln für die Benennung eingehalten werden müssen.

  • Die Namen sind auf 11 Zeichen begrenzt.
  • Mindestens ein Zeichen muss ein Buchstabe sein.

Klicken Sie jetzt auf Add Alpha Sender (Alpha-Sender hinzufügen), um den Sender-Pool anzuzeigen, der Ihre neue alphanumerische Absender-ID enthält. Sie bestätigen mit einem Klick auf Step 3 Set up integration (Schritt 3– Integration einrichten).

Screenshot of the third step to create a Messaging Service in the Twilio Console

Im nächsten Schritt richten Sie ein, wie Ihr Messaging-Dienst eingehende Nachrichten verarbeitet. Da Sie nur alphanumerische Absender-IDs verwenden, die keine eingehenden Nachrichten empfangen können, können Sie direkt zum nächsten Schritt übergehen, indem Sie auf Step 4 Add compliance info (Schritt 4 – Compliance-Info hinzufügen) klicken.

Screenshot of the fourth step to create a Messaging Service in the Twilio Console

Wenn Sie in den USA eine Application-to-Person-SMS an Personen senden, unterliegen Sie den A2P10DLC-Regeln. Darauf werde ich hier nicht weiter eingehen, aber wenn es Sie betrifft, sollten Sie sich ausführlicher darüber informieren und sich für die Nutzung von A2P 10DLC-Messaging registrieren. Klicken Sie auf Complete Messaging Service Setup (Einrichtung des Messaging-Dienstes beenden) und dann auf View my new Messaging Service (Meinen neuen Messaging-Dienst anzeigen).

Screenshot of the fifth step to create a Messaging Service in the Twilio Console

Screenshot of the confirmation screen after creating a Messaging Service in the Twilio Console

Auf dieser Seite wird die SID des Dienstes angezeigt. Achten Sie darauf, sie für die zukünftige Verwendung zu speichern.

Screenshot of the service page of a Messaging Service in the Twilio Console

Senden einer SMS-Nachricht von einer alphanumerischen Absender-ID mit Node.js

Da Ihr Twilio-Konto nun so eingerichtet ist, dass Nachrichten von Ihrer alphanumerischen Absender-ID gesendet werden, ist es an der Zeit, einen Code zu schreiben, der dies in die Tat umsetzt. Möchten Sie nur das Endergebnis sehen, steht der Code auch auf GitHub zur Verfügung.

Erstellen eines neuen Node.js-Projekts

Erstellen Sie ein neues Verzeichnis für dieses Projekt und wechseln Sie dann in dieses Verzeichnis, indem Sie die folgenden Befehle ausführen:

mkdir twilio-sms-alphanumeric-sender-node 
cd twilio-sms-alphanumeric-sender-node

Führen Sie im Verzeichnis den folgenden Befehl aus und akzeptieren Sie alle Standardwerte, die der Assistent vorschlägt:

npm init

Mit diesem Befehl wird eine neue package.json-Datei erstellt, in der die Abhängigkeiten des Projekts gespeichert werden. Fügen Sie die Pakete twilio und dotenv hinzu, indem Sie den folgenden Befehl ausführen:

npm add twilio dotenv

Da diese beiden Abhängigkeiten bestehen, benötigen Sie eine Datei für den Code und eine Datei für Ihre Twilio-Anmeldeinformationen. Erstellen Sie eine neue Datei mit dem Namen send-alpha.js und eine weitere Datei mit dem Namen .env, indem Sie folgenden Unix-Befehl ausführen. Alternativ können Sie diese auch manuell in dem von Ihnen bevorzugten Editor erstellen.

touch send-alpha.js .env

Öffnen Sie die .env-Datei. Hier speichern Sie die Anmeldeinformationen, die Sie für Aufrufe der Twilio-API benötigen: Ihre Konto-SID und Ihr Authentifizierungstoken. Diese Informationen finden Sie in der Twilio-Konsole. Kopieren Sie die nachstehenden Zeilen in .env und fügen Sie dann die Werte der beiden Twilio-Anmeldeinformationen anstelle der beiden Platzhalter ein.

TWILIO_ACCOUNT_SID=<YOUR_ACCOUNT_SID> 
TWILIO_AUTH_TOKEN=<YOUR_AUTH_TOKEN>

Öffnen Sie als Nächstes die Datei send-alpha.js und fügen Sie die folgenden Zeilen hinzu, um die Abhängigkeiten zu importieren und zu initialisieren.

const dotenv = require("dotenv");
const twilio = require("twilio");

dotenv.config(); // lade die Parameter von .env
const client = twilio(process.env.TWILIO_ACCOUNT_SID, process.env.TWILIO_AUTH_TOKEN);

//require("dotenv").config();
//const client = require("twilio")();

Die auskommentierten Zeilen führen alles genauso aus, sind aber etwas weniger ausführlich.

Fügen Sie dann am Ende der Datei die Funktion client.messages.create() unten hinzu, um eine SMS von einer alphanumerischen Absender-ID zu senden, wobei Sie die beiden Platzhalter durch die entsprechenden Werte ersetzen.

client.messages.create({
   body: "This message comes from an Alphanumeric Sender ID!",
   to: "<YOUR PHONE NUMBER>", //TODO fügen Sie hier ihre Telefonnummer ein
   from: "<Messaging Service SID>" // TODO fügen Sie hier die SID des Messaging service ein
}).then((message) => console.log(message.sid))

Sie können auch eine andere Zeichenfolge in das Feld from eingeben, um die alphanumerische Absender-ID ad-hoc zu definieren. Beachten Sie jedoch, dass Sie nicht von den oben genannten Eigenschaften eines Messaging-Dienstes profitieren.

Speichern Sie die Änderungen und führen Sie den folgenden Befehl aus, um eine Nachricht von Ihrer alphanumerischen Absender-ID zu erhalten.

node send-alpha.js

Herzlichen Glückwunsch, Sie haben sich erfolgreich eine Nachricht von Ihrer alphanumerischen Absender-ID gesendet!

SMS from an Alphanumeric Sender ID

Lernen Sie Messaging-Dienste kennen

In diesem Beitrag haben Sie erfahren, wie Sie einen Messaging-Dienst mit einer alphanumerischen Absender-ID einrichten und eine Nachricht mit diesem Dienst unter Verwendung von Node.js senden. Dieses Repository enthält außerdem den gesamten Code dieses Artikels.

Das Senden einer Nachricht ohne Telefonnummer ist nur eines der vielen Dinge, die Sie mit einem Messaging-Dienst tun können. Darüber hinaus können sie Folgendes tun:

Ich kann kaum abwarten, zu sehen, was Sie entwickeln!

Marius ist Developer Evangelist bei Twilio. Dabei arbeitet er an inspirierende Demoszenarien, deren open-source Code auf GitHub teilt. Außerdem ist er recht häufig auf verschiedensten Entwicklerkonferenzen in der DACH-Region zu finden und redet gerne über die neusten Trends um Webtechnologien.