简体   繁体   中英

Custom INSearchForMessagesIntent vocabulary for SiriKit

With INSearchForMessagesIntent in SiriKit, I'm able to ask: <AppName> list messages in the inbox , which is handled by the INSearchForMessagesIntentHandling handler in IntentHandler.swift . After Siri retrieves the found messages, she asks "Would you like to reply?" I respond with "No" , then the messages are removed with a confirmation message of "There are no messages on < AppName >."

Am I able to use an AppIntentVocabulary or extension to modify this to something like:

<AppName> list articles in <inboxA> thus using the "Articles" keyword instead of "Messages", and use a switch to pull out different lists of articles by the Inbox Identifier requested (eg. InboxA, InboxB, inboxC) ? After the titles for the articles are retrieved, I would not like to ask "Would you like to reply?" and I would not like to remove the found article titles.

I'm not quite sure how to approach this or if it's feasible within the constraints of SiriKit / Intents.

Sadly no. Apple doesn't let you change most of the necessary keywords Siri is looking through when calling an Intent Handler. For messages the keywords 'Search' and 'Messages' are necessary and can't be changed even through custom vocabulary.

For more information, see the Registering custom vocabulary with SiriKit article from the official documentation.

This article goes through an experiment to use the INSearchForMessagesIntent for custom tasks and concludes that at the moment it is not feasible.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM