Variáveis de integração
Ao escrever expressões, você pode acessar variáveis de integração, que são variáveis de contexto específicas das integrações (como as integrações de bate-papo na Web e de telefone). Todas as variáveis de integração estão contidas no objeto JSON " system_integrations, que você pode acessar usando a seguinte expressão:
${system_integrations}
O objeto " system_integrations tem a seguinte estrutura:
{
"channel": {
"name": "{channel_name}",
"private": {
"user": {
"id": "{user_id}",
"phone_number": "{phone_number}",
"name": "{name}"
}
}
},
"chat": {...},
"voice_telephony": {...},
"text_messaging": {...},
"whatsapp": {...},
"slack": {...},
"facebook": {...},
"teams": {...}
}
channel
Sempre incluído. Este objeto contém informações gerais sobre o canal que está sendo usado para se comunicar com o assistente de IA.
Propriedades
As propriedades contidas no objeto ' private são tratadas como variáveis privadas, que não são incluídas nos registros.
Nome | Tipo | Descrição |
|---|---|---|
| Sequência | O nome do canal que está em uso. Um dos seguintes valores: \n - |
| Sequência | O ID do usuário que está interagindo com o assistente de IA por meio do canal. Este ID é específico do canal e pode ser diferente do ID de usuário que o assistente de IA utiliza para fins de cobrança. Para obter mais informações, consulte IDs de usuário do canal. |
| Sequência | O número de telefone associado ao usuário. Definido pelas integrações de telefone, SMS e WhatsApp. |
| Sequência | O nome do usuário que está interagindo com o assistente de IA por meio do canal. Definido pela integração do ` Microsoft Teams `. |
| Sequência | O ID do objeto da AAD ( Azure ) Active Directory do usuário que está interagindo com o assistente de IA por meio do canal. Definido pela integração do ` Microsoft Teams `. |
Exemplo de JSON
"channel": {
{
"name": "Web chat",
"private": {
"user": {
"id": "anonymous_IBMuid-727c0302-6fd7-4abb-b7ee-f06b4bf30e99"
}
}
}
}
ID do usuário do canal
A propriedade " channel.private.user.id, que é definida pela integração do canal, especifica um ID de usuário para o cliente que é específico do canal. A origem dessa ID de usuário depende do canal:
Canal | ID do usuário do canal |
|---|---|
Chat web | A ID de usuário definida pela instância do bate-papo na Web. Para obter mais informações, consulte Gerenciamento de informações de identidade do usuário no bate-papo na Web. |
Slack | O ID do membro do Slack (por exemplo, ' |
< | A ID do remetente do Facebook (por exemplo, ' |
O número de telefone do cliente. | |
Telefone | O número de telefone do cliente. |
SMS com Twilio | O número de telefone do cliente. |
equipes | O ID do usuário do Teams (por exemplo, " |
chat
Incluído somente se a integração do bate-papo na Web estiver em uso.
Propriedades
Nome | Tipo | Descrição |
|---|---|---|
| Sequência | O nome do navegador, como ' |
| Sequência | A versão do navegador, como ' |
| Sequência | O sistema operacional do computador do cliente, como " |
| Sequência | O código de localidade padrão do navegador, como ' |
| Sequência | O endereço URL da página da Web em que o bate-papo na Web está incorporado, sem incluir nenhum parâmetro de consulta ou hashes. |
| Sequência | A altura e a largura da janela do navegador, como ' |
| Sequência | O conteúdo do cabeçalho da solicitação HTTP |
| Sequência | O endereço IP do computador do cliente. |
| Matriz | An array de endereços IP especificados pelos cabeçalhos de solicitação HTTP |
Exemplo de JSON
"chat": {
"browser_info": {
"browser_name": "chrome",
"browser_version": "109.0.0",
"browser_OS": "Mac OS",
"language": "en-US",
"page_url": "https://us-south.assistant.watson.cloud.ibm.com/crn%3Av1%3Abluemix%3Apublic%3Aconversation%3Aus-south%3Aa%2Fc41400d63d91741a749091dc63574c2c%3Ab696c1e5-7316-4fb0-a61c-664438397e91%3A%3A/assistants/e344fcfe-506c-449f-a182-ebdefe4356ad/actions/actions/custom/edit/action_28584",
"screen_resolution": "width: 1920, height: 1080",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36",
"client_ip_address": "65.191.135.254",
"ip_address_list": [
"65.191.135.254",
" 104.99.56.143",
"10.185.27.136",
"172.30.226.64"
]
}
},
"channel": {
"name": "Web chat",
"private": {
"user": {
"id": "anonymous_IBMuid-727c0302-6fd7-4abb-b7ee-f06b4bf30e99"
}
}
}
Exemplos de expressões
Essa expressão testa se o cliente está usando o navegador Chrome:
${system_integrations}.chat.browser_info.browser_name.equals("chrome")
Você pode especificar essa expressão como o valor de uma variável de sessão booleana, que pode ser usada em uma condição de etapa. Por exemplo, se o seu site for compatível apenas com o Chrome, você poderá ter uma etapa condicionada ao fato de essa variável ser " false e ter o seguinte resultado: I see you aren't using the Chrome browser. Some features of our website work only on Chrome.
Essa expressão testa se a página atual URL contém a string
payment.html:
${system_integrations}.chat.browser_info.page_url.contains("payment.html")
Você pode usar essa expressão em uma condição de etapa para evitar dizer aos clientes que devem navegar para uma página que já estão visualizando. Por exemplo, em uma ação para pagar uma conta, você poderia ter uma etapa condicionada a essa variável como ' false e ter a seguinte saída: First, click **Pay bill** to navigate to the bill payment page.
voice_telephony
Incluído somente se a integração telefônica estiver em uso.
O objeto " voice_telephony contém propriedades de resposta e de solicitação. As propriedades de solicitação são valores definidos pela integração telefônica e fornecem informações sobre a chamada. As propriedades de resposta são valores de entrada que podem ser modificados em suas ações para enviar dados de registro ou para alterar as opções de configuração da chamada.
Propriedades da solicitação (definidas pela integração com o telefone)
As propriedades contidas no objeto ' private são tratadas como variáveis privadas, que não são incluídas nos registros.
Nome | Tipo | Descrição |
|---|---|---|
| Sequência | A ID de chamada SIP associada à chamada telefônica. |
| Sequência | O número de telefone associado ao assistente de IA ao final da chamada. |
| Object | Uma matriz definida pelo usuário de pares de chave/valor contendo cabeçalhos SIP da solicitação SIP ' |
| Sequência | O número de telefone de onde a chamada do cliente foi originada. |
| Sequência | O URI de solicitação SIP de entrada que iniciou a chamada telefônica. |
| Sequência | O URI do cabeçalho " |
| Sequência | O URI do cabeçalho " |
| Booleano | Definido como ' |
| Booleano | Definido como ' |
Exemplo de solicitação em JSON
"voice_telephony": {
"private":{
"user_phone_number":"+18595553456",
"sip_request_uri":"sips:+18885557777@public.voip.us-east.assistant.watson.cloud.ibm.com",
"sip_from_uri":"sips:+18565558576@twilio.com",
"sip_to_uri":"sips:+18885557777@public.voip.us-east.assistant.watson.cloud.ibm.com"
},
"sip_call_id": "Aob2-2743-5678-1234",
"assistant_phone_number":"+18885556789",
"sip_custom_invite_headers": {
"custom-header1": "123",
"custom-header2": "456"
}
}
Propriedades da resposta (definidas pelo assistente de IA )
Nome | Tipo | Descrição |
|---|---|---|
| Número Inteiro | O tempo (em milissegundos) de espera pela resposta final do serviço Speech to Text. Se nenhuma resposta final for recebida antes do tempo limite expirar, a integração do telefone envia uma mensagem ao assistente de IA com a |
| Número Inteiro | O tempo (em milissegundos) de espera por um novo enunciado após a reprodução da última resposta. Se nenhuma resposta for recebida antes do tempo limite expirar, a integração do telefone envia uma mensagem ao assistente de IA que inclui a |
| Object | Um objeto JSON contendo pares de chave/valor a serem armazenados no registro CDR da chamada. Cada vez que esse objeto é enviado, seu conteúdo é mesclado com os dados enviados anteriormente durante a chamada. |
| Número Inteiro | O tempo (em milissegundos) que se deve aguardar até que o assistente de IA conclua o processamento de cada turno da conversa. |
Exemplo de resposta em JSON
"voice_telephony" : {
"post_response_timeout_count":10000,
"final_utterance_timeout_count":30000,
"turn_settings": {
"timeout_count": 5000
},
"cdr_custom_data" : {
"custom_data_1": "data 1",
"custom_data_2": "data 2"
}
}
text_messaging
Incluído somente se a integração de SMS com Twilio estiver em uso.
Propriedades
As propriedades contidas no objeto ' private são tratadas como variáveis privadas, que não são incluídas nos registros.
Nome | Tipo | Descrição |
|---|---|---|
| Sequência | O número de telefone associado ao assistente de IA no final da conversa. |
| Sequência | O número de telefone do qual a mensagem SMS do cliente foi originada. |
Exemplo de JSON
"text_messaging": {
"private":{
"user_phone_number":"+18595553456"
},
"assistant_phone_number":"+18885556789"
}
whatsapp
Incluído somente se a integração WhatsApp estiver em uso.
Propriedades
As propriedades contidas no objeto ' private são tratadas como variáveis privadas, que não são incluídas nos registros.
Nome | Tipo | Descrição |
|---|---|---|
| Sequência | O número de telefone associado ao assistente de IA no final da conversa. |
| Sequência | O número de telefone do qual a mensagem do WhatsApp do cliente foi originada. |
Exemplo de JSON
"whatsapp": {
"private":{
"user_phone_number":"+18595553456"
},
"assistant_phone_number":"+18885556789"
}
slack
Incluído somente se a integração do Slack estiver em uso.
Propriedades
Nome | Tipo | Descrição |
|---|---|---|
| Sequência | O identificador exclusivo da equipe do Slack. |
| Sequência | O identificador exclusivo do canal do Slack. |
Exemplo de JSON
"slack": {
"team_id":"T02F3KE542J",
"channel_id":"C4K3KTTRD"
}
facebook
Incluído somente se a integração com o Facebook estiver em uso.
Propriedades
Nenhuma propriedade adicional.
Exemplo de JSON
"facebook": {}
teams
Incluído apenas se a integração com o Microsoft Teams estiver em uso.
Propriedades
Nome | Tipo | Descrição |
|---|---|---|
| Sequência | O identificador único da conversa do Microsoft Teams. |
Exemplo de JSON
"teams":{
"conversation_id":"a:1ATy08jyGkPGy2QdKIrGZL5u_o6fIUVDRKeIZtkIUAkQDC23FC9S97f18i-UNl-eISAfDWqoQeTbregvSE8jK0LNy6h9VssNcN3CsGG9guMiUB0EeSqxnnEFpAVzbkayR"
}