A Luup script that semi-automatically fixes [tt]UPnP[/tt] devices imported by MiOS.
Please note that for reasons completely beyond me, MCV inserts a space into the [tt]D_FUP_uuid*.xml[/tt] filename. >:(
Please report [tt]UPnP[/tt] devices for which the script doesn’t work.
Instructions:
[ul][li]Import your remote [tt]UPnP[/tt] device via MiOS.[/li]
[li]Find the corresponding [tt]D_FUP*.xml[/tt] file in [tt]/etc/cmh-ludl[/tt] and decompress it ([tt]pluto-lzo d[/tt]).[/li]
[li]If [tt]SCPDURL, controlURL, eventSubURL[/tt] in the decompressed file are relative [tt]URLs[/tt], use Device Spy to obtain the Base [tt]URL[/tt] for your remote [tt]UPnP[/tt] device (see attachment).[/li]
[li]Modify the user-adjustable variables in [tt]FUD[/tt]: [tt]device_definition_file[/tt] is the [tt]D_FUP*.xml[/tt] filename (without [tt].lzo[/tt]), [tt]device_base_url[/tt] is emtpy (‘’) for [tt]D_FUP*.xml[/tt] files with absolute [tt]URLs[/tt] and is the Base [tt]URL[/tt] obtained from Device Spy for [tt]D_FUP*.xml[/tt] files with relative [tt]URLs[/tt].[/li]
[li]Run [tt]FUD[/tt] from the ‘Test Luup code (Lua)’ window and reload [tt]LuaUPnP[/tt].[/li]
[li]Test it: use [tt]luup.call_action[/tt] or MiOS scenes (‘Advanced’ tab’).[/li][/ul]
Example:
Import [tt]WANDevice - FRITZ!Box Fon WLAN 7170 (UI)[/tt] via MiOS, set [tt]device_definition_file[/tt] to [tt]D_FUP_uuid 75802409-bccb-40e7-8e6b-001C4A500EB5.xml[/tt], set [tt]device_base_url[/tt] to [tt]http://192.168.x.y:49000[/tt], run [tt]FUD[/tt], reload [tt]LuaUPnP[/tt], test device:
error, error_msg, job, arguments = luup.call_action( 'urn:upnp-org:serviceId:WANCommonIFC1', 'GetTotalPacketsSent', {}, 36 )
luup.log( 'HHHH' .. tostring(error) .. '*' .. tostring(error_msg) .. '*' .. tostring(job) .. '*' .. tostring( arguments ) )
for k,v in pairs( arguments )
do
luup.log( 'HHHH ' .. k .. ': ' .. v )
end
Ok, either I am doing something wrong, or the three devices I tried to fix did not work. They were: Sony Blue Ray Player BDP-S580, PlayOn Software, LG 47LW5600.
Please delete the imported [tt]UPnP[/tt] devices, reload [tt]LuaUPnP[/tt], re-import one of your [tt]UPnP[/tt] devices and post (or PM) the corresponding [tt]/etc/cmh-ludl/D_FUP*.xml[/tt] file to this thread.
These xml files has been taken from my ZP100 - thus the references to the ZP100 inside the files. I believe that only the modelname, model description etc are unique to the model. I would expect the actual ServiceList to be the same for a ZP80 etc.
These are from November 2011 - dont know if changes to the firmware of the Zones has changed these though.
Ap15e: That looks to have worked, but I’ve done it from the office, so can’t actually hear anything from here I do at least have controls that I can add from the devices available in the scenes menu, which is an improvement, thanks.
C