Envíe un mensaje de WhatsApp con contenido multimedia con C# en 30 segundos

February 19, 2019
Redactado por

Envíe un mensaje de WhatsApp con contenido multimedia con C# en 30 segundos

Cuando se lanzó la API de Twilio para WhatsApp en el verano del 2018, solo se podían manejar mensajes de texto.  Ahora, la API puede enviar y recibir archivos multimedia . Enviar un mensaje con contenido multimedia con WhatsApp es tan rápido como enviar un mensaje de texto, ¡aquí le enseñamos cómo en tan solo 30 segundos!

Para que esto sea aún más rápido para comenzar, a continuación encontrará todo el código y un enlace al proyecto finalizado en GitHub.

Si desea ver una integración completa de las API de Twilio en una aplicación .NET Core, échele un vistazo a esta serie de videos de 5 partes que creé. Es independiente del tutorial de en esta publicación en este blog, pero le presentará numerosas API en una sola ocasión.

 

Para codificar junto con esta publicación, asegúrese de que haya configurado lo siguiente:

Después de crear una nueva aplicación .NET Console, agregue el paquete Twilio NuGet a la solución.  Si no está seguro de cómo hacer esto, consulte esta publicación.

Abra el Program.cs y agregue declaración using de Twilio.  Inicialice el REST Client de Twilio con el SID de la cuenta y el token de Auth, que se pueden encontrar en la consola de Twilio.

Esta solución tiene el SID de la cuenta y el token de Auth como Environment Variables (variables del entorno), pero también se pueden agregar a través de App Settings and User Secrets (configuración de la aplicación y secretos del usuario).

using System;
using System.Collections.Generic;
using Twilio;
using Twilio.Rest.Api.V2010.Account;
using Twilio.Types;

namespace WhatsApp
{
   class Program
   {
       static void Main(string[] args)
       {
           TwilioClient.Init(
               Environment.GetEnvironmentVariable("TWILIO_ACCOUNT_SID"),
               Environment.GetEnvironmentVariable("TWILIO_AUTH_TOKEN")
           );
       }
   }
}

Para enviar un mensaje, llame al método MessageResource.Create. Pase el número de teléfono Twilio que se utilizó para activar el sandbox y un número de teléfono habilitado para WhatsApp, tanto en el formato E.164.

Se puede enviar un mensaje de texto mediante el parámetro de body. Para enviar contenido multimedia, cree una nueva colección desde el URI al elemento multimedia y configúre esto en el parámetro mediaUrl.

TwilioClient.Init(
               Environment.GetEnvironmentVariable("TWILIO_ACCOUNT_SID"),
               Environment.GetEnvironmentVariable("TWILIO_AUTH_TOKEN")
           );

var message = MessageResource.Create(
               from: new PhoneNumber("whatsapp:TWILIO_WHATSAPP_NUMBER"),
               to: new PhoneNumber("whatsapp:YOUR_MOBILE_NUMBER"),
               body: "Ahoy from Twilio!",
               mediaUrl: new List<Uri>{new Uri("URL_TO_IMAGE")}
           );

Console.WriteLine("Message SID: " + message.Sid);

Restaure los paquetes NuGet para asegurarse de que estén descargados y, a continuación cree y ejecute el proyecto.

En poco tiempo, estará recibiendo un mensaje con contenido multimedia en su teléfono.

captura de pantalla de whatsapp con una foto de un cupcake

¿Qué sigue?

Hay algunas diferencias entre los MMS y los mensajes con contenido multimedia de WhatsApp. Los mensajes con contenido multimedia solo se pueden enviar a los usuarios de WhatsApp si se establece una “sesión” de mensajería activa. Las sesiones de mensajería se crean cuando un usuario responde a un mensaje de plantilla o cuando el usuario inicia la conversación. También deben estar activas durante 24 horas después del último mensaje que envían. Los mensajes con contenido multimedia de WhatsApp tampoco admiten algunos de los tipos de archivos que ofrece el MMS. Para obtener más información sobre el soporte de tipos de archivo, consulte las preguntas frecuentes.

¿Quiere profundizar en este tema? Consulte este blog sobre cómo enviar y recibir mensajes con contenido multimedia de WhatsApp.

También puede encontrar más ideas y consejos útiles en WhatsApp Quickstartsla documentación de la API de Twilio REST y las bibliotecas auxiliares de C#/.NET.

No puedo esperar a ver lo que es capaz de crear.

Este artículo fue traducido del original "Send a WhatsApp media message with C# in 30 Seconds". Mientras estamos en nuestros procesos de traducción, nos encantaría recibir sus comentarios en help@twilio.com - las contribuciones valiosas pueden generar regalos de Twilio.