how can I deeplink an app from Google Assistant?

415 views Asked by At

I'm creating a dialogflow agent integrated with Google Assistant. What I'd like to do is to open an app (my app) when a proper intent is matched. I've seen that actions like Youtube, Spotify etc. are able to do that, for example I can tell the Youtube action "search for cats video" and the Youtube app will open with a list of cats videos. I tried to use the DeepLink class but I then noticed it's deprecated. DeepLink class Is there any way you can suggest me to do this? Thanks in advance

1

There are 1 answers

3
Vijay On

I think you are looking for App Actions. Here are the steps you need to follow:

  1. Find the right built-in intent. actions.intent.OPEN_APP_FEATURE should be the right one for you.

  2. Create and update actions.xml. It should look like

     <?xml version="1.0" encoding="UTF-8"?>
     <!-- This is a sample actions.xml -->
     <actions>
         <action intentName="actions.intent.OPEN_APP_FEATURE">
             <!-- Use url from inventory match for deep link fulfillment -->
             <fulfillment urlTemplate="{@url}" />
             <!-- Define parameters with inventories here -->
             <parameter name="feature">
                 <entity-set-reference entitySetId="featureParamEntitySet" />
             </parameter>
         </action>
         <entity-set entitySetId="featureParamEntitySet">
             <!-- Provide a URL per entity -->
             <entity url="myapp://deeplink/one" name="featureParam_one" alternateName="@array/featureParam_one_synonyms" />
             <entity url="myapp://deeplink/two" name="featureParam_two" alternateName="@array/featureParam_two_synonyms" />
         </entity-set>
     </actions>