Intertel Conversa publica varios eventos en los puntos finales de webhook configurados. Cada evento tiene su estructura de payload según el tipo de modelo sobre el que actúan. La siguiente sección describe los principales objetos que usamos en Intertel Conversa y sus atributos.
Objetos
Un evento puede contener cualquiera de los siguientes objetos como payload. Los diferentes tipos de objetos admitidos en Intertel Conversa son los siguientes:
Cuenta
El siguiente payload se devolverá para una cuenta.
Copy {
"id": "integer",
"name": "string"
}
Bandeja de entrada
El siguiente payload se devolverá para una bandeja de entrada.
Copy {
"id": "integer",
"name": "string"
}
Se devolverá el siguiente payload para un contacto.
Copy {
"id": "integer",
"name": "string",
"avatar": "string",
"type": "contact",
"account": {
// <...Account Object>
}
}
Usuario
Se devolverá el siguiente payload para un agente/administrador.
Copy {
"id": "integer",
"name": "string",
"email": "string",
"type": "user"
}
Conversación
Se devolverá el siguiente payload para una conversación.
Copy {
"additional_attributes": {
"browser": {
"device_name": "string",
"browser_name": "string",
"platform_name": "string",
"browser_version": "string",
"platform_version": "string"
},
"referer": "string",
"initiated_at": {
"timestamp": "iso-datetime"
}
},
"can_reply": "boolean",
"channel": "string",
"id": "integer",
"inbox_id": "integer",
"contact_inbox": {
"id": "integer",
"contact_id": "integer",
"inbox_id": "integer",
"source_id": "string",
"created_at": "datetime",
"updated_at": "datetime",
"hmac_verified": "boolean"
},
"messages": ["Array of message objects"],
"meta": {
"sender": {
// Contact Object
},
"assignee": {
// User Object
}
},
"status": "string",
"unread_count": "integer",
"agent_last_seen_at": "unix-timestamp",
"contact_last_seen_at": "unix-timestamp",
"timestamp": "unix-timestamp",
"account_id": "integer"
}
Mensaje
Copy {
"id": "integer",
"content": "string",
"message_type": "integer",
"created_at": "unix-timestamp",
"private": "boolean",
"source_id": "string / null",
"content_type": "string",
"content_attributes": "object",
"sender": {
"type": "string - contact/user"
// User or Contact Object
},
"account": {
// Account Object
},
"conversation": {
// Conversation Object
},
"inbox": {
// Inbox Object
}
}
Webhook payload
Copy {
"event": "event_name"
// Attributes related to the event
}
Eventos de webhook
Intertel Conversa admite los siguientes eventos de webhook. Puede suscribirse a ellos mientras configura un webhook en el tablero o usa la API.
conversation_created
Este evento se activará cuando se cree una nueva conversación en la cuenta. El payload para el evento es el siguiente:
Copy {
"event": "conversation_created"
// <...Conversation Attributes>
}
conversation_updated
Este evento se activará cuando haya un cambio en cualquiera de los atributos de la conversación.
Copy {
"event": "conversation_updated",
"changed_attributes": [
{
"<attribute_name>": {
"current_value": "",
"previous_value": ""
}
}
]
// <...Conversation Attributes>
}
conversation_status_changed
Este evento se activará cuando se cambie el estado de la conversación.
Copy {
"event": "conversation_status_changed"
// <...Conversation Attributes>
}
message_created
Este evento se activará cuando se cree un mensaje en una conversación. El payload para el evento es el siguiente:
Copy {
"event": "message_created"
// <...Message Attributes>
}
message_updated
Este evento se activará cuando se actualice un mensaje en una conversación. El payload para el evento es el siguiente:
Copy {
"event": "message_updated"
// <...Message Attributes>
}
Este evento se activará cuando el usuario final abra el widget de Live Chat.
Copy {
"id": ,
"contact": {
// <...Contact Object>
},
"inbox": {
// <...Inbox Object>
},
"account": {
// <...Account Object>
},
"current_conversation": {
// <...Conversation Object>
},
"source_id": "string",
"event": "webwidget_triggered",
"event_info": {
"initiated_at": {
"timestamp": "date-string"
},
"referer": "string",
"widget_language": "string",
"browser_language": "string",
"browser": {
"browser_name": "string",
"browser_version": "string",
"device_name": "string",
"platform_name": "string",
"platform_version": "string"
}
}
}