passepartoutvpn / passepartout-app

VPN client for Apple platforms.
https://passepartoutvpn.app
GNU General Public License v3.0
772 stars 119 forks source link

Intermittent issue with shortcuts automation #410

Open keeshux opened 6 months ago

keeshux commented 6 months ago

User is trying to automate "Enable VPN" upon leaving a geographic area. User also reports similar issues with another app. Maybe Apple fault?

This automation not always works:

When automation doesn't work, Console says:

Upon shortcut creation:

#1 -[WFActionRegistry createActionsWithIdentifiers:serializedParameterArray:]_block_invoke Couldn't create an action, this action (com.algoritmico.ios.Passepartout.ConnectVPNIntent) is not in the registry

Upon shortcut activation:

#2 -[WFActionRegistry createActionsWithIdentifiers:serializedParameterArray:]_block_invoke_2 Action com.algoritmico.ios.Passepartout.ConnectVPNIntent is missing

It's like the intent is "deleted" by the app after disabling the VPN?

Still works despite message #2...

default 16:32:05.158731+0100 siriactionsd -[ICAppRegistry _appsWithIdentifiers:] Loading apps: {(
"com.algoritmico.ios.Passepartout"
)}
error 16:32:05.159048+0100 siriactionsd -[ICAppRegistry _appsWithIdentifiers:] Failed to load a definition for com.algoritmico.ios.Passepartout
error 16:32:05.160249+0100 siriactionsd -[WFActionRegistry createActionsWithIdentifiers:serializedParameterArray:]_block_invoke_2 Action com.algoritmico.ios.Passepartout.ConnectVPNIntent is missing
default 16:32:05.350275+0100 siriactionsd -[ICAppRegistry _appsWithIdentifiers:] Loading apps: {(
"com.algoritmico.ios.Passepartout"
)}
error 16:32:05.350343+0100 siriactionsd -[ICAppRegistry _appsWithIdentifiers:] Failed to load a definition for com.algoritmico.ios.Passepartout

From INInteraction docs:

Important Do not donate multiple interaction object representing the same user interaction. Each donated interaction should represent a single event that was handled by your app. For example, when sending a message to multiple recipients, a messaging app should donate only one interaction object, and the INSendMessageIntent object included in that interaction should contain the complete list of recipients. The app should not donate separate interactions for each recipient.