From OpenHome

(Difference between revisions)
Jump to: navigation, search
(Receiver Service Description (XML))
Line 37: Line 37:
== Receiver Service Description (XML) ==
== Receiver Service Description (XML) ==
-
<code>
+
<syntaxhighlight lang="xml">
<?xml version="1.0"?>
<?xml version="1.0"?>
<scpd xmlns="urn:schemas-upnp-org:service-1-0">
<scpd xmlns="urn:schemas-upnp-org:service-1-0">
Line 128: Line 128:
     </serviceStateTable>
     </serviceStateTable>
</scpd>
</scpd>
-
</code>
+
</syntaxhighlight>

Revision as of 15:17, 5 May 2011

Contents

Architectural Overview

The Receiver service provides the means for controlling a Receiver source. If a device's Product service reports a source of type 'Receiver', then that device is guaranteed to bear the Receiver service.

A receiver plays audio broadcast from a sender.

Actions

Sender

Report the Uri and Metadata of the sender this receiver is currently listening to.

SetSender

Set the Uri and Metadata of the sender to listen to.

The Metadata must have originated from a device bearing the Sender service.

The Uri must be the result of applying this receiver's ProtocolInfo to this Metadata.

ProtocolInfo

Report the receiver's protocol info.

TransportState

Report the current transport state, which can be: 'Playing', 'Paused', 'Stopped', or 'Buffering'.

Play

Play audio from the current sender

Stop

Stop playing audio from the current sender

Technical Details

   Domain  : av.openhome.org
   Name    : Receiver
   Version : 1

Receiver Service Description (XML)

<?xml version="1.0"?>
<scpd xmlns="urn:schemas-upnp-org:service-1-0">
    <specVersion>
        <major>1</major>
        <minor>0</minor>
    </specVersion>
    <actionList>
        <action>
            <name>Play</name>
        </action>
        <action>
            <name>Stop</name>
        </action>
        <action>
            <name>SetSender</name>
            <argumentList>
                <argument>
                    <name>Uri</name>
                    <direction>in</direction>
                    <relatedStateVariable>Uri</relatedStateVariable>
                </argument>
                <argument>
                    <name>Metadata</name>
                    <direction>in</direction>
                    <relatedStateVariable>Metadata</relatedStateVariable>
                </argument>
            </argumentList>
        </action>
        <action>
            <name>Sender</name>
            <argumentList>
                <argument>
                    <name>Uri</name>
                    <direction>out</direction>
                    <relatedStateVariable>Uri</relatedStateVariable>
                </argument>
                <argument>
                    <name>Metadata</name>
                    <direction>out</direction>
                    <relatedStateVariable>Metadata</relatedStateVariable>
                </argument>
            </argumentList>
        </action>
        <action>
            <name>ProtocolInfo</name>
            <argumentList>
                <argument>
                    <name>Value</name>
                    <direction>out</direction>
                    <relatedStateVariable>ProtocolInfo</relatedStateVariable>
                </argument>
            </argumentList>
        </action>
        <action>
            <name>TransportState</name>
            <argumentList>
                <argument>
                    <name>Value</name>
                    <direction>out</direction>
                    <relatedStateVariable>TransportState</relatedStateVariable>
                </argument>
            </argumentList>
        </action>
    </actionList>
 
    <serviceStateTable>
        <stateVariable sendEvents="yes">
            <name>Uri</name>
            <dataType>string</dataType>
        </stateVariable>
        <stateVariable sendEvents="yes">
            <name>Metadata</name>
            <dataType>string</dataType>
        </stateVariable>
        <stateVariable sendEvents="yes">
            <name>TransportState</name>
            <dataType>string</dataType>
            <allowedValueList>
                <allowedValue>Stopped</allowedValue>
                <allowedValue>Playing</allowedValue>
                <allowedValue>Waiting</allowedValue>
                <allowedValue>Buffering</allowedValue>
            </allowedValueList>
        </stateVariable>
        <stateVariable sendEvents="yes">
            <name>ProtocolInfo</name>
            <dataType>string</dataType>
        </stateVariable>        
    </serviceStateTable>
</scpd>