Alexa Connector: 2 amazon account einbinden

Begonnen von Ned, 28 April 2024, 10:36:16

Vorheriges Thema - Nächstes Thema

Ned

Guten Morgen zusammen,

ich versuche gerade zwei amazon Accounts in den Connector zu verbinden.

Dafür habe ich zwei FHEM Instanzen erstellt, wie Otto in seinem Blog gepostet hat:
einfach in der FHEM Ausführungszeile diese 3 Befehle ausgeführt:
"wget -qO fhem2.cfg https://svn.fhem.de/fhem/trunk/fhem/fhem.cfg"
"sed -i -e 's/\/fhem/\/fhem2/;;s/\/eventTypes/\/eventTypes2/;;s/8083/8093/;;$aattr initialUsbCheck disable 1' fhem2.cfg"
"perl /opt/fhem/fhem.pl /opt/fhem/fhem2.cfg"
Ich habe jetzt 1 FHEM-Arbeitsverzeichnis und 2 Konfig-Dateien: fhem.cfg und fhem2.cfg.
Das hat erfolgreich gefunktioniert!



Ned

und dann wie hier beschrieben FHEM Connector - Alexa - 2 FHEM instancen und je ein Alexa account einen zweiten User eingerichtet.

Aber ich bekomme den systemd nicht wie unter Schrit #7 beschrieben zum laufen:

donner@Uranus:~$ systemctl status fhem2
× fhem2.service - FHEM Home Automation
     Loaded: loaded (/etc/systemd/system/fhem2.service; disabled; vendor preset>
     Active: failed (Result: exit-code) since Sun 2024-04-28 10:39:57 CEST; 9s >
    Process: 18048 ExecStart=/usr/bin/perl fhem.pl fhem2.cfg (code=exited, stat>
        CPU: 100ms

Apr 28 10:39:57 Uranus systemd[1]: fhem2.service: Scheduled restart job, restar>
Apr 28 10:39:57 Uranus systemd[1]: Stopped FHEM Home Automation.
Apr 28 10:39:57 Uranus systemd[1]: fhem2.service: Start request repeated too qu>
Apr 28 10:39:57 Uranus systemd[1]: fhem2.service: Failed with result 'exit-code>
Apr 28 10:39:57 Uranus systemd[1]: Failed to start FHEM Home Automation.

Ned

#2
die beiden User habe ich überprüft:
donner@Uranus:~$ id fhem
uid=999(fhem) gid=20(dialout) Gruppen=20(dialout)
donner@Uranus:~$ id fhem2
uid=1001(fhem2) gid=20(dialout) Gruppen=20(dialout)

/etc/passwd:
donner@Uranus:~$ cat /etc/passwd | grep fhem
fhem:x:999:20::/opt/fhem:/bin/false
fhem2:x:1001:20::/opt/fhem2:/bin/false

fhem2.system:
donner@Uranus:/etc/systemd/system$ cat fhem2.service
# $Id: fhem.service 19235 2019-04-21 13:26:17Z betateilchen $

[Unit]
Description=FHEM Home Automation
Wants=network.target
After=network.target
#Requires=postgresql.service
#After=postgresql.service
#Requires=mysql.service
#After=mysql.service

[Service]
Type=forking
User=fhem2
Group=dialout
WorkingDirectory=/opt/fhem
ExecStart=/usr/bin/perl fhem.pl fhem2.cfg
#ExecStart=/usr/bin/perl fhem.pl configDB
Restart=always

[Install]
WantedBy=multi-user.target


Hat jemand einen Tipp für mich, wie ich die 2 amazon accounts zum Laufen bringen kann?

MadMax-FHEM

#3
Mal langsam, bislang hast du alles unternommen 2x fhem zu haben...

Was willst du genau?

2x unterschiedliche Alexa-Accounts (warum?) die beide dasselbe fhem steuern?
-> dann musst du statt 2x fhem besser 2x alexa-fhem für unterschiedliche User installieren bzw. laufen lassen. Wie das auf EINEM Rechner/OS geht: keine Ahnung. Einfacher ist da sicher einen kleinen Raspberry PI Zero zu nehmen, dort einfach ein 2tes alexa-fhem und dort ebenfalls die Verbindung zu dem einen fhem eintragen.
Dann kannst du mit jedem Alexa-Account dasselbe fhem steuern...


1x Alexa Account, der 2x fhem (auf einem Rechner) steuern soll?
-> dann eine alexa-fhem Installation die beide fhem eingetragen hat (siehe deinem Link / Stichwort Connections). Wenn beide fhem auch noch auf demselben Rechner/OS laufen sollen, dann ist der Link zu Otto's Blog ja richtig.


2x unterschiedliche Alexa-Accounts (warum?) die 2 unterschiedliche fhem auf DEMSELBEN Rechner/OS steuern sollen?
-> dann eben beides der oben genannten Dinge: 2x alexa-fhem auf DEMSELBEN Rechner/OS installieren (stelle ich mir nicht einfach vor / bzw. laufen lassen: mag schon eher gehen) und ebenso 2x fhem installieren bzw. laufen lassen reicht ja vermutlich. Das solte einfach(er) sein.
Welche alexa-fhem Installation dann welches fhem oder sogar beide beide fhem steuern sollen, legst du dann eben in den jeweiligen alexa-fhem-Configs (Stichwort Connections) fest.



Wie geschrieben: 2x fhem auf EINEM Rechner/OS laufen lassen sollte (einfach) machbar sein. Was bei dir da schief läuft müsste ich mal schauen. Aber evtl./besser einen extra Thread mit passendem Namen und erst mal das hinkriegen.
alexa-fhem 2x auf DEMSELBEN Rechner/OS zu installieren bzw. laufen zu lassen...
Hmmm, nur laufen lassen könnte gehen. Wird ja verm. auch nur mit unterschiedlichen Configs gestartet (wie fhem).
Entweder das dann das jeweilige Alexa-Device der jeweiligen fhem Installation tun lassen oder einfach einen (oder auch 2) Service-Startdateien.
Weil es ist egal wer alexa-fhem startet, es muss halt laufen und man muss dann nur die "Fehlermeldung" des Alexa-Devices ignorieren.
Bzw. das Alexa-Device wird nur benötigt, weil dann die ganzen alexa-fhem spezifischen Attribute da sind.
Allerdings kann man die auch selbst unter global userattr ergänzen...
(Siehe Docker: dort läuft alexa-fhem in einem Docker und fhem in einem eigenen Docker. Dort "mosert" das Alexa-Device auch, da ja der Docker sich um alexa-fhem Start usw. kümmert. Trotzdem ist "alles gut" ;)  ).

Gruß, Joachim

Noch mal direkt: warum 2 fhem und 2 Alexa Accounts? Und dann auch noch auch EINEM Rechner/OS?
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Ned

#4
meine Gründe für 2 amazon Accounts ist:
1.) damit die Wiedergabe von Musik / Hörspiele voneinander unabhängig ist
  (vorher gab es immer wieder Probleme zwischen den beiden Geräten, wenn die Wiedergabe bei einem Gerät kurz unterbrochen wurde und dann weitergeführt werden sollte. Die Wiedergabe machte dann immer bei dem weiter, was das andere Gerät gerade spielte)

2.) unabhängige Playlisten für die beiden Geräte bei amazon
  (somit kann jedes der beiden Kinder seine Playlisten unabhängig vom anderen pflegen)

Das ganze steht in einem Einfamilienhaus, Licht und Rollladen werden per KNX gesteuert und FHEM läuft im Keller auf einem RasPi.
Und die Kinder sollen im Kinderzimmer das Licht per Alexa schalten können.

Kennst Du eine bessere Lösung?

MadMax-FHEM

#5
Ah, ok.
Aber reicht dann nicht ein fhem?

Dann 1x alexa-fhem dort installieren, also wie beim Connector laut Wiki...

Eine weitere alexa-fhem Installation auf z.B. einem PI Zero (sollte leicht reichen) und dort als Connection ebenfalls dasselbe fhem eintragen.

Dann kann man mit 2 Accounts die Devices des einen fhem steuern...

Ist wohl am einfachsten...

Einzig: die Skill-Verknüpfung ist u.U. bei dem PI Zero nicht ganz so einfach, da der Anmelde-/Skill-Token aus dem alexa-fhem Log entnommen werden muss (sofern da zu entnehmen).
Alternativ auf dem PI Zero ein "nacktes" fhem, welches nur ein Alexa-Device hat, für Skill-Anmeldung und Start von alexa-fhem (sonst nix)...
(könnte dann sogar wieder weg: alexa-fhem dann als Service starten)
In die alexa-fhem Config auf dem PI Zero dann unter Connections (trotzdem) das andere fhem eintragen (klar)...

Evtl. komme ich dazu 2x alexa-fhem auf einem PI laufen zu lassen...

Aber einfacher ist sicher einen PI Zero für den 2ten Account zu nehmen...
...muss ja nicht mehr machen außer eben alexa-fhem für 2ten Account...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Ned

Hallo Joachim,
das muss ich mal in Ruhe durchprobieren. Vielen Dank erstmal!
Wenn ich das hinbekomme, würde ich es langfristig probieren, dass zweite alexa-FHEM in einem Docker-Container laufen zu lassen, um die 2. Hardware zu sparen.

Vor 3,5 Jahren hatte Kohle77 mal ein ähnliches Problem.
Wenn ich den Thread richtig verstehe, dann habt ihr es da auf einer Hardware parallel zum Laufen gebracht:
FHEM Connector - Alexa - 2 FHEM instancen und je ein Alexa account
Diese Lösung wollte ich einfach nur bei mir auch zum Laufen bringen.

MadMax-FHEM

#7
Zitat von: Ned am 28 April 2024, 21:25:52Hallo Joachim,
das muss ich mal in Ruhe durchprobieren. Vielen Dank erstmal!
Wenn ich das hinbekomme, würde ich es langfristig probieren, dass zweite alexa-FHEM in einem Docker-Container laufen zu lassen, um die 2. Hardware zu sparen.

Vor 3,5 Jahren hatte Kohle77 mal ein ähnliches Problem.
Wenn ich den Thread richtig verstehe, dann habt ihr es da auf einer Hardware parallel zum Laufen gebracht:
FHEM Connector - Alexa - 2 FHEM instancen und je ein Alexa account
Diese Lösung wollte ich einfach nur bei mir auch zum Laufen bringen.

Eieiei, stimmt.
Hab ich tatsächlich schon mal unterstützt ;)
Aber ist ja schon ewig her 8)

Evtl. probiere ich das mal aus.
Ich habe ja noch ein paar Echos ungenutzt rumliegen (muss sie nur finden)...
...und ich kann mein Proxmox mal wieder nutzen...
Mal sehen...

Wird aber wohl erst morgen oder Mi klappen, heute wird mein Balkonkraftwerk montiert :)


2tes fhem wäre ja nur wegen Starten des 2ten alexa-fhem und 2tem ssh...


Zitat von: Ned am 28 April 2024, 21:25:52Wenn ich das hinbekomme, würde ich es langfristig probieren, dass zweite alexa-FHEM in einem Docker-Container laufen zu lassen, um die 2. Hardware zu sparen.
Das ist denke ich am einfachsten.
Entweder dann alles in Docker, also: 1x fhem und 2x alexa-fhem

Sollte ja gehen, ansonsten macht Docker (für mich) erneut (hier) keinen Sinn.

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)