Ubiquiti Unifi Binding Feature Discussion

Cool thanks, I’ll download from there, and swap back to switches.

Nice. I think I’l use that! :+1:

1 Like

and of course… the emergency rule when the wife enters the house…

rule	"Send Pushover when Wife becomes present @ Home"
	when
		Item I6_PRES changed from OFF to ON
	then
		logInfo("Wife_Presence", "Wife entered Home")
		sendPushoverMessage(pushoverBuilder("Wife entered Home").withPriority(0))
end

:slight_smile:

1 Like

Yeah I have similar to control outside lights since the normal use case is on alarm disarm…of course if one of us is home, then there’s no disarm event to turn on the lights, so unifi is used to figure out someone arrived home, turn on lights.

1 Like

Love it! :smiley:

1 Like

Hi All

Giving this a go for presense detection, typically I come home through the back of the house, which means I trigger a few motion sensors to walk in through the back door.

Would this work OK to have Alexa play a welcome message? Is there a way to have the binding check the presense of a mobile phone on a particular Access Point?


rule "Play Welcome Message when Kris enters the House"
when
        Item Kris_Mobile changed from OFF to ON
then
        if (BackEveMotionAlarm == ON && FibaroEye1Motion == ON) {
         logInfo("Mobile Presense", "Kris has entered the Home")
          Echo_Living_Room_TTS.sendCommand('Welcome Home Kris')
}
end

Hey guys,

The latest stable dev build can always be found here:

openhab2-unifi-binding-v2

Regarding the whole -v2 tag in the URL, @Kai had asked me to switch from Jackson JSON processing to GSON processing as it’s provided by the ESH stack - so I created a new branch as it was some pretty big changes. There was also some poorly written exception handling code that I heavily refactored to clean it up (it took me even a while to figure out what I was originally thinking when I wrote it).

Rest assured, this binding is not dead, I just don’t have any spare time - every waking minute I’m working on the electrical at the house.

I promise, this will get included in the repo and it’s going to get new features as I must implement PoE support to increase my WAF stock :wink:

What ideas do you guys have for new features?

I’ll start:

  1. PoE Support
  2. ???

Cheers!

mgb

3 Likes

Hi Guys, ive created the switches for my two devices (not online currently) and I see this in the log:


15:56:36.203 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from UNDEF to OFF
15:56:36.223 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from OFF to UNDEF
15:56:36.239 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from UNDEF to OFF
15:56:36.256 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from OFF to UNDEF
15:56:46.279 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from UNDEF to OFF
15:56:46.297 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from OFF to UNDEF
15:56:46.317 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from UNDEF to OFF
15:56:46.333 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from OFF to UNDEF
15:56:46.787 [INFO ] [del.core.internal.ModelRepositoryImpl] - Refreshing model 'unifi.items'
15:56:56.363 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from UNDEF to OFF
15:56:56.383 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from OFF to UNDEF
15:56:56.399 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from UNDEF to OFF
15:56:56.415 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from OFF to UNDEF
15:57:06.440 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from UNDEF to OFF
15:57:06.458 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from OFF to UNDEF
15:57:06.474 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from UNDEF to OFF
15:57:06.497 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from OFF to UNDEF
15:57:16.518 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from UNDEF to OFF
15:57:16.538 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from OFF to UNDEF
15:57:16.553 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from UNDEF to OFF
15:57:16.569 [INFO ] [smarthome.event.ItemStateChangedEvent] - Jodie_Mobile changed from OFF to UNDEF

Items


/* Unifi Items */
Switch  Kris_Mobile  "Kris' Mobile Presence [MAP(unifi.map):%s]"        <switch>                (gUnifi) {channel="unifi:client:KrisMobile:online"}
Switch  Jodie_Mobile "Jodies Mobile Presence [MAP(unifi.map):%s]"       <switch>                (gUnifi) {channel="unifi:client:JodieMobile:online"}

PoE support would be enough for me. I already have a use case for my house: when Mains electrical power is down and I am on UPS, I want to shut down the PoE on some ports (for Cameras and APs) on the Unifi switch.

1 Like

POE support would be amazing with 1000s of uses and will help save the planet!

How’s about hotspot voucher support - press a button and unifi returns a voucher code for your guest wifi that you can give to guests or display on habpanel / sitemap or email to yourself? Saves printing a load and having to find where you put then :smiley:

1 Like

Hotspot voucher systems are network admin’s kryptonite. What would you say about an automatically rotating 8 digit passcode that changed say every 24 hours… but I guess this would mean the controller would have to “re-provision” the APs would which cause network downtime so forget what I said…

:bulb:

Let’s assume we’re using one time voucher codes…

  1. Binding generates a code via the controller and stores it in an item
  2. Binding detects someone has joined the guest network
  3. Binding assumes the previously generated and stored voucher is no longer valid
  4. Repeat

This way you could have the next voucher stored in item and displayed in your preferred UI. Would still need a way to force the binding to generate a new code just in case things get out of sync but I’m just thinking out loud for the moment.

However, keeping in spirit with OH2 and bindings should only act as a bridge, this shouldn’t be implemented within the binding. I think it could still be accomplished using actions + rules if the binding had the appropriate info about the guest network (SSID, # of active clients, etc…).

Again, just thinking out loud…

Thoughts?

As soon as I’d pressed the post button your first idea about the rotating code jumped into my mind. If you do have to re-provision the APs then this would be a no go I would say. I think I remember seeing one of Willie Howie’s YouTube videos doing something similar. Also if all existing users got kicked off when the code changed then this would be a bit of a pain, say if you had visitors for a weekend or something.

I guess one time vouchers would be the ultimate goal, maybe even with a mechanism to generate ones of different duration. I’m sure there’s a project in the UniFi forum (I’ll see if I can find it again) where someone has basically done this with a Pi and a receipt type printer, using the API so it should be possible. But, as you say if the binding can do bridging that would make life a lot easier (I hadn’t really realised that this is all bindings are ‘allowed’ to do). I guess all the logic then goes into a rule, which maybe better anyway I guess allowing further customisation.

Anyone else having these issues? my mobile presense keeps going on and off, despite the phone not moving and directly under the AP

:frowning:

@dastrix80 what version of the binding are you running?

From the OH2 console run the following command:

openhab> bundle:list -s | grep unifi

Hi Matthew im running:


openhab> bundle:list -s | grep unifi
255 │ Active   │  80 │ 2.3.0.201804122004     │ org.openhab.binding.unifi
openhab>

Can you enable DEBUG logging?

I need that to help track down exactly where the UNDEF is coming from.

Its just going ON/OFF constantly now.

Sure, heres a log

20:49:19.698 [DEBUG] [.unifi.handler.UniFiControllerHandler] - Refreshing the UniFi Controller unifi:controller:a866ca75
20:49:19.758 [DEBUG] [inding.unifi.internal.UniFiController] - Found 1 UniFi Site(s):
20:49:19.782 [DEBUG] [inding.unifi.internal.UniFiController] -   Site{name: 'Default', path: 'default'}
20:49:19.833 [DEBUG] [inding.unifi.internal.UniFiController] - Found 4 UniFi Device(s):
20:49:19.856 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:19.895 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:19.935 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'fc:ec:da:10:ac:9a', name: 'Dining Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:19.976 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}
20:49:20.029 [DEBUG] [inding.unifi.internal.UniFiController] - Found 13 UniFi Client(s):
20:49:20.053 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '5c:41:5a:7c:7b:10', hostname: 'amazon-31461337e', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:20.110 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'bc:dd:c2:80:0c:19', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:20.165 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '68:c6:3a:cd:44:18', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:20.219 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '04:d6:aa:29:64:9c', hostname: 'Galaxy-Note8', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:20.278 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:2d:2e:43', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:20.332 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:45:4e:a0', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:20.388 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'bc:dd:c2:ea:46:95', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:20.456 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '60:01:94:a1:90:3d', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:20.509 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'a4:e9:75:b9:4e:7a', hostname: 'kriss-iPad', wired: false, device: UniFiDevice{mac: 'fc:ec:da:10:ac:9a', name: 'Dining Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:20.583 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '78:0f:77:18:43:03', hostname: 'RMMini', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:20.639 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '78:d2:94:37:7f:16', hostname: 'Laptop', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:20.698 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '6c:94:f8:ea:b6:d4', hostname: 'ATV-GARAGE-4', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:20.754 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'ac:af:b9:e6:0f:ea', hostname: 'android-422840dc1a529224', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:20.821 [DEBUG] [inding.unifi.internal.UniFiController] - Found 6 UniFi Insights(s):
20:49:20.845 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '6c:94:f8:ea:b6:d4', hostname: 'ATV-GARAGE-4', wired: false, device: null}
20:49:20.879 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:2d:2e:43', hostname: 'null', wired: false, device: null}
20:49:20.911 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '68:c6:3a:cd:44:18', hostname: 'null', wired: false, device: null}
20:49:20.943 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '60:01:94:a1:90:3d', hostname: 'null', wired: false, device: null}
20:49:20.985 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '04:d6:aa:29:64:9c', hostname: 'Galaxy-Note8', wired: false, device: null}
20:49:21.019 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '5c:41:5a:7c:7b:10', hostname: 'amazon-31461337e', wired: false, device: null}
20:49:21.055 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:online
20:49:21.081 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:site
20:49:21.106 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:ap
20:49:21.131 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:essid
20:49:21.157 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:rssi
20:49:21.182 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:uptime
20:49:21.208 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:lastSeen
20:49:21.234 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:online
20:49:21.261 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:21.290 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:site
20:49:21.316 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:21.345 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:ap
20:49:21.371 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:21.400 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:essid
20:49:21.425 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:21.467 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:rssi
20:49:21.492 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:21.521 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:uptime
20:49:21.547 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:21.576 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:lastSeen
20:49:21.615 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:31.647 [DEBUG] [.unifi.handler.UniFiControllerHandler] - Refreshing the UniFi Controller unifi:controller:a866ca75
20:49:31.710 [DEBUG] [inding.unifi.internal.UniFiController] - Found 1 UniFi Site(s):
20:49:31.734 [DEBUG] [inding.unifi.internal.UniFiController] -   Site{name: 'Default', path: 'default'}
20:49:31.779 [DEBUG] [inding.unifi.internal.UniFiController] - Found 4 UniFi Device(s):
20:49:31.802 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:31.842 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:31.885 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'fc:ec:da:10:ac:9a', name: 'Dining Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:31.934 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}
20:49:31.993 [DEBUG] [inding.unifi.internal.UniFiController] - Found 13 UniFi Client(s):
20:49:32.018 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '5c:41:5a:7c:7b:10', hostname: 'amazon-31461337e', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:32.075 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'bc:dd:c2:80:0c:19', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:32.130 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '68:c6:3a:cd:44:18', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:32.184 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '04:d6:aa:29:64:9c', hostname: 'Galaxy-Note8', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:32.241 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:2d:2e:43', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:32.295 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:45:4e:a0', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:32.350 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'bc:dd:c2:ea:46:95', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:32.406 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '60:01:94:a1:90:3d', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:32.461 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'a4:e9:75:b9:4e:7a', hostname: 'kriss-iPad', wired: false, device: UniFiDevice{mac: 'fc:ec:da:10:ac:9a', name: 'Dining Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:32.518 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '78:0f:77:18:43:03', hostname: 'RMMini', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:32.574 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '78:d2:94:37:7f:16', hostname: 'Laptop', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:32.642 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '6c:94:f8:ea:b6:d4', hostname: 'ATV-GARAGE-4', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:32.698 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'ac:af:b9:e6:0f:ea', hostname: 'android-422840dc1a529224', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:32.780 [DEBUG] [inding.unifi.internal.UniFiController] - Found 6 UniFi Insights(s):
20:49:32.804 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '6c:94:f8:ea:b6:d4', hostname: 'ATV-GARAGE-4', wired: false, device: null}
20:49:32.839 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:2d:2e:43', hostname: 'null', wired: false, device: null}
20:49:32.871 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '68:c6:3a:cd:44:18', hostname: 'null', wired: false, device: null}
20:49:32.904 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '60:01:94:a1:90:3d', hostname: 'null', wired: false, device: null}
20:49:32.948 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '04:d6:aa:29:64:9c', hostname: 'Galaxy-Note8', wired: false, device: null}
20:49:32.983 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '5c:41:5a:7c:7b:10', hostname: 'amazon-31461337e', wired: false, device: null}
20:49:33.019 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:online
20:49:33.045 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:site
20:49:33.046 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from ON to OFF
20:49:33.071 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:ap
20:49:33.121 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:essid
20:49:33.147 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:rssi
20:49:33.185 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:uptime
20:49:33.211 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:lastSeen
20:49:33.238 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:online
20:49:33.264 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:33.293 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:site
20:49:33.319 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:33.349 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:ap
20:49:33.374 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:33.403 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:essid
20:49:33.429 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:33.459 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:rssi
20:49:33.484 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:33.514 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:uptime
20:49:33.539 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:33.569 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:lastSeen
20:49:33.595 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:37.249 [INFO ] [smarthome.event.ItemStateChangedEvent] - OpenHAB_Network_DataRecevied changed from 9591 to 9688
20:49:37.278 [INFO ] [smarthome.event.ItemStateChangedEvent] - OpenHAB_Cpu_Load1 changed from 0.2 to 0.4
20:49:37.300 [INFO ] [smarthome.event.ItemStateChangedEvent] - OpenHAB_Network_DataSent changed from 5961 to 6061
20:49:37.331 [INFO ] [smarthome.event.ItemStateChangedEvent] - OpenHAB_Sensors_CpuTemperature changed from 42.0 to 43.0
20:49:37.359 [INFO ] [smarthome.event.ItemStateChangedEvent] - OpenHAB_Cpu_Load changed from 4.5 to 5.4
20:49:43.625 [DEBUG] [.unifi.handler.UniFiControllerHandler] - Refreshing the UniFi Controller unifi:controller:a866ca75
20:49:43.693 [DEBUG] [inding.unifi.internal.UniFiController] - Found 1 UniFi Site(s):
20:49:43.729 [DEBUG] [inding.unifi.internal.UniFiController] -   Site{name: 'Default', path: 'default'}
20:49:43.801 [DEBUG] [inding.unifi.internal.UniFiController] - Found 4 UniFi Device(s):
20:49:43.825 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:43.866 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:43.906 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'fc:ec:da:10:ac:9a', name: 'Dining Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:43.946 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}
20:49:43.996 [DEBUG] [inding.unifi.internal.UniFiController] - Found 13 UniFi Client(s):
20:49:44.019 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '5c:41:5a:7c:7b:10', hostname: 'amazon-31461337e', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:44.077 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'bc:dd:c2:80:0c:19', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:44.132 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '68:c6:3a:cd:44:18', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:44.186 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '04:d6:aa:29:64:9c', hostname: 'Galaxy-Note8', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:44.243 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:2d:2e:43', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:44.297 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:45:4e:a0', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:44.355 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'bc:dd:c2:ea:46:95', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:44.410 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '60:01:94:a1:90:3d', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:44.466 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'a4:e9:75:b9:4e:7a', hostname: 'kriss-iPad', wired: false, device: UniFiDevice{mac: 'fc:ec:da:10:ac:9a', name: 'Dining Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:44.523 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '78:0f:77:18:43:03', hostname: 'RMMini', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:44.580 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '78:d2:94:37:7f:16', hostname: 'Laptop', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:44.638 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '6c:94:f8:ea:b6:d4', hostname: 'ATV-GARAGE-4', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:44.694 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'ac:af:b9:e6:0f:ea', hostname: 'android-422840dc1a529224', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:44.759 [DEBUG] [inding.unifi.internal.UniFiController] - Found 6 UniFi Insights(s):
20:49:44.782 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '6c:94:f8:ea:b6:d4', hostname: 'ATV-GARAGE-4', wired: false, device: null}
20:49:44.833 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:2d:2e:43', hostname: 'null', wired: false, device: null}
20:49:44.866 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '68:c6:3a:cd:44:18', hostname: 'null', wired: false, device: null}
20:49:44.898 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '60:01:94:a1:90:3d', hostname: 'null', wired: false, device: null}
20:49:44.930 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '04:d6:aa:29:64:9c', hostname: 'Galaxy-Note8', wired: false, device: null}
20:49:44.966 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '5c:41:5a:7c:7b:10', hostname: 'amazon-31461337e', wired: false, device: null}
20:49:45.001 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:online
20:49:45.028 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:site
20:49:45.029 [INFO ] [smarthome.event.ItemStateChangedEvent] - Kris_Mobile changed from OFF to ON
20:49:45.055 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:ap
20:49:45.105 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:essid
20:49:45.131 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:rssi
20:49:45.159 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:uptime
20:49:45.184 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:KrisMobile:lastSeen
20:49:45.210 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:online
20:49:45.239 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:45.269 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:site
20:49:45.294 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:45.324 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:ap
20:49:45.350 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:45.381 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:essid
20:49:45.406 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:45.435 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:rssi
20:49:45.462 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:45.492 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:uptime
20:49:45.518 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:45.548 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Refreshing channel = unifi:client:JodieMobile:lastSeen
20:49:45.574 [DEBUG] [ding.unifi.handler.UniFiClientHandler] - Could not find a matching client: mac = 80:ed:2c:ab:4c:2a, site = null
20:49:52.506 [INFO ] [smarthome.event.ItemStateChangedEvent] - AtticVoltage changed from 236 to 234
20:49:52.530 [INFO ] [smarthome.event.ItemStateChangedEvent] - AtticCurrent changed from 0.37 to 0.369
20:49:52.555 [INFO ] [smarthome.event.ItemStateChangedEvent] - AtticWatts changed from 104 to 102
20:49:52.578 [INFO ] [smarthome.event.ItemStateChangedEvent] - AttickWhToday changed from 0.936 to 0.944
20:49:52.602 [INFO ] [smarthome.event.ItemStateChangedEvent] - AttickWhTotal changed from 4.863 to 4.872
20:49:52.634 [INFO ] [home.event.GroupItemStateChangedEvent] - gPowerUsage changed from 125.273 to 125.282 through AttickWhTotal
20:49:55.523 [INFO ] [smarthome.event.ItemStateChangedEvent] - AtticTemp changed from 23.8 to 23.7
20:49:55.547 [INFO ] [smarthome.event.ItemStateChangedEvent] - AtticHumidity changed from 65.8 to 66.6
20:49:55.604 [DEBUG] [.unifi.handler.UniFiControllerHandler] - Refreshing the UniFi Controller unifi:controller:a866ca75
20:49:55.671 [DEBUG] [inding.unifi.internal.UniFiController] - Found 1 UniFi Site(s):
20:49:55.709 [DEBUG] [inding.unifi.internal.UniFiController] -   Site{name: 'Default', path: 'default'}
20:49:55.806 [DEBUG] [inding.unifi.internal.UniFiController] - Found 4 UniFi Device(s):
20:49:55.831 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:55.872 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:55.912 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'fc:ec:da:10:ac:9a', name: 'Dining Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}
20:49:55.956 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}
20:49:56.012 [DEBUG] [inding.unifi.internal.UniFiController] - Found 13 UniFi Client(s):
20:49:56.038 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '5c:41:5a:7c:7b:10', hostname: 'amazon-31461337e', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:56.094 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'bc:dd:c2:80:0c:19', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:56.151 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '68:c6:3a:cd:44:18', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:56.206 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: '04:d6:aa:29:64:9c', hostname: 'Galaxy-Note8', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:a6:2c', name: 'Music Room AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}
20:49:56.264 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:2d:2e:43', hostname: 'null', wired: false, device: UniFiDevice{mac: 'fc:ec:da:d1:6d:d6', name: 'null', model: 'U7NHD', site: Site{name: 'Default', path: 'default'}}}
20:49:56.317 [DEBUG] [inding.unifi.internal.UniFiController] -   UniFiClient{mac: 'dc:4f:22:45:4e:a0', hostname: 'null', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:f6:5f:55', name: 'Attic AP', model: 'U7PG2', site: Site{name: 'Default', path: 'default'}}}


  • Status for unifi devices (as things), maybe including pending sw updates
  • Support for reporting connected guests (as things?)
  • Support for wired clients (as things)

But maybe first aim on getting it merged then others can more easily help :slight_smile:

1 Like

Exactly. I’m not going to add / remove anything until it’s merged. I do think I have a few cleanup changes in my local repo (compared to the version everybody’s currently running), but they’re minor.

Given that it’s been so long since I’ve committed to the PR, how would you recommend I proceed (if I find some free time)? Should I rebase onto the latest HEAD and push to the PR? I never remember what the best course of action is here.

Well in this log I don’t see your JodieMobile MAC address so it should be reporting as OFF.

Did you manually configure your phone in a .things file or via the PaperUI? If manually, post your config here.