From OpenHome

Revision as of 08:53, 5 November 2013 by Simonc (Talk | contribs)
Jump to: navigation, search

Contents

Overview

The Sender service indicates the presence of a Songcast sender and provides information concerning that sender.

A Songcast sender broadcasts music on a network in a way that is playable by a Songcast receiver.

If a device's Product service reports an attribute source of type 'Sender', then that device is guaranteed to bear the Sender service. Alternatively, Songcast senders can be discovered independently of the Product service by simply searching for devices bearing the Sender service.

State Variables

Attributes

Reserved for future use.

Audio

true if audio is currently available from this Sender; false otherwise.

Metadata

Provides basic information about the sender in DIDL-Lite format.

<DIDL-Lite xmlns:dc="http://purl.org/dc/elements/1.1/"
           xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/"
           xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/">
    <item id="0" restricted="True">
        <dc:title>[sender_name]</dc:title>"
        <res protocolInfo="ohz:*:*:[m|u]">ohz://239.255.255.250:51972/[device_udn]</res>
        <upnp:albumArtURI>[full_uri]</upnp:albumArtURI>
        <upnp:class>object.item.audioItem</upnp:class>
    </item>
</DIDL-Lite>

Note that protocolInfo takes the form ohz:*:*:m or ohz:*:*:u depending on whether multicast or unicast mode is enabled

PresentationUrl

Reports the url of a presentation page for further information concerning the sender, or for controlling the sender in some application-specific way. If the sender has no presentation page, PresentationUrl is empty.

Status

Reports the status of the sender (normally only for debugging purposes):

  • Sending - currently sending audio over the network
  • Ready - ready to send audio but no listeners
  • Blocked - audio from another sender detected on the same channel (mis-configuration)
  • Inactive - no audio source currently assigned to this sender
  • Disabled - sender disabled by user configuration

Actions

Attributes

Return the value of the Attributes state variable

Audio

Return the value of the Audio state variable

Metadata

Return the value of the Metadata state variable

PresentationUrl

Return the value of the PresentationUrl state variable

Status

Return the value of the Status state variable

Technical Details

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

Sender 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>PresentationUrl</name>
            <argumentList>
                <argument>
                    <name>Value</name>
                    <direction>out</direction>
                    <relatedStateVariable>PresentationUrl</relatedStateVariable>
                </argument>
            </argumentList>
        </action>
        <action>
            <name>Metadata</name>
            <argumentList>
                <argument>
                    <name>Value</name>
                    <direction>out</direction>
                    <relatedStateVariable>Metadata</relatedStateVariable>
                </argument>
            </argumentList>
        </action>
        <action>
            <name>Audio</name>
            <argumentList>
                <argument>
                    <name>Value</name>
                    <direction>out</direction>
                    <relatedStateVariable>Audio</relatedStateVariable>
                </argument>
            </argumentList>
        </action>
        <action>
            <name>Status</name>
            <argumentList>
                <argument>
                    <name>Value</name>
                    <direction>out</direction>
                    <relatedStateVariable>Status</relatedStateVariable>
                </argument>
            </argumentList>
        </action>
        <action>
            <name>Attributes</name>
            <argumentList>
                <argument>
                    <name>Value</name>
                    <direction>out</direction>
                    <relatedStateVariable>Attributes</relatedStateVariable>
                </argument>
            </argumentList>
        </action>
    </actionList>
 
    <serviceStateTable>
        <stateVariable sendEvents="yes">
            <name>PresentationUrl</name>
            <dataType>string</dataType>
        </stateVariable>
        <stateVariable sendEvents="yes">
            <name>Metadata</name>
            <dataType>string</dataType>
        </stateVariable>
        <stateVariable sendEvents="yes">
            <name>Audio</name>
            <dataType>boolean</dataType>
        </stateVariable>
        <stateVariable sendEvents="yes">
            <name>Status</name>
            <dataType>string</dataType>
            <allowedValueList>
                <allowedValue>Enabled</allowedValue>
                <allowedValue>Disabled</allowedValue>
                <allowedValue>Blocked</allowedValue>
            </allowedValueList>
        </stateVariable>
        <stateVariable sendEvents="yes">
            <name>Attributes</name>
            <dataType>string</dataType>
        </stateVariable>        
    </serviceStateTable>
</scpd>