Теперь код работает, теперь выполните следующие шаги, чтобы заставить его работать. Если кто-то сталкивается с такой проблемой, пожалуйста, проверьте следующие шаги:
Root причина # 1
В консоли Dialogflow я удалил все ответы по умолчанию в Default Добро пожаловать намерение, которое вызывает вышеуказанную ошибку. Поэтому я добавил ответ по умолчанию и протестировал действие, которое работает нормально. Но ответ от облачной функции не был показан.
Root причина # 2
Попытка использовать встроенный редактор в диалоге и проверить, получает ли эта функция звонил или нет. Попытка включить встроенный редактор, но он не позволяет указать Необходимо предоставить Google Cloud, пожалуйста, refre sh страница . Посмотрел консоль GCP и сравнил другие действия, которые я создал, у каждого действия есть хранилище, но у этого действия нет, поэтому я создал хранилище в Firebase после включения встроенного редактора хранилища (поднял запрос в диалоге, чтобы убедиться, что это из-за Хранение делает встроенный редактор не открытым).
Решение 1
После того, как встроенный редактор открыт, вставьте приведенный выше код и пакет. json файл и разверните код и протестировано, он работает, как ожидалось
Решение 2
Попытался развернуть тот же код с моей машины и включил Webhook вместо встроенного Редактор и протестировал действие, работает как ожидалось код и тестирование не работает, поэтому сравнил обе функции и обнаружил, что функция выполнение не имеет разрешения как показано ниже:
![enter image description here](https://i.stack.imgur.com/SBYwM.png)
Если вы заметили на изображении выше, есть роль с именем allUsers , тогда как в выполнение функция не имеет роли allUsers
![enter image description here](https://i.stack.imgur.com/S4Zgl.png)
А также, если вы посмотрите на панель инструментов функций (dialogflowFirebasefulfillment), вы можете обратите внимание на разницу
![enter image description here](https://i.stack.imgur.com/38ZCZ.png)
выполнение (панель инструментов)
![enter image description here](https://i.stack.imgur.com/EDreC.png)
К чтобы активировать разрешение, нажмите на информационную панель и нажмите Добавить участников и добавьте allUsers , как показано ниже
![enter image description here](https://i.stack.imgur.com/8ITos.png)
Как только это будет сделано, добавьте роль для всех пользователей, нажав Облачные функции и Облачные функции Invoker и нажмите Сохранить.
![enter image description here](https://i.stack.imgur.com/pfGrJ.png)
Теперь вы можете увидеть обновленную панель, как показано ниже:
![enter image description here](https://i.stack.imgur.com/AbpjV.png)
Теперь, если вы протестируете действие, оно вызовет функцию облака. * 11 02 *