[Настройка] Альтернативное решение по интеграции с google assistant: настройка собственного webhook для dialogflow

Описание настройки чего либо

Модераторы: immortal, newz20

Аватара пользователя
vitt76
Сообщения: 372
Зарегистрирован: Вс апр 09, 2017 2:36 pm
Благодарил (а): 101 раз
Поблагодарили: 50 раз

Re: [Настройка] Альтернативное решение по интеграции с google assistant: настройка собственного webhook для dialogflow

Сообщение vitt76 » Вт янв 22, 2019 5:38 pm

Боюсь, что никак. В платной версии вебхука в коннекте на каждый запрос выдается "Команда принята", так и надо делать.
За это сообщение автора vitt76 поблагодарили (всего 2):
bat86 (Вт янв 22, 2019 5:43 pm) • rzag (Ср янв 23, 2019 10:18 pm)
Рейтинг: 2.35%
Broadlink + Orange Pi PC ARMBIAN 5.31
rzag
Сообщения: 32
Зарегистрирован: Вт июн 27, 2017 7:01 pm
Благодарил (а): 6 раз
Поблагодарили: 4 раза

Re: [Настройка] Альтернативное решение по интеграции с google assistant: настройка собственного webhook для dialogflow

Сообщение rzag » Ср янв 23, 2019 11:56 am

rzag писал(а):
Сб янв 19, 2019 11:42 pm
Прошу помощи, третий день мучаюся. Сделал все как в первом посте. Но когда гуглу пишу "Говорить с приложением мое тестовое приложение" получаю ошибку: Приложение мое тестовое приложение сейчас не отвечает. Повторите попытку позже.
MalformedResponse
Webhook error (206).
По прямой ссылке на файл webhook.php (доступ к которому есть из вне по https) из браузера получаю следующее:
{"speech":"\u041d\u0435\u0432\u0456\u0434\u043e\u043c\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430...","displayText":"\u041d\u0435\u0432\u0456\u0434\u043e\u043c\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430...","source":"webhook"}
Сами диалоги в dialogflow настроены и работают

Что я не так делаю ?
Отвечу сам себе, может кому пригодится.
На сервере не было сертификата СА, был установлен только PEM и KEY. Поэтому Гугл ассистент отказывался работать. Хотя через браузер вебхук работал без проблем.
rzag
Сообщения: 32
Зарегистрирован: Вт июн 27, 2017 7:01 pm
Благодарил (а): 6 раз
Поблагодарили: 4 раза

Re: [Настройка] Альтернативное решение по интеграции с google assistant: настройка собственного webhook для dialogflow

Сообщение rzag » Ср янв 23, 2019 10:12 pm

vitt76 писал(а):
Вт янв 22, 2019 5:38 pm
Боюсь, что никак. В платной версии вебхука в коннекте на каждый запрос выдается "Команда принята", так и надо делать.
А куда нужно вставлять фразу "Команда принята" ? Если можно, код поправте в первом посте с учетом этой фразы.
bat86
Сообщения: 80
Зарегистрирован: Пн ноя 30, 2015 10:20 pm
Благодарил (а): 25 раз
Поблагодарили: 6 раз

Re: [Настройка] Альтернативное решение по интеграции с google assistant: настройка собственного webhook для dialogflow

Сообщение bat86 » Чт янв 24, 2019 12:39 pm

rzag писал(а):
Ср янв 23, 2019 10:12 pm
vitt76 писал(а):
Вт янв 22, 2019 5:38 pm
Боюсь, что никак. В платной версии вебхука в коннекте на каждый запрос выдается "Команда принята", так и надо делать.
А куда нужно вставлять фразу "Команда принята" ? Если можно, код поправте в первом посте с учетом этой фразы.
я так понимаю, что вместо

Код: Выделить всё

// читаем ответ
$sqlQuery = "SELECT MESSAGE
	FROM shouts
	WHERE MEMBER_ID = 0
	ORDER BY ID DESC
	LIMIT 1";
$speech = current(SQLSelectOne($sqlQuery));
надо

Код: Выделить всё

$speech = "Команда принята";
rzag
Сообщения: 32
Зарегистрирован: Вт июн 27, 2017 7:01 pm
Благодарил (а): 6 раз
Поблагодарили: 4 раза

Re: [Настройка] Альтернативное решение по интеграции с google assistant: настройка собственного webhook для dialogflow

Сообщение rzag » Пт янв 25, 2019 11:44 pm

bat86 писал(а):
Чт янв 24, 2019 12:39 pm
rzag писал(а):
Ср янв 23, 2019 10:12 pm
vitt76 писал(а):
Вт янв 22, 2019 5:38 pm
Боюсь, что никак. В платной версии вебхука в коннекте на каждый запрос выдается "Команда принята", так и надо делать.
А куда нужно вставлять фразу "Команда принята" ? Если можно, код поправте в первом посте с учетом этой фразы.
я так понимаю, что вместо

Код: Выделить всё

// читаем ответ
$sqlQuery = "SELECT MESSAGE
	FROM shouts
	WHERE MEMBER_ID = 0
	ORDER BY ID DESC
	LIMIT 1";
$speech = current(SQLSelectOne($sqlQuery));
надо

Код: Выделить всё

$speech = "Команда принята";
Может есть какое-то другое решение ? Чтобы слышать что Алиса отвечает.
"Команда принята" - это хорошо когда отдаешь мжд одиночную команду, а если диалог строить, то не совсем решение подходит.
Пробовал небольшую задержку sleep делать, чтобы ответ успевал в базу прописаться, но sleep странно работает: останавливается работа всего сервера.
Может кто подскажет, как в скрипте правильно паузу делать ?
Ответить