Hello Tim, Am Samstag, 27. Dezember 2014 14:19:21 UTC+1 schrieb Tim Chase: > The eventual solution would depend on a variety of factors: > > - how critical is synchronization? > > - do clients need to know if they missed a message? (somebody > disconnected from the LAN for a moment)
This would be nice indeed. At least, the user should be notified that the connection was lost and the current values may not be uptodate any more. > - do clients need a way to receive historical messages in the event > they were offline during the broadcast? (a power outage knocked out > Client #18 at the time of the last update) no, this is not necessary. > > - are all your clients on the same IP subnet? (you could use a > broadcast packet) yes, this assumption can be made. > > - would you rather push data as it changes, or have clients poll for > the current state? (you write "it should send the update to the > connected clients" which suggests a push architecture, yet you also > want to have clients able to send updates: "should be possible for > the client to send a particular request to the server...i.e., switch > on LEX X") Indeed, I would prefer a "push" setting, in particular to avoid additional overhead from the constant polling. Besides, this resembles more the scenario present at the server side: it gets notifications via callbacks in case anything has changed. > - are you concerned about security/authentication? Can a rogue device > send a message pretending to be the server? What would/should > happen if an unintended client snoops the traffic? Does it matter? > The suggestions would look very different if you were just building a > hobby notification system as a demo in a contained home/lab/office, > vs. if you were building an industrial control system for monitoring a > remote location and conveying security info. Concerning the latter two points: Introducing a possible security layer is something I would like to do in the future, so the selection of the network protocol/system should definitely keep this in mind. What do you think of the RPyC? Thanks for your valuable input! -- https://mail.python.org/mailman/listinfo/python-list