Modul für Netgear Arlo-Kameras

Begonnen von maluk, 02 Dezember 2018, 22:20:58

Vorheriges Thema - Nächstes Thema

tobias.vorberg

Bei mir lief es auch gestern tagsüber nicht. Dann gestern abend plötzlich wieder und nun schon wieder nicht mehr.

mi.ke

Bei mir ist ebenfalls down.

Gestern war es aber eine andere Fehlermeldung und es gab gestern auf heute auch eine größere Störung der Internetinfrastuktur
Gestern wurde nur der Server nicht gefunden.
Logeinträge Gestern:
2020.02.07 18:35:57 2: Error in Arlo event queue: https://my.arlo.com/hmsweb/client/subscribe: Can't connect(1) to https://my.arlo.com:443: IO::Socket::INET: Bad hostname 'my.arlo.com:443'


Die heutige Meldung hat etwas mit der Anmeldung zu tun.

Logeinträge Heute:2020.02.12 12:32:07 2: Arlo call was not successful: {"data":{"error":"1021","message":"Access token is empty.","reason":"Access token is empty"},"success":false}

Über das WEB-Portal sind die Kameras erreichbar.
Hoffentlich hat arlo nicht wieder was geändert.

cheers
mi.ke
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara

choetzu

Any News? Bei mir läuft es immer noch nicht. Merke grad meine Abhängigkeit ;)
Raspi3, EnOcean, Zwave, Homematic

supernova1963

ich hänge mich ebenfalls an, da auch mein fhem modul auf einen Fehler bei dem login läuft (an email und password liegt's nicht).

lg

Gernot

Flar

Bei mir funktionierts auch nichtmehr. =(

tobias.vorberg

#245
Hi ihr Leidensgenossen,
also bei mir läuft es auch die ganze Zeit nicht mehr.
Ich habe für mich aber einen Workaround gefunden, der wenigstens das An- und Abschalten der Kameras wieder funktionieren lässt. Der ist aber etwas langsamer.
Ich nutze jetzt IFTTT. Was spannend ist, dass das noch geht. d.h. entweder die API hat sich nicht geändert und das Modul hat ein Problem oder die haben die Änderung der API schon implementiert.
Ich habe dort (in IFTTT) den eMail-Trigger genutzt und der löst dann das Event bei Arlo aus.

Bei IFTTT sieht es dann so aus:
"If Send trigger@applet.ifttt.com an email tagged #Kameras_An from xx.xx@yy.de, then Arm Arlo"

In FHEM beim Event Kameras anschalten so:
{ DebianMail('trigger@applet.ifttt.com','#Kameras_An','') }

Natürlich müsst ihr Euch dafür einen Account bei IFTTT holen und aus FHEM Mail verschicken können z.b. über DebianMail.

Vielleicht hilft das ja jemandem.

bb Tobias

m0urs

#246
Ich bin schon vor einem dreiviertel Jahr umgestiegen und nutze ein externes Python-Script zum Aktivieren / Deaktivieren meiner Kameras. Ich hab das Repo mal publig geschaltet: https://github.com/m0urs/arlo-cl

Ist nicht wirklich komfortabel. Schaltet aber meine Kameras genau so wie ich es brauche und das sehr zuverlässig.

Leider hab ich bisher keine Doku, aber vielleicht kann ja jemand trotzdem damit was anfangen. Fragt gerne nach, wenn ihr was wissen möchtet.

Hier noch ein paar Script-Schnipsel, wie ich die Prozedur aus FHEM heraus nutze:

   sub setArloCamMode($)
   {
    my ($mode) = @_;
Log3 undef,1, "setArloCamMode: $mode";
    system("/usr/bin/python3 /opt/fhem/arlo-cl/arlo-cl.py -c /opt/fhem/arlo-cl/arlo-cl.cfg set-mode -m $mode &");

if ($mode eq "aktiviert") {
fhem("setreading Arlo_Cam.dum currentMode Aktiviert");
fhem("setreading Arlo_Cam.dum status-Home armed; setreading Arlo_Cam.dum status-Bridge_AZMichael armed; setreading Arlo_Cam.dum status-Bridge_AZSabine armed");
}
elsif ($mode eq "deaktiviert") {
fhem("setreading Arlo_Cam.dum currentMode Deaktiviert");
fhem("setreading Arlo_Cam.dum status-Home disarmed; setreading Arlo_Cam.dum status-Bridge_AZMichael disarmed; setreading Arlo_Cam.dum status-Bridge_AZSabine disarmed");
}
elsif ($mode eq "aktiviert_tag") {
fhem("setreading Arlo_Cam.dum currentMode Aktiviert");
fhem("setreading Arlo_Cam.dum status-Home Aktiviert_Tag; setreading Arlo_Cam.dum status-Bridge_AZMichael Aktiviert_Tag; setreading Arlo_Cam.dum status-Bridge_AZSabine Aktiviert_Tag");
}
elsif ($mode eq "garten") {
fhem("setreading Arlo_Cam.dum currentMode Garten");
fhem("setreading Arlo_Cam.dum status-Home Garten_Alle; setreading Arlo_Cam.dum status-Bridge_AZMichael Garten; setreading Arlo_Cam.dum status-Bridge_AZSabine armed");
}
elsif ($mode eq "garten_hinten") {
fhem("setreading Arlo_Cam.dum currentMode Garten_hinten");
fhem("setreading Arlo_Cam.dum status-Home Garten_2; setreading Arlo_Cam.dum status-Bridge_AZMichael disarmed; setreading Arlo_Cam.dum status-Bridge_AZSabine armed");
}
   }

sub getArloCamMode()
   {
   my $currentMode = "";
   my $mode = "";
   my $output_string = qx(/usr/bin/python3 /opt/fhem/arlo-cl/arlo-cl.py -c /opt/fhem/arlo-cl/arlo-cl.cfg list-current-modes);
   my @lines = split /^/, $output_string;
   foreach my $line (@lines) {
my @tokens = split / /, $line;
chomp $tokens[3];
fhem("setreading Arlo_Cam.dum status-$tokens[0] $tokens[3]");
}
if ( (ReadingsVal("Arlo_Cam.dum", "status-Home", "") eq "disarmed") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZMichael", "") eq "disarmed") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZSabine","") eq "disarmed") ) {
$currentMode = "Deaktiviert";
}
elsif ( (ReadingsVal("Arlo_Cam.dum", "status-Home", "") eq "armed") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZMichael", "") eq "armed") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZSabine", "") eq "armed") ) {
$currentMode = "Aktiviert";
}
elsif ( (ReadingsVal("Arlo_Cam.dum", "status-Home", "") eq "Aktiviert_Tag") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZMichael", "") eq "Aktiviert_Tag") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZSabine", "" ) eq "Aktiviert_Tag") ) {
$currentMode = "Aktiviert";
}
elsif ( (ReadingsVal("Arlo_Cam.dum", "status-Home", "") eq "Garten_Alle") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZMichael", "") eq "Garten") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZSabine", "") eq "armed") ) {
$currentMode = "Garten";
}
elsif ( (ReadingsVal("Arlo_Cam.dum", "status-Home", "") eq "Garten_2") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZMichael", "") eq "disarmed") && (ReadingsVal("Arlo_Cam.dum", "status-Bridge_AZSabine", "") eq "armed") ) {
$currentMode = "Garten_hinten";
}
else {
$currentMode = "Undefiniert";
}
fhem("setreading Arlo_Cam.dum currentMode $currentMode");
return
   }

   sub setArloCamState($$)
{
  # Aktiviert / Deaktiviert die Arlo-Außenkameras abhängig von Tageszeit
  # Tagsüber, wenn es noch hell ist, wird die Terrassenkamera nicht aktiviert, sondern nur die Gartenkameras, wegen Fehlalarm durch Blumenkübel
  # Abends, wenn es dunkel ist, wird beim Öffnen der Tür nur die Terrassenkamera und Garten_1 abgeschaltet
  # Parameter 1: Status der geschaltet werden soll.
  # Paremeter 2: "auto" (= Automatik) : Es soll keine Schaltung erfolgen, wenn die Automatik für die Arlo-Cams abgeschaltet ist.
 
  my ($state,$automatic) = @_;

if (($automatic eq "auto") && (ReadingsVal("Arlo_Cam_Automatic.dum","state","on") eq "off")) {
# Der Schaltvorgang wird von einer automatischen Prozedur aufgerufen und die Automatik ist abgeschaltet
# Daher nichts tun!
Log3 undef,1, "setArloCamState: $state ignored - Automatik abgeschaltet";
return;
}

  if ($state eq "arm") {

if ( (ReadingsVal("xx.HUE.lichtsensor_aussen","lightlevel",0) > 15000) ) {
setArloCamMode("aktiviert_tag");
}
else {
setArloCamMode("aktiviert");
}
  }
  elsif ($state eq "disarm")  {
if ( (ReadingsVal("xx.HUE.lichtsensor_aussen","lightlevel",0) < 10000) && (ReadingsVal("Arlo_Cam_Automatic.dum","state","off") eq "on") ) {
fhem("set Arlo_Home disarm; set Arlo_Bridge_AZMichael disarm; set Arlo_Bridge_AZSabine disarm");
setArloCamMode("garten_hinten");
}
    else {
        fhem("set Arlo_Home disarm; set Arlo_Bridge_AZMichael disarm; set Arlo_Bridge_AZSabine disarm");
setArloCamMode("deaktiviert");
    }
  }
  elsif ($state eq "garten")  {
setArloCamMode("garten");
}
  elsif ($state eq "garten_hinten")  {
setArloCamMode("garten_hinten");
}
  else
  {
  Log3 undef,1, "Error: setArloCamState: Undefined state $state";
  }
}


choetzu

Hey Mours
Danke. Als Altenative bei Ausfällen wie jetzt wäre deine Variante gut. Kannst du auch Modi schalten und auf Motion reagieren?
Lg C
Raspi3, EnOcean, Zwave, Homematic

m0urs

#248
Ich benutze es nur zum scharf-/unscharf-Schalten sowie zum Setzen verschiedener Custom Modes, die vorher in der Arlo App definiert wurden. Ich habe mal eine Basic Doku in Github hinzugefügt. So Dinge wie Motion Detection etc. nutze ich nicht und die kann das Script auch nicht. Ist, wie gesagt, nur ein ganz "dummes" Skript um meine Cams zu steuern. Ich mache damit so Dinge wie die Außenkameras abschalten, wenn die Terrassentür offen ist, tagsüber Modi einschalten, die weniger empfindlich sind um nicht bei jedem Vogel auszulösen usw.

maluk

Aus irgendeinem Grund habe ich keine E-Mail-Benachrichtigung über die Aktivitäten hier im Forum erhalten, daher erst jetzt meine Reaktion. Ich habe das Problem gefunden und gefixt. Ab morgen wird die neue Version beim FHEM Update automatisch verteilt.

Für diejenigen, die es dringender benötigen, anbei die Datei.

mi.ke

@maluk,

erstmal vielen Dank für die Anpasssung.

Erst schien es zu laufen, nach einem Neustart war das Device wieder "active".

Leider, zumindest bei mir, geht das Device "SUBTYPE ACCOUNT" nach einiger Zeit (ca.10 min) wieder auf "inactive".
Ein manuelles "set device reconnect" verbindet zwar wieder, aber nur temporär.

Ich hab jetzt mal  auf "verbose 4" gestellt um Dir vielleicht mehr Infos geben zu können.

cheers
mi.ke
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara

Hobbel

Maluk, vielen Dank für den Fix - Modul läuft bei mir wieder :-)

mi.ke, dass die connection von Arlo_Cloud auf inactive geht, ist seit der Version von Oct 2019 so gewollt.
Sobald, ein event getriggered wird, geht die connection automatisch wieder auf active - das funktioniert bei mir auch ohne Probleme.

LG



mi.ke

Zitat von: Hobbel am 17 Februar 2020, 14:49:34
mi.ke, dass die connection von Arlo_Cloud auf inactive geht, ist seit der Version von Oct 2019 so gewollt.

Zitat von: maluk am 15 Oktober 2019, 20:15:25
wenn alle Basisstationen disarmed sind, wird die Verbindung zur Cloud abgebaut.

Das hatte ich anders verstanden, da die Basisstationen nicht alle disconnected waren.
Dann schau ich mal, ob es tut was es soll.
Danke für dir Info

cheers
mi.ke
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara

ojb

Hallo maluk,

bei mir geht es auch wieder. Vielen Dank dafür.

Ich hätte mal noch eine andere Frage:
Ich würde gerne selektiv die Cams schärfen. Ich hab es bei mir so eingestellt wenn ich oder meine Freundin daheim sind (Handy eingebucht im WLAM) wird Arlo disarmed.
Ich hätte aber gerne dass z.B. die Aussencam überwacht auch wenn wir da sind.
Wie könnte ich das lösen?

Liebe Grüße
Oli
FHEM unter Debian auf Asus EEBox: KNX (Wetterstation, Rollläden, Beleuchtung), Maple-CUN (Temperatur und Feuchte über 1-Wire, Intertechno-Funksteckdosen), PV-Anlage mit Plenticore und BYD, Viessmann Wärmepumpe, 1-Wire (Temperatur, Feuchte, Stromverbrauch), Husquarna-Automower, ...

mi.ke

Zitat von: ojb am 18 Februar 2020, 18:39:56
Ich würde gerne selektiv die Cams schärfen. Ich hab es bei mir so eingestellt wenn ich oder meine Freundin daheim sind (Handy eingebucht im WLAM) wird Arlo disarmed.
Ich hätte aber gerne dass z.B. die Aussencam überwacht auch wenn wir da sind.
Wie könnte ich das lösen?

Hi Oli,

das geht über Modus.
In der Web-Oberfläche legst Du Dir verschiedene Modi an (Standard ist Aktiviert+Deaktiviert).
Wenn Du nun einen "zuHause" Modus anlegst, kannst Du festlegen, welche Kameras was machen sollen.

FHEM sagtst Du es dann so (über ein notify das auf die Anwesenheit triggert):
set Basisstation mode zuHause

Hoffe das hilft Dir

cheers
mi.ke
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara