Formato JSON
Os gatilhos são representados como objetos JSON com os atributos a seguir.
Nome | Tipo | Apenas leitura | Descrição |
name | cadeia de caracteres | Não | O nome do gatilho |
enabled | inteiro | Não | Define se o gatilho está ativado ou não |
description | cadeia de caracteres | Não | A descrição do gatilho |
definition | objeto | Não | A definição do gatilho. Para obter detalhes, consulte Definições de gatilho, a seguir. |
Definições de gatilho
Observação: as definições não podem ser editadas em Atualizar gatilho.
Para ver descrições detalhadas de cada gatilho, consulte Referência sobre ações e condições de gatilho.
Os gatilhos são definidos usando JSON. Cada gatilho é um objeto JSON com 3 chaves:
Definições de gatilho Chaves | Descrição |
event | (Cadeia de caracteres JSON) Tipo do evento para o qual o gatilho é ativado. Consulte uma lista em Eventos de gatilho. |
condition | (Lista JSON) A condição que deve ser atendida para que o gatilho execute suas ações. Para obter mais detalhes, consulte Tipos de condição. |
action | (Lista JSON List) Lista de ações a serem executadas quando a condição é atendida. Para obter mais detalhes, consulte Ações para gatilhos. |
Eventos de gatilho
Você pode usar os eventos a seguir:
Evento de gatilho | Descrição |
page_enter | Esse evento é iniciado por gatilho quando um visitante carrega o widget de chat |
chat_requested | Esse evento é iniciado por gatilho quando um visitante solicita uma conversa por chat |
chat_message | Esse evento é iniciado por gatilho quando um visitante envia uma mensagem por chat |
Eventos de condição
Você pode usar as condições a seguir:
Tipo de condição | Descrição |
or | Verifica se alguma das condições é atendida |
and | Verifica se todas as condições são atendidas |
Operadores de variáveis de condição
Você pode usar os operadores a seguir com suas variáveis de condição. Os operadores podem não estar disponíveis para diferentes variáveis.
Operador | Descrição |
eq | Igual a |
neq | É diferente de |
lt | Menor que |
gt | Maior que |
lte | Menor ou igual a |
gte | Maior ou igual a |
icontains | Contém |
nicontains | Não contém |
contains | Contém (diferenciação de maiúsculas e minúsculas) |
ncontains | Não contém (diferenciação de maiúsculas e minúsculas) |
regex | Correspondência de expressão regular (diferencia entre maiúscula e minúscula) |
iregex | Expressão regular |
Variáveis de condição
Você pode usar as variáveis a seguir:
Variáveis de data e hora
Tipo | Descrição |
@hour_of_day | Hora do dia (fuso horário UTC), 0 a 23 |
@day_of_week | Dia da semana. 0 = segunda, 6 = domingo |
@visitor_time_on_page | Número de segundos que o visitante ficou na página atual |
@visitor_time_on_site | Número de segundos que o visitante ficou no seu site |
stillOnSite | Atraso (em segundos) antes de verificar a próxima condição |
stillOnPage | Atraso (em segundos) antes de verificar a próxima condição |
Localização do visitante
Tipo | Descrição |
@visitor_ip | Endereço IP do visitante (xxx.xxx.xxx.xxx) |
@visitor_hostname | Nome do host do endereço IP do visitante |
@visitor_city | Cidade de origem do visitante |
@visitor_region | Região de origem do visitante |
@visitor_country_code | Código de duas letras do país do visitante |
@visitor_country_name | País de origem do visitante |
Informações da visita anterior
Tipo | Descrição |
@visitor_previous_visits | Número de vezes que o visitante visitou anteriormente. Novas visitas = 0 |
@visitor_previous_chats | Número de vezes que o visitante conversou por chat com agentes. Novos chats = 0 |
Informações da página
Tipo | Descrição |
@visitor_page_url | URL da página em que o visitante está no momento |
@visitor_page_title | Título da página em que o visitante está no momento |
@visitor_page_count | Número de páginas visualizadas pelo visitante. Primeira página = 1 |
@referrer | URL da página em que o visitante estava anteriormente |
Informações do visitante
Tipo | Descrição |
@visitor_name | Nome do visitante |
@visitor_email | Email do visitante |
@visitor_referrer | URL de referência do visitante (quando ele entrou no site) |
@visitor_search_engine | Mecanismo de pesquisa de referência, se aplicável |
@visitor_search_terms | Termo de pesquisa de referência, se aplicável |
@visitor_tags | Nome da tag (definida pela ação "Definir tag") |
@visitor_triggered | "true" se o visitante tiver sido iniciado por gatilho (definido pela ação "Conjunto acionado") |
@visitor_department_id | Departamento do visitante (definido pela ação "Definir departamento do visitante" ou pela API do Javascript) |
Software/computador do visitante
Tipo | Descrição |
@visitor_user_agent | Cadeia de caracteres de usuário-agente do navegador do visitante |
@visitor_browser | Navegador do visitante |
@visitor_platform | Sistema operacional/plataforma do visitante |
Status online
Tipo | Descrição |
@account_status | Status da sua conta (online/ausente/offline) |
@visitor_status | Status do visitante (online/ocioso/offline) |
Informações relacionadas ao Chat
Tipo | Descrição |
@visitor_requesting_chat | "true" se o visitante estiver solicitando chat |
@visitor_served | "true" se o visitante estiver sendo atendido por agentes no momento |
@department | Departamento (nome) que o visitante escolhe no formulário de solicitação de chat |
@visitor_served | "true" se o visitante estiver sendo atendido por agentes no momento |
@sender | Nome do remetente da mensagem |
@sender_type | Deve ser "agent" ou "visitor" |
@message | A mensagem sendo enviada |
Ações para gatilhos
Ação | Parâmetros | Descrição |
sendMessageToVisitor | Nome de agente e mensagem (cadeia de caracteres) | Envia uma mensagem para o visitante |
setTriggered | True/false (booliano) | Define a sinalização de "iniciado por gatilho" do visitante |
wait | Duração (em segundos) (número) | Espera durante o número de segundos especificado, depois realiza a próxima ação na lista, se o visitante ainda estiver online |
addTag | Nome da tag (cadeia de caracteres) | Adiciona uma tag ao visitante, que é visível na Lista de visitantes do painel |
removeTag | Nome da tag (cadeia de caracteres) | Remove uma tag da sessão do visitante |
banVisitor | Motivo (cadeia de caracteres) | Bane o visitante, com o motivo |
banIp | Motivo (cadeia de caracteres) | Bane o endereço IP do visitante, com o motivo |
setName | Nome do visitante (cadeia de caracteres) | Define o nome do visitante |
setDepartment | Identificação do departamento (número) | Define o departamento atual do visitante |
setNote | Observação (cadeia de caracteres) | Define uma observação para o visitante, visível no painel e persistente |
appendNote | Observação (cadeia de caracteres) | Anexa uma observação no fim da observação atual do visitante |
Obter todos os gatilhos
GET /api/v2/triggers
Enumera todos os gatilhos de uma conta.
Permitido para
Owner
Administrator
Uso de cURL
curl https://www.zopim.com/api/v2/triggers \
-v -u {email_address}:{password}
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"name" : "Good Trigger",
"enabled" : 1,
"description" : "Visitor entered page"
},
{
"name" : "Better Trigger",
"enabled" : 1,
"description" : "Visitor requested chat"
}
]
Obter um gatilho
GET /api/v2/triggers/{trigger_name}
Permite que um responsável/administrador da conta recupere um gatilho pelo nome.
Permitido para
Owner
Administrator
Uso de cURL
curl https://www.zopim.com/api/v2/triggers/{trigger_name} \
-v -u {email_address}:{password}
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
{
"name" : "Good Trigger",
"enabled" : 1,
"description" : "Visitor requested chat",
}
Criar gatilho
POST /api/v2/triggers
Permite que um responsável/administrador da conta adicione um gatilho a uma conta.
Permitido para
Owner
Administrator
Uso de cURL
curl https://www.zopim.com/api/v2/triggers \
-d '{
"name" : "Good Trigger",
"enabled" : 1,
"description" : "Visitor requested chat"
}' \
-v -u {email_address}:{password} \
-X POST -H "Content-Type: application/json"
Exemplo de resposta
HTTP/1.1 201 Created
Content-Type: application/json
{
"name" : "Good Trigger",
"enabled" : 1,
"description" : "Visitor requested chat",
}
Direcionamento de mensagens para uma página/diretório específico
Envia uma mensagem automatizada para uma URL ou um diretório específico.
curl https://www.zopim.com/api/v2/triggers \
-d '{
"name" : "Stripe Shoe",
"enabled" : 1,
"description" : "Send discount code for Stripe Shoe",
"definition" : {
"event" : "page_enter",
"condition" : [
"and",
[
"icontains",
"@visitor_page_url",
"stripshoe"
],
[
"stillOnPage",
20
]
],
"actions" : [
[
"sendMessageToVisitor",
"Timmy",
"We have a discount code for you! Use DISCOUNT10 on your next checkout"
]
]
}
}' \
-v -u {email_address}:{password} \
-X POST -H "Content-Type: application/json"
Para ver a configuração detalhada de gatilhos, visite a página Gatilho da conta
Atualizar gatilho
PUT /api/v2/triggers/{trigger_name}
Permite que um responsável/administrador da conta atualize os dados de um gatilho.
Permitido para
Owner
Administrator
Uso de cURL
curl https://www.zopim.com/api/v2/triggers/{trigger_name} \
-d '{
"name" : "Best Trigger",
"description" : "Visitor requested new chat"
}' \
-v -u {email_address}:{password} \
-X PUT -H "Content-Type: application/json"
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
{
"name" : "Best Trigger",
"enabled" : 1,
"description" : "Visitor requested new chat",
}
Apagar gatilho
DELETE /api/v2/triggers/{trigger_name}
Permite que um responsável/administrador da conta apague um gatilho.
Permitido para
Owner
Administrator
Uso de cURL
curl https://www.zopim.com/api/v2/triggers/{trigger_name} \
-v -u {email_address}:{password} -X DELETE
Exemplo de resposta
HTTP/1.1 204 OK
Content-Type: application/json