问题
I suddenly can't seem to pass parameter values as part of my link to a Google Action anymore. This used to work a few months ago, and I don't believe anything changed at our end.
As an example, I have one parameter in my default Welcome intent called "source", type @sys.any. In the Actions On Google console, I enable the "Link" for actions.intent.MAIN (I can also see the source parameter listed there).
But when using the link, the "source" parameter value never makes it to Dialogflow. I tried links with or without an explicit intent (in theory both should as it's the default intent), but neither work:
https://assistant.google.com/services/invoke/uid/000000c0463873a1?intent=actions.intent.MAIN¶m.source=mariotest
https://assistant.google.com/services/invoke/uid/000000c0463873a1?param.source=mariotest
In both cases, if I inspect "params" in my fulfilment, it's just { source: '' } - and if I make the source parameter required in Dialogflow, then Actions On Google asks for it, suggesting the value in the link is never received.
Any help or pointers welcome!
Tried link with/without explicit intent, tried with the parameter required or optional, all with the same result.
I'd expect the "source" value passed in the link to be picked up by Dialogflow.
回答1:
I'll repost the answer just for future reference:
Welcome intents don't have parameters, since they're typically not invoked with a user phrase. (In a way they are, but the Event is triggered, not due to the training phrases)
In your case you may want to use the Fallback intent to get the raw text query, or create a separate intent.
来源:https://stackoverflow.com/questions/57394570/parameters-in-link-to-my-action-are-ignored-by-dialogflow