ioBroker / AdapterRequests

This Place is used to track the status of new Adapter-Requests.
248 stars 36 forks source link

Signal Messenger (Native APIs) #527

Open dotbanana opened 3 years ago

dotbanana commented 3 years ago

Hello,

i would like to request a "Signal Adapter" as alternative to the existing whatsapp and telegram-adapters.
https://signal.org/en/ https://github.com/signalapp

Signal is the only messaging service that uses a fully open source client and also a common cryptographic implementation. Signal, while being long on the market, unfortunately lacks a userbase despite being praised by people like Edward Snowden.
Having the ability to get notifications through signal or even control our smarthomes through a (more) secure interface would be fantastic.

There seems to be a cross-plattform-cli available:
https://github.com/signalapp/libsignal-service-java
https://github.com/AsamK/signal-cli
https://github.com/signal-bot/signal-bot (Python)

Official Signal Documentation:
https://github.com/signalapp/Signal-Server/wiki/API-Protocol

Thanks for your attention and your great work here

Hirsch-DE commented 3 years ago

Hatte auch schon über eine Realisierung nachgedacht, da es ja sogar etwas als Javascript gibt. https://github.com/signalapp/libsignal-protocol-javascript

oe8bck commented 3 years ago

I also thought about such an integration (see https://forum.iobroker.net/topic/31675/iobroker-und-signal-messenger/8)

I did not write an ioBroker adapter, yet but I would like to help! I think it is the best to be as close as possible to the official Signal flow, so the Javascript linked to by @Hirsch-DE is the way to go.

So I would like to contribute, how we shall proceed? Is there already something somebody did or do we start from zero?

KR, Christof

oe8bck commented 3 years ago

I compiled signal-cli https://github.com/AsamK/signal-cli and was successful in registration of my wired telephone. Daemon is running and I can get messages from my phone.

Now the question is, which eco-system is the most stable resp. most up-to-date of the ones mentioned in the first post?

mericon commented 3 years ago

It Seems that Signal-Cli is the best Maintained Eco-System since the Others are a Bit outdated.

I cant Help much but if more informations are needed i can try to do some Research

JuniperChris929 commented 3 years ago

+1 for this Idea. Being able to send secure messages via Signal compared to the other "low encrypted" ones like Telegram would be more than awesome :) Thank you, you legends, for working on this!

tardar commented 3 years ago

+1 for this idea - love the idea :)

DutchmanNL commented 3 years ago

Habe mal bissl Research gemacht, dieser Node-red Lob sieht sehr viel versprechend aus und up-to-Date das könnte man in einen Adapter einpflegen bzw. die Logic/structuur übernehmen

(Ich habe leider Zuviel andere Projekte gerade um mir das weiter an zu schauen bzw nen Test auf zu setzen sorry 🙈

https://flows.nodered.org/node/nodered-contrib-signal-client

https://github.com/gausma/nodered-contrib-signal-client#readme

pseisam commented 3 years ago

Maybe this can help (just found it and it sounds interesting)

https://gitlab.com/signald/signald

cyzuer commented 3 years ago

mjahn started here something. can someone check? https://github.com/mjahn/ioBroker.signal_cli

Goeste commented 2 years ago

a workable solution can be found here: https://forum.iobroker.net/topic/31675/iobroker-und-signal-messenger However the signup and so on could be put into a nice adapter, right?!

oe8bck commented 2 years ago

Today there is an article in the German magazine "c't" how to access the Signal eco-system via CLI: https://www.heise.de/ratgeber/Signal-Nachrichten-per-Kommandozeile-und-Skript-verschicken-6118353.html This is using signal-cli, which is a JAVA command-line utility written by the Signal Foundation.

The connection to a phone number is described in detail, both ways, a new phone number as well as the connection to an already connected one. And also the interaction with D-BUS is described, examples can also be found in https://github.com/AsamK/signal-cli/wiki.

I think this would be an easy way to go: the CLI toolset has to be set up and connected and then the interaction with ioBroker is done via DBUS.

I think I'll give this a try, when I find time to.

PastCoder commented 2 years ago

The adapter https://github.com/ioBroker/ioBroker.whatsapp-cmb uses https://www.callmebot.com/blog/free-api-signal-send-messages/ , which (according to my understanding) does support Signal, too. So maybe that adapter could be extended (with adjusted adapter name).

Zelkin0815 commented 2 years ago

+1 von mir, das würde endlich den Telegram adapter ablösen :)

oe8bck commented 2 years ago

After some time I ha another search for options of a Signal adapter. Then I found this Node-RED client node: https://flows.nodered.org/node/nodered-contrib-signal-client

I am currently installing it, maybe this is the way to go, esp. as there is a documentation of the registration available.

cyzuer commented 2 years ago

Im using Signal-CLI by AsamK and send Messages via javascript-adapter with the exec-block

ldittmar81 commented 2 years ago

I found this here https://github.com/mjahn/ioBroker.signal_cli @mjahn do you need some help?

derAlff commented 2 years ago

I have published a Signal adapter yesterday (21.01.2022). The adapter is working with the CallMeBot-API (https://www.callmebot.com/blog/free-api-signal-send-messages).

Here the link to the adapter: https://www.github.com/necotec/ioBroker.signal-cmb

At the moment you can install the adapter to your ioBroker only via Github.

If you find any issues, please open an issue here: https://www.github.com/necotec/ioBroker.signal-cmb/issues

If you have any idea, problem or you only need informations, then you are welcome in the thread in the ioBroker forum: https://forum.iobroker.net/topic/51645/test-adapter-signal-cmb-signal-messenger

JuniperChris929 commented 2 years ago

Awesome! But I will not register with a third-party like "callmebot" when I can directly call the Signal-API. Kind of breaks the "secure messaging" Idea 🙃

ldittmar81 commented 2 years ago

Close this issue after https://github.com/ioBroker/ioBroker.repositories/pull/1615 review

Ilovegym66 commented 2 years ago

sorry, it's a workaround for a adapter. Why is the API not used? it's a secure break.

derAlff commented 2 years ago

sorry, it's a workaround for a adapter. Why is the API not used? it's a secure break.

Yes, it's a workaround (CallMeBot). But it is easy to use. The adapter is my first adapter for ioBroker. I am reading and testing about the Signal library, but it isn't working.

For that (for me) I've created this, because I don't use Whatsapp or Telegram.

Apollon77 commented 2 years ago

I would change title here and leave open also after we accepted the current one ...

ldittmar81 commented 2 years ago

Signal Messenger CMB ist on latest... with native API is following

derAlff commented 2 years ago

FYI I'm working on an adapter that's working with the Signal API ;)

JuniperChris929 commented 2 years ago

FYI I'm working on an adapter that's working with the Signal API ;)

AWESOME!

Zelkin0815 commented 2 years ago

Cmb is a great workaround...... Native API is the final solution! 👍

BenjaminK87 commented 1 year ago

Any news on the native API? Would be really helpful.

mericon commented 1 year ago

Hi, it is not fully a native adapter but i am currently working on an adapter that uses the Signal-cli-Rest-API docker to send and receive messages. The first alpha is ready now: https://github.com/mericon/ioBroker.signalclirestapiclient

JuniperChris929 commented 1 year ago

Why for Pete's sake would you unnecessarily add Docker to the mix???? 🙈🤷🏻

derAlff commented 1 year ago

Hanging on the process to verify the phone number. It's not working with the Signal libraries :( If anybody is here who can help me... I'm interested ;)

mericon commented 1 year ago

@JuniperChris929 it is only an other option to cmb. But it advantage is that it is cloudless.

@derAlff Where it hangs actually?

I Opened a thread on the Testing forum the it maybe easyer to support: https://forum.iobroker.net/topic/58973/test-adapter-signal-cli-rest-api-client

derAlff commented 1 year ago

I can register a phone number, can do the "I am not a robot verification", I receive a call or SMS with a verification code. But when I use this code, the registration fails. So I can't login.

mericon commented 1 year ago

I tested it a new times and for me it works. For the registration you run the docker with MODE=normal or MODE=native ? Set the correct path in the docker and the directory exist with writing rights?

derAlff commented 1 year ago

Oooooh sorry, you are talking about your project... I'm talking about my project -> Use the official signalapp libraries

mericon commented 1 year ago

:D

mcm1957 commented 11 months ago

FYI I'm working on an adapter that's working with the Signal API ;)

@derAlff Could you please provide an update? Do you still work at this adapter? derAlff/ioBroker.signal-messenger seem to be unchanged since a longer period

derAlff commented 11 months ago

Hey @mcm1957 ,

At the moment is this not my first priority, because I'm ill. Sorry for this.

mcm1957 commented 11 months ago

Get well soon Gute Besserung

derAlff commented 11 months ago

Thank you very much! Vielen Dank!