Busch-Jaeger Free@Home

Yes I have - included

  • delete the SysAp from PaperUI
  • Close my Browser (Safari)
  • Start an other (Firefox) Browser for reinstall the “Thing”

For Your Information, Correct Username and False Password delivery a Communication Error on Log and PaperUI, False Username and anything Password gets Different Logs (Event.log / Openhab.log) and green Bubble at PaperUi …

Good User and False Password

==> /var/log/openhab2/events.log <==
2019-10-01 20:35:52.286 [hingStatusInfoChangedEvent] - 'freeathome:bridge:fd42af2b' changed from ONLINE to OFFLINE (CONFIGURATION_ERROR): Bridge removed
2019-10-01 20:35:52.301 [me.event.ThingUpdatedEvent] - Thing 'freeathome:bridge:fd42af2b' has been updated.

==> /var/log/openhab2/openhab.log <==
2019-10-01 20:35:52.253 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Bridge connection lost. Updating thing status to OFFLINE.
2019-10-01 20:35:52.399 [INFO ] [rnal.handler.FreeAtHomeBridgeHandler] - Login Match Matching JID for login: Installer & installer@busch-jaeger.de

root@berry:~#
root@berry:~#
==> /var/log/openhab2/events.log <==
2019-10-01 20:35:57.499 [hingStatusInfoChangedEvent] - 'freeathome:bridge:fd42af2b' changed from OFFLINE (CONFIGURATION_ERROR): Bridge removed to OFFLINE (COMMUNICATION_ERROR): Can not connect to SysAP with address: 172.16.2.76

==> /var/log/openhab2/openhab.log <==
2019-10-01 20:35:57.482 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Bridge connection lost. Updating thing status to OFFLINE.
root@berry:~#

btw. @SysAP

What have I do to rename de Installer:

  • Backup my Wireless Key
  • Build an actualy Project Backup
  • Factory Reset my SysAP (via Web)
  • Install as Plain New with “Installer”
  • Restore the Project
  • Restore the Key

-> my Second User “mlaube” was also Restored, a my Password doesn’t work. I must Change my Password, also I think the Password-Hash ist Changed …

Laubi

btw thanks for the hint to

https://github.com/henry-spanka/freeathome-api

Thats works … Ok not (yet) implemented in my Openhab

I´m not sure why this works and yours not :-/

Strange, it works perfectly for me.

Based on your errors/debugging, your problems seem to be related to SysAp ip address or username/password.

Hi,

just tested - works on my 2.3.1 firmware. Did as you suggested, removed bridge, uninstalled binding, then installed it again, linked all Things to it. And it’s online :slight_smile:
I’m using “simple” user, not installer.

Thank you, @kjoglums!

1 Like

last Test :-/

==> /var/log/openhab2/openhab.log <==
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        at java.lang.Thread.run(Thread.java:748) [?:?]
Caused by: rocks.xmpp.core.session.NoResponseException: Timeout reached, while waiting on a response for request: IQ-get (e4290bea-f7c4-4aff-a858-910a2ee2652d) to 'mrha@busch-jaeger.de/rpc'
Extension(s):
Identity: []; Features: []

        at rocks.xmpp.core.session.XmppSession.lambda$sendAndAwait$7(XmppSession.java:829) ~[?:?]
        ... 7 more
2019-10-06 21:42:24.445 [WARN ] [sions.caps.EntityCapabilitiesManager] - Failed to discover information for entity 'mrha@busch-jaeger.de/rpc' for node 'https://github.com/qxmpp-project/qxmpp#dOmtXIyaqfcEcu52BgM7enFuDnw='
java.util.concurrent.CompletionException: rocks.xmpp.core.session.NoResponseException: Timeout reached, while waiting on a response for request: IQ-get (04932bcf-ba5d-4536-b704-ae5f2221fbfb) to 'mrha@busch-jaeger.de/rpc'
Extension(s):
Identity: []; Features: []

        at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:292) ~[?:?]
        at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:308) ~[?:?]
        at java.util.concurrent.CompletableFuture.orApply(CompletableFuture.java:1371) ~[?:?]
        at java.util.concurrent.CompletableFuture$OrApply.tryFire(CompletableFuture.java:1350) ~[?:?]
        at java.util.concurrent.CompletableFuture$CoCompletion.tryFire(CompletableFuture.java:1020) ~[?:?]
        at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474) ~[?:?]
        at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1977) ~[?:?]
        at rocks.xmpp.util.concurrent.CompletionStages.lambda$timeoutAfter$5(CompletionStages.java:113) ~[?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        at java.lang.Thread.run(Thread.java:748) [?:?]
Caused by: rocks.xmpp.core.session.NoResponseException: Timeout reached, while waiting on a response for request: IQ-get (04932bcf-ba5d-4536-b704-ae5f2221fbfb) to 'mrha@busch-jaeger.de/rpc'
Extension(s):
Identity: []; Features: []

        at rocks.xmpp.core.session.XmppSession.lambda$sendAndAwait$7(XmppSession.java:829) ~[?:?]
        ... 7 more

==> /var/log/openhab2/events.log <==
2019-10-06 21:42:27.463 [hingStatusInfoChangedEvent] - 'freeathome:bridge:51d231e3' changed from OFFLINE (BRIDGE_OFFLINE): XMPP connection lost to ONLINE

==> /var/log/openhab2/openhab.log <==
2019-10-06 21:42:27.454 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Bridge connected. Updating thing status to ONLINE.
2019-10-06 21:42:27.461 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Connection authenticated

==> /var/log/openhab2/events.log <==
2019-10-06 21:42:28.160 [hingStatusInfoChangedEvent] - 'freeathome:bridge:51d231e3' changed from ONLINE to OFFLINE (BRIDGE_OFFLINE): XMPP connection lost

==> /var/log/openhab2/openhab.log <==
2019-10-06 21:42:28.153 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Bridge connection lost. Updating thing status to OFFLINE.
2019-10-06 21:42:28.160 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Connection lost DISCONNECTED (old status: AUTHENTICATED)
Status change caused by:
javax.websocket.DecodeException: unerwartetes Element (URI:"", lokal:"iq"). Erwartete Elemente sind <{urn:xmpp:sm:3}a>,<{urn:ietf:params:xml:ns:xmpp-sasl}abort>,<{http://jabber.org/protocol/chatstates}active>,<{urn:xmpp:csi:0}active>,<{urn:xmpp:jingle:apps:rtp:info:1}active>,<{http://jabber.org/protocol/activity}activity>,<{http://jabber.org/protocol/address}addresses>,<{http://jabber.org/protocol/activity}at_the_spa>,<{urn:xmpp:attention:0}attention>,<{urn:ietf:params:xml:ns:xmpp-sasl}auth>,<{http://jabber.org/protocol/commands}bad-action>,<{urn:ietf:params:xml:ns:xmpp-streams}bad-format>,<{http://jabber.org/protocol/commands}bad-locale>,<{urn:ietf:params:xml:ns:xmpp-streams}bad-namespace-prefix>,<{http://jabber.org/protocol/commands}bad-payload>,<{http://jabber.org/protocol/si}bad-profile>,<{urn:ietf:params:xml:ns:xmpp-stanzas}bad-request>,<{http://jabber.org/protocol/commands}bad-sessionid>,<{urn:ietf:params:xml:ns:xmpp-bind}bind>,<{urn:xmpp:blocking}block>,<{urn:xmpp:blocking:errors}blocked>,<{urn:xmpp:blocking}blocklist>,<{http://jabber.org/protocol/httpbind}body>,<{http://jabber.org

OK, please can you detailed describe what you have do?
I’m think a make a fail :wink: What have I do:

  • copy org.freeathome.jar to /usr/share/openhab2/addons/
  • add thing in PaperUi
  • Delete Thing in PaperUi
  • add Thing in PaperUI

Ok i do anythings more since testing, please can you discripe what do you have do ?

Thanks from Germany

Laubi

Is the IP address you are using as input under “host” when creating new Free@Home bridge in PaperUI exactly the same as IP address used to log in to SysAp via web browser? I.e. xxx.xxx.xxx.xxx?

Have you confirmed username/password logging in to SysAp via web browser? If so, would suggest to create a dedicated OpenHAB account set with desired username/password and with “installer rights” (configured within SysAp configuration via web browser). Created username/password then to be used for bridge setup in PaperUI.

Otherwise, it could seem like your OpenHabian still hang on to some old parts of the code (based on your debug), and I would recommend trying these steps:

  • Remove Free@Home bridge from PaperUI (other things can remain)
  • Remove org.freeathome.jar file from openhab2-addons folder
  • ssh into OpenHabian, e.g. ssh openhabian@openhabianipaddress
  • Stop OpenHab service: sudo systemctl stop openhab
  • Remove tmp files: sudo rm -rf /var/lib/openhab2/tmp/*
  • Remove cache: sudo openhab-cli clean-cache
  • Reboot OpenHab: sudo reboot
  • Download and put org.freeathome.jar file into openhab2-addons folder: Link
  • From PaperUI, add Free@Home bridge (Configuration / Things / Add thing / Free@Home binding / Add manually / Free@Home Bridge)
  • Set up correct input for SysAp (e.g. host, username and password AND try to deselect debug logging:

First time, you will be likely to end up with a connection error (no clue why), but for me the following additional steps worked:

  • Remove/delete the newly created Free@Home bridge from PaperUI
  • Restart web browser / PaperUI
  • Install new Free@Home bridge in PaperUI, as described above, and you should get a good and open connection to your SysAp
  • Reconnect your existing Free@Home things to the newly created Free@Home bridge in PaperUI (need to be edited for each thing)
1 Like

Thanks for you long detailed description! :smiley:

my OpenHab don’t like me :frowning:

However I get folling logs after delete and make new bridge:

 ==> /var/log/openhab2/openhab.log <==
2019-10-07 10:32:52.659 [INFO ] [rnal.handler.FreeAtHomeBridgeHandler] - Login Match Matching JID for login: openhab & 7abb2233-5878-47e5-81d9-052ca05afedf@busch-jaeger.de
2019-10-07 10:32:52.767 [INFO ] [rnal.handler.FreeAtHomeBridgeHandler] - Login Match Matching JID for login: openhab & 7abb2233-5878-47e5-81d9-052ca05afedf@busch-jaeger.de
2019-10-07 10:32:53.066 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Bridge connected. Updating thing status to ONLINE.
2019-10-07 10:32:53.076 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Connection authenticated
2019-10-07 10:32:53.164 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Bridge connected. Updating thing status to ONLINE.

.

==> /var/log/openhab2/events.log <==
2019-10-07 10:32:53.842 [hingStatusInfoChangedEvent] - 'freeathome:bridge:b91bb647' changed from ONLINE to OFFLINE (BRIDGE_OFFLINE): XMPP connection lost

.

==> /var/log/openhab2/openhab.log <==
2019-10-07 10:32:53.753 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Bridge connection lost. Updating thing status to OFFLINE.
2019-10-07 10:32:53.842 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Connection lost DISCONNECTED (old status: AUTHENTICATED)
Status change caused by:
javax.websocket.DecodeException: unerwartetes Element (URI:"", lokal:"iq"). Erwartete Elemente sind <{urn:xmpp:sm:3}a>,<{urn:ietf:params:xml:ns:xmpp-sasl}abort>,<{http://jabber.org/protocol/chatstates}active>,<{urn:xmpp:csi:0}active>,<{urn:xmpp:jingle:apps:rtp:info:1}active>,<{http://jabber.org/protocol/activity}activity>,<{http://jabber.org/protocol/address}addresses>,<{http://jabber.org/protocol/activity}at_the_spa>,<{urn:xmpp:attention:0}attention>,<{urn:ietf:params:xml:ns:xmpp-sasl}auth>,<{http://jabber.org/protocol/commands}bad-action>,<{urn:ietf:params:xml:ns:xmpp-streams}bad-format>,<{http://jabber.org/protocol/commands}bad-locale>,<{urn:ietf:params:xml:ns:xmpp-streams}bad-namespace-prefix>,<{http://jabber.org/protocol/commands}bad-payload>,<{http://jabber.org/protocol/si}bad-profile>,<{urn:ietf:params:xml:ns:xmpp-stanzas}bad-request>,<{http://jabber.org/protocol/commands}bad-sessionid>,<{urn:ietf:params:xml:ns:xmpp-bind}bind>,<{urn:xmpp:blocking}block>,<{urn:xmpp:blocking:errors}blocked>,<{urn:xmpp:blocking}blocklist>,<{http://jabber.org/protocol/httpbind}body>,<{http://jabber.org/protocol/activity}brushing_teeth>,<{http://jabber.org/protocol/activity}buying_groceries>,<{http://jabber.org/protocol/caps}c>,<{urn:xmpp:caps}c>,<{urn:xmpp:sec-label:catalog:2}catalog>,<{urn:ietf:params:xml:ns:xmpp-sasl}challenge>,<{urn:xmpp:jingle:apps:file-transfer:4}checksum>,<{http://jabber.org/protocol/activity}cleaning>,<{http://jabber.org/protocol/ibb}close>,<{urn:ietf:params:xml:ns:xmpp-framing}close>,<{http://jabber.org/protocol/pubsub#errors}closed-node>,<{http://jabber.org/protocol/activity}coding>,<{http://jabber.org/protocol/commands}command>,<{http://jabber.org/protocol/activity}commuting>,<{http://jabber.org/protocol/chatstates}composing>,<{http://jabber.org/protocol/compress}compress>,<{http://jabber.org/protocol/compress}compressed>,<{http://jabber.org/features/compress}compression>,<{http://jabber.org/protocol/pubsub#errors}configuration-required>,<{http://jabber.org/protocol/http-auth}confirm>,<{urn:ietf:params:xml:ns:xmpp-stanzas}conflict>,<{urn:ietf:params:xml:ns:xmpp-streams}conflict>,<{urn:ietf:params:xml:ns:xmpp-streams}connection-timeout>,<{http://jabber.org/protocol/activity}cooking>,<{urn:xmpp:jingle:apps:rtp:errors:1}crypto-required>,<{urn:xmpp:csi:0}csi>,<{http://jabber.org/protocol/activity}cycling>,<{http://jabber.org/protocol/activity}dancing>,<{http://jabber.org/protocol/ibb}data>,<{urn:xmpp:avatar:data}data>,<{urn:xmpp:bob}data>,<{http://jabber.org/protocol/activity}day_off>,<{urn:xmpp:delay}delay>,<{urn:xmpp:jingle:apps:file-transfer:4}description>,<{urn:xmpp:jingle:apps:rtp:1}description>,<{urn:xmpp:carbons:2}disable>,<{http://jabber.org/protocol/activity}doing_maintenance>,<{http://jabber.org/protocol/activity}doing_the_dishes>,<{http://jabber.org/protocol/activity}doing_the_laundry>,<{http://jabber.org/protocol/activity}driving>,<{urn:xmpp:carbons:2}enable>,<{urn:xmpp:sm:3}enable>,<{urn:xmpp:sm:3}enabled>,<{http://etherx.jabber.org/streams}error>,<{urn:xmpp:sec-label:ess:0}esssecuritylabel>,<{http://jabber.org/protocol/pubsub#event}event>,<{urn:xmpp:sm:3}failed>,<{http://jabber.org/protocol/compress}failure>,<{urn:ietf:params:xml:ns:xmpp-sasl}failure>,<{urn:ietf:params:xml:ns:xmpp-tls}failure>,<{http://jabber.org/protocol/feature-neg}feature>,<{urn:ietf:params:xml:ns:xmpp-stanzas}feature-not-implemented>,<{http://etherx.jabber.org/streams}features>,<{jabber:x:data}field>,<{http://jabber.org/protocol/si/profile/file-transfer}file>,<{urn:xmpp:jingle:apps:file-transfer:errors:0}file-not-available>,<{urn:xmpp:jingle:apps:file-transfer:errors:0}file-too-large>,<{http://jabber.org/protocol/activity}fishing>,<{urn:ietf:params:xml:ns:xmpp-stanzas}forbidden>,<{urn:xmpp:forward:0}forwarded>,<{http://jabber.org/protocol/activity}gaming>,<{http://jabber.org/protocol/activity}gardening>,<{http://jabber.org/protocol/geoloc}geoloc>,<{http://jabber.org/protocol/activity}getting_a_haircut>,<{http://jabber.org/protocol/activity}going_out>,<{http://jabber.org/protocol/chatstates}gone>,<{urn:ietf:params:xml:ns:xmpp-stanzas}gone>,<{jabber:component:accept}handshake>,<{http://jabber.org/protocol/activity}hanging_out>,<{urn:xmpp:hashes:2}hash>,<{urn:xmpp:hashes:2}hash-used>,<{http://jabber.org/protocol/activity}having_a_beer>,<{http://jabber.org/protocol/activity}having_a_snack>,<{http://jabber.org/protocol/activity}having_breakfast>,<{http://jabber.org/protocol/activity}having_coffee>,<{http://jabber.org/protocol/activity}having_dinner>,<{http://jabber.org/protocol/activity}having_lunch>,<{http://jabber.org/protocol/activity}having_tea>,<{http://jabber.org/protocol/shim}headers>,<{http://jabber.org/protocol/activity}hiding>,<{http://jabber.org/protocol/activity}hiking>,<{urn:xmpp:jingle:apps:rtp:info:1}hold>,<{urn:ietf:params:xml:ns:xmpp-streams}host-gone>,<{urn:ietf:params:xml:ns:xmpp-streams}host-unknown>,<{http://jabber.org/protocol/xhtml-im}html>,<{urn:xmpp:idle:1}idle>,<{urn:ietf:params:xml:ns:xmpp-streams}improper-addressing>,<{http://jabber.org/protocol/activity}in_a_car>,<{http://jabber.org/protocol/activity}in_a_meeting>,<{http://jabber.org/protocol/activity}in_real_life>,<{http://jabber.org/protocol/chatstates}inactive>,<{urn:xmpp:csi:0}inactive>,<{urn:ietf:params:xml:ns:xmpp-stanzas}internal-server-error>,<{urn:ietf:params:xml:ns:xmpp-streams}internal-server-error>,<{urn:xmpp:jingle:apps:rtp:errors:1}invalid-crypto>,<{urn:ietf:params:xml:ns:xmpp-streams}invalid-from>,<{http://jabber.org/protocol/pubsub#errors}invalid-jid>,<{urn:ietf:params:xml:ns:xmpp-streams}invalid-namespace>,<{http://jabber.org/protocol/pubsub#errors}invalid-options>,<{http://jabber.org/protocol/pubsub#errors}invalid-payload>,<{http://jabber.org/protocol/pubsub#errors}invalid-subid>,<{urn:ietf:params:xml:ns:xmpp-streams}invalid-xml>,<{urn:xmpp:invisible:0}invisible>,<{jabber:client}iq>,<{jabber:component:accept}iq>,<{jabber:server}iq>,<{http://jabber.org/protocol/pubsub#errors}item-forbidden>,<{urn:ietf:params:xml:ns:xmpp-stanzas}item-not-found>,<{http://jabber.org/protocol/pubsub#errors}item-required>,<{urn:ietf:params:xml:ns:xmpp-stanzas}jid-malformed>,<{http://jabber.org/protocol/pubsub#errors}jid-required>,<{urn:xmpp:jingle:1}jingle>,<{http://jabber.org/protocol/activity}jogging>,<{urn:xmpp:json:0}json>,<{http://jabber.org/protocol/commands}malformed-action>,<{http://jabber.org/protocol/pubsub#errors}max-items-exceeded>,<{http://jabber.org/protocol/pubsub#errors}max-nodes-exceeded>,<{urn:ietf:params:xml:ns:xmpp-sasl}mechanisms>,<{urn:xmpp:media-element}media>,<{jabber:client}message>,<{jabber:component:accept}message>,<{jabber:server}message>,<{urn:xmpp:avatar:metadata}metadata>,<{http://jabber.org/protocol/mood}mood>,<{urn:xmpp:jingle:apps:rtp:info:1}mute>,<{http://jabber.org/protocol/nick}nick>,<{http://jabber.org/protocol/si}no-valid-streams>,<{http://jabber.org/protocol/pubsub#errors}nodeid-required>,<{urn:ietf:params:xml:ns:xmpp-stanzas}not-acceptable>,<{urn:ietf:params:xml:ns:xmpp-stanzas}not-allowed>,<{urn:ietf:params:xml:ns:xmpp-stanzas}not-authorized>,<{urn:ietf:params:xml:ns:xmpp-streams}not-authorized>,<{http://jabber.org/protocol/pubsub#errors}not-in-roster-group>,<{http://jabber.org/protocol/pubsub#errors}not-subscribed>,<{urn:ietf:params:xml:ns:xmpp-streams}not-well-formed>,<{http://jabber.org/protocol/offline}offline>,<{http://jabber.org/protocol/activity}on_a_bus>,<{http://jabber.org/protocol/activity}on_a_plane>,<{http://jabber.org/protocol/activity}on_a_train>,<{http://jabber.org/protocol/activity}on_a_trip>,<{http://jabber.org/protocol/activity}on_the_phone>,<{http://jabber.org/protocol/activity}on_vacation>,<{http://jabber.org/protocol/activity}on_video_phone>,<{http://jabber.org/protocol/ibb}open>,<{urn:ietf:params:xml:ns:xmpp-framing}open>,<{http://jabber.org/protocol/activity}other>,<{http://jabber.org/protocol/xdata-layout}page>,<{http://jabber.org/protocol/activity}partying>,<{http://jabber.org/protocol/chatstates}paused>,<{http://jabber.org/protocol/pubsub#errors}payload-required>,<{http://jabber.org/protocol/pubsub#errors}payload-too-big>,<{http://jabber.org/protocol/pubsub#errors}pending-subscription>,<{urn:xmpp:ping}ping>,<{http://jabber.org/protocol/activity}playing_sports>,<{urn:ietf:params:xml:ns:xmpp-stanzas}policy-violation>,<{urn:ietf:params:xml:ns:xmpp-streams}policy-violation>,<{http://jabber.org/protocol/activity}praying>,<{jabber:client}presence>,<{jabber:component:accept}presence>,<{jabber:server}presence>,<{http://jabber.org/protocol/pubsub#errors}presence-subscription-required>,<{urn:xmpp:carbons:2}private>,<{urn:ietf:params:xml:ns:xmpp-tls}proceed>,<{http://jabber.org/protocol/pubsub}pubsub>,<{http://jabber.org/protocol/pubsub#owner}pubsub>,<{http://jabber.org/protocol/bytestreams}query>,<{http://jabber.org/protocol/disco#info}query>,<{http://jabber.org/protocol/disco#items}query>,<{http://jabber.org/protocol/muc#admin}query>,<{http://jabber.org/protocol/muc#owner}query>,<{jabber:iq:last}query>,<{jabber:iq:oob}query>,<{jabber:iq:privacy}query>,<{jabber:iq:private}query>,<{jabber:iq:register}query>,<{jabber:iq:roster}query>,<{jabber:iq:rpc}query>,<{jabber:iq:search}query>,<{jabber:iq:version}query>,<{urn:xmpp:langtrans:items}query>,<{urn:xmpp:sm:3}r>,<{urn:xmpp:reach:0}reach>,<{http://jabber.org/protocol/activity}reading>,<{urn:xmpp:jingle:apps:file-transfer:4}received>,<{urn:xmpp:receipts}received>,<{urn:ietf:params:xml:ns:xmpp-stanzas}recipient-unavailable>,<{urn:ietf:params:xml:ns:xmpp-stanzas}redirect>,<{http://jabber.org/features/iq-register}register>,<{urn:ietf:params:xml:ns:xmpp-stanzas}registration-required>,<{http://jabber.org/protocol/activity}rehearsing>,<{urn:ietf:params:xml:ns:xmpp-streams}remote-connection-failed>,<{urn:ietf:params:xml:ns:xmpp-stanzas}remote-server-not-found>,<{urn:ietf:params:xml:ns:xmpp-stanzas}remote-server-timeout>,<{urn:xmpp:message-correct:0}replace>,<{urn:xmpp:receipts}request>,<{urn:ietf:params:xml:ns:xmpp-streams}reset>,<{urn:ietf:params:xml:ns:xmpp-stanzas}resource-constraint>,<{urn:ietf:params:xml:ns:xmpp-streams}resource-constraint>,<{urn:xmpp:errors}resource-limit-exceeded>,<{urn:ietf:params:xml:ns:xmpp-sasl}response>,<{urn:ietf:params:xml:ns:xmpp-streams}restricted-xml>,<{urn:xmpp:sm:3}resume>,<{urn:xmpp:sm:3}resumed>,<{urn:xmpp:jingle:apps:rtp:info:1}ringing>,<{roster:delimiter}roster>,<{urn:xmpp:rtt:0}rtt>,<{http://jabber.org/protocol/activity}running>,<{http://jabber.org/protocol/activity}running_an_errand>,<{http://jabber.org/protocol/activity}scheduled_holiday>,<{urn:xmpp:sec-label:0}securitylabel>,<{urn:ietf:params:xml:ns:xmpp-streams}see-other-host>,<{urn:xmpp:carbons:2}sent>,<{urn:ietf:params:xml:ns:xmpp-stanzas}service-unavailable>,<{urn:ietf:params:xml:ns:xmpp-session}session>,<{http://jabber.org/protocol/commands}session-expired>,<{http://jabber.org/protocol/rsm}set>,<{http://jabber.org/protocol/activity}shaving>,<{http://jabber.org/protocol/activity}shopping>,<{http://jabber.org/protocol/si}si>,<{http://jabber.org/protocol/activity}skiing>,<{http://jabber.org/protocol/activity}sleeping>,<{urn:xmpp:sm:3}sm>,<{http://jabber.org/protocol/activity}smoking>,<{http://jabber.org/protocol/activity}socializing>,<{urn:xmpp:errors}stanza-too-big>,<{urn:ietf:params:xml:ns:xmpp-tls}starttls>,<{storage:bookmarks}storage>,<{storage:rosternotes}storage>,<{http://jabber.org/protocol/activity}studying>,<{urn:xmpp:features:pre-approval}sub>,<{http://jabber.org/protocol/pubsub#errors}subid-required>,<{urn:ietf:params:xml:ns:xmpp-stanzas}subscription-required>,<{urn:ietf:params:xml:ns:xmpp-sasl}success>,<{http://jabber.org/protocol/activity}sunbathing>,<{http://jabber.org/protocol/activity}swimming>,<{urn:ietf:params:xml:ns:xmpp-streams}system-shutdown>,<{http://jabber.org/protocol/activity}taking_a_bath>,<{http://jabber.org/protocol/activity}taking_a_shower>,<{http://jabber.org/protocol/activity}thinking>,<{urn:xmpp:thumbs:1}thumbnail>,<{urn:xmpp:time}time>,<{urn:xmpp:errors}too-many-stanzas>,<{http://jabber.org/protocol/pubsub#errors}too-many-subscriptions>,<{urn:xmpp:jingle:transports:ibb:1}transport>,<{urn:xmpp:jingle:transports:ice-udp:1}transport>,<{urn:xmpp:jingle:transports:s5b:1}transport>,<{http://jabber.org/protocol/tune}tune>,<{urn:xmpp:blocking}unblock>,<{urn:ietf:params:xml:ns:xmpp-stanzas}undefined-condition>,<{urn:ietf:params:xml:ns:xmpp-streams}undefined-condition>,<{urn:ietf:params:xml:ns:xmpp-stanzas}unexpected-request>,<{urn:xmpp:jingle:apps:rtp:info:1}unhold>,<{urn:xmpp:jingle:apps:rtp:info:1}unmute>,<{http://jabber.org/protocol/pubsub#errors}unsupported>,<{urn:ietf:params:xml:ns:xmpp-streams}unsupported-encoding>,<{urn:ietf:params:xml:ns:xmpp-streams}unsupported-feature>,<{urn:ietf:params:xml:ns:xmpp-streams}unsupported-stanza-type>,<{urn:ietf:params:xml:ns:xmpp-streams}unsupported-version>,<{http://abb.com/protocol/update}update>,<{vcard-temp}vCard>,<{http://jabber.org/protocol/xdata-validate}validate>,<{urn:xmpp:features:rosterver}ver>,<{urn:xmpp:invisible:0}visible>,<{http://jabber.org/protocol/activity}walking>,<{http://jabber.org/protocol/activity}walking_the_dog>,<{http://jabber.org/protocol/activity}watching_a_movie>,<{http://jabber.org/protocol/activity}watching_tv>,<{http://jabber.org/protocol/activity}working_out>,<{http://jabber.org/protocol/activity}writing>,<{http://jabber.org/protocol/muc}x>,<{http://jabber.org/protocol/muc#user}x>,<{http://jabber.org/protocol/rosterx}x>,<{jabber:x:conference}x>,<{jabber:x:data}x>,<{jabber:x:oob}x>,<{urn:xmpp:langtrans}x>,<{vcard-temp:x:update}x>
2019-10-07 10:32:58.174 [WARN ] [sions.caps.EntityCapabilitiesManager] - Failed to discover information for entity 'mrha@busch-jaeger.de/rpc' for node 'https://github.com/qxmpp-project/qxmpp#dOmtXIyaqfcEcu52BgM7enFuDnw='
java.util.concurrent.CompletionException: rocks.xmpp.core.session.NoResponseException: Timeout reached, while waiting on a response for request: IQ-get (680d3d6f-9c8a-488f-8efd-ab20256216cf) to 'mrha@busch-jaeger.de/rpc'
Extension(s):
Identity: []; Features: []

        at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:292) ~[?:?]
        at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:308) ~[?:?]
        at java.util.concurrent.CompletableFuture.orApply(CompletableFuture.java:1371) ~[?:?]
        at java.util.concurrent.CompletableFuture$OrApply.tryFire(CompletableFuture.java:1350) ~[?:?]
        at java.util.concurrent.CompletableFuture$CoCompletion.tryFire(CompletableFuture.java:1020) ~[?:?]
        at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474) ~[?:?]
        at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1977) ~[?:?]
        at rocks.xmpp.util.concurrent.CompletionStages.lambda$timeoutAfter$5(CompletionStages.java:113) ~[?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        at java.lang.Thread.run(Thread.java:748) [?:?]
Caused by: rocks.xmpp.core.session.NoResponseException: Timeout reached, while waiting on a response for request: IQ-get (680d3d6f-9c8a-488f-8efd-ab20256216cf) to 'mrha@busch-jaeger.de/rpc'
Extension(s):
Identity: []; Features: []

        at rocks.xmpp.core.session.XmppSession.lambda$sendAndAwait$7(XmppSession.java:829) ~[?:?]
        ... 7 more

.

==> /var/log/openhab2/events.log <==
2019-10-07 10:32:59.204 [hingStatusInfoChangedEvent] - 'freeathome:bridge:b91bb647' changed from OFFLINE (BRIDGE_OFFLINE): XMPP connection lost to ONLINE

==> /var/log/openhab2/openhab.log <==
2019-10-07 10:32:59.194 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Bridge connected. Updating thing status to ONLINE.
2019-10-07 10:32:59.200 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Connection authenticated
2019-10-07 10:32:59.857 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Bridge connection lost. Updating thing status to OFFLINE.
2019-10-07 10:32:59.865 [WARN ] [rnal.handler.FreeAtHomeBridgeHandler] - Connection lost DISCONNECTED (old status: AUTHENTICATED)
Status change caused by:
javax.websocket.DecodeException: unerwartetes Element (URI:"", lokal:"iq"). Erwartete Elemente sind <{urn:xmpp:sm:3}a>,<{urn:ietf:params:xml:ns:xmpp-sasl}abort>,<{http://jabber.org/protocol/chatstates}active>,<{urn:xmpp:csi:0}active>,<{urn:xmpp:jingle:apps:rtp:inf
o:1}active>,<{http://jabber.org/protocol/activity}activity>,<{http://jabber.org/protocol/address}addresses>,<{http://jabber.org/protocol/activity}at_the_spa>,<{urn:xmpp:attention:0}attention>,<{urn:ietf:params:xml:ns:xmpp-sasl}auth>,<{http://jabber.org/protocol/co
mmands}bad-action>,<{urn:ietf:params:xml:ns:xmpp-streams}bad-format>,<{http://jabber.org/protocol/commands}bad-locale>,<{urn:ietf:params:xml:ns:xmpp-streams}bad-namespace-prefix>,<{http://jabber.org/protocol/commands}bad-payload>,<{http://jabber.org/protocol/si}ba
d-profile>,<{urn:ietf:params:xml:ns:xmpp-stanzas}bad-request>,<{http://jabber.org/protocol/commands}bad-sessionid>,<{urn:ietf:params:xml:ns:xmpp-bind}bind>,<{urn:xmpp:blocking}block>,<{urn:xmpp:blocking:errors}blocked>,<{urn:xmpp:blocking}blocklist>,<{http://jabbe
r.org/protocol/httpbind}body>,<{

.

and in Web Interface the status flapped between

Status: OFFLINE - BRIDGE_OFFLINE XMPP connection lost

and

Status: ONLINE

Have contacted you on PM @markuslaube, as the issues seem to be account / smarthome setup specific.

I.e. the javax.websocket.DecodeException you are getting should not be possible with the new/customized code as the code is set up to transform all incoming stream features from SysAp into acknowledged websocket/XMPP stream.

@kjoglums These are really great news. It is great to know about your support and contribution to the Community.

What Do you think how to proceed? Would you Like to generate a pull requests? I would gehen build a jar to Upload to Marketplace.

Btw. If you support a further development of the binding, I just propose a joint development on e.g a shared repo. What so you think?

Best ruebox

Hi @kjoglums, I just want to note that I’m having exactly the same issue as @markuslaube, after installing the Free@home binding yesterday. Same symptoms (bridge loses XMPP connection and keeps toggling between ONLINE and OFFLINE), same log entries

javax.websocket.DecodeException: ...

So, in case you guys come up with a solution or any insights, I’d much appreciate, if you would let me know as well! Thanks a lot!

@ruebox Not sure which would be the best way forward. I have now built a working environment for the most recent OpenHab development environment (see my github), so I am not able to perform a pull request against your account.

Maybe you need to get your environment up to the most recent version? Then we can implement the changes as part of a new Marketplace version.

@ohivan @markuslaube
Alternatively test this customized version (modified code for decoding SysAp stream, although with less stream features debugging compared to version presented in my previous post).

https://1drv.ms/u/s!Aoa2B3iUQJCngfk2zlQqSHQpX0ZtaA?e=K8JHjB

Thanks a lot!! I just tested your most recent version and so far it seems to work perfectly. The bridge is online and I was able to add and control a thing. Thanks again for this super-fast fix!

1 Like

Hello,
Sorry for my late Reply - in reason of the it-sa i habe this Werk verry Smal time for private thinks :grinning:

I will Test it all your Feedbacks and Dokumentation all at this Weekend.

Yes. All Systems (openHAB, sysAP) from ne have german Language Settings.

Laubi

Hi all,

I have an old version running, how to I install this new updated version?

Sheldon

Well, provided you have a SysAp software version >2.2.4, and you really feel like you would upgrade the binding, the following steps would be required:

  • Leave all Free@Home ‘Things’ in PaperUI (besides Free@Home bridge) as is
  • Delete Free@Home bridge from ‘Things’ in PaperUI
  • Uninstall/remove existing Free@Home binding
    1a) Uninstall binding from PaperUI if using Marketplace binding
    1b) Remove .jar file from openhab2-addons folder if using customized binding
  • Clean Openhab cache / restart Openhab service
    1. ssh into OpenHab service (described above if using OpenHabian)
    2. Stop OpenHab service: sudo systemctl stop openhab
    3. Remove tmp files: sudo rm -rf /var/lib/openhab2/tmp/*
    4. Remove cache: sudo openhab-cli clean-cache
    5. Restart OpenHab service: sudo reboot
  • Download latest binding and put into openhab2-addons folder:
    Link
  • From PaperUI, add Free@Home bridge (Configuration / Things / Add thing / Free@Home binding / Add manually / Free@Home Bridge)
  • Set up correct input for SysAp (e.g. host, username and password etc)

First time, you will be likely to end up with a connection timeout, i.e. stuck in initialising phase (no clue why), but for me the following additional steps worked:

  • Remove/delete the newly created Free@Home bridge from PaperUI
  • Restart web browser / PaperUI
  • Install new Free@Home bridge in PaperUI, as described above, and you should get a good and open connection to your SysAp
  • Reconnect your existing Free@Home things to the newly created Free@Home bridge in PaperUI (need to be edited for each thing)
2 Likes

Stian,

Thanks for all the hard work and releasing a new version.
I came across this announcement:

https://new.abb.com/news/detail/30956/abb-launches-open-api-platform-to-boost-smart-home-automation.

Could it be of relevance to the work done on the binding?