Textsecure bzw. Signal aus FHEM nutzen

Begonnen von malted, 21 Dezember 2014, 01:13:04

Vorheriges Thema - Nächstes Thema

malted

#15
Zitat von: fu_zhou am 30 Januar 2015, 10:12:40
Hallo malted,
Hast du eine Idee, wie ich das gefixt bekomme bzw. was ich alles löschen muss, um noch mal vor vorne anfangen zu können?

Sorry, da bin ich echt überfragt.
Neustarten kannst du mit einem

rm -r .storage .config/config.yml gocode
export GOPATH=~/gocode
./go/bin/go get github.com/janimo/textsecure/cmd/textsecure

den aktuellen Code bauen.
Ich schlage vor, du machst mal ein Issue auf:
https://github.com/janimo/textsecure/issues

tom_n

Hallo malted,
das ist eine nette Geschichte mit Textsecure. Ich wollte das selber mal ausprobieren, benutze aber textsecure schon auf dem Android-Telefon. Wenn ich bei der Registrierung die entsprechende Telefonnummer angeben, kommt aber kein Registration Code auf dem Telefon an. Das liegt möglicherweise daran, das die Nummer eben schon registriert ist? Hast Du eine Ahnung, ob man immer eine zusätzliche SIM-Karte mit einer neuen Nummer braucht zur Registrierung? Und nach der Registrierung braucht man die nicht mehr, da der Rechner dann ja per Internet kommuniziert?
VG TomNo

malted

Zitat von: TomNo am 04 März 2015, 14:15:08
Das liegt möglicherweise daran, das die Nummer eben schon registriert ist?
Vermutlich...
Zitat
Hast Du eine Ahnung, ob man immer eine zusätzliche SIM-Karte mit einer neuen Nummer braucht zur Registrierung? Und nach der Registrierung braucht man die nicht mehr, da der Rechner dann ja per Internet kommuniziert?
Die Telefonnummer ist der Identifier innerhalb von Textsecure. Du brauchst eine eigene Telefonnummer. Das kann aber auch eine Festnetznummer sein. Einfach die Benachrichtung auf 'voice' stellen und die registrieren. Wenn Du keine festnetznummer hast, kannst Du dir bei sipgate kostenlos eine holen.

otto

Hallo gibt es eine möglichkeit verschiedene Wörter rauszufiltern bzw auch Leerzeilen?

das aus sowas :
2015-06-15_18:07:56 Seriell UNKNOWNCODE 000
2015-06-15_18:08:05 Seriell UNKNOWNCODE 83: Mon 15-Jun-15 17:55:50:   ZENTRALE ZUR�CKSETZEN


2015-06-15_18:10:14 Seriell UNKNOWNCODE 000
2015-06-15_18:10:22 Seriell UNKNOWNCODE 84: Mon 15-Jun-15 17:58:08:   ZENTRALE ZUR�CKSETZEN

so was wird:
2015-06-15_18:07:56
2015-06-15_18:08:05 83: Mon 15-Jun-15 17:55:50:   ZENTRALE ZUR�CKSETZEN
2015-06-15_18:10:22 Seriell UNKNOWNCODE 84: Mon 15-Jun-15 17:58:08:   ZENTRALE ZUR�CKSETZEN


Gruß Otto
Fhem 1 wire Adapter mit FT232RL&DS2480B Raspberry PI HMLAN HM485LAN HM-LC-Sw4-PCB   HMW-IO-12-SW7-DR Funkhandsender
FRITZ!Powerline 546E

Nick666

Tolle Anleitung. Vielen Dank!

In neueren Versionen kann man übrigens den Pfad zu .config über die Kommandozeile angeben!


Grüße
Nick

Thargor

Wie könnte man denn integrieren, dass FHEM auch Nachrichten empfangen kann?

malted

#21
du kannst einfach den textsecure auf einer Nummer laufen lassen und alle zeilen an fhem schicken. Geht bestimmt irgendwie eleganter, aber müßte so funktionieren.

einen dummy anlegen
define textsecure_incoming dummy

root@fhem:/opt/fhem/ts# sudo -u fhem /opt/textsecure/bin/textsecure -to="+49157xxxxxxxxx" | while read line; do mes=$(echo $line| sed -r "s/\x1B\[([0-9]{1,3}((;[0-9]{1,3})*)?)?[m|K]//g" | awk '{ print substr($0, index($0,$5)) }'); echo setreading textsecure_incoming message "$mes" | nc -q 1 fhem 7072 ; done

das sed löscht die Farb-Codes und das Awk zeigt Spalte 5 bis Zeilenende raus, damit wir nicht noch mal die Absendenummer und den Timestamp zusätzlich bekommen.

Mittels logging kann man dann alle Nachrichten wegschreiben. Und reagieren sollte auch mittels DOIF einfach sein. z.B.

define ts_react DOIF ([textsecure_incoming:message] eq "preheat") ({ sendTextsecure("+4915xxxxxxxx", "Heize vor") }, {set heater on})


Ansonsten kann man auch irgendwie die telnet-session von fhem per textsecure tunneln.

mkfifo ts
nc fhem 7072 < ts | sudo -u fhem /opt/textsecure/bin/textsecure -to="+4915xxxx"  > ts

Das geht zumindest so weit, dass man vom handy cmds schicken kann und die antworten vom fhem-server sieht. Das hakt noch wegen der Farbcodes ("[35"), wer das wirklich will, bekommt das aber wohl leicht gelöst.

Thargor

Supervielen Dank!

Klappt prinzipiell schonmal prima. Wie kann ich den Befehl denn absetzen, so dass die Shell nicht blockiert?

malted

Ich hab's in einem Screen laufen lassen (apt-get install screen).

§ screen -R textsecure
Dann öffnet sich eine neue Shell, die man mit ctrl+a  und dann 'd' detachen kann.

Thargor

Ich habe heute plötzlich nur noch "Fehlerhaft verschlüsselte Nachricht"en von meinem Textsecire/Signal ausf Handy bekommen. Also habe ich den Ordner .storage gelöscht und wollte textsecure/signal neu registrieren. Per Voice wurde mit der Code durchgegeben. Das Registrieren hat geklappt. Doch jetzt bekomme ich beim Aufruf von textsecure folgende Fehlermeldung:

Could not get contacts: status code 401
websocket.Dial wss://textsecure-service.whispersystems.org:443/v1/websocket/?login=%2BXXXXXX&password=XXXXXX: bad status

Ich vermute ja, dass der Client nicht mehr kompatibel ist. Anscheinend wurde da auch schon seit Jahren nix mehr geändert.
Hat jemand eine Alternative für linux?

malted

Zitat von: Thargor am 18 Oktober 2017, 22:23:01
Ich vermute ja, dass der Client nicht mehr kompatibel ist. Anscheinend wurde da auch schon seit Jahren nix mehr geändert.
Hat jemand eine Alternative für linux?

Also bei mir funktioniert das nach wie vor ohne Probleme. Das muss an Deiner Installation liegen.

Bubinator

Möglicherweise liegt es auch daran, dass Textsecure nun Signal ist und es eine eigene Signal-CLI https://github.com/AsamK/signal-cli  gibt, die etwas anders zu funktionieren scheint. Vielleicht hat sich da auch das Backend geändert.

Ich habe es mit Signal aber hinbekommen. Die Basis war der erste Post dieser Diskussion.

Falls gewünscht, kann ich gerne die Schritte posten, die ich vorgenommen habe. Vielleicht kann sich jemand daran orientieren.
Schlussendlich ist es aber schon recht gut auf der Github-Seite der Signal-CLI beschrieben.

Nur die Anpassung an 99_myUtils.pm ist dann eine leichte Adaption dessen, was hier im ersten Poste geschrieben worden ist.

klausw

Zitat von: Bubinator am 14 Januar 2018, 14:13:54
Falls gewünscht, kann ich gerne die Schritte posten, die ich vorgenommen habe. Vielleicht kann sich jemand daran orientieren.
nur zu  8)

Kannst du auch Nachrichten emfangen?
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Wetterhexe


DarkT

Das klingt interessant, da werde ich doch mal einen Versuch wagen