Страница 2 из 4

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

Добавлено: Пн окт 15, 2018 11:18 am
ovcher
sorochan.ilya писал(а):
Вс окт 14, 2018 1:51 pm
Для версии 2 нужно изменить:...
Если речь о второй версии протокола, со второй версией протокола вылазят баги, типа спонтанного воспроизведения команд.
Например, говоришь "включи свет в прихожей" команда отрабатывается и тут же следом, без каких либо моих команд, в чате вылазит "включи" и это "включи" "благополучно" улетает в мажор.

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

Добавлено: Вт окт 16, 2018 9:52 am
sorochan.ilya
ovcher писал(а):
Пн окт 15, 2018 11:18 am
sorochan.ilya писал(а):
Вс окт 14, 2018 1:51 pm
Для версии 2 нужно изменить:...
Если речь о второй версии протокола, со второй версией протокола вылазят баги, типа спонтанного воспроизведения команд.
Например, говоришь "включи свет в прихожей" команда отрабатывается и тут же следом, без каких либо моих команд, в чате вылазит "включи" и это "включи" "благополучно" улетает в мажор.
У меня пока сбоев не было, но в принципе и не много тестировал

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

Добавлено: Вт окт 16, 2018 10:07 am
vitt76
Новый webhook передает команду в систему и получает ответ быстро и без костылей.
Файл webhook.php нужно положить в корень сайта, НЕ в папку webhook.
В dialogflow обязательно внести новый адрес, а рядом логин и пароль, если у вас включена внешняя авторизация!
Версия протокола v1

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

<?php

//получаем данные
$requestBody = file_get_contents('php://input');

//декодим данные
$json = json_decode($requestBody);
$text = $json->result->resolvedQuery;

//передаем команду в систему
include_once("./config.php");
include_once("./lib/loader.php");
$session = new session("prj");
$db = new mysql(DB_HOST, '', DB_USER, DB_PASSWORD, DB_NAME);
include_once(DIR_MODULES . "application.class.php");
include_once("./load_settings.php");
say(htmlspecialchars($text), 0, 1);

// читаем ответ
$sqlQuery = "SELECT MESSAGE
               FROM shouts
              WHERE MEMBER_ID = 0
              ORDER BY ID DESC
              LIMIT 1";

$speech = current(SQLSelectOne($sqlQuery));

if ($text == 'GOOGLE_ASSISTANT_WELCOME') {$speech ='Привет, чем могу помочь?';}
//отвечаем гуглу
$response = new \stdClass();
$response->speech = $speech;
$response->displayText = $speech;
$response->source = "webhook";
echo json_encode($response);

?>

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

Добавлено: Вт окт 16, 2018 2:10 pm
vitt76
Добавил в код для поддержки старых версий

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

$db = new mysql(DB_HOST, '', DB_USER, DB_PASSWORD, DB_NAME);
если кто качал, перекачайте, спасибо ovcher за бета-тест :)

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

Добавлено: Чт окт 25, 2018 2:36 pm
Strangeman
Можно переносить в библиотеку решений?

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

Добавлено: Чт окт 25, 2018 2:39 pm
vitt76
Да, я поправил шапку, спасибо.

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

Добавлено: Чт ноя 01, 2018 5:02 pm
newz20
vitt76 писал(а):
Чт окт 25, 2018 2:39 pm
Да, я поправил шапку, спасибо.
Поскольку решение готово, прошу для избежания вопросов:
1) поправить на скринах несоответствие путей 'Создаем свою ответную часть webhook, например, файл webhook.php, который обязательно должен лежать в корне сайта.' И последнего скрина (ваш файл лежит еще и в папке webhook, а не в корне сразу)
2) Welcome-action я удалил, чтобы он не мешал, на скрине вроде он присутствует еще или я ошибаюсь?
3) Показать как связать с гуглом и настройка в гугле если нужна.

Это из того что бегло нашел и не хватает.
В идеале Расписать все по полочкам со скринами как должно быть (Там где нужно свое указать так и пишите свое или обведите на скрине) , для самых непонятливых, как я :)

Большое спасибо вам за проделанную работу. :!:

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

Добавлено: Пт ноя 02, 2018 12:24 pm
webms
Всем привет. Т.е. благодаря решением ТС можно общаться с гугл колонкой на русском?

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

Добавлено: Пт ноя 02, 2018 1:41 pm
skysilver
webms писал(а):
Пт ноя 02, 2018 12:24 pm
Всем привет. Т.е. благодаря решением ТС можно общаться с гугл колонкой на русском?
Нет. Колонка русский не понимает пока.

А в целом гугл ассистент давно интегрирован через Коннект. Здесь же альтернативный способ.

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

Добавлено: Ср янв 16, 2019 3:39 pm
pash4uga
А с сервером на винде кто нибудь настраивал?
Как там Apache настроить?