IP specific cooldown, dashboard

Hi!

I am making a project in which the user is able to select the color of 12 lamps by adjusting a color wheel in an ui dashboard. I want the user to only be able to change a lamp every 5 minutes. As I want multiple users to interact with the dashboard, the cooldown needs to depend on the IP.

I got a lot of inspiration from this post: How can i get browser ip by dashboard button - #17 by smcgann99

The problem is, the cooldown is restarted every time the user refreshes/updates the browser as the IP for some reason changes. How can I work around this?

This is my current flow (disclaimer: might be a little hard to navigate):
flows (41).json (34.6 KB)

Well the end user device will not change IP address everytime there is a refresh (unless there is something drastically misconfigured on your network) so i think you might be looking at a different problem

Personally i would create a Context object for each lamp - then list the IP address of the last user to change the config and the time of that change.

Then depending on your logic requirements - assuming that they can change the colour of different lamps in the 5 minute window - just not the same lamp ? - i would give them an error message if they tried to change the same one within the 5 minutes.

If i was smarter like @hotNipi i would probably try and "grey" out the lamps that were not accessible during the 5 minute lockout which would requre a routine to run (say every 10 seconds) that went through all the lamp objects in context and checked to see if the user IP matched any of them and if it did then compare the time - if it was within the 5 minutes then "grey out" the appropriate lamp control

Craig

That wouldn't be a very efficient way. You should be able to use the delay node. Or you could use a setTimeout function in a function node.

Yep just read the linked thread - if you use SocketID to identifty a client that changes all the time (on browser refreshes) - you need to use the IP address of the client.

Craig

1 Like

I tried to think of how to do that - with 12 UI objects (one for each lamp) and the logic of that got to be pretty hard. (on the assumption that he only wants to lock the user out of a single lamp control - not all 12)

Craig

Yup, it changes every time a client reconnects. That could be a page reload or it could be due to a temporarily lost connection. That's why I've been busy adding a clientId to uibuilder so that people have something that is stable until you close and re-open your browser. :wink: I'm also adding a connection counter so that Node-RED flows can tell whether a client is reconnecting or whether it is a page (re)load.

I expect it would be a bit of a brain teaser :grimacing: - Just to be clear, I don't know how to do it, I'd have to play for a bit but I'm certain it can be done with timers.

Thank you for your replies!

Just to be clear: if they user recently changed a lamp, they should not be able to change any of the 12 lamps for 5 minutes. I already figured out how to do this, but I need to log the IP rather than the socketID. According to the link from my previous post though, I thought this was already what I did.

Can any of you show me an example of how to actually collect the IP? I have been unable to find a good example so far. It for sure seems I am getting the socket ID rather than the IP although I don't see what I do wrong.

Greying out the lamps sounds like a good idea also, btw! I will definitely look into this, but the first priority is finding out a way to log the correct IP.

On another note, I am actually unsure if I am already doing it right. This is a screenshot from the Debug window. I tried to refresh the page in between every msg. The IP updates every time, although sometimes it becomes identical to a previous one.
Skærmbillede 2022-06-13 075851
In case it becomes identical to a previous one, the cooldown is triggered correctly and a error msg i shown as below:


I don't know a lot about IPs but it seems like it is only the part after the comma that changes. Am I getting too much info?

I have looked at your flow - and then checked the variables that are set

The IParr global variable appears to be OK in terms of my IP Address - not sure what your debug is showing you but when i run it and choose lamp 1 which appears to be the only one your debug is connected to i get my correct IP address in the debug window

image

Craig

1 Like

This may help. Here is an example of how i might go about adding a cooldown on ip. It auto removes old ip's and add new if a colour is selected. currently set for 30 second cooldown, set in change node after join.

[{"id":"5f6f367cd433660f","type":"change","z":"e67b04df66bd0437","name":"","rules":[{"t":"set","p":"lamp","pt":"msg","to":"$number($$.topic)","tot":"jsonata"},{"t":"set","p":"topic","pt":"msg","to":"colour","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":390,"y":300,"wires":[["17e589fd.e75d36"]]},{"id":"056be2766a40a5e3","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 1","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":4,"width":1,"height":1,"passthru":true,"topic":"1","topicType":"str","className":"","x":180,"y":140,"wires":[["5f6f367cd433660f"]]},{"id":"0afb873ba45f5071","type":"inject","z":"e67b04df66bd0437","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":160,"y":40,"wires":[["5f6f367cd433660f"]]},{"id":"b646ad6a6e3856af","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 2","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":5,"width":1,"height":1,"passthru":true,"topic":"2","topicType":"str","className":"","x":180,"y":180,"wires":[["5f6f367cd433660f"]]},{"id":"d21b3ec88611f6a0","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 3","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":6,"width":1,"height":1,"passthru":true,"topic":"3","topicType":"str","className":"","x":180,"y":220,"wires":[["5f6f367cd433660f"]]},{"id":"0f0732ff4a5ae296","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 4","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":7,"width":1,"height":1,"passthru":true,"topic":"4","topicType":"str","className":"","x":180,"y":260,"wires":[["5f6f367cd433660f"]]},{"id":"e1f4f7f62fc1e44c","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 5","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":10,"width":1,"height":1,"passthru":true,"topic":"5","topicType":"str","className":"","x":180,"y":300,"wires":[["5f6f367cd433660f"]]},{"id":"01b64690bd21ad12","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 6","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":11,"width":1,"height":1,"passthru":true,"topic":"6","topicType":"str","className":"","x":180,"y":340,"wires":[["5f6f367cd433660f"]]},{"id":"146973610d263b9f","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 7","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":12,"width":1,"height":1,"passthru":true,"topic":"7","topicType":"str","className":"","x":180,"y":380,"wires":[["5f6f367cd433660f"]]},{"id":"6b09f254e090851a","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 8","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":13,"width":1,"height":1,"passthru":true,"topic":"8","topicType":"str","className":"","x":180,"y":420,"wires":[["5f6f367cd433660f"]]},{"id":"3dced2b0a31744cf","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 9","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":16,"width":1,"height":1,"passthru":true,"topic":"9","topicType":"str","className":"","x":180,"y":460,"wires":[["5f6f367cd433660f"]]},{"id":"71e4e6026302243b","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 10","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":17,"width":1,"height":1,"passthru":true,"topic":"10","topicType":"str","className":"","x":190,"y":500,"wires":[["5f6f367cd433660f"]]},{"id":"948697976718e14a","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 11","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":18,"width":1,"height":1,"passthru":true,"topic":"11","topicType":"str","className":"","x":180,"y":540,"wires":[["5f6f367cd433660f"]]},{"id":"c3b9ba40fb278c8a","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 12","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":19,"width":1,"height":1,"passthru":true,"topic":"12","topicType":"str","className":"","x":180,"y":580,"wires":[["5f6f367cd433660f"]]},{"id":"17e589fd.e75d36","type":"join","z":"e67b04df66bd0437","name":"","mode":"custom","build":"object","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":true,"timeout":"","count":"2","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":550,"y":300,"wires":[["f45ed053.d33d3"]]},{"id":"4864da4e.d27664","type":"change","z":"e67b04df66bd0437","name":"","rules":[{"t":"set","p":"topic","pt":"msg","to":"ip","tot":"str"},{"t":"set","p":"payload","pt":"msg","to":"socketip","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":410,"y":340,"wires":[["17e589fd.e75d36"]]},{"id":"f45ed053.d33d3","type":"change","z":"e67b04df66bd0437","name":"","rules":[{"t":"set","p":"cooldown","pt":"flow","to":"[$flowContext(\"cooldown\")][time > ($millis() - 30000)]","tot":"jsonata"},{"t":"set","p":"cooldown","pt":"msg","to":"$count([$flowContext(\"cooldown\")[ip = $$.payload.ip]]) > 0","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":710,"y":300,"wires":[["c7cb64b5.1fea18"]]},{"id":"f61562a9eea5ee0c","type":"ui_ui_control","z":"e67b04df66bd0437","name":"","events":"all","x":370,"y":380,"wires":[["4864da4e.d27664"]]},{"id":"c7cb64b5.1fea18","type":"switch","z":"e67b04df66bd0437","name":"","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"colour","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":900,"y":300,"wires":[["8f115a43.0b52f8"]]},{"id":"8f115a43.0b52f8","type":"switch","z":"e67b04df66bd0437","name":"","property":"cooldown","propertyType":"msg","rules":[{"t":"false"},{"t":"else"}],"checkall":"false","repair":false,"outputs":2,"x":1060,"y":300,"wires":[["52ddcef8.73c2a"],["a585aca0.f186f"]]},{"id":"52ddcef8.73c2a","type":"change","z":"e67b04df66bd0437","name":"","rules":[{"t":"set","p":"red","pt":"msg","to":"'01r' & $$.payload.colour.r","tot":"jsonata"},{"t":"set","p":"green","pt":"msg","to":"'01g' & $$.payload.colour.g","tot":"jsonata"},{"t":"set","p":"blue","pt":"msg","to":"'01b' & $$.payload.colour.b","tot":"jsonata"},{"t":"set","p":"cooldown","pt":"flow","to":"$append([$flowContext(\"cooldown\")],[{\"time\": $millis(),\"ip\": $$.payload.ip}])","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1250,"y":300,"wires":[["ed03deb5.b6ce4"]]},{"id":"a585aca0.f186f","type":"change","z":"e67b04df66bd0437","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"cooldown 5mins","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":970,"y":380,"wires":[["1ca052f059cb3d71"]]},{"id":"ed03deb5.b6ce4","type":"debug","z":"e67b04df66bd0437","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1110,"y":240,"wires":[]},{"id":"1ca052f059cb3d71","type":"ui_toast","z":"e67b04df66bd0437","position":"top right","displayTime":"3","highlight":"","sendall":false,"outputs":0,"ok":"OK","cancel":"","raw":false,"className":"","topic":"","name":"","x":980,"y":440,"wires":[]},{"id":"c7c3d5493d5cf08a","type":"ui_group","name":"DTU PAVILLON LIGHT SHOW","tab":"d65502b1.ee517","order":2,"disp":true,"width":6,"collapse":false,"className":""},{"id":"d65502b1.ee517","type":"ui_tab","name":"Dashboard","icon":"dashboard","order":6}]

just add you mqtt node. You will need to add logging and your google books nodess

Not fully tested, not sure how multi user on dashboard will affect it.

Or this one which uses the browser socket from the window.location, which does not change on refresh.

[{"id":"056be2766a40a5e3","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 1","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":4,"width":1,"height":1,"passthru":true,"topic":"1","topicType":"str","className":"","x":180,"y":140,"wires":[["5f6f367cd433660f"]]},{"id":"5f6f367cd433660f","type":"change","z":"e67b04df66bd0437","name":"","rules":[{"t":"set","p":"template","pt":"msg","to":"\"<script>\\n var value = window.location.hash.split(/=/)[1];\\n\" &\t\"var colour = \" & $string($$.payload) & \";\\n\" &\t\"this.scope.send (  { socket: value, red: ('01r' + colour.r), green: ('01g' + colour.g), blue: ('01b' + colour.b), lamp: \" & $$.topic & \"} ) </script>\"","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":400,"y":300,"wires":[["be62527c.4ab88"]]},{"id":"b646ad6a6e3856af","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 2","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":5,"width":1,"height":1,"passthru":true,"topic":"2","topicType":"str","className":"","x":180,"y":180,"wires":[["5f6f367cd433660f"]]},{"id":"d21b3ec88611f6a0","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 3","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":6,"width":1,"height":1,"passthru":true,"topic":"3","topicType":"str","className":"","x":180,"y":220,"wires":[["5f6f367cd433660f"]]},{"id":"0f0732ff4a5ae296","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 4","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":7,"width":1,"height":1,"passthru":true,"topic":"4","topicType":"str","className":"","x":180,"y":260,"wires":[["5f6f367cd433660f"]]},{"id":"e1f4f7f62fc1e44c","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 5","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":10,"width":1,"height":1,"passthru":true,"topic":"5","topicType":"str","className":"","x":180,"y":300,"wires":[["5f6f367cd433660f"]]},{"id":"01b64690bd21ad12","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 6","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":11,"width":1,"height":1,"passthru":true,"topic":"6","topicType":"str","className":"","x":180,"y":340,"wires":[["5f6f367cd433660f"]]},{"id":"146973610d263b9f","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 7","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":12,"width":1,"height":1,"passthru":true,"topic":"7","topicType":"str","className":"","x":180,"y":380,"wires":[["5f6f367cd433660f"]]},{"id":"6b09f254e090851a","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 8","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":13,"width":1,"height":1,"passthru":true,"topic":"8","topicType":"str","className":"","x":180,"y":420,"wires":[["5f6f367cd433660f"]]},{"id":"3dced2b0a31744cf","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 9","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":16,"width":1,"height":1,"passthru":true,"topic":"9","topicType":"str","className":"","x":180,"y":460,"wires":[["5f6f367cd433660f"]]},{"id":"71e4e6026302243b","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 10","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":17,"width":1,"height":1,"passthru":true,"topic":"10","topicType":"str","className":"","x":190,"y":500,"wires":[["5f6f367cd433660f"]]},{"id":"948697976718e14a","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 11","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":18,"width":1,"height":1,"passthru":true,"topic":"11","topicType":"str","className":"","x":180,"y":540,"wires":[["5f6f367cd433660f"]]},{"id":"c3b9ba40fb278c8a","type":"ui_colour_picker","z":"e67b04df66bd0437","name":"","label":"Lamp 12","group":"c7c3d5493d5cf08a","format":"rgb","outformat":"object","showSwatch":true,"showPicker":false,"showValue":false,"showHue":false,"showAlpha":false,"showLightness":true,"square":"false","dynOutput":"false","order":19,"width":1,"height":1,"passthru":true,"topic":"12","topicType":"str","className":"","x":180,"y":580,"wires":[["5f6f367cd433660f"]]},{"id":"be62527c.4ab88","type":"ui_template","z":"e67b04df66bd0437","group":"c7c3d5493d5cf08a","name":"","order":9,"width":0,"height":0,"format":"","storeOutMessages":true,"fwdInMessages":false,"resendOnRefresh":false,"templateScope":"local","className":"","x":570,"y":260,"wires":[["f45ed053.d33d3"]]},{"id":"f45ed053.d33d3","type":"change","z":"e67b04df66bd0437","name":"","rules":[{"t":"set","p":"cooldown","pt":"flow","to":"[$flowContext(\"cooldown\")][time > ($millis() - 30000)]","tot":"jsonata"},{"t":"set","p":"cooldown","pt":"msg","to":"$count([$flowContext(\"cooldown\")[socket = $$.socket]]) > 0","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":710,"y":300,"wires":[["8f115a43.0b52f8"]]},{"id":"8f115a43.0b52f8","type":"switch","z":"e67b04df66bd0437","name":"","property":"cooldown","propertyType":"msg","rules":[{"t":"false"},{"t":"else"}],"checkall":"false","repair":false,"outputs":2,"x":920,"y":300,"wires":[["52ddcef8.73c2a"],["a585aca0.f186f"]]},{"id":"52ddcef8.73c2a","type":"change","z":"e67b04df66bd0437","name":"","rules":[{"t":"set","p":"cooldown","pt":"flow","to":"$append([$flowContext(\"cooldown\")],[{\"time\": $millis(),\"socket\": $$.socket}])","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1130,"y":300,"wires":[["ed03deb5.b6ce4"]]},{"id":"a585aca0.f186f","type":"change","z":"e67b04df66bd0437","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"cooldown 5mins","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":970,"y":380,"wires":[["1ca052f059cb3d71"]]},{"id":"ed03deb5.b6ce4","type":"debug","z":"e67b04df66bd0437","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1110,"y":240,"wires":[]},{"id":"1ca052f059cb3d71","type":"ui_toast","z":"e67b04df66bd0437","position":"top right","displayTime":"3","highlight":"","sendall":false,"outputs":0,"ok":"OK","cancel":"","raw":false,"className":"","topic":"","name":"","x":980,"y":440,"wires":[]},{"id":"c7c3d5493d5cf08a","type":"ui_group","name":"DTU PAVILLON LIGHT SHOW","tab":"d65502b1.ee517","order":2,"disp":true,"width":6,"collapse":false,"className":""},{"id":"d65502b1.ee517","type":"ui_tab","name":"Dashboard","icon":"dashboard","order":6}]
1 Like

OK, so there are two distinct networks in use - what kind of LAN is being used? Is it an enterprise one? It is uncommon for home networks to use the 10.x.x.x range and the two networks shown in use would normally be on completely separated sub-nets. So something strange is happening on the network side.

If asked to guess without further information, I'd say that the client device has an unstable network connection and is flipping between networks sometimes - maybe wired to wireless? And in between, whichever network is on 10.45.70.x is not stable and so the device keeps reconnecting and getting a new IP address (which actually shouldn't happen that rapidly anyway even in that case).

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.