[
https://issues.apache.org/jira/browse/FELIX-642?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620254#action_12620254
]
Francesco Furfari commented on FELIX-642:
-----------------------------------------
I forgot to say that you can change the MX paramenter of the M-Search in order
to overcome the inconvenient of receiving only 50/60 announcements.
For example by launching the Tester bundle with the system property
-Dcyberdomo.ssdp.mx=10 , that's 10 seconds to receive MSearch responses
(default is 5), will give time to the Tester to receive 100 replies from the
different BinaryLight devices.
> upnp event delivery to OSGi event listeners fails on random devices after a
> certain period of time
> --------------------------------------------------------------------------------------------------
>
> Key: FELIX-642
> URL: https://issues.apache.org/jira/browse/FELIX-642
> Project: Felix
> Issue Type: Bug
> Components: UPnP Subproject
> Affects Versions: upnp-basedriver-0.8.0
> Reporter: Daniel Felsing
> Priority: Blocker
> Fix For: upnp-basedriver-0.8.0
>
>
> Ok...overall problem is as follows:
> upnp event delivery to OSGi event listeners fails on random devices after a
> certain period of time
> Overall Environment Setup
> -------------------------
> - i have two hosts A and B => A is a Bridge exporting about 20 devices at the
> moment (will get more - it's a X10 like system), B acts as a central server
> for the devices (Smart Home implementation)
> - A is a SensorBridge...and B a central controlpoint importing all those
> devices
> - both ends use upnpbasedriver 0.8 and extra bundle from felix project
> - the two hosts are connected through a Gigabit Switch (NO WIRELESS USED!)
> - all the devices on the server (so the central smart home controller) that
> get imported get refined. They subscribe to the upnp device it refines to get
> notified on event change.
> - on the central server (Host B) i subscribe to UPnP Devices exported by Host
> A using UPnPSubscriber Helper class of the extra bundle
> Issues
> ------
> - "SOMETIMES" on INITIAL subscription not all devices get notified about the
> initial status (devices get found properly though)
> ( see also http://www.mail-archive.com/[EMAIL PROTECTED]/msg01781.html for
> that)
> - after some time of operation random devices begin to fail - that
> means..they do not get notified about event changes anymore, but devices are
> still present (so they are still there as UPnPDevice instances in the central
> server)...
> => i had debug enabled....and as i see i still receive the event-change
> notifies on my Host B (=central server)....if i "resubscribe" to the event
> listener of the failed device everything works again (i dont need to restart
> the whole basedriver or osgi framework to let it work again - just my
> refining driver must be restarted which does the subscription to the devices
> using UPnPSubscriber class) ...
> SO this STILL GETS DELIVERED, but listeners do not get notified about the
> change:
> ================REQUEST=====================
> NOTIFY /evetSub HTTP/1.0
> Content-Type: text/xml; charset="utf-8"
> HOST: 192.168.0.5
> NT: upnp:event
> NTS: upnp:propchange
> SID: uuid:956d-a11b-fe88-e08e
> SEQ: 0
> Content-Length: 165
> Connection: close
> <?xml version="1.0" encoding="utf-8"?>
> <propertyset xmlns:e="urn:schemas-upnp-org:event-1-0">
> <property>
> <Status>off</Status>
> </property>
> </propertyset>
> --------------------------------------------
> Tests:
> -----------------
> - yes - every device exported by the upnpsensorbridge (=Host A) gets found by
> the central server (=Host B)
> - upnp tester of felix project experiences same issues
> - the REFINED devices on the SERVER themselves are using the felix helper
> class to subscribe to the events:
> // create upnp listener - if evented is true
> subscriber = new UPnPSubscriber(bundleContext, this);
> subscriber.subscribeAllServicesOf(super.getUPnPDeviceUDN());
> - i also tried: EventListener test = new EventListener();
> servReg =
> context.registerService(UPnPEventListener.class.getName(), test, null);
> (so not using UPnPSubscriber) => same problem...so UPnPSubscriber may not be
> the root of the problem
> - the upnp device implementation on the host exporting the upnp devices (
> =Host A, sensorbridge) are using the following line to expose event notifier
> // setup event notifier
> notify_switch = new UPnPEventNotifier(context, this,
> switchdevswitchservice, switchDev);
> ================================================================================
> Is it possible that my issue is connected to this one mentioned in the
> cyberlink forum?
> Stefano answered to it in the cyberlink forum!!
> http://sourceforge.net/forum/forum.php?thread_id=1952657&forum_id=258158
> ----------------------------------------------------------------------------------------------------------------------------
> if you need something else please contact me! :)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.