Ubiquiti Unifi Binding Feature Discussion

Hey guys, anybody else other than @porthos having any issues with build #100?

I’d like to open a PR with the changes I’ve made so far.

have the same issue


                          __  _____    ____
  ____  ____  ___  ____  / / / /   |  / __ )
 / __ \/ __ \/ _ \/ __ \/ /_/ / /| | / __  |
/ /_/ / /_/ /  __/ / / / __  / ___ |/ /_/ /
\____/ .___/\___/_/ /_/_/ /_/_/  |_/_____/
    /_/                        2.5.0-SNAPSHOT
                               Build #1557

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown openHAB.
                                                                                                                                                                                                                     openhab> bundle:list|grep unifi
openhab> bundle:list|grep -i unifi
232 x Active x  80 x 2.5.0.201903170725    x UniFi Binding
openhab>

That’s not build #100

Should be 2.5.0.201903111759

I have downgraded now but still no communication with the controller


  ____  ____  ___  ____  / / / /   |  / __ )
 / __ \/ __ \/ _ \/ __ \/ /_/ / /| | / __  |
/ /_/ / /_/ /  __/ / / / __  / ___ |/ /_/ /
\____/ .___/\___/_/ /_/_/ /_/_/  |_/_____/
    /_/                        2.5.0-SNAPSHOT
                               Build #1555

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown openHAB.

openhab> bundle:list|grep -i unifi
263 x Active x  80 x 2.5.0.201903111759    x UniFi Binding
openhab>

Bridge  unifi:controller:home "UniFi Controller" [ host="192.168.0.5", port=8444, username="openhab", password="habopen", refresh=10 ] {
	Thing wirelessClient ThomasHandy "HandyThomas" [ cid="Handy Thomas", site="default", considerHome=180 ]
	Thing wirelessClient JuttaHandy "Handy Jutta" [ cid="Handy Jutta", site="default", considerHome=180 ]
	Thing wirelessClient FlorianHandy "Handy Florian" [ cid="Handy Florian", site="default", considerHome=180 ]
	Thing wirelessClient RonjaHandy "Handy Ronja" [ cid="Handy Ronja", site="default", considerHome=180 ]	
	Thing wirelessClient JonathanHandy "Handy Jonathan" [ cid="Handy Jonathan", site="default", considerHome=180 ]
	Thing wirelessClient EmelieHandy "Handy Emelie" [ cid="Handy Emelie", site="default", considerHome=180 ]
	Thing wirelessClient DaniHandy "Handy Dani" [ cid="Handy Dani", site="default", considerHome=180 ]
	Thing wirelessClient MarkusHandy "Handy Markus" [ cid="Handy Markus", site="default", considerHome=180 ]
	Thing wirelessClient MarlonHandy "Handy Marlon" [ cid="Handy Marlon", site="default", considerHome=180 ]
	Thing wirelessClient EricHandy "Handy Eric" [ cid="Handy Eric", site="default", considerHome=180 ]
	Thing wirelessClient TraudelHandy "Handy Traudel" [ cid="Handy Traudel", site="default", considerHome=180 ]
}
Switch   ThomasHandy           "Thomas  [MAP(unifi.map):%s]"          		(fritzbox,Anwesenheit_Thomas)     	{ channel="unifi:wirelessClient:home:ThomasHandy:online" }
Switch   JuttaHandy           	"Jutta  [MAP(unifi.map):%s]"          		(fritzbox,Anwesenheit_Thomas)     	{ channel="unifi:wirelessClient:home:JuttaHandy:online" }
Switch   FlorianHandy          "Florian  [MAP(unifi.map):%s]"          		(fritzbox,Anwesenheit_Thomas)     	{ channel="unifi:wirelessClient:home:FlorianHandy:online" }
Switch   JonathanHandy         "Jonathan  [MAP(unifi.map):%s]"          	(fritzbox,Anwesenheit_Thomas)     	{ channel="unifi:wirelessClient:home:JonathanHandy:online" }
Switch   EmelieHandy           "Emelie  [MAP(unifi.map):%s]"          		(fritzbox,Anwesenheit_Thomas)     	{ channel="unifi:wirelessClient:home:EmelieHandy:online" }
Switch   RonjaHandy           	"Ronja  [MAP(unifi.map):%s]"          		(fritzbox,Anwesenheit_Thomas)     	{ channel="unifi:wirelessClient:home:RonjaHandy:online" }

Switch   DaniHandy           	"Dani  [MAP(unifi.map):%s]"          		(fritzbox)     						{ channel="unifi:wirelessClient:home:DaniHandy:online" }
Switch   MarkusHandy           "Markus  [MAP(unifi.map):%s]"          		(fritzbox)     						{ channel="unifi:wirelessClient:home:MarkusHandy:online" }
Switch   MarlonHandy           "Marlon  [MAP(unifi.map):%s]"          		(fritzbox)     						{ channel="unifi:wirelessClient:home:MarlonHandy:online" }
Switch   EricHandy           	"Eric  [MAP(unifi.map):%s]"          		(fritzbox)     						{ channel="unifi:wirelessClient:home:EricHandy:online" }
Switch   TraudelHandy          "Traudel  [MAP(unifi.map):%s]"          		(fritzbox)     						{ channel="unifi:wirelessClient:home:TraudelHandy:online" }
1 Like

@porthos and @4u2fast does the controller show ONLINE in the PaperUI?

If it does, then it should have at least logged in to the controller which means it’s not a “trust” issue. Can you two enable DEBUG logging so that we can dig further and figure out what’s going on?

Yes, it shows online
i have added Debug lines and restarted OH but nothing in the logs
unifi.json is created but empty

Yes, it does. The controller and phones(things) are online. When I use 2.4.0 jar file everything works with no issues.

The unifi.json logging code was removed as there wasn’t much interest :frowning:

To enable DEBUG to the openhab.log file, just add the following to your logging config file /var/lib/openhab2/etc/org.ops4j.pax.logging.cfg

log4j2.logger.unifi.name = org.openhab.binding.unifi
log4j2.logger.unifi.level = DEBUG

After this, restart OH2 and you should see DEBUG level statements in /var/log/openhab2/openhab.log similar to this:

2019-03-15 17:14:35.544 [DEBUG] [org.openhab.binding.unifi           ] - BundleEvent INSTALLED - org.openhab.binding.unifi
2019-03-15 17:14:45.758 [DEBUG] [org.openhab.binding.unifi           ] - BundleEvent RESOLVED - org.openhab.binding.unifi
2019-03-15 17:14:45.760 [DEBUG] [org.openhab.binding.unifi           ] - BundleEvent STARTING - org.openhab.binding.unifi
2019-03-15 17:14:45.761 [DEBUG] [org.openhab.binding.unifi           ] - BundleEvent STARTED - org.openhab.binding.unifi
2019-03-15 17:14:45.773 [DEBUG] [fi.internal.UniFiThingHandlerFactory] - Registering Trust Manager Provider : UniFiTrustManagerProvider{peer: 'UniFi'}
2019-03-15 17:14:45.780 [DEBUG] [org.openhab.binding.unifi           ] - ServiceEvent REGISTERED - {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory}={service.id=339, service.bundleid=206, service.scope=bundle, component.name=org.openhab.binding.unifi.internal.UniFiThingHandlerFactory, component.id=188} - org.openhab.binding.unifi
2019-03-15 17:14:45.897 [DEBUG] [.handler.UniFiControllerThingHandler] - Initializing the UniFi Controller Handler with config = UniFiControllerConfig{host = unifi, port = 8443, username = operator, password = *****, refresh = 10}
2019-03-15 17:14:45.897 [DEBUG] [.handler.UniFiControllerThingHandler] - Registering Trust Manager Provider : UniFiTrustManagerProvider{peer: 'unifi:8443'}
2019-03-15 17:14:46.291 [DEBUG] [.handler.UniFiControllerThingHandler] - Scheduling refresh job every 10s
2019-03-15 17:14:46.299 [DEBUG] [.handler.UniFiControllerThingHandler] - Refreshing the UniFi Controller unifi:controller:home

If everything is showing as ONLINE, I’m wondering if the refresh task is somehow not getting scheduled. This is the key logging statement here:

Scheduling refresh job every 10s

Let me know how you both manage. We will fix this!

ok, here the debug, please let me know how to fix the could not find matching client
thanks
Thomas


 - UniFiSite{name: 'default', desc: 'default'}

2019-03-21 07:47:58.189 [DEBUG] [i.internal.api.model.UniFiController] - Found 6 UniFi Device(s): 

 - UniFiDevice{mac: 'fc:ec:da:d3:19:ad', name: 'Security Gateway', model: 'UGW3', site: UniFiSite{name: 'default', desc: 'default'}}

 - UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}

 - UniFiDevice{mac: 'fc:ec:da:10:5c:8f', name: 'AP-Florian', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}

 - UniFiDevice{mac: 'b4:fb:e4:f6:2d:19', name: 'AP-Markus', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}

 - UniFiDevice{mac: '80:2a:a8:19:86:0b', name: 'AP-Dachboden', model: 'U7LT', site: UniFiSite{name: 'default', desc: 'default'}}

 - UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}

2019-03-21 07:47:58.229 [DEBUG] [i.internal.api.model.UniFiController] - Found 35 UniFi Client(s): 

 - UniFiClient{mac: 'b4:f7:a1:e8:35:d7', ip: '192.168.0.155', hostname: 'null', alias: 'handy jonathan', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'b0:d5:cc:28:a7:b2', ip: '192.168.0.178', hostname: 'null', alias: 'staubsauger', wired: false, device: UniFiDevice{mac: 'b4:fb:e4:f6:2d:19', name: 'AP-Markus', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'c0:f4:e6:65:f9:37', ip: '192.168.0.195', hostname: 'huawei_p20-412dae1e3eb1d9', alias: 'handy dani', wired: false, device: UniFiDevice{mac: 'b4:fb:e4:f6:2d:19', name: 'AP-Markus', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '8c:dc:d4:5c:2b:10', ip: '192.168.0.175', hostname: 'npi5c2b10', alias: 'hp laserjet thomas', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '90:2b:34:34:84:7f', ip: '192.168.0.30', hostname: 'minint-erjlp7d', alias: 'pc thomas', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '00:05:cd:ed:9a:18', ip: '192.168.0.70', hostname: 'marantz-sr7012', alias: 'verstärker thomas wohnzimmer', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'ac:5f:3e:fd:54:1e', ip: '192.168.0.176', hostname: 'galaxy-s6', alias: 'handy marlon', wired: false, device: UniFiDevice{mac: 'b4:fb:e4:f6:2d:19', name: 'AP-Markus', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'b8:27:eb:1f:cb:8c', ip: '192.168.0.16', hostname: 'ambilight', alias: 'null', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '34:2d:0d:e3:66:97', ip: '192.168.0.169', hostname: 'galaxy-a3-2017', alias: 'handy traudel', wired: false, device: UniFiDevice{mac: '80:2a:a8:19:86:0b', name: 'AP-Dachboden', model: 'U7LT', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '00:0c:29:00:a1:0b', ip: '192.168.0.167', hostname: 'de-fra-tkranz1', alias: 'null', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '78:28:ca:17:c4:cc', ip: '192.168.0.114', hostname: 'sonoszp', alias: 'sonos büro 1', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '78:28:ca:c1:01:7a', ip: '192.168.0.148', hostname: 'sonoszp', alias: 'sonos büro 2', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '68:9a:87:b1:b8:46', ip: '192.168.0.132', hostname: 'amazon-8c87b07ee', alias: 'echo wohnzimmer', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '00:10:9a:0b:00:27', ip: '192.168.0.12', hostname: 'null', alias: 'kamera garten', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '08:c5:e1:21:33:6c', ip: '192.168.0.240', hostname: 'galaxy-s8', alias: 'handy eric', wired: false, device: UniFiDevice{mac: 'fc:ec:da:10:5c:8f', name: 'AP-Florian', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '00:04:20:ed:85:d5', ip: '192.168.0.105', hostname: 'harmonyhub', alias: 'harmony hub wohnzimmer', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '74:75:48:30:da:26', ip: '192.168.0.22', hostname: 'null', alias: 'firetv wohnzimmer', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '00:1a:e8:0b:f5:a7', ip: '192.168.0.25', hostname: 'null', alias: 'telefon büro thomas', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'f0:81:73:8d:53:1d', ip: '192.168.0.211', hostname: 'amazon-7c1903e2e', alias: 'amazon tab10', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '90:98:64:01:26:7e', ip: '192.168.0.55', hostname: 'gbquad4k', alias: 'sat receiver wohnzimmer', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '34:d2:70:f3:fa:16', ip: '192.168.0.251', hostname: 'amazon-675619351', alias: 'echo jonathan', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '94:de:80:ad:57:bd', ip: '192.168.0.5', hostname: 't2', alias: 'server t2', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'b8:27:eb:30:d0:ae', ip: '192.168.0.15', hostname: 'openhabianpi', alias: 'server openhab', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'b8:27:eb:0e:51:a0', ip: '192.168.0.166', hostname: 'raspberrypi', alias: 'raspi flo', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '00:50:c2:b8:10:ac', ip: '192.168.0.98', hostname: 'null', alias: 'server aquarium', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '34:d2:70:c8:f2:dd', ip: '192.168.0.184', hostname: 'null', alias: 'echo küche', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '5c:03:39:07:00:1c', ip: '192.168.0.186', hostname: 'honor_9-f7221700cea021c5', alias: 'handy florian', wired: false, device: UniFiDevice{mac: 'fc:ec:da:10:5c:8f', name: 'AP-Florian', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '5c:c3:07:5b:75:be', ip: '192.168.0.217', hostname: 'huawei_mate_10_pro-5898c1', alias: 'handythomas', wired: false, device: UniFiDevice{mac: '80:2a:a8:c6:06:97', name: 'AP-Wohnzimmer', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '00:e3:5c:04:00:a6', ip: '192.168.0.10', hostname: 'null', alias: 'kamera strasse', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'b8:27:eb:b8:ed:57', ip: '192.168.0.8', hostname: 'knxd', alias: 'server knx', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'cc:f7:35:37:36:a1', ip: '192.168.0.215', hostname: 'amazon-de528c722', alias: 'null', wired: false, device: UniFiDevice{mac: 'b4:fb:e4:f6:2d:19', name: 'AP-Markus', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: 'b8:31:b5:0d:94:fc', ip: '192.168.0.238', hostname: 'xboxone', alias: 'null', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '7c:2f:80:db:04:e8', ip: '192.168.0.26', hostname: 'null', alias: 'telefon gigaset thomas', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '00:0c:29:64:ab:ad', ip: '192.168.0.241', hostname: 'win-1h73jffnkuq', alias: 'null', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

 - UniFiClient{mac: '00:f2:5c:92:00:27', ip: '192.168.0.11', hostname: 'null', alias: 'kamera hof', wired: true, device: UniFiDevice{mac: 'f0:9f:c2:1a:2f:47', name: 'Switch-Wäschekeller', model: 'US8', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

2019-03-21 07:47:58.259 [DEBUG] [i.internal.api.model.UniFiController] - Found 40 UniFi Insights(s): 

 - UniFiClient{mac: '94:65:2d:7c:f1:78', ip: 'null', hostname: 'oneplus5', alias: 'handy jutta', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '08:c5:e1:21:33:6c', ip: 'null', hostname: 'galaxy-s8', alias: 'handy eric', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'c4:95:00:b2:5c:1e', ip: 'null', hostname: 'null', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '74:d4:35:bb:04:d8', ip: 'null', hostname: 'florian-pc', alias: 'pc florian', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '00:03:78:97:03:92', ip: 'null', hostname: 'null', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '70:1c:e7:fe:88:ff', ip: 'null', hostname: 'laptop-b5a49q4g', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'c0:f4:e6:65:f9:37', ip: 'null', hostname: 'huawei_p20-412dae1e3eb1d9', alias: 'handy dani', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '04:d6:aa:19:80:c9', ip: 'null', hostname: 'galaxy-s8', alias: 'handy markus', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'b0:52:16:78:83:7f', ip: 'null', hostname: 'laptop-qv21t85c', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'fc:f1:36:79:2f:5b', ip: 'null', hostname: 'localhost', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'cc:f7:35:37:36:a1', ip: 'null', hostname: 'amazon-de528c722', alias: 'null', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '00:0c:29:64:ab:ad', ip: 'null', hostname: 'win-1h73jffnkuq', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '00:24:1d:8b:87:a4', ip: 'null', hostname: 'jutta1', alias: 'pc jutta', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '04:92:26:5b:79:91', ip: 'null', hostname: 'desktop-h6hrd7h', alias: 'pc jonathan', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '5c:03:39:07:00:1c', ip: 'null', hostname: 'honor_9-f7221700cea021c5', alias: 'handy florian', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '9c:e6:5e:66:6a:31', ip: 'null', hostname: 'iphone-7', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'b8:53:ac:ca:c4:76', ip: 'null', hostname: 'emelie', alias: 'handy emelie', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '74:d4:35:bb:f6:7f', ip: 'null', hostname: 'eric-pc', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '74:95:ec:0f:1e:41', ip: 'null', hostname: 'null', alias: 'null', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '74:75:48:30:da:26', ip: 'null', hostname: 'null', alias: 'firetv wohnzimmer', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'd8:5d:4c:eb:40:ee', ip: 'null', hostname: 'null', alias: 'null', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '34:2d:0d:e3:66:97', ip: 'null', hostname: 'galaxy-a3-2017', alias: 'handy traudel', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'b4:f7:a1:e8:35:d7', ip: 'null', hostname: 'null', alias: 'handy jonathan', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '5c:c3:07:5b:75:be', ip: 'null', hostname: 'huawei_mate_10_pro-5898c1', alias: 'handythomas', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'c0:ee:fb:32:68:e8', ip: 'null', hostname: 'android-906cc74406f4fc33', alias: 'handy ronja', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'cc:f7:35:8f:7b:dd', ip: 'null', hostname: 'amazon-d458ef68b', alias: 'echo emelie', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '34:d2:70:f3:fa:16', ip: 'null', hostname: 'amazon-675619351', alias: 'echo jonathan', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '00:09:34:41:9d:4b', ip: 'null', hostname: 'dm520', alias: 'sat receiver emelie', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'ac:5f:3e:fd:54:1e', ip: 'null', hostname: 'galaxy-s6', alias: 'handy marlon', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '34:f3:9a:aa:2c:3d', ip: 'null', hostname: 'be1bs864', alias: 'pc florian arbeit', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '9c:64:5e:10:3a:9c', ip: 'null', hostname: 'null', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '60:6d:c7:c6:a2:ff', ip: 'null', hostname: 'desktop-4i26eap', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'a8:06:00:c2:17:6d', ip: 'null', hostname: 'android-661f1aedf78b0229', alias: 'null', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'f0:81:73:8d:53:1d', ip: 'null', hostname: 'amazon-7c1903e2e', alias: 'amazon tab10', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '68:9a:87:b3:50:58', ip: 'null', hostname: 'amazon-e9314bfb7', alias: 'firetv markus', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '50:f5:da:6d:0c:f5', ip: 'null', hostname: 'amazon-20608d603', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '50:dc:e7:0d:44:08', ip: 'null', hostname: 'amazon-4ecc49925', alias: 'null', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '10:e7:c6:82:f8:32', ip: 'null', hostname: 'hp82f832', alias: 'null', wired: false, device: null, guest: false, blocked: false}

 - UniFiClient{mac: '00:09:b0:4a:9b:12', ip: 'null', hostname: 'null', alias: 'verstärker florian', wired: true, device: null, guest: false, blocked: false}

 - UniFiClient{mac: 'a8:c8:06:97:5c:c3', ip: 'null', hostname: 'null', alias: 'null', wired: true, device: null, guest: false, blocked: false}

2019-03-21 07:47:58.262 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Jutta

2019-03-21 07:47:58.265 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Florian

2019-03-21 07:47:58.267 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Ronja

2019-03-21 07:47:58.270 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Jonathan

2019-03-21 07:47:58.272 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Emelie

2019-03-21 07:47:58.274 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Dani

2019-03-21 07:47:58.276 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Markus

2019-03-21 07:47:58.278 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Marlon

2019-03-21 07:47:58.280 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Eric

2019-03-21 07:47:58.283 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Traudel

2019-03-21 07:47:58.285 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = Handy Thomas

Can you enable TRACE logging to see what’s going on in the cache:

log4j2.logger.unifi.name = org.openhab.binding.unifi
log4j2.logger.unifi.level = TRACE

getting this for every client

2019-03-21 08:08:49.285 [TRACE] [.internal.api.cache.UniFiClientCache] - Cache MISS : 'mac:HandyMarkus'

2019-03-21 08:08:49.286 [TRACE] [.internal.api.cache.UniFiClientCache] - Cache MISS : 'ip:HandyMarkus'

2019-03-21 08:08:49.288 [TRACE] [.internal.api.cache.UniFiClientCache] - Cache MISS : 'hostname:HandyMarkus'

2019-03-21 08:08:49.289 [TRACE] [.internal.api.cache.UniFiClientCache] - Cache MISS : 'alias:HandyMarkus'

2019-03-21 08:08:49.290 [TRACE] [.internal.api.cache.UniFiClientCache] - Cache MISS : 'mac:HandyMarkus'

2019-03-21 08:08:49.292 [TRACE] [.internal.api.cache.UniFiClientCache] - Cache MISS : 'ip:HandyMarkus'

2019-03-21 08:08:49.293 [TRACE] [.internal.api.cache.UniFiClientCache] - Cache MISS : 'hostname:HandyMarkus'

2019-03-21 08:08:49.294 [TRACE] [.internal.api.cache.UniFiClientCache] - Cache MISS : 'alias:HandyMarkus'

2019-03-21 08:08:49.296 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = HandyMarkus

You discovered a bug! The cache keys were case sensitive - they should be case insensitive!

Please upgrade to build #101: org.openhab.binding.unifi-2.5.0-SNAPSHOT.jar

Only issue I see with your config is the “Handy Thomas” thing definition:

Thing wirelessClient ThomasHandy "HandyThomas" [ cid="Handy Thomas", site="default", considerHome=180 ]

You have the spaces / no-spaces mixed. It should look like this:

Thing wirelessClient ThomasHandy "Handy Thomas" [ cid="HandyThomas", site="default", considerHome=180 ]

The first "Handy Thomas" is for OH2 and the cid="HandyThomas" is for the UniFi binding. Though IMHO, I would fix the alias in the controller to include a space (like the rest of your thing definitions) and then you would have this:

Thing wirelessClient ThomasHandy "Handy Thomas" [ cid="Handy Thomas", site="default", considerHome=180 ]

For more info on the cid parameter, check the README

The cid="..." parameter for each thing needs to be one of four things:

  1. MAC address
  2. IP address
  3. Hostname (as show by the controller)
  4. Alias (as defined by you in the controller UI)

For example, take Eric’s handy:

UniFiClient{mac: '08:c5:e1:21:33:6c', ip: '192.168.0.240', hostname: 'galaxy-s8', alias: 'handy eric', wired: false, device: UniFiDevice{mac: 'fc:ec:da:10:5c:8f', name: 'AP-Florian', model: 'U7LR', site: UniFiSite{name: 'default', desc: 'default'}}, guest: false, blocked: false}

His cid="..." could be any of the following:

  1. 08:c5:e1:21:33:6c
  2. 192.168.0.240
  3. galaxy-s8
  4. handy eric

After that you should be good to go!

1 Like

great, let me upgrade to 101, will update you on the results

issue is resolved with build #101: org.openhab.binding.unifi-2.5.0-SNAPSHOT.jar

thanks for the great support
Thomas

Glad I could help!

@porthos looking at the code and your thing definitions, build #101 should fix your problem as well!

Can you update and report back?

Good news, thank you Matthew. Currently I’m not able to check #101 but I will do this after I come back home and give you a report.

Well, I have less luck than Thomas. Here is my debug log:

2019-03-21 22:18:14.422 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = 00:BE:3B:BA:27:D1
2019-03-21 22:18:14.426 [DEBUG] [i.internal.api.model.UniFiController] - Could not find a matching client for id = 48:3B:38:79:43:23

These two MAC addresses are cid parameters in thing config.
And one more check for #101:

openhab> bundle:list | grep -i unifi
265 │ Active │  80 │ 2.5.0.201903111759    │ UniFi Binding

Same log for 2.4.0 binding:

2019-03-21 22:28:17.631 [DEBUG] [.handler.UniFiControllerThingHandler] - Found client 'mac:00:be:3b:ba:27:d1' = UniFiClient{mac: '00:be:3b:ba:27:d1', ip: '192.168.1.105', hostname: 'huawei_p20_pro-820a6ccb5d', alias: 'huawei_p20_pro', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:20:d7:8d', name: 'gabinet', model: 'U7LT', site: UniFiSite{name: 'default', desc: 'Dom'}}}
2019-03-21 22:28:17.640 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:online
2019-03-21 22:28:17.652 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:site
2019-03-21 22:28:17.683 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:macAddress
2019-03-21 22:28:17.693 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:ipAddress
2019-03-21 22:28:17.700 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:uptime
2019-03-21 22:28:17.713 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:lastSeen
2019-03-21 22:28:17.720 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:blocked
2019-03-21 22:28:17.723 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:ap
2019-03-21 22:28:17.727 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:essid
2019-03-21 22:28:17.732 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:rssi
2019-03-21 22:28:17.738 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:wojteksPhone:reconnect
2019-03-21 22:28:17.742 [DEBUG] [.handler.UniFiControllerThingHandler] - Found client 'mac:48:3b:38:79:43:23' = UniFiClient{mac: '48:3b:38:79:43:23', ip: '192.168.1.106', hostname: 'iphone', alias: 'iphone6s', wired: false, device: UniFiDevice{mac: 'f0:9f:c2:20:d7:8d', name: 'gabinet', model: 'U7LT', site: UniFiSite{name: 'default', desc: 'Dom'}}}
2019-03-21 22:28:17.748 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:online
2019-03-21 22:28:17.753 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:site
2019-03-21 22:28:17.757 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:macAddress
2019-03-21 22:28:17.762 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:ipAddress
2019-03-21 22:28:17.768 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:uptime
2019-03-21 22:28:17.775 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:lastSeen
2019-03-21 22:28:17.784 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:blocked
2019-03-21 22:28:17.788 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:ap
2019-03-21 22:28:17.796 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:essid
2019-03-21 22:28:17.800 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:rssi
2019-03-21 22:28:17.810 [DEBUG] [rnal.handler.UniFiClientThingHandler] - Refreshing channel = unifi:wirelessClient:home:anitkasPhone:reconnect

and bundle check:

openhab> bundle:list | grep -i unifi
266 │ Active │  80 │ 2.4.0.201812081314    │ UniFi Binding

Snapshot 2.5.0.201903111759 is not build #101 of the UniFi binding. That is not what you should have if you downloaded and manually installed the jar file from the link Matthew posted here:

I have the following after I downloaded build #101 from the provided link, stopped OpenHAB, cleared the contents of /var/lib/openhab2/cache/ and /var/lib/openhab2/tmp/, copied the downloaded jar file to /usr/share/openhab2/addons/ and restarted OpenHAB:

openhab> bundle:list -s -r | grep -i unifi
 61 │ Active   │  80 │ 2.5.0.201903210720     │ org.openhab.binding.unifi                                    │ [osgi.identity; type="osgi.bundle"; version:Version="2.5.0.201903210720"; osgi.identity="org.openhab.binding.unifi"; singleton:="true"]

You should also verify that unifi is not loaded via /etc/openhab2/services/addons.cfg (binding = … configuration line.)

The above absolute paths for file locations are correct for OpenHABian, they may be different if you aren’t running OpenHABian.

1 Like

What can I say… Somehow I dragged yesterday the earlier jar file to addons folder. Today I downloaded the file again and now it is:

openhab> bundle:list -s -r | grep -i unifi
267 │ Active │  80 │ 2.5.0.201903210720    │ org.openhab.binding.unifi                              │ [osgi.identity; osgi.identity="org.openhab.binding.unifi"; type="osgi.bundle"; version:Version="2.5.0.201903210720"; singleton:="true"]

and… it works! Just replaced 2.4.0 with 2.5.0 build #101 - this solved my problem.

Many thanks @mgbowman and @scottk for your help :grinning:

1 Like