Reputation: 3932
I'm working on adding Siri support to a basic shopping list app and starting with INAddTasksIntent. It's infuriating trying to figure out what words can and cannot be used to invoke the intent - I spent multiple days thinking my intent wasn't working at all simply because the phrases I was trying to invoke with don't actually work (see below - it kept going to the Reminders app).
This works:
"Add bacon to the list in AppName"
This doesn't:
"Add bacon in AppName"
But if I say:
"Add bacon to AppName"
Siri responds with
"AppName hasn't added support for that with Siri"
So there's an intent that Siri is recognizing, but which one isn't apparent in any way.
And even worse, if I say:
"AppName, add bacon to the list"
Siri takes that and adds it to the reminders app and announces success. If you weren't looking at the screen you would think it just worked.
So...
1) how can I tell what Intent Siri thinks I'm trying to invoke? Add bacon to AppName is trying to fire something but I'm not sure what - do I have to literally add intents and test until I randomly find it?
2) Is there any way to affect the words that actually invoke the intent? I have added all these phrases in the AppIntentVocabulary.plist file that lives in the app bundle (not the intent extension). It doesn't seem to do anything at all.
3) Is there some resource out there that lists what will invoke each intent? It is all so incredibly opaque.
At this point I don't see how I could release something using the INAddTasksIntent into the wild - half the time it says it worked and sends it to Reminders. That's a nightmare. Does anyone have experience with this - what have you done to make it work acceptably?
Help! Siri sucks!
Upvotes: 4
Views: 149