Я работаю над приложением для Google Home и Google Assistant. Я использую облачные функции firebase для webhook.
Я пытался получить разрешение на push-уведомление и использовал эту ссылку https://developers.google.com/actions/assistant/updates/notifications в качестве руководства. Однако всякий раз, когда я пытаюсь достичь цели обновления, я получаю сообщение об ошибке. Когда я пытаюсь отладить его, я понял, что не могу проникнуть внутрь условия if, и даже если я смогу это сделать, не могу добраться до намерения setup_push. Вот код, который я использовал:
app.intent('Default Welcome Intent', conv => {
conv.ask('Do you want to get update?');
conv.ask(new Suggestions('Alert me of new tips'));
const userInput = conv.input.raw;
if ( userInput === 'Alert me of new tips') {
app.intent('setup_push', (conv) => {
conv.ask(new UpdatePermission({intent: 'sendNotif'})
);
});
}
});
Вот показанная ошибка:
expected_inputs[0].possible_intents[0].input_value_data: The intent the app is asking for permission to send updates for is not found..
Как я могу исправить эту проблему?
да, у меня есть намерение sendNotif. Тем не менее, это намерение не подлежит уведомлению. Но даже если он у меня есть, я не могу достичь намерения setup_push. Как вы думаете, это из-за этого?
Попробую добавить в консоль
Вам удалось заставить его работать? Включили ли вы разрешение push-уведомлений в User Engagement для своего действия? developers.google.com/actions/assistant/updates/…





Начал использовать DialogFlow SDK, изменил его на это и заработал. Я полагаю, проблема заключалась в попытке использовать помощник по разрешению с тем же намерением.
app.intent('Default Welcome Intent', (conv) => {
conv.ask(new UpdatePermission({
intent: 'sendNotif'
}));
});
app.intent('finish_push_setup', (conv) => {
if (conv.arguments.get('PERMISSION')) {
conv.close(`Ok, I'll start alerting you.`);
} else {
conv.close(`Ok, I won't alert you.`);
}
});
У вас есть намерение под названием "sendNotif"? Было ли это настроено в консоли Действия как уведомляемое намерение?