NEWS
Einbindung (IP) Kamera über "Motion"
-
Allerdings bekomme ich auf meinem NAS das Docker image nicht per pull geladen wenn ich diese Seite und den Befehl verwende:
Bin gerade erst auf diese Topik gestossen.. :)
Soweit ich verstanden habe ist Dockerimage vom ccrisan für ARM Prozessor.
Ich habe seit einige zeit auf dem Synology diese Image am laufen https://hub.docker.com/r/jshridha/motioneye/
-
@wendy2702 und Alex1808
Wie das Motioneye-Dockerimage installiert wird, wird ja ähnlich zum iObroker- Dockerimage sein?
Aber?!
Wie starte ich dann Motioneye? Über eine URL?
Kann mir das mal einer kurz beschreiben?
Vielen Dank!
-
@wendy2702 und Alex1808
Wie das Motioneye-Dockerimage installiert wird, wird ja ähnlich zum iObroker- Dockerimage sein?
Aber?!
Wie starte ich dann Motioneye? Über eine URL?
Kann mir das mal einer kurz beschreiben?
Vielen Dank! `
Ja, wird fast wie ioBroker installiert, nur bei Einrichtung ports selbst vergeben
z.b. habe für 4 Kameras

Sobald Dockerconteiner gestart, soll Motioneye unter http://server_ip:8765 erreichbar sein.
-
Die Befehle kannst du übrigens leicht selbst herausfinden wenn du im Browser "ip.von.mot.ion:8080" aufrufst. Da gibt's noch viele Möglichkeiten… `
Hat jemand eine Idee woran es liegen kann wenn ich Motioneye laufen habe und diese Seite von Motion nicht aufrufen kann?
-
Wollte gerade meinen Beitrag editieren da eigentlich noch mehr infos rein sollten. Aber Frau hat zum Essen gerufen und ich depp auf "Absenden" gedrückt.
Also, Motioneye ist in Version 0.39.2 installiert und die Webseite ist über IP:8765 erreichbar.
Motion ist in Version 4.1.1 installiert, Webseite nicht über IP:8080 erreichbar.
Das ganze läuft auf dem gleichen Rechner wie mein iobroker Host auf Openmediavault und nicht mehr im Docker.
Auch mit 127.0.0.1:8080 geht nichts.
Eine Firewall habe ich nicht konfiguriert für internen Zugriff
EDIT: habe es hinbekommen. Im Config file muss der Parameter:````
webcontrol_localhost off -
Hallo
ich hoffe ich komme nicht zu spät. Ich habe Motioneye auf einem extra Rapberry laufen in meinem Netzwerk. Ich erfasse eine IP Kamera damit. Ich würde das jetzt gerne in ioBroker einbinden. Was ich nicht ganz verstehe ist was ist ein Docker? und wie gehe ich jetzt am besten vor bei meiner Konstellation? iobroker läuft auf einem weiterem Raspberry
Gruß
Werner
-
Es ist nie zu spät ;-) Wenn du keinen Docker hast, braucht dich das nicht zu interessieren, ioBroker läuft dann in einem Container.
Benutzt du VIS und willst dort die Kamera darstellen? Ich mache es mit dem widget "jqui-mfd - Cam/Video (html5). Dort trage ich die Daten des stream ein. Läuft so innerhalb des LANs:

-
Hallo
danke für die Info. Ich bin zwar schon des öfteren über docker gestolpert, habe aber nie so richtig verstanden was das ist und was es da geht. War nirgendwo richtig beschriben. So eine kurzinfo oder ähnliches. Das motion für iobroker hört sich ja interessan an scheint aber nicht so einfach zu sein zum laufen zu bekommen vor allem die Bewegungserkennung. Da habe ich schon mit motioneye probleme das vernünftig hinzubekommen.
Gruß
werner
-
Problem gelöst :)
Die Bewegungserkennung in Motion kannst du mit folgendem Befehl deaktivieren/aktivieren
url = "http://192.168.xxx.xxx:8080/y/detection/pause"; req(url,function(error,response,body){ if(body){ log("Motion detection Cam2 abgeschalten"); } });Wobei die xxx durch die IP deines Motion-Servers und das y durch deine Kameranummer zu ersetzen sind. Aktivieren kannst du mit "start" anstelle von "pause".
Die Befehle kannst du übrigens leicht selbst herausfinden wenn du im Browser "ip.von.mot.ion:8080" aufrufst. Da gibt's noch viele Möglichkeiten… `
Hallo Thisoft,
inzwischen habe ich Motion auf meinem Rock installiert und es funktioniert auch. Leider klappt es mit dem aktivieren bzw. deaktivieren der Bewegungserkennung nicht. Wenn ich deinen Code (angepasst um IP, Cameranummer etc.) übernehme, bekomme ich folgenden Fehler im LOG:
! 2018-10-15 08:34:31.444 - info: javascript.0 Start javascript script.js.Alarmanlage.Motion_Satus_anpassen
! 2018-10-15 08:34:31.451 - error: javascript.0 script.js.Alarmanlage.Motion_Satus_anpassen: script.js.Alarmanlage.Motion_Satus_anpassen:3
! 2018-10-15 08:34:31.451 - error: javascript.0 req(url,function(error,response,body){
! 2018-10-15 08:34:31.452 - error: javascript.0 ^
! 2018-10-15 08:34:31.452 - error: javascript.0 ReferenceError: req is not defined
! 2018-10-15 08:34:31.453 - error: javascript.0 at script.js.Alarmanlage.Motion_Satus_anpassen:3:8
! 2018-10-15 08:34:31.453 - error: javascript.0 at ContextifyScript.Script.runInContext (vm.js:59:29)
! 2018-10-15 08:34:37.356 - info: javascript.0 Stop script script.js.Alarmanlage.Motion_Satus_anpassenFolgenden Code hatte ich genommen:
url = "http://192.168.2.50:8090/1/detection/pause"; req(url,function(error,response,body){ if(body){ log("Motion detection Cam2 abgeschalten"); } });Ich habe das nun versucht in Blockly (der Java Sprache bin ich nicht wirklich mächtig) nachzubauen, komme aber auch da nicht ans Ziel :(
Hier das Blockly, was ich gebastelt habe:
Code:
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="request" id="=:wNO+w`+ubt;b^pb*iS" x="-162" y="63"><mutation with_statement="true"></mutation> <field name="WITH_STATEMENT">TRUE</field> <field name="LOG">log</field> <value name="URL"><shadow type="text" id="Uh2H:L{Jm2cHo5-g?h+2"><field name="TEXT">text</field></shadow> <block type="text" id="OKb+A0yg5cI@Yn`3.OUi"><field name="TEXT">192.168.2.50:8090/1/detection/pause</field></block></value> <statement name="STATEMENT"><block type="debug" id="3-*oZ[01:nGsA+H,m/3D"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="QcmsZF{|bj=]g74FRk!P"><field name="TEXT">test</field></shadow> <block type="variables_get" id="kUCkB5qh?e%|;Y6Ud_KA"><field name="VAR">result</field></block></value></block></statement></block></xml>bzw. das Bild dazu ;)
!

Als Ergebnis bekomme ich immer nur "undefined" zurück und der Befehl wird nicht gesendet.
Hier der Auszug aus dem Log:
! 2018-10-15 08:39:12.772 - info: javascript.0 Start javascript script.js.Alarmanlage.Motion_Blockly
! 2018-10-15 08:39:12.779 - info: javascript.0 script.js.Alarmanlage.Motion_Blockly: undefined
! 2018-10-15 08:39:12.779 - info: javascript.0 script.js.Alarmanlage.Motion_Blockly: request: 192.168.2.50:8090/1/detection/pause
! 2018-10-15 08:39:12.779 - info: javascript.0 script.js.Alarmanlage.Motion_Blockly: registered 0 subscriptions and 0 schedulesWenn ich den Befehl im Browser (Safari/Chrome) eingebe, wird er gesendet und ich bekomme die Rückmeldung dass die Detection pausiert wurde.
Ich habe auch versucht vor die IP ein http:// zu setzen, dann kommt im Log der Error: Websocket hang up?!?
Hat jemand eine Idee, wo ich gerade meinen Knoten habe? Am liebsten ich könnte das in Blockly lösen, dann ich das in mein anderes Script mit einfließen lassen :)
Vielen Dank vorab!
Grüße
Matthias
EDIT: Lösung habe ich gefunden. Ich hatte in Motion für den Webzugriff einen Benutzernamen und Passwort angegeben. Nach der Herausnehme funktioniert das Blockly von mir einwandfrei, es muss vor der IP aber http:// stehen.
Grüße
Matthias
-
Hi,
versuche mich auch grade an MotionEye und Docker.
Hab über docker pull jshridha/motioneye:latest das Image geladen und dann probiert über docker run -d -p 80:80 jshridha/motioneye zu starten.
Komme dann aber auf keine Oberfläche.
Bin noch ganz neu im Docker Thema und hab da sicherlich noch einiges zu lernen. Wo bin ich hier ganz falsch unterwegs?
Ciao
Martin
-
Schau mal in Docker in deinem Motioneye Container bei bei Netzwerk, welcher Port angegeben ist. Ich habe bei der Installation selber Ports festgelegt und über die Firewall freigegeben. Meines Wissens wird für Motioneye der Port 8765 fest vergeben. Bin mir aber nicht sicher.
-
Schau mal in Docker in deinem Motioneye Container bei bei Netzwerk, welcher Port angegeben ist. Ich habe bei der Installation selber Ports festgelegt und über die Firewall freigegeben. Meines Wissens wird für Motioneye der Port 8765 fest vergeben. Bin mir aber nicht sicher.
Hi,
Hab motioneye auf einem rock64 mit 4GB laufen. Die letzten Tage hatte ich das Problem, das die Cpu Last von motion immer bei über 90% ist und der Rock damit heiß wird. Das ganze bei nur einer Kamera.Auflösung war 800×600, Qualität 75%
Hattet ihr das Problem auch schonmal?
Dachte da motioneye auch auf einem Pi läuft würde der Rock nicht mal zucken. -
Hallo,
ich möchte über meine Erfahrungen mit motioneyeOS berichten.
Nach einigen Monaten/Jahren mit XEOMA, zuletzt auf einem Odroid XU4, bin ich gestern auf motioneyeOS umgestiegen. Ich finde Xeoma schon eine gute Software, aber für meine Zwecke nicht geeignet (umständliche Einrichtung wegen Lizenzen zB nach Restore, Ressoucen hungrig, proprietäres Videoformat). Die kosten liegen bei 25€ für 4 Kameras für 2 oder 3 Jahre gratis Updates der Server/Clientsoftware. Hervorzuheben ist der ausgesprochen fachkundige und schnelle Support der Xeoma-Mitarbeiter (nur englisch und russisch). Wer einen größeren Server zu Hause hat oder ggf. kommerzielle Einrichtungen überwacht, sollte sich das mal ansehen (es gibt neben Webhooks und HTTP-Schaltern noch Besucherzähler, Kennzeichenerkennung, Raucherkennung, etc…)
Nach einem weiteren Absturz meines Odroids bin ich wegen Zeitmangels an der Neuinstallation gescheitert und habe mich deshalb an motioneye in der "Fertigvariante" als Image "motioneyeOS" gewagt. Ich war sofort angetan von der einfachen Installation und Einrichtung. Der Odroid soll auch keine anderen Aufgaben übernehmen, weshalb ich gern das fertige Image verwende. Mir war allerdings der zuschaltbare SSH-Zugang wichtig, da ich keine Eingabegeräte und keinen Bildschirm am Rechner angeschlossen habe (headless).
Ich nutze das Szenario: zwei IP-Kameras im Heimnetzwerk und den Odroid mit motioneye als Server. Evtl. werde ich noch einen Raspi+USB-Webcam einbinden.
Die Einrichtung der IP-Kameras war die größte Hürde. Man muss den URL des MJPEG- oder des RTSP-Streams herausfinden. Bei der Edimax ging das https://www.ispyconnect.com/man.aspx?n=Edimax, die andere Kamera ist ein chinesisches Billigteil mit ganz schlimmer Firmware. Ich habe der Kamera im Router den Zugang ins Internet verboten (man weiß ja nie). Den rtsp-Stream konnte ich schließlich https://mediola.answerbase.com/2338771/Floureon-bzw-PTZ-IP-Kamera-einbinden Tipp herausfinden. Die Einbindung des motioneye-Streams in VIS ist unproblematisch. Es werden sogar die bunten Rechtecke angezeigt, die motion um erkannte Bewegungen malt (auf Wunsch).
Über die Webhook-Funktion von motioneye ist die Auslösung von Aktionen in ioBroker möglich. Motioneye kann bei Events (zB Bewegung) einen URL aufrufen. Ich verwende GET, um über die SimpleAPI-Schnittstelle des Web-Adapters States in ioBroker zu setzen.
http://192.IP-IOBROKER:8082/set/javascript.0.Kamera.2.MOTION?value=true&prettyPrintEin ioBroker-Javascript setzt nach 10s mit setStateDelayed den State wieder auf false.
Aber nicht nur bei Bewegung sind Webhooks möglich. Mir haben es die https://github.com/ccrisan/motioneyeos/wiki/Action-Buttons angetan:

Eine https://github.com/ccrisan/motioneye/wiki/Action-Buttons#available-actions ist festgelegt. So kann man (leider etwas umständlich in der Einrichtung, läuft über bash-Skripte und curl-Aufrufe) zB durch einen Klick auf ein Logo im Kamerabild das Licht ein/ausschalten oder die Kamera ggf. schwenken.Ich lasse zB das Licht im jeweiligen Raum über eine Szene einschalten (Webhook > SimpleAPI > Szenenadapter). Ausserdem kann ich bis jetzt eine der Kameras schwenken oder auf eine Preset Position schicken. Dazu wird in einem Javascript der State überwacht, der vom Webbhook aus motioneye befüllt wird. Bei "up", "down", "left", "right" wird entsprechend wieder über request() im Skript ein Befehl an die Kamera geschickt.
Leider sind die Action in VIS nicht erreichbar/sichtbar, nur in der Bedienoberfläche von motioneye.
Die Testphase läuft noch, vielleicht mag der eine oder andere auch nochmal einen Blick auf die Software werfen. Ich finde gerade, wenn man mehrere Kameras verschiedener Hersteller hat, kann man so die Bedienung vereinheitlichen und vor allem irgendwelche P2P/Portfreigabe-Aktionen umgehen. Ich bin überzeugte VPNer. :D
Gruß
Pix
@pix kannst du mal deine bash-datei zeigen für die action buttons? Buttons habe ich, aber funktionieren nicht. Sieht bei mir so aus für "down_1-button":
#!/bin/bash URL="http://user:passwort@192.168.178.31/cgi-bin/hi3510/ptzdown.cgi" METHOD="GET" TIMEOUT="5" curl -X $METHOD --connect-timeout $TIMEOUT "$URL" > /dev/null -
Hi,
Hab motioneye auf einem rock64 mit 4GB laufen. Die letzten Tage hatte ich das Problem, das die Cpu Last von motion immer bei über 90% ist und der Rock damit heiß wird. Das ganze bei nur einer Kamera.Auflösung war 800×600, Qualität 75%
Hattet ihr das Problem auch schonmal?
Dachte da motioneye auch auf einem Pi läuft würde der Rock nicht mal zucken.@martinschm der Rock macht nichts anderes? Ich habe auch keine beseondere Hardware, aber einige VM laufen, darunter eine für motioneye mit 3 Cameras. Motioneye alleine zieht 15% CPU bei mir. Wieviele frame rates hast du? Ich habe nur 3 frames pro Sekunde.
-
@pix kannst du mal deine bash-datei zeigen für die action buttons? Buttons habe ich, aber funktionieren nicht. Sieht bei mir so aus für "down_1-button":
#!/bin/bash URL="http://user:passwort@192.168.178.31/cgi-bin/hi3510/ptzdown.cgi" METHOD="GET" TIMEOUT="5" curl -X $METHOD --connect-timeout $TIMEOUT "$URL" > /dev/null@lobomau Hallo,
habe mal versehentlich motioneyeOS per Weboberfläche upgedatet und damit zerschossen. Darf man nicht machen, nur über CLI. Deshalb habe ich alles neu aufsetzen müssen und dabei die Action Buttons nicht neu erstellt. Sie sind ja in VIS nicht sichtbar und daher doch eher uninteressant.
https://forum.iobroker.net/post/152954
Gruß
Pix -
@lobomau Hallo,
habe mal versehentlich motioneyeOS per Weboberfläche upgedatet und damit zerschossen. Darf man nicht machen, nur über CLI. Deshalb habe ich alles neu aufsetzen müssen und dabei die Action Buttons nicht neu erstellt. Sie sind ja in VIS nicht sichtbar und daher doch eher uninteressant.
https://forum.iobroker.net/post/152954
Gruß
Pix -
@martinschm der Rock macht nichts anderes? Ich habe auch keine beseondere Hardware, aber einige VM laufen, darunter eine für motioneye mit 3 Cameras. Motioneye alleine zieht 15% CPU bei mir. Wieviele frame rates hast du? Ich habe nur 3 frames pro Sekunde.
@lobomau hab glaub ich 5 oder 7 frames.
Kannst du mal die anderen Werte posten die du so hast. Also wie kommt der Stream von deiner Kamera und was hast du in motioneye bezüglich Auflösung, Frames, Qualität eingestellt ?
-
@lobomau hab glaub ich 5 oder 7 frames.
Kannst du mal die anderen Werte posten die du so hast. Also wie kommt der Stream von deiner Kamera und was hast du in motioneye bezüglich Auflösung, Frames, Qualität eingestellt ?
CPU Belastung für motioneye < 20%:

-
CPU Belastung für motioneye < 20%:

@lobomau Vielen Dank.
Was für ein Format streamen denn deine Kameras?
Ich streame grade via rstp im Videoformat VBR. Bitrate habe ich 2000 Kbits eingestellt und Frames aktuell 10 pro Sekunde. Videogröße ist 1270x720.



