I have a custom intent that allows a user to start a meeting - they don’t have to pick up their phone at all to start/join the meeting. This works perfectly on device - the intent is created, confirmed, and goes to the custom intent handle(intent:completion:)
function where I call completion(StartMeetingIntentResponse(code: .continueInApp, userActivity: userActivity)).
This opens the app and starts the meeting - all hands-free.
When my device is connected via CarPlay, this intent can’t be completed. It gets all the way to where I call completion(StartMeetingIntentResponse(code: .continueInApp, userActivity: userActivity)),
then Siri responds with “Sorry, I can’t do that while you’re driving.” It never makes it to my app delegate, where I have implemented application(_:userActivity:restorationHandler:)
and would expect my app to pick up the activity to start the meeting. Why is this happening?
I have implemented the INStartCallIntent similarly - calling completion(INStartCallIntentResponse(code: .continueInApp, userActivity: userActivity))
and that intent works just fine when connected to CarPlay, but my app has a distinction between calling and meeting so I really need both to work.