Hi, I am prototyping a gateway app that can discover multiple thermostat devices, each device can send overheat signal. The gateway app maintains multiple proxy objects, one for each device. Each proxy object register its own overheat signal handler. On the thermostat device, I pass a valid session id (instead of 0) to the Signal() call, hoping that the signal will be sent only to the proxy object connecting to the session (I also found Java example that indicates that passing sessionId works, but my code is using Windows 7 C++ SDK). To my surprise, the signal is sent to all proxy objects. I tried other ways to get the source of the signal and 'route' it to the correct proxy, e.g. tried calling message->GetSender() in the signal handler but it returns unique name, not the advertised, well-known name, tried using BusListener->NameOwnerChanged() call back to map the will-known name to unique name but NameOwnerChanged doesn't work correctly for multiple devices.
Is there anyway to send signal through a session or find a unique name from an advertised name?