@zip will need to have a look at this. I think I can see what is happening, but have no idea why.
The change actually occurs prior to the connection reset you mention:
- Code:
2013-10-01 23:02:06,045 DEBUG [DiscoverySSDPMessageListener] Received a valid NOTIFY (ssdp:alive) message from Renderer 00000000-0000-1010-8000-000000000000 from address /192.168.1.200:52323
2013-10-01 23:02:06,058 DEBUG [RendererManager] Retrieve device description from http://192.168.1.200:52323/dmr.xml
2013-10-01 23:02:06,404 DEBUG [DiscoverySSDPMessageListener] Received a valid NOTIFY (ssdp:alive) message from Renderer 00000000-0000-1010-8000-000000000000 from address /192.168.1.200:52323
2013-10-01 23:02:06,529 DEBUG [RendererManager] Looking for a renderer profile for: friendly name = 'BRAVIA KDL-32EX43B', model name= 'KDL-32EX43B', model number = 'null', manufacturer = 'Sony Corporation', product code = 'null', server name = 'Linux/2.6 UPnP/1.0 KDL-32EX43B/1.7'
2013-10-01 23:02:06,530 DEBUG [RendererDAOImpl] Reading a Renderer with ip address 192.168.1.200
2013-10-01 23:02:06,531 DEBUG [RendererDAOImpl] Deleting a Renderer (uuid = 00000000-0000-1010-8000-544249b39ee3)
2013-10-01 23:02:06,598 DEBUG [RendererDAOImpl] Creating a new Renderer (uuid = 00000000-0000-1010-8000-000000000000)
2013-10-01 23:02:06,750 INFO [RendererManager] Stored a new renderer: uuid='00000000-0000-1010-8000-000000000000', name = 'KDL-32EX43B', ipAddress='192.168.1.200', profile = '1'
2013-10-01 23:02:06,750 DEBUG [RendererManager] Adding renderer Renderer [uuid=00000000-0000-1010-8000-000000000000, ipAddress=192.168.1.200, name=KDL-32EX43B, profileId=1, manuallyAdded=false, forcedProfile=false, enabled=true, accessGroupId=1] to list of active renderers
2013-10-01 23:02:13,556 DEBUG [RendererDAOImpl] Retrieving list of all stored renderers
If I read this correctly, Serviio receives a keep alive message from the TV, it then retrieves it's description and then looks for the TV in its existing list of renderers. It does not find it, so it deletes the previous (correct) renderer on the .200 IP address and replaces it with a renderer for this (what it sees as a) new device.
If you look at the first time it
correctly found the renderer (earlier in the log) you see:
- Code:
2013-10-01 22:58:32,815 DEBUG [RendererManager] Looking for a renderer profile for Http headers: [Host: 192.168.1.5:8895,Date: Tue, 01 Oct 2013 21:58:27 GMT,User-Agent: UPnP/1.0,X-AV-Physical-Unit-Info: pa="BRAVIA KDL-32EX43B";,X-AV-Client-Info: av=5.0; cn="Sony Corporation"; mn="BRAVIA KDL-32EX43B"; mv="1.7";]
2013-10-01 22:58:32,818 DEBUG [RendererDAOImpl] Reading a Renderer with ip address 192.168.1.200
2013-10-01 22:58:33,168 DEBUG [DeviceDescriptionRequestHandler] Sending DeviceDescription XML back using profile 'Sony Bravia TV (2010)'
I am wondering if this is occurring because the first time it the model name is detected as a "BRAVIA KDL-32EX43B" and the second as a "KDL-32EX43B"?
zip will need to look at this and see if it is the issue, and if so, why its detected one way the first time, and another way the second.
ps. You
may be able to work around the issue by changing the profile so that it automatically detects the correct profile for either model name for the device - change (in the
sony2010 profile within
profiles.xml):
<FriendlyName>BRAVIA KDL-\d{2}[EHLNPB]X\d[01]\d.*</FriendlyName>
to
<FriendlyName>(BRAVIA KDL-\d{2}[EHLNPB]X\d[01]\d.*)|(KDL-\d{2}[EHLNPB]X\d[01]\d.*)</FriendlyName>
Don't know if this will work (as the friendly name doesn't actually change), so you will need to test (this assumes my theory about the changing model name is correct). After changing the profile, remember to restart the Serviio service (or your PC).