Cómo configurar una cuenta de Aplicaciones Externas
¿Para qué sirve una aplicación externa?
Esta configuración es de gran utilidad para empresas que hayan desarrollado sus propias aplicaciones de chat, completamente integradas a sus distintos sistemas y portales, como ser pagina web o aplicaciones móviles.
¿Cómo se configura?
Para dar de alta de una cuenta de aplicaciones externa se deberá ingresar en la plataforma Contactus de Callcenter e ingresar al punto de menú Redes Sociales > Aplicaciones Externas. Al ingresar se encontrará con una grilla donde figuran todas las cuentas dadas de alta, para ingresar una nueva cuenta deberá presionar +Agregar.
Completar una descripción de la cuenta y la imagen con la que aparecerá en el gestor.
En Webhook, indicar la URL (NO OBLIGATORIO) a la que Neotel enviará notificaciones de respuesta. Esto permitirá que Neotel notifique por este medio los mensajes salientes desde la plataforma (mensajes enviados por los agentes).
Presionando el botón Obtener Credenciales, cargará el Id aplicación y el Token, las cuales serán utilizadas para sincronizar con nuestra solución.
¿Cómo se consume?
IMPORTANTE:
Para cada llamado al Request, se deberá informar el Application Id y el Token.
Estos datos deben viajar en el header del Request.
Ejemplo: ApplicationId = VALOR AccessToken=VALOR
Para enviar mensajes desde la aplicación externa, se debe consumir con los siguientes endpoint:
Envío 1 mensaje
https://webhook.neotel.com.ar/NeoWebhookTest/api/ExternalApplication/SendMessage
{
"id": null,
"creationTime": "0001-01-01T00:00:00",
"text": null,
"contactId": null,
"contactName": null,
"contactLastName": null,
"contactEmail": null,
"contactImgProfile": null,
"observations": null,
"crm": 0,
"crmId": null,
"externalId": null,
"isInbound": false,
"accountId": null,
"attachment": null
}
{
"messageId": null,
"id": null,
"creationTime": "0001-01-01T00:00:00",
"fileName": null,
"base64Content": null,
"type": null
}
Envío N mensajes
https://webhook.neotel.com.ar/NeoWebhookTest/api/ExternalApplication/Send
[{
"id": null,
"creationTime": "0001-01-01T00:00:00",
"text": null,
"contactId": null,
"contactName": null,
"contactLastName": null,
"contactEmail": null,
"contactImgProfile": null,
"observations": null,
"crm": 0,
"crmId": null,
"externalId": null,
"isInbound": false,
"accountId": null,
"attachment": null
},
{
"id": null,
"creationTime": "0001-01-01T00:00:00",
"text": null,
"contactId": null,
"contactName": null,
"contactLastName": null,
"contactEmail": null,
"contactImgProfile": null,
"observations": null,
"crm": 0,
"crmId": null,
"externalId": null,
"isInbound": false,
"accountId": null,
"attachment": null
}]
Descripción de objetos entidad Mensaje
Propiedad | Tipo dato | Obligatorio | Descripción |
---|---|---|---|
"id" | String | X | Identificador único del mensaje |
"creationTime" | DateTime | X | Fecha y hora de generación de mensaje |
"text" | String | X* | Mensaje de texto. *Es obligatorio si no se envía "attachment" |
"contactId" | String | X | Identificador único del contacto |
"contactName" | String | X | Nombre del contacto |
"contactLastName" | String | Apellido del contacto | |
"contactEmail" | String | E-mail del contacto | |
"contactImgProfile" | String | URL de la imagen de perfil del contacto | |
"observations" | String | Campo observaciones | |
"crm" | Int | Número del CRM al cual está asociada la campaña | |
"crmId" | String | Identificador de contacto dentro del CRM de Neotel | |
"externalId" | String | Identificador del mensaje dentro del sistema de Neotel | |
"isInbound" | Bool | Dirección del mensaje. "1" entrante, "0" saliente | |
"accountId" | String | X | Identificador de la cuenta externa. Provisto por la pantalla de configuración |
"attachment" | ExternalAttach | X** | Adjunto. **Es obligatorio si no se envía "text" |
Descripción de objetos entidad Attachment
Propiedad | Tipo dato | Obligatorio | Descripción |
---|---|---|---|
"messageId" | String | X | Identificador único del mensaje. Debe coincidir con la propiedad "Id" de la entidad mensaje. |
"id" | String | X | Identificador único del Attachment. |
"creationTime" | DateTime | X | Fecha y hora de generación de mensaje. Debe coincidir con la propiedad "creationTime" de la entidad mensaje. |
"fileName" | String | X | Nombre del archivo adjunto. |
"base64Content" | String | X | Representación del archivo en base 64. |
"type" | String | X | Formato del archivo |
Recepción de mensajes
Se podrá configurar el Webhook dentro de la creación de la cuenta, donde la plataforma automáticamente enviará los mensajes con el mismo formato que el saliente.
También se podrá consultar por los mensajes entrantes consumiendo los siguiente Endpoint:
https://webhook.neotel.com.ar/NeoWebhookTest/api/ExternalApplication/GetNewMessages (devuelve todos los mensajes nuevos)
https://webhook.neotel.com.ar/NeoWebhookTest/api/ExternalApplication/GetMessages (recibe como parámetro fecha desde y hasta)