Como enviar notificações com o Google Assistant 8 de janeiro de 2024 23:52 Atualizado Atualmente, a integração com o canal Google Assistant está disponível apenas para usuários do tipo Enterprise. Gere uma chave: 1º Passo: Abra esta URL, substituindo “AQUI” pelo Project ID do seu projeto do Actions: a) https://console.developers.google.com/apis/api/actions.googleapis.com/overview?project=AQUI 2º Passo: Se você vir um botão “Enable”, clique nele. Caso não, prossiga para o passo 3. 3º Passo: Abra esta URL, trocando o "AQUI" do final pelo Project ID do seu projeto do Actions: a) https://console.developers.google.com/apis/credentials?project=AQUI 4º Passo: Clique em Create credentials > Service Account Key: 5º Passo: Na caixa de seleção de Service Account, escolha New Service Account. 6º Passo: Dê um nome para a conta como “notifications" e mude o Role para Project > Owner. 7º Passo: Escolha JSON para o key type e clique em Create. Um arquivo JSON com a service account key será baixado para seu computador. 8º Passo: O arquivo vai ser parecido com este: 9º Passo: Copie e cole o conteúdo do arquivo nas configurações avançadas do bot, da seguinte maneira (colocar isso na última tela de configuração do canal): a) Domínio: postmaster@assistant.gw.msging.net b) Chave: ServiceCredentialJson. c) Valor: conteúdo do arquivo baixado. 10º Passo: Crie outra entrada na tabela de configurações avançadas, com a chave sendo DefaultPushClickMessage (colocar isso na última tela de configuração do canal). O valor será a mensagem enviada por padrão para o bot sempre que um usuário clicar em uma notificação push. Não é possível diferenciar qual push foi clicado nem quando. É necessário configurar duas novas actions no aplicativo do Actions On Google. Basta alterar o arquivo actions.json, criado anteriormente, para ter as duas novas ações seguindo o padrão. a) Uma action para tratar a permissão dada ou negada (PERMISSION) e b) Uma action para tratar o clique do usuário em uma notificação do aplicativo (iris.assistant.intent.PUSH_CLICKED). { "actions": [ { "description": "Default Welcome Intent", "name": "MAIN", "fulfillment": { "conversationName": "IRISBot" }, "intent": { "name": "actions.intent.MAIN", "trigger": { "queryPatterns": [ "talk to IRISBot", "I want to talk to IRISBot" ] } } }, { "description": "Permission", "name": "PERMISSION", "fulfillment": { "conversationName": "IRISBot" }, "intent": { "name": "actions.intent.PERMISSION", "trigger": { "queryPatterns": [ "interact with push notification" ] } } }, { "description": "Push Interaction Intent", "name": "PUSH_CLICKED", "fulfillment": { "conversationName": "IRISBot" }, "intent": { "name": "iris.assistant.intent.PUSH_CLICKED", "trigger": { "queryPatterns": [ "interact with push notification" ] } } } ], "conversations": { "IRISBot": { "name": "IRISBot", "url": "https://assistant.gw.msging.net/irisbot-624c5" } }, "locale": "en" } E enviá-lo novamente para o Actions on Google, usando o comando do gactions. Com isso, duas novas actions vão aparecer no painel, em Build > Actions: Entre na nova ação de push interaction e vá para a seção “User engagement”, onde você deve selecionar a opção de querer enviar notificações push. Preencha o “Content title” com o nome de sua preferência (a notificação será exibida usando este nome, que também será usado para pedir permissão de enviar notificações, ex.: “Você gostaria de receber notificações de Nome do seu bot?”). Salve no alto da página, à direita. Entretanto, antes de poder enviar notificações, é necessário pedir a permissão da pessoa e salvar seu id e qual intent será usado para receber as notificações (será o intent PUSH_CLICKED criado aqui em cima), caso a pessoa permita as notificações. Primeiro, pergunte se a pessoa deseja as notificações e, caso ela marque sim, o gateway deve devolver uma response com possible intent da seguinte forma: { "expectedInputs": [ { "inputPrompt": { "richInitialPrompt": { "items": [ { "simpleResponse": { "textToSpeech": "PLACEHOLDER" } } ] } }, "possibleIntents": [ { "intent": "actions.intent.PERMISSION", "inputValueData": { "@type": "type.googleapis.com/google.actions.v2.PermissionValueSpec", "permissions": [ "UPDATE" ], "updatePermissionValueSpec": { "intent": "iris.assistant.intent.PUSH_CLICKED" } } } ] } ], } Para isso será recebida a resposta da pessoa, concedendo ou não a permissão. Devolver alguma mensagem pra pessoa falando que salvou a permissão. Para enviar notificações, deve ser enviada uma custom push message para o Assistant, marcando o usuário desejado no target e mandando o título da notificação: { "customPushMessage": { "userNotification": { "title": "este é um título" }, "target": { "userId": "ABwppHEdPIEOjDg9SSFaUeaV9Uc8JoFDs1Kchrj4RgIS8fauKNfpr3K5ag", "intent": "iris.assistant.intent.PUSH_CLICKED", "locale": "en-US" } } } A notificação vai aparecer da seguinte forma, sendo: a) “este é um título”: título enviado. b) “IRISBot”: Nome setado para a ação, na hora de configurar o user engagement. c) “Mari Ana”: Nome usado para invocar o bot no Assistant Imagem: Imagem do aplicativo escolhida no painel do Actions. Para mais informações, acesse a discussão sobre o assunto em nossa comunidade ou os vídeos no nosso canal. 😃 Artigos relacionados Como enviar notificações via API Active Campaign (Growth) Como enviar SMS via Agendador Como adicionar push notification no BLiP Chat Android Envio de Mensagens Ativas do WhatsApp no Blip Desk Configurando pagamentos no builder do Blip
Atualmente, a integração com o canal Google Assistant está disponível apenas para usuários do tipo Enterprise. Gere uma chave: 1º Passo: Abra esta URL, substituindo “AQUI” pelo Project ID do seu projeto do Actions: a) https://console.developers.google.com/apis/api/actions.googleapis.com/overview?project=AQUI 2º Passo: Se você vir um botão “Enable”, clique nele. Caso não, prossiga para o passo 3. 3º Passo: Abra esta URL, trocando o "AQUI" do final pelo Project ID do seu projeto do Actions: a) https://console.developers.google.com/apis/credentials?project=AQUI 4º Passo: Clique em Create credentials > Service Account Key: 5º Passo: Na caixa de seleção de Service Account, escolha New Service Account. 6º Passo: Dê um nome para a conta como “notifications" e mude o Role para Project > Owner. 7º Passo: Escolha JSON para o key type e clique em Create. Um arquivo JSON com a service account key será baixado para seu computador. 8º Passo: O arquivo vai ser parecido com este: 9º Passo: Copie e cole o conteúdo do arquivo nas configurações avançadas do bot, da seguinte maneira (colocar isso na última tela de configuração do canal): a) Domínio: postmaster@assistant.gw.msging.net b) Chave: ServiceCredentialJson. c) Valor: conteúdo do arquivo baixado. 10º Passo: Crie outra entrada na tabela de configurações avançadas, com a chave sendo DefaultPushClickMessage (colocar isso na última tela de configuração do canal). O valor será a mensagem enviada por padrão para o bot sempre que um usuário clicar em uma notificação push. Não é possível diferenciar qual push foi clicado nem quando. É necessário configurar duas novas actions no aplicativo do Actions On Google. Basta alterar o arquivo actions.json, criado anteriormente, para ter as duas novas ações seguindo o padrão. a) Uma action para tratar a permissão dada ou negada (PERMISSION) e b) Uma action para tratar o clique do usuário em uma notificação do aplicativo (iris.assistant.intent.PUSH_CLICKED). { "actions": [ { "description": "Default Welcome Intent", "name": "MAIN", "fulfillment": { "conversationName": "IRISBot" }, "intent": { "name": "actions.intent.MAIN", "trigger": { "queryPatterns": [ "talk to IRISBot", "I want to talk to IRISBot" ] } } }, { "description": "Permission", "name": "PERMISSION", "fulfillment": { "conversationName": "IRISBot" }, "intent": { "name": "actions.intent.PERMISSION", "trigger": { "queryPatterns": [ "interact with push notification" ] } } }, { "description": "Push Interaction Intent", "name": "PUSH_CLICKED", "fulfillment": { "conversationName": "IRISBot" }, "intent": { "name": "iris.assistant.intent.PUSH_CLICKED", "trigger": { "queryPatterns": [ "interact with push notification" ] } } } ], "conversations": { "IRISBot": { "name": "IRISBot", "url": "https://assistant.gw.msging.net/irisbot-624c5" } }, "locale": "en" } E enviá-lo novamente para o Actions on Google, usando o comando do gactions. Com isso, duas novas actions vão aparecer no painel, em Build > Actions: Entre na nova ação de push interaction e vá para a seção “User engagement”, onde você deve selecionar a opção de querer enviar notificações push. Preencha o “Content title” com o nome de sua preferência (a notificação será exibida usando este nome, que também será usado para pedir permissão de enviar notificações, ex.: “Você gostaria de receber notificações de Nome do seu bot?”). Salve no alto da página, à direita. Entretanto, antes de poder enviar notificações, é necessário pedir a permissão da pessoa e salvar seu id e qual intent será usado para receber as notificações (será o intent PUSH_CLICKED criado aqui em cima), caso a pessoa permita as notificações. Primeiro, pergunte se a pessoa deseja as notificações e, caso ela marque sim, o gateway deve devolver uma response com possible intent da seguinte forma: { "expectedInputs": [ { "inputPrompt": { "richInitialPrompt": { "items": [ { "simpleResponse": { "textToSpeech": "PLACEHOLDER" } } ] } }, "possibleIntents": [ { "intent": "actions.intent.PERMISSION", "inputValueData": { "@type": "type.googleapis.com/google.actions.v2.PermissionValueSpec", "permissions": [ "UPDATE" ], "updatePermissionValueSpec": { "intent": "iris.assistant.intent.PUSH_CLICKED" } } } ] } ], } Para isso será recebida a resposta da pessoa, concedendo ou não a permissão. Devolver alguma mensagem pra pessoa falando que salvou a permissão. Para enviar notificações, deve ser enviada uma custom push message para o Assistant, marcando o usuário desejado no target e mandando o título da notificação: { "customPushMessage": { "userNotification": { "title": "este é um título" }, "target": { "userId": "ABwppHEdPIEOjDg9SSFaUeaV9Uc8JoFDs1Kchrj4RgIS8fauKNfpr3K5ag", "intent": "iris.assistant.intent.PUSH_CLICKED", "locale": "en-US" } } } A notificação vai aparecer da seguinte forma, sendo: a) “este é um título”: título enviado. b) “IRISBot”: Nome setado para a ação, na hora de configurar o user engagement. c) “Mari Ana”: Nome usado para invocar o bot no Assistant Imagem: Imagem do aplicativo escolhida no painel do Actions. Para mais informações, acesse a discussão sobre o assunto em nossa comunidade ou os vídeos no nosso canal. 😃