Ampliamos el detalle del proyecto para que podamos ver como vamos a desarrollar este m贸dulo.

Consideraciones

Se realizar谩 un desarrollo de un m贸dulo de Odoo, que tiene como objetivo integrarse con WhatsApp, enviando y recibiendo mensajes a trav茅s del servicio brindado por 360 Dialog.

360 Dialog ofrece una API para gestionar el env铆o y recepci贸n de mensajes a trav茅s de WhatsApp. Es un servicio pago, que para utilizarlo se debe tener una API-Key para cada cliente. No obstante, el servicio ofrece una API SandBox que se utiliza de manera gratuita para realizar los desarrollos.

El servicio ofrece el env铆o de mensajes pagos a trav茅s de plantillas a diversos numeros de telefono y la respuesta a mensajes de clientes. 

Descripci贸n de la soluci贸n

La soluci贸n es b谩sicamente un m贸dulo de Odoo, que al instalarlo permite utilizar el servicio ofrecido por 360 Dialog. Para comprender como funcionar谩 el m贸dulo, resulta importante destacar las siguientes cuestiones:

鈫 Ingreso de credenciales y datos de autenticaci贸n: en la parte de ajustes de Odoo se agregan campos para ingresar las api keys y el namespace del sistema.

鈫 Carga de plantillas de mensaje: se crea una tabla donde se crean las plantillas de mensaje que van a estar cargadas en 360 Dialog. Estas plantillas tienen un id de referencia que debe ser el mismo que tiene dicho proveedor.

鈫 Creaci贸n de tabla Mensaje WhatsApp (wa.message): esta tabla funcionar谩 analogamente a el envio de mails en Odoo. Los mensajes pueden crearse por el envio desde Odoo o por respuestas de los propios clientes. De esta manera quedan registrados para su control todos los mensajes enviados y recibidos a trav茅s de la integraci贸n con esta API.

鈫 Envio de mensajes: Cuando se envia un mensaje de WhatsApp, se hace una request a la API de 360 Dialog, la que responde un id de mensaje y un codigo de respuesta, que puede ser exitoso o no. Esto genera un registro en la tabla wa.message, registrando el id, la respuesta de la API y si es un mensaje de respuesta o a partir de una plantilla.

鈫 Alerta por errores en env铆o: en el caso de que el envio falle, se va a generar una alerta para la persona que lo env铆o para que este al tanto del fallo del envio y lo corrija en caso de ser posible.

鈫 Actualizaci贸n de mensajes: 360 Dialog env铆a cambios de estado del mensaje a un webhook que debe procesar dicha informaci贸n. En la tabla de wa.message, se van a trasladar los cambios de estado del mensaje. Hay confirmaciones de lectura.

鈫 Recepcion de respuestas: en el webhook anterior, seg煤n la documentacion del proveedor, se recibe informaci贸n sobre las respuestas a los mensajes de los clientes. Esto debe ser registrado en la tabla wa.message y notificar al comercial en el documento desde el que se envio el mensaje.


Objetivo

Desarrollar la integraci贸n entre Odoo y WhatsApp con el objetivo de poder automatizar el env铆o de mensajes a clientes y oportunidades comerciales

Consideraciones t茅cnicas

Para enviar mensajes a trav茅s de whatsapp, se necesita una interacci贸n con su API, o con alg煤n servicio que se conecte con dicha API. Para esto, tenemos algunos caminos alternativos:

  • Utilizaci贸n del proyecto de WhatsApp de ChatWithIO: Cesar puso a disposici贸n un proyecto construido en php, el cual tiene la funci贸n de enviar una plantilla de mensaje a uno o varios n煤meros telef贸nicos. Para conectarse con esto, parece haber una api key. 
  • Conexi贸n directa v铆a WhatsApp: hay que averiguar si whatsapp tiene una api gratuita para realizar el env铆o de los mensajes. En ese caso podemos desarrollar todo en un modulo de Odoo. El tiempo estimado para esta alternativa depende de la disponibilidad de una api funcional por parte de WhatsApp

Lo m谩s r谩pido y sencillo ser铆a poder utilizar la opci贸n n煤mero 1. Lo primero ser铆a entender como conectarse con este servicio, y una vez que se pudo hacer un env铆o con datos de prueba, la integraci贸n con Odoo es sencillo.  Desde Odoo, se hace una request al end point correspondiente, que se encarga de enviar el mensaje. Desde Odoo, la manera de realizar esa request puede ser de varias maneras, en funci贸n como se quiera utilizar el sistema. Mas adelante se plantean los desarrollos para los casos de uso m谩s comunes.

Para poder probar si el proyecto de ChatWithIO, debo resolver una duda principal: el servicio de php corre en un servidor de dicha empresa o hay que correrlo en un servidor nuestro. En un entorno local, se intent贸 seguir las instrucciones de instalaci贸n del proyecto y hay algunos inconvenientes con el composer. No tengo experiencia con php, por lo que debo iterar e investigar hasta encontrar la soluci贸n. Lo que me hace ruido es la existencia de una API key, y de ciertas plantillas; esto podr铆a significar que el servicio de PHP corre en un servidor de ChatWithIO y solo abr铆a que interactuar con ese endpoint. Para resolver esto, necesitaria algunos d铆as para aprenderlo o un mail/reunion corta con alguno de los desarrolladores para que me orienten como implementar el proyecto.

Caracter铆sticas Soluci贸n

Mas all谩 de la conexi贸n por WhatsApp, se plantean las funcionalidades y algunos detalles de la soluci贸n desde Odoo.

Desarrollar en las plantillas de mensajes, una opci贸n para indicar de que esa plantilla no es de correo sino de WhatsApp. Se modifica el m茅todo de env铆o de mensajes con plantillas de Odoo, haciendo de que en vez de enviar un correo electr贸nico para este tipo de plantillas, se env铆e una request al m茅todo de integraci贸n seleccionado. Se debe tener especial consideraci贸n a de que campo saca el sistema el numero telef贸nico y como lo va a sanitizar para poder ser utilizado sin errores.

Al integrar el WhatsApp a las plantillas de correo electr贸nico, nos da la ventaja de poder utilizar las funcionalidades ya existentes en nuestro sistema:

  • Odoo ya permite en env铆o de 鈥渃orreos electr贸nicos鈥 a partir de plantillas en todos los documentos del sistema. Por lo que los comerciales podr谩n comunicarse al igual que por correo, pero seleccionando este otro tipo de plantillas. Por como se plantea el proyecto de php, estas plantillas no van a ser editables, sino que es el mismo mensaje para todos, y en odoo solo se carga la referencia al codigo de plantilla del servicio externo.
  • Se puede integrar el desarrollo de automatizaciones de envio de mails automatizados. Esto permite definir condiciones bajo las cuales a un registro debe generar el envio de un mensaje, que puede ser por correo o por WhatsApp.

Proximos pasos

鈫 Comprensi贸n de la infraestructura del servicio de ChatWithIO. Resulta fundamental para avanzar comprender si el servicio va a correr en servidor externo, o si en otro servidor. Sea cual sea el caso, este paso termina con un ping al servidor correspondiente, asegurando de que la conexi贸n entre Odoo y esta establecida. Una vez que tengamos esto, el resto no tiene mayor complejidad. 

鈫 Desarrollo de m贸dulo en Odoo: 

  • configurar campos para ingreso de api y direcci贸n de conexi贸n con el servicio externo. 
  • Desarrollo de un nuevo m茅todo atomizado de env铆o de whatsapp
  • Env铆o de mensajes manualmente desde oportunidades, clientes y leads
  • Env铆o de mensajes con la herramienta de automatizaciones de mail

鈫 Instalaci贸n e implementaci贸n: aplicarlo en Roconsa definiendo las automatizaciones deseadas.

1 - 0

Thank You For Your Vote!

Sorry You have Already Voted!

por Chatwith

Ayudamos a peque帽as empresas y aut贸nomos a expandir sus ventas con WhatsApp.