Multiple "OSC Message Received" triggers with distinct address filters show conflict menu instead of running the matching trigger

Hi Andreas,

I'm running into a reproducible issue with the new OSC support (great feature, thank you for adding it!).

Setup:

  • BetterTouchTool 6.697 (also reproduced on 6.635)
  • macOS Sequoia 15.4
  • OSC Receiver enabled on port 8010, listening on 127.0.0.1

Steps to reproduce:

  1. Create two separate "OSC Message Received" triggers (Other Triggers category)
  2. Trigger A: OSC Address Filter = /btt/focus/safari, Action = "Launch Application" β†’ Safari
  3. Trigger B: OSC Address Filter = /btt/focus/digicheckng, Action = "Launch Application" β†’ DigiCheckNG
  4. Both triggers have "Allow Parallel Execution Instead Of Conflict Menu" disabled (default)
  5. Send an OSC message to /btt/focus/safari (e.g. via a widget in Open Stage Control, or any OSC sender) to 127.0.0.1:8010

Expected behavior:
Since the incoming message address exactly matches only Trigger A's filter, only Trigger A should run automatically.

Actual behavior:
BTT shows a conflict/selection menu listing "Starte Safari.app" and "Starte DigiCheck NG.app" (screenshot attached), even though only one trigger's address filter actually matches the incoming message. The address filter doesn't seem to be evaluated before BTT decides there's a conflict β€” it seems to treat any two "OSC Message Received" triggers as potentially conflicting purely by trigger type, not by whether their filters actually match the incoming address.

Workaround currently in use:
Consolidating everything into a single "OSC Message Received" trigger with an empty address filter, followed by manual If (BTTOSCAddress MATCHES "...") / Action / End If blocks for each case. This works reliably, but defeats the purpose of having per-message address filtering and makes the trigger list much harder to maintain as the number of OSC-driven actions grows.

Enabling "Allow Parallel Execution Instead Of Conflict Menu" doesn't fix this either β€” it just runs both triggers' actions simultaneously (e.g. launching Safari and DigiCheckNG), regardless of which address was actually received.

Additional confirmation: I just re-tested this specifically with "Allow Parallel Execution Instead Of Conflict Menu" enabled on both triggers. Sending only /btt/focus/safari now launches both Safari and DigiCheckNG simultaneously, even though DigiCheckNG's trigger filter (/btt/focus/digicheckng) was never matched. So this option doesn't restore correct per-address filtering β€” it just silently runs every "conflicting" trigger instead of showing the menu, which produces incorrect behavior rather than fixing it.

Thanks for looking into this!
Dominik

Thanks for the report! Can you check whether 6.716 works for you? (uploading)
It should now also allow regex in osc paths.

Hi Andreas,

I downloaded the new version and it's working now.

Awesome! I'm thrilled.

I currently have 6 individual triggers. They're all working perfectly.

Thanks so much for the quick response and help!

Dominik