Our app has supported the Siri messaging APIs for some time now and all was working well up until recently. It seems something changed in SiriKit when replying to a read message.
Scenario..
- Ask siri to read unread messages from <appname>
- An unread message is found and read
- Siri calls the SetMessageAttributeIntentHandler to mark the message read
- Siri asks the user if they would like to reply; the user says "yes"
- Siri calls SendMessageIntentHandler resolveRecipients. The recipients property on the INSendMessageIntent are empty!? 😕
- The user is shown the UI for the reply. The UI's To: field is empty. (our app does not provide a custom UI for Siri purposes)
- The user is prompted for a recipient even though they are replying to a read message. Even worse, no matter the recipient given by the user the reply will be sent to the sender of the read message 😮
I found if the SearchForMessagesIntentHandler handle method does not return a conversationIdentifier the sender will show up in the recipients field in step #5. However, we would like to keep the conversationIdentifier. Can someone please clarify how this is supposed to work now?