N|Solid

# Service - Agile

# Descrição

Este serviço é responsável por criar fluxos de atendimento personalizados para cada cliente que entra em contato com a Central de Atendimento.

Antes que o cliente possa escolher alguma das opções padrões de atendimento, o sistema faz uma consulta em alguma API externa e pode direcionar o cliente para fluxos diferentes de atendimento conforme a resposta da API.

Além disto ele pode TAGGEAR a ligação para que o atendente, mesmo sem outro sistema, possa visualizar o nome e ou outro dado identificador do cliente antes de atender a chamada.

A combinação de consultas em APIs diferentes permite criar fluxos complexos de auto-atendimento assim como personalizar o fluxo de cada cliente de uma forma bem granular.

# Diagrama de Operação

N|Solid

# Operação da API

Para fazer a consulta em sua API RestFul o Agile irá fazer uma requisição seguindo os seguintes padrões:

  • HTTP Request
  • Método POST
  • Payload (body) contendo:
{
    callerid: INT,
    user_input: INT
}
1
2
3
4
  • Exemplo:
{
    callerid: "4839548000",
    user_input: "1234"
}
1
2
3
4

Você pode ainda incluir outros campos fixos tanto no Header da Request, quanto no body, como um token de Autenticação, uma chave de categoria ou outro campo que você possa utilizar além dos campos básicos descritos acima. Exemplo: Header

Authorization: Bearer [SEU_TOKEN]
1

Body

{
  callerid: INT,
  user_input: INT,
  partner: "Opens",
  token: "[SEU_TOKEN]"
}
1
2
3
4
5
6

# Resposta esperada pela API

Você precisa definir 2 campos essenciais no serviço: FORWARD_KEY e CALLERID_KEY.

Eles podem ter qualquer chave de identificação, exemplo, digamos que o FORWARD_KEY que irá conter o valor esperado para encaminhamento do cliente seja categoria, então o nome do campo FORWARD_KEY na configuração do serviço deve ser definido como categoria e o cliente será encaminhado para o Fluxo de Atendimento com o mesmo nome do valor retornado neste campo.

{
  categoria: "Cliente Especial"
}
1
2
3

Neste exemplo o sistema irá encaminhar o cliente para um Fluxo de Atendimento com o nome Cliente Especial

O Agile espera como resposta um JSON no payload (body) no seguinte formato:

{
    [FORWARD_KEY]: STRING(opcional),
    [CALLERID_KEY]: STRING(opcional)
}
1
2
3
4

Onde:

  • FORWARD_KEY: é uma string que represente um destino de Regra de Negócio para qual o Agile irá enviar a ligação. Exemplo, caso a consulta seja feita na API de um crm parceiro, onde nesta consulta recebemos uma resposta com vários campos, referente ao cadastro de um determinado usuário. Podemos pegar apenas um destes campos e encaminhar para o destino do valor do campo.

N|Solid

Neste exemplo os valores de retorno do campo status são: adimplente ou inadimplente. Isso siginifica que a chamada será encaminhada para um dos dois fluxos, um para adimplente e outro para inadimplente, dependendo do cadastro consultado. Lembrando que, você deverá ter regras de negócio que trate esses dois valores. Caso ela não seja informada o Agile irá ignorar a ação de encaminhar a ligação e continuará a execução da regra de negócio e executará a próxima ação na regra.

  • CALLERID_KEY: uma string qualquer que será utilizada para mudar o CALLERID(name) da chamada. Ela será vista no display do Softphone ou Telefone IP do Atendente. Caso ela não seja enviada ou esteja em branco (NULL), será mantido o callerid original da ligação.

Exemplo:

N|Solid