I’m currently thinking about the right service to implement messaging/alarming for my Smart Home. For me security and data privacy are an important aspect. Implementing my own messaging infrastructure is no option, but using a public service is also a matter of trusting the supplier with regards to data privacy. Another important aspect is: I want to receive alarms on my mobile with the App I’m using also for private messaging. And of course: If has to be integrated into OH
My assesment so far
openHAB App: Yes, I know you could receive messages using myopenhab, but I don’t use the App for various reasons and prefer a solution, which reports alarms to the App I’m using for my daily communication (otherwise the chance to miss an alarm is hight)
WhatsApp: Most of my private contacts are using WhatsApp. I already created a WA binding in the past, but since they changed their API this approach is dead. This is exactly the scenario I want to fix. WhatsApp is not respecting privacy anymore, Faccebook is clearly aiming your data and monitize it in any way. This gets even worth within the last weeks so I need to move…
Telegram: Looks better, already has an OH integration, nice App, BUT: e2e encryption only on demand, US operator, phone number based user ids = exposing your pjhone number
Signal: Looks better, some issues on the security side, ID is also based on phone number. Signal is getting more popular in the last months and reachs an acceptable distribution within other people I want to communicate.
Threema: Seems to be the best solution with regards to privacy. It has a technical user id, phone number and e-mail address are optional. Sounds good, but Threema is a paid service. The App costs 3,99€ - I think this is ok as a one-time cost, but sending messages by an app (like OH) requires a Threema Gatewaxy account, which drives per-message costs
There is no binding for Signal and Threema today, but I’m able to create one (already did Shelly, MagentaTV, GREE…). Both services have a documented API and don’t look too complicated.
Sounds good. Currently the threema gateway integration would cost me 200€ per year with my current setup. Multiple messages to different recipients. Sometimes I have to send images too. So this is not really an option. But I’m still interested.
I was already asking Threema support if they are planing to provide a cheaper gateway for private usages. But there are no plans. Maybe if more people are asking for it. My personal limit would be something around 10-20€ per year.
Thank you for your message and your interest in Threema Gateway.
In order to send Threema messages from your own environment, some development effort needs
to be done on your part. You can find the technical documentation for your developers
here: https://gateway.threema.ch/en/developer/api. An access to Threema Gateway via the
app is unfortunately not possible.
If you would like to test Threema Gateway, please register for free at
https://gateway.threema.ch/en/products. In the test environment is a Gateway ID which can
be only used to test the web interface (GUI). Sending messages via API requires an E2E
Gateway ID. Please request your ID at https://gateway.threema.ch/en/id-request. After your
message, we would be happy to offer you 2'000 credit to start with Threema Gateway.
Should you have further questions, don't hesitate to contact us again.
Well my personal assessment is that Signal is currently gaining the most traction so I’m trying to move my groups over there but that’s just my view and for the time being we all need to have all 4 messengers on our phones and watch how things evolve.
But since you’re asking which one to implement, I’d think Signal is the prime candidate, for this and the reasons you gave yourself.
Switch sides for a moment and think from a typical user’s perspective to determine what they would choose. I, too, think it’s Signal because of cost (and given privacy isn’t that bad either, what’s the point in that if you have an Alexa next door anyway).
Well, while to you and me this is a concern, to the vast majority of users it is not, WhatsApp being a proof.
It takes time, not everyone is a daily user, and it is always a bit of chicken-and-egg thing. From my experience with the Telegram binding, once it was announced for testing, the thread started growing fast.
Threema gateway cost is a knockout criterion so for the time being Signal is the only option, isn’t it.
You’re motivated and capable, a rare combination so don’t loose the momentum.
EDIT: @hmerk maybe you could have a chat with the Threema guys in the name of the foundation Maybe we could centrally operate one gateway and they provide it to us for free ?
I am actually using Telegram (existing binding…), but would be interested in Signal (preferred) or Threema.
I am trying to move away from WhatsApp and what I see is that my contacts would - if they are willing to move - move to signal. Other solutions might be more secure, but as @mstormi said: Try to explain them to my mother…
Nice idea @mstormi, unfortunately not. I have just checked their website. Threema indeed offers a 30% discount on Threema Work for non-profit organisations, but it is billed per month per device.
To benefit from that, the foundation would need to sign a contract with Threema and “resell” per device license to our users. Even if this could be done in compliance with german tax regulations, we don’t have the manpower to handle this.
Only wanted to pass along that Telegram allows you to hide your phone number on your profile settings and you can also deny access to your contacts.
As for the E2E portion, I’m only aware of this being supported if the login is via a mobile device; I don’t think I have ever seen a setup/request to have a bot use E2E. Out of curiosity though what data (scenario?) are you thinking of that you don’t want telegram servers knowing about?
@markus7017’s concern was on Signal not on Telegram.
But your question is valid. If you want to use Signal to communicate ONLY from binding to YOUR phone you don’t have to share anything. You could even use a 2ndary prepaid SIM card I think even a temporary one (when validating number) will do.
While I prefer Signal for communication with people, I’m using Telegram for openHAB messages. I use Telegram for nothing else and would never recommend it for people2people communication. But I enjoy having a separate app just for openHAB messages, with different channels for different purposes (e.g. error, service, info, debug…), each one separately mutable.
And I wouldn’t want this information mixed in between people2people communication…
Me too and your post reminds of another reason why I have been using Telegram so far (rather than myOpenHAB or other) :
You can have conversations with your openHAB bot, it can send you queries that result in buttons to display right within the Telegram client that you can answer with a simple click (button press) there. Useful in many scenarios such as “I noticed you left home, shall I turn off the lights for you ?”.
I’d think that any new messenger binding should provide this capability as well. Dunno if the Signal client is capable of that.
Sending such a message and receiving can be provided as a channel, which integrates with custom rules. If you wat to render a button and map that to an answer has to be supported by the messenger App. I know that some of them use markdown formatting, but I’m not aware how to create buttons in MD (maybe links would be possible).