The signal binding allows openHAB to exchange message with other Signal users.
WARNING : LEGACY VERSION FOR openHAB 4
Limited support. You should use openHAB 5 and the relevant addon version
Features :
- Dedicated account (if you have a spare number, such as landline), or an account linked to your mobile phone number.
- Register your account in two steps from within openHAB, no command line or extra manipulation (include verification code, QR code)
- Sending, receiving text messages (individual user for the moment, no group).
- Sending images
- Trigger event.
- A “send” action for your rules.
- Delivery and read notifications
See documentation in Resources section for setup.
version 4.3.0 - BETA 12
Bumping signal-cli version to 0.13.10
Remove warnings
version 4.2.0 - BETA 11
Fix linking account is failed (exceptions.MissingCapabilitiesException: StatusCode: 409) by bumping signal-cli version to 0.13.6
version 4.2.0 - BETA 10.
Bump to signal-cli version 0.13.4
i686 32 bits support
version 4.2.0 - BETA 9.
Bump to signal-cli version 0.13.3
musl arch support attempt
Adding (very simple draft) reaction emoji support
Adding reponse status to “send” action
version 4.2.0 - BETA 8.
Bump to signal-cli version 0.13 (with a backport from java 21 to java 17)
version 4.1.0 - BETA 7.
Fix the “signal-cli version is too old for the Signal-Server, please update.” message
version 4.1.0 - BETA 6.
Update signal-cli version to fix error when registering new linked account (accomodate changes in the whisper signal server side)
Renaming feature to avoid kar autodeletion by openHAB ?
version 4.1.0 - BETA 5.
First version explicitely targeting openHAB 4.
Written with java 17 (no more java 11 rewrite)
In the hope of resolving the sqlite error, the binary is now a KAR file, and sqlite is now a dependency feature.
Version 3.4.0 - BETA4
Action for sending image now include an accompanying text
Fix an error that forced to use vocal validation (which is broken)
Try to fix vocal validation with a workaround found on signal-cli forum
Version 3.4.0 - BETA3
Compatiblity with openHAB 3.4.x and openHAB 4.0
New feature : action to send images (see documentation)
Version 3.4.0 - BETA2
WARNING : breaking change ! You must delete and recreate your Thing account.
Full rewrite using the signal-cli library as a code base.
Fix : Connection issue following unknown changes on the whisper server side around the 6 december.
Fix : In all messages sent from the binding, the sender should now be apparent with the name you setup.
Fix : You can now send “note to yoursel” (if you use your full number : notification ON. if you use the special recipient “self” : no notification)
New : Delivery and Read status (both ways)
Version 3.4.0 - BETA1
Fix PushNetworkException - javax.net.ssl.SSLHandshakeException
(And some other too verbose exceptions in log)
Version 3.4.0 - BETA0.1
Fix DeprecatedVersionException
Version 3.4.0 - BETA0
Initial contribution.
Dedicated account, linked account.
Basic messages (send, receive)
Trigger event
Send action
Technical note
I strongly encourage you to contribute if you can, because it could take ages before I have the time to implement other features.
If you want to contribute, here is some information : this binding uses the signal-cli project “lib” part as a codebase, with very little adjustments (available on my personal fork of signal-cli). Signal-cli uses itself the underlying library com.github.turasa:signal-service-java, which is a modified version of the android Signal official library. And deep down below, there is the native library for various architecture (compiled from the official signal repository in rust). I included in the binding the autobuilded ones from exquo/signal-libs-build on github, and libsignal-client on gitlab (no longer needed)
Note to other developers. What To Do To Update (In the case I’m not responding and the service is broken) :
You should probably update signal-cli, as they probabley fixed it upstream.
Merge the new signal-cli tag version in the openhab_adjustement branch (on my personal fork of signal-cli). Get the source in the signal-cli lib subproject and overwrite the sources in the 3rdparty source directory of the binding project.
Check what libraries has been updated in the signal-cli project (settings.gradle.kts). You may (or may not) update/add the corresponding library in the pom. Try to stick to the version already present in openHAB.
Beware of the transitive dependencies, they may also need update ! Especially the libsignal-client (transitive dependency of signal-service-java).
If the libsignal-client is updated, you also need to update all the signal library binaries (in the src/main/resources/lib). You can follow this link to get new libraries. I personally use those from the user “exquo”. Get the right version ! (same version number as libsignal-client).
