aboutsummaryrefslogtreecommitdiff
path: root/src/sound-service.xml
blob: 12ed03e45ae8ec38f884bf57df11deab41208d9f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node name="/org/ayatana/indicator/sound">
  <interface name="org.ayatana.indicator.sound">
    <method name = "SetSinkVolume">
        <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="sound_service_dbus_set_sink_volume"/>
        <arg type='u' name='volume_percent' direction="in"/>
    </method>

    <method name = "GetSinkVolume">
        <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="sound_service_dbus_get_sink_volume"/>
        <arg type='d' name='volume_percent_input' direction="out"/>
    </method>

    <method name = "GetSinkMute">
        <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="sound_service_dbus_get_sink_mute"/>
        <arg type='b' name='mute_input' direction="out"/>
    </method>

    <method name = "GetSinkAvailability">
        <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="sound_service_dbus_get_sink_availability"/>
        <arg type='b' name='availability_input' direction="out"/>
    </method>

<!-- Will need to hook up another signal which monitors for volume change 
Our respective UI element should listen to this and therefore will be updated with accurate setting-->
<!-- Triggered when a sink is muted but the input has been sent to that sink -->
    <signal name="SinkInputWhileMuted">
      <arg name="block_value" type="b" direction="out"/>
    </signal>
    
    <signal name="SinkVolumeUpdate">
      <arg name="volume_percent" type="u" direction="out"/>
    </signal>

    <signal name="SinkMuteUpdate">
      <arg name="mute_value" type="b" direction="out"/>
    </signal>

    <signal name="SinkAvailableUpdate">
      <arg name="available_value" type="b" direction="out"/>
    </signal>

  </interface>
</node>