Add message commands to enable/disable jack detection per port
With these patches it is possible to enable or disable jack detection on a port and to set the port state manually. Each card now has a message handler. You can find the path to the message handler with "pactl list message-handlers". Following messages are available:
- get-port-state - get the state of a single port or all ports if "all" is specified as argument
- set-port-state - set the state of a single or all ports (0=unknown, 1=no, 2 = yes)
- set-jack-detection - enable/disable jack detection on a single or all ports
When jack detection is disabled, the port state will change to "unknown". Setting a port state manually will disable jack detection on that port.
Examples:
pactl send-message /cards/alsa_card.pci-0000_02_00.1 get-port-state '"all"' - get state of all ports
pactl send-message /cards/alsa_card.pci-0000_02_00.1 set-jack-detection '{"all":false}' - disable jack detection on all ports
pactl send-message /cards/alsa_card.pci-0000_02_00.1 set-port-state '{"hdmi-output-0":2}' - set hdmi-output-0 to available