Działania związane z rozmowami rozszerzają możliwości Asystenta Google, umożliwiając programistom tworzenie niestandardowych doświadczeń lub rozmów z użytkownikami Asystenta. W trakcie rozmowy akcja związana z rozmową obsługuje żądania Asystenta i zwraca odpowiedzi z komponentami dźwiękowymi i wizualnymi. Działania związane z rozmowami mogą też łączyć się z usługami zewnętrznymi w celu wprowadzenia logiki konwersacyjnej lub biznesowej przed zwróceniem odpowiedzi.
Użytkownicy mogą na przykład wywołać akcję związaną z rozmową, aby uzyskać odpowiedź od zewnętrznej usługi realizacji zamówień, gdy chcą sprawdzić informacje, uzyskać spersonalizowaną rekomendację lub zrealizować transakcje z wykorzystaniem płatności internetowych.

Przypadki użycia
Działania związane z rozmową sprawdzają się najlepiej w prostych przypadkach użycia, które uzupełniają inne materiały. Dobre akcje konwersacyjne często zaliczają się do tych ogólnych kategorii:
- Na jakie pytania użytkownicy mogą łatwo odpowiedzieć. Działania, które można wykonać, korzystając ze znanych im danych, takich jak godziny lub daty, np. rezerwowanie lotów.
- Szybkie, ale bardzo przydatne Działania. Dzięki nim użytkownicy mogą przez bardzo krótki czas na przykład sprawdzić, kiedy gra ich ulubiona drużyna sportowa.
- Działania, które z natury lepiej nadają się do nagrywania głosu. Zwykle są to rzeczy, które chcesz robić bez użycia rąk, np. ćwiczenia podczas jogi lub lekkich ćwiczeń.
Jak działają akcje dotyczące rozmowy
W przeciwieństwie do tradycyjnych aplikacji mobilnych i komputerowych, które wykorzystują paradygmaty komputerowe, użytkownicy korzystają z Akcji Asystenta, używając naturalnie brzmiących rozmów, w to i z powrotem. Działania związane z rozmową rozpoczynają się, gdy są wywoływane przez użytkownika, i trwają do chwili, gdy użytkownik zdecyduje się zakończyć rozmowę (za pomocą zdefiniowanych wcześniej wyrażeń) lub akcja rozmowy oznacza koniec rozmowy.
Dane wejściowe użytkownika podczas rozmowy są przez Asystenta przekształcane z mowy na tekst oraz przekształcane w żądania JSON na potrzeby przetwarzania języka naturalnego. Są one wysyłane do systemów, które nazywamy realizacją rozmowy.
Realizacja rozmowy analizuje zapytanie użytkownika w uporządkowane dane, przetwarza te dane i zwraca Asystentowi odpowiedź JSON typu webhook. Następnie Asystent przetwarza Twoją odpowiedź i wyświetla ją użytkownikowi.

Stworzenie własnej usługi przetwarzania języka naturalnego może być nie lada wyzwaniem, dlatego dostarczamy Dialogflow. Deweloperzy, którzy nie mogą korzystać z Dialogflow, mogą także udostępnić pakiet Actions SDK jako opcję zapasową z oddzielną, ale powiązaną ścieżką programistyczną.
Gdy skonfigurujesz agenta w Dialogflow, realizacja rozmowy będzie wzmacniana przez funkcje Dialogflow, w tym możliwość korzystania z realizacji Dialogflow. Takie podejście umożliwia odizolowanie realizacji rozmowy od innych usług, których możesz potrzebować, aby zapewnić użytkownikom pożądany efekt.

Tworzenie akcji dotyczącej rozmów
Większość działań związanych z rozmową polega na projektowaniu rozmowy i budowaniu realizacji rozmowy. Potraktuj rozmowę jako interfejs użytkownika Twojej akcji dotyczącej rozmowy. Musisz zastanowić się, jak użytkownicy wywołują Twój projekt Actions, jakie są prawidłowe słowa, które mogą wypowiedzieć w trakcie rozmowy, oraz jak reaguje na nie projekt Actions.
W projekcie Actions podajesz metadane na potrzeby publikowania projektu i określasz metodę realizacji rozmowy. Programiści korzystający z Dialogflow powiązali agenta Dialogflow z projektem, a następnie przeprowadzają realizację za pomocą Dialogflow. W przypadku deweloperów korzystających z pakietu SDK Actions tworzenie realizacji rozmów wymaga kodowania i wdrażania za pomocą formatu webhooka rozmowy.
Podczas projektowania rozmowy zalecamy stosowanie naszych procesów i zasad projektowania. Interfejsy rozmów to wciąż stosunkowo nowa technologia, a poznawanie sprawdzonych metod pozwala zaoszczędzić czas w przyszłości.
Realizacja zamówień przy użyciu Dialogflow
Podczas integracji z agentem Dialogflow agent obsługuje NLU na potrzeby zapytań użytkowników w ramach akcji dotyczącej rozmowy. W tym kroku agent Dialogflow wykona te czynności:
- Analizuje każde przychodzące żądanie od Asystenta na podstawie podanych przez Ciebie wyrażeń treningowych i kontekstu rozmowy.
- Dopasowuje każde żądanie do intencji Dialogflow (nazywanej też zdarzeniem).
- Wyodrębnia parametry do encji Dialogflow.
Twój agent Dialogflow może następnie wywołać własną realizację (wdrożoną jako webhooka), aby wykonać pewne działania, na przykład wywołanie interfejsu API REST lub innej usługi backendu, która generuje odpowiedź zwrotną do Asystenta. Ten webhook jest nazywany też realizacją Dialogflow i wykorzystuje format webhooka Dialogflow.

Tworzenie realizacji rozmów w przypadku korzystania z Dialogflow obejmuje przede wszystkim opracowanie webhooka realizacji Dialogflow. W dokumentacji Actions on Google znajdziesz materiały, które pomogą Ci zaprojektować, skompilować i przetestować webhooka realizacji Dialogflow. Zasoby te obejmują przede wszystkim bibliotekę klienta Node.js i bibliotekę klienta w języku Java.
Podczas tworzenia przy użyciu Dialogflow użyjesz konsoli Dialogflow do utworzenia intencji, encji i wyrażeń szkoleniowych Dialogflow.
Ogólne informacje o integracji Dialogflow znajdziesz w dokumentacji Dialogflow (w języku angielskim).
Realizacja zamówień za pomocą pakietu Actions SDK
Tworzenie realizacji rozmów za pomocą pakietu SDK Actions polega głównie na utworzeniu i wdrożeniu pakietu akcji. Pakiety działań są tworzone w formacie ActionPackage
i wykorzystują format webhooka rozmowy.
Pakiet akcji zawiera wszystkie akcje w danym projekcie Actions.
Asystent wysyła zapytania do użytkowników w celu realizacji rozmowy za pomocą intencji Actions on Google. W przypadku każdej intencji webhook realizacji musi przeanalizować intencję, przetworzyć ją i zwrócić do Asystenta odpowiedź JSON w imieniu użytkownika.
Odpowiedzi
Gdy tworzysz akcję dla Asystenta, Twoje rozmowy są projektowane na różne platformy, np. rozmowy głosowe w przypadku rozmówców aktywowanych głosem lub rozmowy wizualne na platformie obsługiwanej przez Asystenta. Umożliwia to użytkownikom szybkie wykonywanie zadań za pomocą głosu lub treści wizualnych.
Podczas tworzenia realizacji zamówienia możesz wybierać spośród różnych angażujących typów odpowiedzi, które Asystent może przedstawić użytkownikom. Mogą to być dymki czatu zawierające prosty tekst, odpowiedzi multimedialne, karuzele, a nawet HTML z użyciem interaktywnego obszaru roboczego.
Dalsze kroki
Wykonaj instrukcje z ćwiczenia z programowania dla Asystenta Google (poziom 1), w którym znajdziesz szczegółowe instrukcje rozpoczynania tworzenia pierwszej akcji dotyczącej rozmowy.
Następnie możesz przejść do naszych przewodników dotyczących tworzenia własnej realizacji rozmów za pomocą Dialogflow lub za pomocą pakietu Actions SDK. Możesz też zapoznać się z tymi dodatkowymi zasobami dotyczącymi tworzenia akcji dotyczących rozmów:
- Repozytorium Actions on Google na GitHubie: przykładowy kod i biblioteki.
- r/Google AssistantDev: oficjalna społeczność Reddit dla programistów pracujących z Asystentem Google.