Вы делаете пару предположений здесь, но прежде чем я сделаю другие предположения, я хочу кое-что прояснить. Вы сказали, что «у него есть мобильный клиент и сервер Firebase». Я предполагаю, что "сервер firebase" - это то, что хранит заметки пользователя?
Если это так, то вам вообще не нужно устанавливать приложение локально, чтобы помощник мог работать с ним. Вам просто нужно убедиться, что ваше мобильное приложение и ваше действие имеют одинаковую ссылку на учетную запись пользователя, чтобы они могли обновлять и читать из одних и тех же записей в базе данных. Это будет работать везде, где помощник может выполнять действия - на мобильном устройстве или на динамике, таком как Google Home.
В этом случае ваш разговор может выглядеть так:
User: Hey Google, ask Custom Notter to remind me to call David.
Assistant: Getting Custom Notter
[Earcon, indicating your Action is running]
Action: Hi there. I've added a note to call David.
[Earcon, indicating the Action is done]
Это очень простой пример разговора. Другие потоки разговоров также могут захотеть указать, не подключил ли пользователь такое приложение к учетной записи, или вам может потребоваться запросить у них разрешение на использование его учетной записи и т. Д.
Вам потребуется написать код сервера для обработки - все действия взаимодействуют с веб-крюком, запущенным на сервере в облаке. Вы можете написать это на любом языке, который пожелаете, включая Kotlin, и на любом сервисе, который пожелаете, однако Google предоставляет библиотеки и другую поддержку, если вы запускаете его в файле node.js с помощью Firebase Cloud Functions или в Google Cloud.
Все подробности доступны на https://developers.google.com/actions/
Если у вас есть мобильное приложение и вы хотите узнать, как заставить помощника запускать вещи в этом приложении, вы можете посмотреть Действия приложения , которые скоро появятся для Android.