Sende einen WhatsApp-Verifizierungscode in unter 5 Minuten

March 28, 2022
Autor:in:
Prüfer:in:
Phil Nash
Twilion

Send a whatsapp verification message in under 5 minutes

SMS-Einmalkennwörter (One-time-password OTP) sind eine beliebte Form der Telefonverifizierung und Zwei-Faktor-Authentifizierung (2FA). Aber in einigen Ländern wie Deutschland, Brasilien, oder Indien sind Messaging-Apps wie WhatsApp beliebter als SMS. Deshalb haben wir unsere Verify-API um Unterstützung für WhatsApp ergänzt. Da WhatsApp bei der Anmeldung Telefonnummer der Anwender überprüft, können Sie mit der WhatsApp-Verifizierung die SMS-Verifizierung direkt ersetzen. Und das Beste ist: Durch Verwendung von WhatsApp über die Verify-API benötigen Sie kein separates WhatsApp-Geschäftskonto.

In diesem Beitrag erfahren Sie, wie Sie im Handumdrehen ein OTP-Dashboard einrichten und WhatsApp-Verifizierungsnachrichten senden und prüfen können.

Voraussetzungen für das Senden von Einmalkennwörtern

Um einen OTP senden zu können, benötigen Sie Folgendes:

Kopieren Sie die SID Ihres Dienstes (beginnend mit VA):

Twilio verify console showing an example

Schnelle Bereitstellung einer Twilio Verify-Anwendung

Stellen Sie sicher, dass Sie bei Twilio angemeldet sind. Gehen Sie zu Twilio CodeExchange, um das Einmalkennwort-Verifizierungsprojekt aufzurufen, und fügen Sie Ihre SID für den Verify-Dienst ein:

Quick deploy form showing populated account name and pasted verify service sid

Klicken Sie anschließend auf „Deploy my application“ (Anwendung bereitstellen). Nach einigen Sekunden sollte eine Schaltfläche zum Starten der Live-Anwendung angezeigt werden: Klicken Sie auf „Go to live application“, um zu Ihrer neuen Verify-Anwendung zu gelangen.

one-time password request form

Wählen Sie den WhatsApp-Kanal, geben Sie Ihre Telefonnummer ein, wählen sie die gewünschte Sprache aus und drücken Sie Get a one-time passcode, um den Kanal zu testen. Es ist tatsächlich so einfach!

example verification message on whatsapp

So erkennen Sie, ob WhatsApp auf einem Gerät installiert ist

Eine Möglichkeit, das Nutzererlebnis zu verbessern, ist die standardmäßige Verwendung von WhatsApp statt SMS, sofern die App installiert ist. Sie können überprüfen, ob die App auf dem gleichen Gerät installiert ist, auf dem Sie die Anwendung ausführen. Hierzu können Sie die verlinkten Anweisungen für iOS und Android nutzen. Hier ein Beispiel für die Implementierung der WhatsApp-Erkennung für Android:

fun PackageManager.isPackageInstalled(packageName: String): Boolean {
  return try {
    getPackageInfo(packageName, PackageManager.GET_ACTIVITIES)
    true
  } catch (e: NameNotFoundException) {
    false
  }
}

fun isWhatsAppInstalled : Boolean() {
    val whatsAppPackageName = "com.whatsapp"
    val whatsAppBusinessPackageName = "com.whatsapp.w4b"
    return getPackageManager().isPackageInstalled(whatsAppPackageName) || getPackageManager().isPackageInstalled(whatsAppBusinessPackageName)
}

Leider hat nicht jeder Nutzer ein WhatsApp-Konto. Außerdem ist es möglich, dass die App installiert ist, sich der Nutzer jedoch nicht angemeldet hat. Leider verfügt WhatsApp verfügt über keine API, um vor dem Senden einer Nachricht zu ermitteln, ob ein Konto vorhanden ist. Glücklicherweise berechnet WhatsApp keine Kosten für fehlgeschlagenen Nachrichtenversuche an Konten, die nicht existieren. Für SMS hingegen werden Netzbetreibergebühren für nicht zugestellte Nachrichten berechnet.

So verwenden Sie die Anwendung Verify OTP Quick Deploy

Diese Beispielanwendung schützt (noch) nichts, aber wenn Sie ähnlich ticken wie ich, lieben Sie es, Code zu kopieren und zu ändern. Diese Anwendung gibt Ihnen die folgenden Bausteine:

Auf dieser Grundlage können Sie Verifizierungen in Ihre Anwendung verwenden, wenn ihre Nutzer sich registrieren, anmelden oder bestimmte andere Aktionen, wie Finanztransaktionen, ausführen.

Der E-Mail-Kanal erfordert etwas mehr an Setup, aber alle Schritte sind in der Dokumentation beschrieben. Für Ihre Tests könnte es hilfreich sein, ein Test-Dashboard einzurichten, um zu vermeiden, dass Nutzungsbegrenzungen erreicht werden.

Weitere Anregungen finden Sie in den folgenden Quick Deploy-Projekten:

Ich kann es nicht abwarten, zu sehen, was Sie bauen!