Chat
Integração
Inbox de Chat

Chat Inbox

Com o inbox de chat, é possível listar os chats de atendimento abertos, fechados, aguardando, resolvidos ou removidos, separados por categoria.

Status disponíveis

ValorStatus
1OPENED
2WAITING
3SOLVED
4CLOSED
5REMOVED

1. Listar Chats no Inbox

Ao iniciar a aplicação, chamar as duas APIs abaixo para obter os chats de inbox abertos e fechados. Cada chat possui a propriedade inboxStatusId, que representa seu status atual.

1.1 Método

SDKolosAgentChannel.listInboxChats(closed)
EndpointPOST WebApiAgentControl/AgentCommand/ListInboxChats
ListenerolosOn("listinboxchatsresponsetext", callback)

Payload

{
  "AgentId": 0,
  "Closed": true
}
CampoTipoDescrição
AgentIdnumberID do agente
Closedbooleantrue para listar chats fechados; false para chats abertos

1.2 Retorno

O retorno chega via getNextEventChat com eventTypeId = 61. O campo dialogues contém a lista de chats.

{
  "eventTypeId": 61,
  "timestamp": "2026-05-08T14:50:45.0667717-03:00",
  "campaignId": 0,
  "eventData": {
    "agentId": 0,
    "errorCode": 0,
    "errorMessage": null,
    "messageKey": "",
    "messageKeyVars": null,
    "dialogues": []
  },
  "channel": null
}

2. Verificar Janela de Atendimento Ativa

Ao clicar em um chat da lista, é necessário verificar se a janela de atendimento está aberta antes de enviar mensagens ao cliente. Só é possível enviar mensagens enquanto a janela de atendimento estiver ativa.

2.1 Método

SDKolosAgentChannel.getChatServiceWindowActive(conversationId)
EndpointPOST WebApiAgentControl/AgentCommand/GetChatServiceWindowActive
ListenerolosOn("getchatservicewindowactiveresponsetext", callback)

Payload

{
  "AgentId": 0,
  "ConversationId": "xxx"
}
CampoTipoDescrição
AgentIdnumberID do agente
ConversationIdstringID da conversa do chat selecionado

2.2 Retorno

O retorno chega via getNextEventChat com eventTypeId = 67. O campo result indica se a janela de atendimento está ativa.

  • true — janela aberta, envio de mensagens permitido
  • false — janela fechada, envio de mensagens bloqueado
{
  "eventTypeId": 67,
  "timestamp": "2026-05-08T15:07:06.6449342-03:00",
  "campaignId": 0,
  "eventData": {
    "conversationId": "xxx",
    "result": false,
    "agentId": 0,
    "errorCode": 0,
    "errorMessage": "",
    "messageKey": "",
    "messageKeyVars": ""
  },
  "channel": null
}