Съдържание:

Създаване на персонализирани действия за Google Асистент: 12 стъпки
Създаване на персонализирани действия за Google Асистент: 12 стъпки

Видео: Създаване на персонализирани действия за Google Асистент: 12 стъпки

Видео: Създаване на персонализирани действия за Google Асистент: 12 стъпки
Видео: Xiaomi Mi Smart Clock - Глобальная версия с Google Assistant. Озвучка событий в Home Assistant 2024, Юни
Anonim
Image
Image
Задайте разрешенията за профила си в Google
Задайте разрешенията за профила си в Google

Виждайки потенциала на Google Assistant, представен в Google I/O 18, както и Volvo Cars в тяхната информационно -развлекателна система, не можах да устоя на изпробването. Използвах повторно един от по -старите си проекти, VasttraPi и го свързах с Google Assistant. Ако искате да прочетете повече за проекта, ще се радвам, ако разгледате свързаната статия в моя блог: Персонализирани действия за Google Assistant.

В тази инструкция ще преминем през стъпките, необходими, за да стартираме вашето собствено действие за Google Асистент, което ще комуникира със сървъра ви и ще говори с вас, като изброява предстоящите заминавания. Имайте предвид, че няма да използваме SDK, тъй като изпълняваме това изцяло в Google Assistant, а не на нашето собствено устройство. Като цяло ще бъде опростено. Действието ви ще бъде използваемо на устройства, които поддържат Google Асистент, като телефони, таблети, домашни асистенти и носими устройства и дори можете да го споделите, както бихте направили с приложение в Play Store!

Едно от основните предимства на създаването на нещо подобно пред използването на услуги като IFTTT е, че можете да създавате персонализирани отговори във вашия сървър, които ще бъдат прочетени от Google Assistant. В IFTTT комуникацията е, доколкото ме засяга, еднопосочна.

Ще бъдат разгледани следните теми:

  • Създаване на първия ви проект за действие
  • Създаване на персонализирано намерение
  • Създаване на персонализиран обект
  • Задаване на уеб кука за изпълнение на действието ви
  • Настройване на прост REST сървър, написан на Python с Flask, който ще предостави отговорите или „изпълнението“
  • Тестване на вашия проект за действие
  • Пускане на вашия проект за действие

Тук няма да намерите много подробности или теория за различните функции и концепции на Google Асистент. Ако се интересувате от тях, силно препоръчвам да следвате официалния урок или да гледате това видео.

Стъпка 1: Задайте разрешенията за профила си в Google

Преди да започнем, трябва да се уверим, че Google Assistant има подходящите разрешения.

  1. Отидете на Контроли на активността
  2. Уверете се, че следното е активирано:

    1. Активност в мрежата и приложенията
    2. Информация за устройството
    3. Гласова и аудио активност

Стъпка 2: Създайте своето действие

Създайте своето действие
Създайте своето действие
Създайте своето действие
Създайте своето действие
  1. Отидете в конзолата за действия и кликнете върху „Добавяне/импортиране на проект“
  2. Нека наречем този проект Actions "local-traffic-planner".
  3. Кликнете върху „Създаване на проект“.
  4. На следващата страница не избирайте категория и кликнете върху „Пропускане“.
  5. Сега трябва да сте на главната страница на конзолата за действия.

Стъпка 3: Призоваване за действие

Призоваване към действие
Призоваване към действие
Извикване на действие
Извикване на действие

Определете как искате да задействате Google Асистент да започне вашето действие.

  1. Кликнете върху „Решете как да се извика вашето действие“под „Бърза настройка“.
  2. Наречете го „Моят локален плановик за трафик“и кликнете върху „Запазване“.
  3. Щракнете върху подканата „АКТУАЛИЗИРАНЕ НА ИЗОБРАЖЕНИ ИНВОЦИИ“, която се появи след щракване върху запазване.

    Можете също да намерите тази опция под „Информация за директория“

  4. Добавете „Попитай моя локален плановик за трафик“като ново извикване и кликнете върху „Запазване“.

Стъпка 4: Добавете първото си действие

Добавете първото си действие
Добавете първото си действие
Добавете първото си действие
Добавете първото си действие
  1. Кликнете върху „Действия“в лявата лента.
  2. Кликнете върху „ДОБАВЕТЕ ПЪРВАТА си ДЕЙСТВИЕ“.
  3. Изберете „Персонализирано намерение“и след това кликнете върху „Изграждане“.
  4. Ще бъдете отведени на страницата Dialogflow, където ще приложите основната логика.

Стъпка 5: Обучителни фрази за вашето намерение

Обучителни фрази за вашето намерение
Обучителни фрази за вашето намерение
  1. Изберете вашата часова зона и кликнете върху „Създаване“.
  2. На следващата страница оставете съществуващите намерения и кликнете върху „СЪЗДАВАНЕ НАМЕР“.
  3. Дайте на намерението разумно име, т.е. "заминавания".
  4. Отидете на „Фрази за обучение“и кликнете върху „Добавяне на фрази за обучение“.
  5. Използвайте следните фрази, за да обучите модела си, за да може той да интерпретира това, което му казвате:

    1. В момента съм си вкъщи
    2. Засега съм си вкъщи
    3. В момента съм в апартамента ни
    4. Седя си вкъщи
    5. В момента съм близо до работа
    6. Аз съм на работа
    7. Аз съм в офиса
    8. Работа
    9. У дома

Стъпка 6: Обекти

Субекти
Субекти
Субекти
Субекти

Сега сте посочили какво трябва повече или по -малко да се очаква като вход, трябва да дефинираме кои части от входа представляват интерес за нашата бизнес логика, за да могат да бъдат извлечени и подчертани на нашия сървър. В нашия случай искаме да знаем дали потребителят е у дома или на работа, за да можем да отговорим обратно с отпътуванията от конкретната гара. Нека да видим как можем да направим това.

  1. Ако щракнете двукратно върху една или повече думи от фразите за обучение, ще получите списък с предварително дефинирани обекти. Можете да прочетете повече за всеки от тях тук. Като цяло най-подходящият би бил @sys.location, но мисля, че е най-лесно и лесно, ако създадем свой собствен обект, който трябва да наречем @current-location.
  2. Кликнете върху опцията „Обекти“вляво.
  3. Кликнете върху „CREATE ENTITY“.
  4. Задайте името на „текущо местоположение“и дефинирайте две референтни стойности заедно със синонимите им:

    1. У дома

      дом, къща, апартамент, креватче

    2. работа

      работа, офис, Aptiv, кодови мини (хаха, шегувам се)

  5. Кликнете върху „Запазване. За допълнителен ефект можете също да кликнете върху„ Разрешаване на автоматизирано разширяване “, за да дадете на Google Асистент допълнителни свободи да се опита да съпостави повече синоними с вашите референтни стойности.

Стъпка 7: Действие и параметри

Действие и параметри
Действие и параметри
Действие и параметри
Действие и параметри
Действие и параметри
Действие и параметри
Действие и параметри
Действие и параметри

Време е да придадете смисъл на ключовите думи във вашите тренировъчни фрази.

  1. Кликнете върху „Намерения“и след това отидете до персонализираното си намерение, т.е. „заминавания“, ако сте следвали предложенията ми за име.
  2. Превъртете надолу до „Фрази за обучение“.
  3. Щракнете двукратно върху думите, които показват вашето текущо местоположение и изберете маркера @current-location от изскачащия прозорец.
  4. Превъртете надолу до „Действия и параметри“, кликнете върху „управление“
  5. Ако всичко е направено правилно, ще видите вашия нов обект да бъде изброен там.
  6. Поставете отметка в квадратчето „Задължително“, което прави нова колона „Подкани“. Подканите са това, което потребителят ще чуе, ако не е предоставено нищо, което отговаря на очакванията.
  7. Кликнете върху „Определяне на подкани“и вмъкнете нещо като „Не разбрах местоположението ви. Къде се намирате в момента?“.

Стъпка 8: Изпълнение

Изпълнение
Изпълнение
Изпълнение
Изпълнение
Изпълнение
Изпълнение

Сега е време да свържете вашата уеб услуга към действието на Google Асистент. Вашата кука ще бъде извикана, когато това конкретно намерение се задейства и трябва да доведе до изпълнението на това действие. Преди това също искаме да определим намерението си да приключим действието, след като бъде изпълнено.

  1. Отидете на „Отговори“и кликнете върху „ДОБАВЯНЕ НА ОТГОВОР“.
  2. Не добавяйте никакви отговори, просто активирайте „Задайте това намерение като край на разговора“.
  3. Превъртете надолу до „Изпълнение“, кликнете върху „АКТИВИРАНЕ НА ИЗПЪЛНЕНИЕТО“и след това включете „Активиране на повикването на уеб кукичка за това намерение“.
  4. Кликнете върху „Запазване“и след това отидете на опцията „Изпълнение“отляво.
  5. Активирайте опцията „Webhook“и вмъкнете URL адреса, който се „слуша“от вашия уеб сървър.

    Всеки път, когато намерението се задейства, то ще изпрати POST заявка до вашия уебсайт с тялото на заявката, съдържащо JSON обект с текущото местоположение на потребителя

  6. Щракнете върху Запазване.
  7. Сега сме готови да създадем нашата уеб услуга, но преди това нека се уверим, че нашето действие ни посреща по подходящ начин.

Стъпка 9: Добре дошли намерение

Добре дошли намерение
Добре дошли намерение
Добре дошли намерение
Добре дошли намерение

За да персонализираме потребителското изживяване, трябва да създадем подходящ поздрав за нас, когато задействаме действието си.

  1. Отидете на „Intents“и след това кликнете върху „Default Welcome Intent“.
  2. Превъртете надолу до „Отговори“, премахнете съществуващите и вмъкнете каквото искате действие, как да ви посрещне, след като е започнато.
  3. Кликнете върху „Запазване“.

Стъпка 10: Вашата уеб услуга на Python

Вашата уеб услуга на Python
Вашата уеб услуга на Python

Нека направим бърз и мръсен сървър на Python, използвайки Flask. Няма екранни снимки за тази стъпка, но трябва да е доста направо.

  1. Отворете нов раздел и създайте акаунт на pythonanywhere.com
  2. Потвърдете имейла си.
  3. Настройте уеб приложението си, като кликнете върху „Отваряне на уеб раздел“.
  4. Кликнете върху „Добавяне на ново уеб приложение“и изберете „Flask“като вашата уеб рамка на Python.
  5. Изберете Python 3.6 и кликнете върху „Напред“.
  6. Изберете пътя, по който искате вашата "flask_app.py" да се намира. Поставих го директно в домашната ми папка като "/home/your-username/flask_app.py".
  7. Върнете се към главната страница, като кликнете върху логото на Python в горния ляв ъгъл.
  8. Под файлове щракнете върху „flask_app.py“, за да започнете да го редактирате.
  9. Когато се отвори уеб текстовият редактор, поставете следния код и кликнете върху „Запазване“. Общата идея е, че в зависимост от анализирания JSON, идващ от Google Асистент, нашият сървър ще извърши действие (напр. Четене или писане) и ще го докладва като отговор /изпълнение, което трябва да бъде прочетено на потребителя.
  10. Кликнете отново върху „Отваряне на уеб раздела“и след това върху зеления „Бутон за презареждане“.
  11. Вече трябва да имате свой собствен уеб сървър на Python, работещ на „https://your-username.pythonanywhere.com/departures“.

Стъпка 11: Тествайте действието си

Тествайте действието си
Тествайте действието си
Тествайте действието си
Тествайте действието си
Тествайте действието си
Тествайте действието си
Тествайте действието си
Тествайте действието си

Добре, вече сте почти свършили. Нека сега изпробваме целия стек и ще приложим този пример за „Здравей свят“!

  1. Кликнете върху „Интеграции“от лявата странична лента.
  2. Кликнете върху „Настройки за интеграция“под опцията Google Асистент.
  3. Под „Неявно извикване добавете името на намеренията си, т.е.„ заминавания “, за да може да се задейства директно, като кажете нещо като„ Хей Google, говори с моя местен планиращ трафик за заминавания от вкъщи “.
  4. Активирайте промените „Автоматичен преглед“.
  5. Кликнете върху „Тест“, който ще отвори нова страница.
  6. Въведете „Говорете с Моят местен плановик за трафик“.
  7. Вашето действие трябва да бъде извикано, което трябва да ви поздрави с един от предварително зададените отговори на намерението за добре дошли.
  8. След това напишете „Аз съм на работа“. Трябва да се свържете с вашия сървър на Python и отговорът ще бъде прочетен от Google Assistant.

Готино нали? Сега си представете какво можете да правите, като взаимодействате със сензори, задействащи устройства и други приложни програмни интерфейси чрез вашия Google Асистент.

Стъпка 12: Освободете действието си

Освободете действието си
Освободете действието си
Освободете действието си
Освободете действието си
Освободете действието си
Освободете действието си

След като приключите с тестването на вашето действие и то е в добро състояние, е време да споделите любовта със света или, ако това няма смисъл, с приятелите и семейството си.

  1. Върнете се в конзолата си за действия и изберете действието си за планиране на местния трафик.
  2. Под „Пригответе се за внедряване“кликнете върху „Въведете информация, необходима за включване на вашето действие в директорията Actions“.
  3. Въведете кратко описание, по -дълго описание, малко лого, вашите данни за контакт, връзка за политика за поверителност (ако няма да споделяте това публично, просто поставете връзка към вашия уебсайт или нещо такова) и категория.
  4. Превъртете нагоре и кликнете върху „Запазване“.
  5. Кликнете върху опцията „Освобождаване“от лявата лента.
  6. Тук можете да изберете в какво състояние е Вашето действие. Ако не искате да чуете отговора „Нека вземем тестовата версия на Моят локален плановик за трафик“, трябва да направите пълноправно публично издание. Това обаче изисква преглед от Google и няма да бъде разгледано в този урок. Вместо това все още можете да споделите това с до 20 души, като изберете версия на Alpha и ги добавите като алфа тестери.
  7. Добавете алфа тестери, като им изпратите връзка или добавите техните имейли.
  8. Кликнете върху „ИЗПРАТЕТЕ ЗА АЛФА“, поставете отметки в квадратчетата, кликнете върху „ИЗПРАТЕТЕ“и сте готови!

Сега вашето действие е на живо и можете да получите достъп до него и вашите приятели. Забавлявай се!

Ако се интересувате от кода, който използвах, разгледайте проекта на GitHub.

Препоръчано: