I want to provide users the ability to access a whole bunch of route groups / routes / intents from an "is there anything else?" kind of prompt. But, I want to limit access to some of them based the value of an event handler or parameter (eg client-membership-class=xyz) because some intents are irrelevant to some membership classes, thus I want to prevent them from accessing them.
It isn't practical to limit access by making a flow or page per client-membership-class because there are more "client-membership-classes" than there are routes / intents I need to limit access to.
On that basis you may think I've got the cart before the horse but I don't for 2 reasons:
- the intent fulfilment is client-membership-class specific, populated via webhook.
- the [routes / intents I need to limit access to] represent a very small portion of the overall agent, thus it would be much more work to make (and maintain) one agent per client-membership-class.
Attempted solutions:
- Conditions on routes only prevent fulfilment and can't prevent invocation.
- I'm struggling to find almost anything on using intent "labels". I suspect a label can not be used in a scenario to disable an intent (?).
I'm open to a complex solution if it can be achieved via webhook during a session.
Any ideas would be much appreciated !