Skip to content
Christian edited this page Apr 2, 2017 · 8 revisions

The node.raumkernel emits some events you can use to get information when the system changes states or a media renderer was found or is available for play. Following events are available. You may click on each event to get a dteailed description

  • systemHostFound(_host)

    Will be triggerd when the raumfeld host was found in the network

  • systemHostLost()

    Will be triggerd when the raumfeld host disappears from the network. This may happen if the host is beeing shut down or looses the connection to the network

  • deviceListChanged(_deviceList)

    Occurs when one of the device lists was changed. This happens when a renderer or media server is beeing found or was removed. the _deviceList paramter itself is a JSON Object. You may investigate it with the debugger. In fact its a JSON represantive of the raumfeld deviceList xml. This event occurs after the devices are inserted/removed in the internal lists

  • mediaRendererAdded(_deviceUdn, _device)

    This event tells you that a 'normal' media render has been added. In fact this media renderer is not usable by the raumfeld system anymore because they do not want any other renderers to be used with their system. The _deviceUdn parameter is a string and gives the UDN of the device. The _device parameter is the device class/object itself.

  • mediaRendererRaumfeldAdded(_deviceUdn, _device)

    Here we are informred that the system has found a usable raumfled media renderer (a real renderer not a virtual/zone renderer). In fact we do not have to use any of this renderers because all the most stuff can be made with the virtual renderers.
    The _deviceUdn parameter is a string and gives the UDN of the device. The _device parameter is the device class/object itself.

  • mediaRendererRaumfeldVirtualAdded(_deviceUdn, _device)

    When this event is triggerd a "virtual media renderer" was found. A virtual media renderer is a "zone renderer" On this renderer most of the actions can be executed. The virtual renderer combines all renderes in a zone. So if we want to raise the volume on a zone we can use this renderer. Even if we want to raise the volume on a room renderer in the zone we can use the virtual renderer because it has methods for changing the room volumes. The _deviceUdn parameter is a string and gives the UDN of the device. The _device parameter is the device class/object itself.

  • mediaServerAdded(_deviceUdn, _device)

    Will be called when a media server was found. Only non-raumfeld media servers trigger this event. So in fact its nearly useless for controlling the raumfeld system

  • mediaServerRaumfeldAdded(_deviceUdn, _device)

    in this event we can be sure the raumfeld system is online. The host was found and the raumfeld media server too. We now can do actions on the raumfeld media server device

  • mediaRendererRemoved(_deviceUdn, _name)

    Will be called if a non-raumfeld media renderer disappears from the network

  • mediaRendererRaumfeldRemoved(_deviceUdn, _name)

    Will be called if a raumfeld media renderer disappears from the network (only non-virtuals)

  • mediaRendererRaumfeldVirtualRemoved(_deviceUdn, _name)

    Will be called if a virtual raumfeld media renderer (a zone) disappears from the network

  • mediaServerRemoved(_deviceUdn, _name)

    Will be called if a non-raumfeld media serverdisappears from the network

  • mediaServerRaumfeldRemoved(_deviceUdn, _name)

    Will be called if the raumfeld media renderer disappears from the network. Now the system is not ready anymore

  • zoneConfigurationChanged(_zoneConfiguration)

    Will be triggered when the zone configuration changes. That means every time someone adds or removes a room to a zone or is creating a new zone this method will be called. The "_zonConfiguration" parameter is a JSON view of the raumfeld zone configuration xml. Please check the structure with a debugger

  • rendererStateChanged(_mediaRenderer, _rendererState)

    Anytime any state variable of a renderer is changed this method is beeing called The mediaRenderer parameter is the device where the state has changed and the _rendereState parameter contains the state object for the given renderer. In fact it would be better to use "rendererStateKeyValueChanged" event becuas there you know ehich keys have changed.

  • rendererStateKeyValueChanged(_mediaRenderer, _key, _oldValue, _newValue)

    Anytime a state variable of a renderer is changed this event is beeing raised This method may be raised more than one and after this one the "rendererStateChanged" event will be called. Here you know which key has been changed and whats the new and old value. This is very usefull if you, for eg. want to trigger something on volume change. The "_key" is a string wich may be any stat variable of the renderer device. So i can't list them all here. You may have a look at the rendererState object when it is filled or at the upnp specs for media renderer state variables for AVTransport and RenderingControl

  • rendererMediaItemDataChanged(_mediaRenderer, _mediaItemData)

    Will be raised whenever the current played media item is changing.
    This may be if the user selects another track or whenever te track is changeing

  • mediaListDataReady(_listId, _listData)

    Will be raised whenever a media list has changed and its data is ready, except zone playlists. Zone playlists have its own event

  • mediaListDataPackageReady(_id, _listDataPkg, _pkgIdx, _pgkIdxEnd, pkgDataCount)

    Will be raised whenever a media list part has been read

  • mediaRendererPlaylistReady(_rendererUdn, _listData)

    Will be raisedwhenever the zone playlist/medialist has changed.
    This may happen when chaging the sorder of the tracks or adding/deleting items.

Clone this wiki locally