Enviar solicitud de verificación por WhatsApp

Puede iniciar el proceso de verificación enviando un Verificar solicitud a la API de Verify. El siguiente ejemplo enviará una solicitud que utiliza WhatsApp para su verificación.

Modos de WhatsApp (OTP y Zero-tap)

La verificación de WhatsApp admite un mode en el elemento del flujo de trabajo:

  • otp_code (por defecto): envía un código de un solo uso a WhatsApp para que el usuario lo introduzca.
  • zero_tap (Android): permite una experiencia más fluida y sin pulsaciones.

Si mode por defecto será otp_code.

Nota: La función «Zero-tap» para WhatsApp está disponible para dispositivos Android y requiere una configuración previa. Para iniciar la configuración, ponte en contacto con el servicio de asistencia o con tu gestor de Accounts y facilítales tu waba_idjunto con la correspondiente package_name y signature_hash para ese WABA.

Si es necesario, sustituye las siguientes variables del código de ejemplo por tus propios valores:

ClaveDescripción
JWT

Used to authenticate your request. See Authentication for more information, including how to generate a JWT.

BRAND_NAME

Included in the message to explain who is confirming the phone number

VONAGE_APPLICATION_PRIVATE_KEY_PATH

Private key path.

VONAGE_APPLICATION_ID

The Vonage Application ID.

TO_NUMBER

The phone number to verify

Escriba el código

Añada lo siguiente a send-request-whatsapp.sh:

curl -X POST "https://api.nexmo.com/v2/verify" \
  -H "Authorization: Bearer $JWT"\
  -H 'Content-Type: application/json' \
  -d $'{
	 "brand": "'$VERIFY_BRAND_NAME'",
   "workflow": [
      {
         "channel": "whatsapp",
         "to": "'$VERIFY_NUMBER'"
      }
   ]
}'

Ver fuente completa

Ejecute su código

Guarde este archivo en su máquina y ejecútelo:

sh send-request-whatsapp.sh

Requisitos previos

npm install @vonage/server-sdk @vonage/verify2

Crea un archivo llamado send-request-whatsapp.js y añade el siguiente código:

const { Vonage } = require('@vonage/server-sdk');
const { Channels } = require('@vonage/verify2');

const vonage = new Vonage({
  applicationId: VONAGE_APPLICATION_ID,
  privateKey: VONAGE_APPLICATION_PRIVATE_KEY_PATH,
});

Ver fuente completa

Escriba el código

Añada lo siguiente a send-request-whatsapp.js:

vonage.verify2.newRequest({
  brand: VERIFY_BRAND_NAME,
  workflow: [
    {
      channel: Channels.WHATSAPP,
      to: VERIFY_NUMBER,
    },
  ],
})
  .then(({requestId}) => console.log(requestId))
  .catch((err) => console.error(err));

Ver fuente completa

Ejecute su código

Guarde este archivo en su máquina y ejecútelo:

node send-request-whatsapp.js

Requisitos previos

Añada lo siguiente a build.gradle:

implementation 'com.vonage:server-sdk-kotlin:2.1.1'

Crea un archivo llamado SendVerificationRequestWhatsapp y añade el siguiente código al método main:

val client = Vonage {
    applicationId(VONAGE_APPLICATION_ID)
    privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
}

Ver fuente completa

Escriba el código

Añada lo siguiente al método main del archivo SendVerificationRequestWhatsapp:

val response = client.verify.sendVerification(VERIFY_BRAND_NAME) {
    whatsapp(VERIFY_NUMBER, VERIFY_WHATSAPP_NUMBER)
}
println("Verification sent: ${response.requestId}")

Ver fuente completa

Ejecute su código

Podemos utilizar el plugin aplicación para Gradle para simplificar la ejecución de nuestra aplicación. Actualiza tu build.gradle con lo siguiente:

apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''

Ejecute el siguiente comando gradle para ejecutar su aplicación, sustituyendo com.vonage.quickstart.kt.verify por el paquete que contiene SendVerificationRequestWhatsapp:

gradle run -Pmain=com.vonage.quickstart.kt.verify.SendVerificationRequestWhatsapp

Requisitos previos

Añada lo siguiente a build.gradle:

implementation 'com.vonage:server-sdk:9.3.1'

Crea un archivo llamado SendRequestWhatsapp y añade el siguiente código al método main:

VonageClient client = VonageClient.builder()
		.applicationId(VONAGE_APPLICATION_ID)
		.privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
		.build();

Ver fuente completa

Escriba el código

Añada lo siguiente al método main del archivo SendRequestWhatsapp:

VerificationResponse response = client.getVerify2Client().sendVerification(
		VerificationRequest.builder()
			.addWorkflow(new WhatsappWorkflow(VERIFY_NUMBER, VERIFY_WHATSAPP_NUMBER))
			.brand(VERIFY_BRAND_NAME).build()
);
System.out.println("Verification sent: " + response.getRequestId());

Ver fuente completa

Ejecute su código

Podemos utilizar el plugin aplicación para Gradle para simplificar la ejecución de nuestra aplicación. Actualiza tu build.gradle con lo siguiente:

apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''

Ejecute el siguiente comando gradle para ejecutar su aplicación, sustituyendo com.vonage.quickstart.verify2 por el paquete que contiene SendRequestWhatsapp:

gradle run -Pmain=com.vonage.quickstart.verify2.SendRequestWhatsapp

Requisitos previos

Install-Package Vonage

Crea un archivo llamado StartVerificationRequestWhatsApp.cs y añade el siguiente código:

using Vonage;
using Vonage.Request;
using Vonage.VerifyV2.StartVerification;
using Vonage.VerifyV2.StartVerification.WhatsApp;

Ver fuente completa

Añada lo siguiente a StartVerificationRequestWhatsApp.cs:

var credentials = Credentials.FromAppIdAndPrivateKeyPath(VONAGE_APPLICATION_ID, VONAGE_APPLICATION_PRIVATE_KEY_PATH);
var client = new VonageClient(credentials);

Ver fuente completa

Escriba el código

Añada lo siguiente a StartVerificationRequestWhatsApp.cs:

var request = StartVerificationRequest.Build()
    .WithBrand(BRAND_NAME)
    .WithWorkflow(WhatsAppWorkflow.Parse(TO_NUMBER, FROM_NUMBER))
    .Create();
var response = await client.VerifyV2Client.StartVerificationAsync(request);

Ver fuente completa

Requisitos previos

composer require vonage/client

Crea un archivo llamado request.php y añade el siguiente código:

$client = new Vonage\Client(
    new Vonage\Client\Credentials\Keypair(VONAGE_APPLICATION_PRIVATE_KEY_PATH, VONAGE_APPLICATION_ID),
);

Ver fuente completa

Escriba el código

Añada lo siguiente a request.php:

$newRequest = new \Vonage\Verify2\Request\WhatsAppRequest(VERIFY_NUMBER, VERIFY_BRAND_NAME);
$client->verify2()->startVerification($newRequest);

Ver fuente completa

Ejecute su código

Guarde este archivo en su máquina y ejecútelo:

php request.php

Requisitos previos

pip install vonage python-dotenv

Escriba el código

Añada lo siguiente a send-request-whatsapp.py:

from vonage import Auth, Vonage
from vonage_verify import (StartVerificationResponse, VerifyRequest,
                           WhatsappChannel)

client = Vonage(
    Auth(
        application_id=VONAGE_APPLICATION_ID,
        private_key=VONAGE_PRIVATE_KEY,
    )
)

verify_request = VerifyRequest(
    brand=VERIFY_BRAND_NAME,
    workflow=[
        WhatsappChannel(to=VERIFY_NUMBER, from_=VERIFY_FROM_NUMBER),
    ],
)

response: StartVerificationResponse = client.verify.start_verification(verify_request)
pprint(response)

Ver fuente completa

Ejecute su código

Guarde este archivo en su máquina y ejecútelo:

python verify/send-request-whatsapp.py

Requisitos previos

gem install vonage

Crea un archivo llamado request.rb y añade el siguiente código:

client = Vonage::Client.new(
  application_id: VONAGE_APPLICATION_ID,
  private_key: VONAGE_PRIVATE_KEY
)

Ver fuente completa

Escriba el código

Añada lo siguiente a request.rb:

client.verify2.start_verification(
  brand: VERIFY_BRAND_NAME,
  workflow: [
    {
      channel: 'whatsapp',
      to: VERIFY_NUMBER,
      from: VERIFY_FROM_NUMBER
    }
  ]
)

Ver fuente completa

Ejecute su código

Guarde este archivo en su máquina y ejecútelo:

ruby request.rb

Consejo: Para activar Zero-tap, configura mode a zero_tap para el elemento del flujo de trabajo de WhatsApp (consulte la Especificación API para ver el esquema completo de la solicitud).