Search code examples
actions-on-googlegoogle-smart-home

Conversational Actions Sunset 2023: Migrating from conversational actions to Smart Home Actions


Short background story

We currently offer a Conversational Action for hundreds of users. We developed this Action in the last three years as a "job" for one of our customers. As we recently found out, we will be affected by the sunset of conversational actions.

Of course we are now looking into how (and even if) we can continue to provide our service to our users. At the moment it seems like the only option would be to create a „Smart Home” Action from scratch.

Our old system components (Dialogflow, WebApp, Conv. Action) will be deprecated and render useless once the sunset is completed.

The suggested „App Actions” wont be feasible as well, as they seem to only be available for Android Apps (no iOS Support - correct me if I'm wrong).

While researching on possible approaches and reading through the docs in order to be able to communicate to our customer, how or if we even will be able to support / continue development on the system, we encountered some questions that seem to not be answered thoroughly in the docs, docs, docs, docs.


So we are hoping to find some folks who already created a Smart Home Action with a "3rd party" Smart Home device -- and could answer some of our questions:

  1. Do „Smart Home Devices” need to have special support for Google Home built into the hardware? Such as bluetooth capabilities for pairing with the Google Home App? (As our customers device does not support bluetooth - only WiFi)
  2. Is it required to connect the device over the Google Home App — or is it also possible to pair the device for example on a website and store the resulting tokens inside of the Google User somehow?
  3. What exactly does the Smart Home OAuth Flow of Google need in order to be able to query the device? For example some deviceId and token? (As our customers accounts support OAuth - but the devices do have a separate authentication mechanism)
  4. Is it possible to add some fields to the "GoogleUser-Object" at a later point in time — for example the deviceId after (externally) pairing the device?
  5. Is it possible for a device (in general) to be configured for multiple „Device Types”? (as it is used for controlling the heating, checking energy consumption, heat domestic water, get outdoor temperatures, etc.) Or can only one device type be selected for any given Smart Home Device?
  6. Does the Smart Home device have to have a built-in functionality in order to sync data to Home Graph API? Or would it be possible for us to periodically query the data from the device on our own (via a cron job) and sync it to Home Graph "manually"?

We already found out the following (for those who wonder):

  1. It is not possible to extract and migrate an existing Conversational Action to a Smart Home Action in order to reuse parts of it.
  2. Our existing Google Dialogflow Agent can't be used with Smart Home Actions - so all progress there will be "lost".

Our top 2 questions probably are the most relevant for us in order to decide if we even can continue our Google Assistant journey.

We appreciate any answer to any of our question!

Thanks in advance and good luck in migrating your conversational actions!


Solution

  • Conversational actions are being discontinued on June 13, 2023. At the moment, the best way for you to keep using your actions after June 13, 2023 is to download your Conversational Actions via the Actions SDK to create your own back-up of the project. News and announcements about the common to-dos for migrating your actions are available on LINK. Please check out the FAQ & Support section of the above link as they contain to-dos on some major concerns among the developer community regarding this transition.