API - Fazer Chamada de uma Origem para Um Destino

Para utilizar a API é necessário um Token de API.


API URL/api/v1/call
MethodPOST

Esta API faz com que a central ligue para uma origem. Após a origem atender a chamada, a central conecta com o destino. 

A API responde uma mensagem em formato JSON como retorno.

Parâmetros Gerais

fromTelefone de Origem no formato DDD+NUMERO (ver casos de uso)
toTelefone de Destino no formato DDD+NUMERO (ver casos de uso)
transferTransferir a chamada para um destino interno no Evolux (opcional)
extension_groupNome do Grupo a ser usado para bilhetagem
audio_idID do Áudio para ser tocado para a Origem antes de chamar (opcional)

max_duration

Duração máxima da chamada em segundos (opcional)
call_infoInformações adicionais sobre a chamada que podem ser tratadas em uma URA. (Opcional)
tokenToken de autenticação da API

Casos de uso dessa API

  1. Conectar um operador a um número destino, podendo ser
    1. Um único número
      Para esse caso de uso serão OBRIGATÓRIOS os seguinters parametros

      fromNome de usuário (login) do operador que será responśavel pela chamada
      toTelefone de Destino no formato DDD+NUMERO
      tokenToken de autenticação da API

      Exemplo

      URL: https://example.evolux.net.br/api/v1/call
      
      HEADER:
      token=<API_TOKEN>
      
      BODY: 
      from=operador1
      to=084999010101
      
      

      Exemplo cURL

      curl -X POST \
        https://example.evolux.net.br/api/v1/call \
        -H 'token: 4a0bc0a9-67b1-46de-8934-7daea549ecb9' \
        -F to=084999010101 \
        -F from=operador1
    2. Multiplos números, nesse caso o operador será conectado ao primeiro número que atender e os demais destinos serão desconectados.
      Para esse caso de uso serão OBRIGATÓRIOS os seguinters parametros

      fromNome de usuário (login) do operador que será responśavel pela chamada
      toTelefone de Destino no formato DDD+NUMERO (podendo ser mais de um separado por virgula)
      tokenToken de autenticação da API

      Exemplo

      URL: https://example.evolux.net.br/api/v1/call
      
      HEADER:
      token=<API_TOKEN>
      
      BODY: 
      from=operador1
      to=084999010101,084999010102
      
      

      Exemplo cURL

      curl -X POST \
        https://example.evolux.net.br/api/v1/call \
        -H 'token: 4a0bc0a9-67b1-46de-8934-7daea549ecb9' \
        -F to=084999010101,084999010102 \
        -F from=operador1
  2. Conectar 2 números externos
    Para esse caso de uso serão OBRIGATÓRIOS os seguinters parametros

    fromTelefone de Destino no formato DDD+NUMERO
    toTelefone de Destino no formato DDD+NUMERO
    extension_groupNome do Grupo a ser usado para bilhetagem 
    tokenToken de autenticação da API

    exemplo

    URL: https://example.evolux.net.br/api/v1/call
    
    HEADER:
    token=<API_TOKEN>
    
    BODY: 
    from=084999010101
    to=084999010102
    extension_group=grupo_de_ramal

    cURL

    curl -X POST \
    https://example.evolux.net.br/api/v1/call \
    -H 'cache-control: no-cache' \
    -H 'token: 4a0bc0a9-67b1-46de-8934-7daea549ecb9' \
    -F from=084999010101 \
    -F to=084999010102 \
    -F extension_group=grupo_de_ramal
  3. Originar para um número externo e transferir para um destino interno.
    Para esse caso de uso serão OBRIGATÓRIOS os seguinters parametros

    toTelefone de Destino no formato DDD+NUMERO (NESSE CASO NÃO PODE SER MULTIPLO)
    transferTransferir a chamada para um destino interno no Evolux
    extension_groupNome do Grupo a ser usado para bilhetagem (esse grupo precisa ter as regras necessárias para o numero discado (to)
    tokenToken de autenticação da API

    Exemplo

    URL: https://example.evolux.net.br/api/v1/call
    
    HEADER:
    token=<API_TOKEN>
    
    BODY: 
    to=084999010101
    transfer=4000
    extension_group=group_de_ramal
    
    

    Exemplo cURL

    curl -X POST \
    https://example.evolux.net.br/api/v1/call \
    -H 'cache-control: no-cache' \
    -H 'token: 4a0bc0a9-67b1-46de-8934-7daea549ecb9' \
    -F to=084999010101 \
    -F transfer=4000 \
    -F extension_group=grupo_de_ramal
    

Retorno

source_uuidIdentificador para consultar o registro detalhado da chamada (CDR) posteriormente.
destination_uuidIdentificador para consultar o registro detalhado da chamada (CDR) posteriormente.


Exemplos de requisição

Estes exemplos partem do princípio que existe um grupo de PABX chamado "PABX Group".


POST

URL: https://example.evolux.net.br/api/v1/call

BODY: 
from=<DDD+NUMBER>
to=<DDD+NUMBER>
extension_group=<GROUP_NAME>
token=<API_TOKEN>


POST - Exemplo sem Transfer

URL: https://example.evolux.net.br/api/v1/call

HEADER:
token=23598db235ba7293572395d87c2a35

BODY:
from=1133334444
to=2122225555
extension_group=PABX%20Group

POST - Exemplo com Transfer

URL: https://example.evolux.net.br/api/v1/call

HEADER:
token=23598db235ba7293572395d87c2a35

BODY:
to=2122225555
transfer=10000
extension_group=PABX%20Group

POST - Exemplo com Call INFO

URL: https://example.evolux.net.br/api/v1/call

HEADER:
token=23598db235ba7293572395d87c2a35

BODY:
to=2122225555
transfer=10000
extension_group=PABX%20Group
call_info=[{"type": "text","value": "exemplo_evolux","label": "cliente"}]

Os dados dos parâmetros devem ser codificados no formato de URL.

cURL - Exemplo sem Transfer

curl -H "Token: 23598db235ba7293572395d87c2a35" -d "from=1133334444&to=2122225555&extension_group=PABX%20Group&token=23598db235ba7293572395d87c2a35" https://example.evolux.net.br/api/v1/call

cURL - Exemplo com Transfer

curl -H "Token: 23598db235ba7293572395d87c2a35" -d "to=2122225555&transfer=10000&extension_group=PABX%20Group" https://example.evolux.net.br/api/v1/call

Exemplos de respostas

Sucesso

{"meta": {"status": 200, "message": "OK"}, "data": {"source_uuid": "f950b305-eC1D-4b02-ba7d-ef1eb4fcad42", "destination_uuid": "aa0226c1-fac5-53fe-c4d9-75d6442cfe66"}}

Falhas

{"meta": {"status": 400, "message": "Missing token."}}
{"meta": {"status": 400, "message": "Extension Group not found."}}
{"meta": {"status": 400, "message": "Cant't find route to destination"}}
{"meta": {"status": 422, "message": "Invalid file"}}

Perguntas Frequentes

Como obter o id do áudio?

Para obter o id do áudio é necessário navegar no menu "Monitoramento > Áudios" 

Enviar um novo áudio ou clicar em Editar  para ver os detalhes do áudio desejado.

O id é o número que aparece na barra do navegador no formato /audio/edit/{id}.