FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: Martin Fischer am 01 Februar 2013, 20:30:37

Titel: Modul IPCAM überarbeitet
Beitrag von: Martin Fischer am 01 Februar 2013, 20:30:37
Hallo @all,

auf Anregung und einem Patch von marc habe ich das Modul IPCAM um eine HTTP Basic Authentication erweitert. Und weil ich gerade dabei war, habe ich dem Modul noch neue set-Funktionen spendiert.

Mit den neuen set-Funktionen kann nun eine Kamera auch gesteuert werden. Neben diversen pan/tilt Funktionen, können bis zu 15 vordefinierte Positionen angefahren werden. Darüber hinaus kann man sich bis zu 15 frei wählbare Kamerabefehle definieren und einfach abrufen. Und wem das noch nicht reicht, der kann auch "raw" Befehle an die Kamera senden.

Das überarbeitet Modul wird ab morgen via update verteilt. Wer es nicht abwarten kann, der kann es ab sofort aus dem SVN installieren. Weitere Informationen sind der commandref.html zu entnehmen.

Eine ausführliche Beschreibung der Funktionen habe ich auf meiner Homepage im Artikel FHEM Modul IPCAM überarbeitet (http://www.fischer-net.de/hausautomation/fhem/62-fhem-modul-ipcam-ueberarbeitet.html) zusammen gefasst.

Viel Spaß damit...

Gruss Martin
Titel: Aw: Modul IPCAM überarbeitet
Beitrag von: ChrisW am 01 Februar 2013, 20:49:53
habs gerade schon auf deiner Seite gelesen ;)
Super genial vielen Dank für noch so ein tolles Modul.

Bin derzeit dabei den iSpy Server Pfad der Kamera in Fhem zu bringen mal schauen ob das klappt ;)

Titel: Aw: Modul IPCAM überarbeitet
Beitrag von: Martin Fischer am 01 Februar 2013, 20:55:27
> Super genial vielen Dank für noch so ein tolles Modul.

büdde schön ;-)
Titel: Aw: Modul IPCAM überarbeitet
Beitrag von: marc2 am 01 Februar 2013, 21:19:01
Hallo Martin !

Super, dass Du das übernommen hast, vielen Dank !

Gruß, Marc
Titel: Aw: Modul IPCAM überarbeitet
Beitrag von: Martin Fischer am 01 Februar 2013, 21:23:37
> Super, dass Du das übernommen hast, vielen Dank !

gern. sofern sowas sinnvoll ist, warum sollte man es dann verweigern. ausserdem hattest du ja schon die paar zeilen mit dem patch für basicauth beigesteuert. fehlte nur noch die doku ;-)

gruss und viel spass damit...
Titel: Aw: Modul IPCAM überarbeitet
Beitrag von: Gerhard am 17 Februar 2013, 17:37:45
Hallo Martin,

deinen Modul IPCAM finde ich klasse, und konnte ohne weiteres implementieren (INSTAR 4009).
Da ich verschiedene Positionen anfahre würde ich gerne auch Zoom anwenden.
Wäre möglich bei Gelegenheit das Modul um folgendes:
attr ipcam cmdZoomIn command=95
attr ipcam cmdZoomOut command=94
zu erweitern?

Gruß Gerhard
Titel: Aw: Modul IPCAM überarbeitet
Beitrag von: erwin am 06 März 2013, 12:33:13
Hi Martin,

erstmal Danke für das IPCAM Modul
ich verwende es mit einer ZAVIO P5110 Pan/Tilt Webcam. Diese CAM gibts auch unter anderen Namen bei diversen Versendern (relativ) günstig.

Falls es noch jemand jemand brauchen kann, die Attributes für diese CAM:

basicauth {USERNAME}:{PASSWORD}
cmdPanLeft move=left&interval=150000
cmdPanRight move=right&interval=150000
cmdPos01 gotoserverpresetname=Aussen
cmdPosHome move=home
cmdTiltDown move=down&interval=150000
cmdTiltUp move=up&interval=150000
credentials ./credentials.cfg
path jpg/image.jpg
pathCmd cgi-bin/operator/ptzset?
pathPanTilt cgi-bin/operator/ptzset?
storage ./www/webcam
timestamp 1


l.g. erwin
Titel: Aw: Modul IPCAM überarbeitet
Beitrag von: Martin Fischer am 06 März 2013, 14:10:36
Hallo Erwin,

> ich verwende es mit einer ZAVIO P5110 Pan/Tilt Webcam. Diese CAM gibts auch
> unter anderen Namen bei diversen Versendern (relativ) günstig.
>
> Falls es noch jemand jemand brauchen kann, die Attributes für diese CAM:

Prima, danke! Vielleicht kann das ja der Eine oder Andere als Vorlage nutzen.

Gruß Martin
Titel: Aw: Modul IPCAM überarbeitet
Beitrag von: dougie am 20 April 2013, 10:06:00
Moin Martin,

ich hab leider grosse Probleme mit meiner Instar IN-3010
Besonders nach dem letzten Update des WebUI bekomme ich immer die Fehlermeldung im Log:


get CasaCam image


....



2013.04.20 09:42:23 1: IPCAM CasaCam Wrong or not supported image format: unknown
2013.04.20 09:42:49 1: IPCAM CasaCam Wrong or not supported image format: unknown
2013.04.20 09:43:21 1: IPCAM CasaCam Wrong or not supported image format: unknown



(siehe Anhang / see attachement)


Mit dem kommando in der Adresszeile meines Browsers bekomme ich ein Bild, und die das Kommando "get image" funktioniert MANCHMAL.

Was mache ich falsch?

VG
Ralf
Titel: Aw: Modul IPCAM überarbeitet
Beitrag von: docb am 03 Juni 2013, 21:24:35
Hallo zusammen, ich hätte da gerne mal wieder ein Problem...
habe meine IP-Cam (Instar 3010) "eingehängt" mit

define IPC_Benni IPCAM 10.15.30.110
attr IPC_Benni storage ./snapshots
attr IPC_Benni path snapshot.cgi?user=xxx&pwd=xxxx
attr IPC_Benni cmdTiltUp command=0
attr IPC_Benni cmdTiltDown command=2
attr IPC_Benni cmdPanLeft command=4
attr IPC_Benni cmdPanRight command=6
attr IPC_Benni cmdStep onstep

attr IPC_Benni room Kinderzimmer


Leider habe ich folgende Problemchen:
- Fhem macht mir keinen snapshot. Wenn ich das mit
get IPC_Benni image auslöse, sagt mir Fhem:
2013.06.03 21:11:00 1: IPCAM IPC_Benni Wrong or not supported image format: can't open source image: No such file or directory
Wenn ich im Browser direkt auf die 10.15.30.110/snapshot.cgi?user=xxx&pwd=xxxx gehe, bekomme ich aber sehr wohl ein Standbild angezeigt.

- Auch Pan/Tilt mag er mir nicht nehmen. Ich habe das wie auf fischer-net.de "eingerichtet", aber leider passiert nix bei den entsprechenden Befehlen. Nichtmal im Log finde ich etwas.

Was mache ich denn diesmal falsch?

Beste Grüße
Der Fragenonkel doc
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Vladi2010 am 25 Dezember 2013, 18:02:08
hallo,

hat von euch das Problem jemand gelöst ?

bekomme folgenden Eintrag in die Log:

IPCAM Cam1 Wrong or not supported image format: can't open source image: No such file or directory

Config ist:

define Cam1 IPCAM 192.168.3.10:81
attr Cam1 path /snapshot.cgi?user=xxxxx&pwd=xxxxx         ( mit  und ohne / am Anfang )
attr Cam1 storage ./www/snapshots


die Liveansicht funktioniert: )

define LiveCam1 weblink iframe http://192.168.3.10:81/snapshot.cgi?user=xxxxx&pwd=xxxxx
attr LiveCam1 htmlattr width="640" height="480" frameborder="0" marginheight="0"

Danke für Eure Hilfe

Andreas
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: MBPower am 23 Januar 2014, 22:10:07
Jetzt habe ich mich durch jede Menge Seiten auf http://www.fischer-net.de geklickt, aber leider das Modul nicht gefunden.
Wo kann ich das IPCAM Modul herunterladen?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Steffen am 24 Januar 2014, 06:26:56
Hallo!

Hätte da auch mal eine kurze frage, bei http://192.168.178.158:80/snapshot.cgi?user=xxxxx&pwd=xxxxx bekomme ich immer nur ein standbild und kein Livebild
Ist das normal so? Ist das von Ip-cam unterschiedlich?

Mfg Steffen
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: fiedel am 24 Januar 2014, 07:54:39
Hi Steffen,

ja ist normal. "snapshot.cgi" sagt ja schon "Schnappschuss". Du musst die CGI- Befehle deiner Kamera besorgen (Hersteller / Webseite). Da steht dann auch drin, wie du das Livebild bekommst.

Gruß

Frank
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Rince am 24 Januar 2014, 08:14:00
@MBPower
Du hast das Modul. Gehört zur Grundausrüstung  8)

Ich empfehle, mal einen Blick in die Commandref zu werfen. Da steht alles wichtige drinnen.
Titel: IPCAM Wrong or not supported image format
Beitrag von: HolyMoly am 03 März 2014, 18:12:01
Hallo Leute,

versuche verzweifelt meine IPcam zum laufen zu bekommen und scheitere wie viele vor mir an dem Fehler

IPCAM Wrong or not supported image format

Habe mal alles mit debugstatements versehen und das loglevel hochgedreht,
es liegt offensichtlich daran dass  $snapshot = GetFileFromURLQuiet($camURI);
nix zurückliefert "empty answer received".
verflixte httpUtils mal wieder ;)

Falls der Fehler bei einem von euch auftritt schlage ich vor get von LWP::Simple zu verwenden:

$snapshot = get($camURI);

dann läuft alles wunderbar! Muss man ggf auf den Fritzboxen noch installieren...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: JoMe am 23 April 2014, 21:29:37
Hallo,

habe den gleichen Fehler..... :(.....

Nach dem Anpassen, wie oben beschrieben....stürzt FHEM beim Versuch einen Snapshot zumachen total ab....

Gibt es da schon ein Lösung....

Ach ja....wenn die den Link für die IPCAM direkt in den in Fierfox eingebe, bekomme ich das Bild.....

Gruß,

Joachim
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 27 April 2014, 08:31:02
Hallo Joachim,

ist LWP::Simple installiert?
Evtl per cpan nachinstallieren oder händisch auf den den Fritzboxen.

Ansonsten, was sagt das log?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: JoMe am 27 April 2014, 19:41:44
Hallo,

habe es gerade nochmal versucht.....jetzt gings....

LWP::Simple war installiert....

..ich befürchte, das ich beim 1.Versuch das "get" groß geschrieben hatte.. :(..

Vielen Dank,

gruß,

Joachim
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: noanda am 01 Dezember 2014, 23:33:07
Mal eine blöde Frage, wo genau muss ich "$snapshot = get($camURI)" integrieren ?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 02 Dezember 2014, 08:45:45
Im Modulcode, aber nur wenns Originalmodul wirklich nicht geht  ::)
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: td am 08 Januar 2015, 11:34:57
Hallo,

stehe auf dem Schlauch:
Bei mir tritt das genannte Problem mit GetFileFromURLQuiet auf.
Per cpan LWP::Simple installiert.
Bei Aufruf von "get Kamera image" stürzt fhem ab: "Undefined subroutine &main::get called at /opt/fhem/FHEM/49_IPCAM.pm line 381."
Warum findet fhem "get" nicht? Kann oder muß ich den Aufruf näher qualifizieren?

Gruß
td
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: gerhardg am 09 Januar 2015, 14:18:13
aus dem Bauch raus würde ich mal vorschlagen du baust noch ein "use LWP::Simple;" ein.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: td am 11 Januar 2015, 17:51:01
Danke für den Hinweis. fhem stürzt nicht ab und findet "get", aber leider tritt weiterhin auf:
"IPCAM KameraEinfahrt Wrong or not supported image format: unknown"
Die Kamera ist eine FOSCAM 9805W.

Gruß
td
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 11 Juli 2015, 20:12:37
Gibts für das Problem inzwischen eine Lösung? Bei mir ist das selbe --> Foscam 9803P.

Komme einfach nicht weiter! :-(
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 13 Juli 2015, 08:18:57
... schlage ich vor get von LWP::Simple zu verwenden:

$snapshot = get($camURI);

dann läuft alles wunderbar! Muss man ggf auf den Fritzboxen noch installieren...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 11:26:14
Habe ich getan, und zwar folgendermaßen:

Zunächst mittels

cpan install LWP::Simple
die Installation auf dem RPi2 durchgeführt.

Dann habe ich

use LWP::Simple
im Code des IPCAM-Moduls oben eingefügt und dann weiter unten das

$snapshot = GetFileFromURLQuiet($camURI); durch ein "#" auskommentiert und dafür dann

$snapshot = get($camURI);
eingetragen!

Danach RPi2 neugestartet, aber das Ergebnis bleibt das gleiche!
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 13 Juli 2015, 11:29:35
Logge mal $camURI und $snapshot ...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 11:33:44
Logge mal $camURI und $snapshot ...

Wie mache ich das?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 13 Juli 2015, 11:38:24
Log 1, "IPCAM $name URI: $camURI";
Log 1, "IPCAM $name Snapshot: $snapshot";

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 11:40:11
Log 1, "IPCAM $name URI: $camURI";
Log 1, "IPCAM $name Snapshot: $snapshot";

Prima, danke!!!!
Wenn du mir noch verrätst, wo ich das eintragen muss und wo ich dann den log davon finde sollte ich es hinbekommen! Von der Syntax her würde ich vermuten, es muss ins Modul rein? Ganz ans Ende? Und die Logeinträge finde ich dann im Fhem.log?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 13 Juli 2015, 11:43:14
direkt nach
$snapshot = get($camURI);Wir wollen doch debuggen ob die url vom Bild richtig war und ob get was getan hat....
Logeinträge im Fhem.log
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 12:52:16
direkt nach
$snapshot = get($camURI);Wir wollen doch debuggen ob die url vom Bild richtig war und ob get was getan hat....
Logeinträge im Fhem.log

Ok alles klar, vielen Dank!!! :-)
Mache ich direkt heute Nachmittag wenn ich daheim bin und poste hier das Ergebnis der Logeinträge!
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 17:36:18
Sooooooo, hier die Logeinträge:

2015.07.13 17:34:06.817 1: PERL WARNING: Subroutine IPCAM_Initialize redefined at ./FHEM/49_IPCAM.pm line 50.
2015.07.13 17:34:06.819 1: PERL WARNING: Subroutine IPCAM_Define redefined at ./FHEM/49_IPCAM.pm line 70.
2015.07.13 17:34:06.820 1: PERL WARNING: Subroutine IPCAM_Undef redefined at ./FHEM/49_IPCAM.pm line 93.
2015.07.13 17:34:06.830 1: PERL WARNING: Subroutine IPCAM_Set redefined at ./FHEM/49_IPCAM.pm line 104.
2015.07.13 17:34:06.837 1: PERL WARNING: Subroutine IPCAM_Get redefined at ./FHEM/49_IPCAM.pm line 244.
2015.07.13 17:34:06.847 1: PERL WARNING: Subroutine IPCAM_getSnapshot redefined at ./FHEM/49_IPCAM.pm line 321.
2015.07.13 17:34:06.852 1: PERL WARNING: Subroutine IPCAM_guessFileFormat redefined at ./FHEM/49_IPCAM.pm line 447.
2015.07.13 17:34:29.001 1: IPCAM Kamera_Hauseingang URI: http://admin:xxx@192.168.188.90:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=admin&pwd=xxx
2015.07.13 17:34:29.002 1: IPCAM Kamera_Hauseingang Snapshot: <html><body><img src="../snapPic/Snap_20150713-173441.jpg"/></body></html>
2015.07.13 17:34:29.003 1: IPCAM Kamera_Hauseingang Wrong or not supported image format: unknown

Hinweis: Ich habe das korrekte Passwort hier durch xxx ersetzt.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 13 Juli 2015, 18:35:30
Ich würde das Kennwort trotzdem ändern, hat nämlich jeder in seiner Benachrichtigungsemail erhalten.
Dein Problem ist dass http://admin:xxx@192.168.188.90:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=admin&pwd=xxx eine Webseite zurückliefert, keine absolute url auf ein image. Dh du kannst entweder eine bessere "magic" URI finden oder dir aus dem Snapshot eine zusammenparsen. Ich würde ersteren Ansatz verfolgen.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 19:03:30
Dh du kannst entweder eine bessere "magic" URI finden

Was bedeutet das denn und wie mach ich das? Bin total ahnunglos! :-(
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 13 Juli 2015, 19:09:21
Zeige mal ein bisschen Eigeninitiative und schau mal hier durch http://foscam.us/forum/post43654.html#p43654
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 19:15:26
Zeige mal ein bisschen Eigeninitiative und schau mal hier durch http://foscam.us/forum/post43654.html#p43654

Ok, ich werde mich mal durcharbeiten! Aber was ich nicht verstehe: Laut den CGI Befehlen (s. Anhang) sollte doch genau das snapPicture2 eine jpg Datei zurückliefern?!?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 13 Juli 2015, 19:25:33
snapPicture2 wäre schon das richtige, wir bekommen aber irgendwie das Ergebnis von snapPicture zurück.
Lass evtl. mal die benutzernamen und pw am ende weg.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 19:32:27
Dann geht garnichts, er erfordert auf jeden Fall User und PW.

Also aus dem von dir geposteten Artikel habe ich jetzt folgenden Ausdruck - an meine Cam angepasst - erzeugt:

<img src="http://192.168.188.90:88/CGIProxy.fcgi?cmd=snapPicture2&usr=admin&pwd=blendax3&t=" onload='setTimeout(function() {src = src.substring(0, (src.lastIndexOf("t=")+2))+(new Date()).getTime()}, 1000)' onerror='setTimeout(function() {src = src.substring(0, (src.lastIndexOf("t=")+2))+(new Date()).getTime()}, 5000)' alt='' />
Nur wo muss das dann hin? Und müsste ich dann ein jpg angezeigt bekommen, wenn ich den Ausdruck in die Browserzeile eingebe?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 13 Juli 2015, 19:37:26
Naja da ist halt leider ein Javascript mit drin, das können wir unter Perl nicht ausführen...
wir brauchen einen Pfad der ein jpeg ausspuckt...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 19:41:24
Tja keine Ahnung wie das gehn soll!

Aber müsste der Ausdruck nicht in der Browserzeile funktionieren? Da kommt aber kein Bild!
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 21:03:46
Hmmm, dann muss ich wohl ne andere Kamera kaufen........:(

Läuft das IPCAM Modul mit den Instar HD IP Kameras?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 13 Juli 2015, 21:10:35
Also hier läuft das Modul auch prima mit den Foscam HD-Cams (9821W V2). Ich habe jetzt den Thread nicht gelesen und weiß nicht, was dein Problem ist aber sowohl bei Instar HD Cams, als auch Foscam HD Kameras habe ich mit den Snapshots kein Problem.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 21:16:59
Das Problem ist, dass der CGI Befehl eine html Seite zurückliefert und keine direkte URL auf den SNapshot! Damit kommt das Modul wohl nicht klar!

Kannst du vllt mal ein list deiner foscam posten?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 13 Juli 2015, 21:22:45
Dann müsste ich zu viel zensieren. ;) Aber folgender path funktioniert:

cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=USER&pwd=PWD
Wichtig ist snapPicture2. Das liefert ein JPEG.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 21:59:17
Genau das habe ich ja auch, aber es liefert scheinbar kein JPG!!!! :(
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 13 Juli 2015, 21:59:53
Firmware aktuell?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Michi240281 am 13 Juli 2015, 22:06:47
Jo die Firmware und auch die Application Firmware sind auf dem neusten Stand!

Im Log steht immer folgendes:

2015.07.13 22:00:48.629 1: IPCAM Kamera_Hauseingang URI: http://192.168.188.90:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=gast&pwd=test
2015.07.13 22:00:48.637 1: IPCAM Kamera_Hauseingang Snapshot: <html><body><img src="../snapPic/Snap_20150713-220101.jpg"/></body></html>
2015.07.13 22:00:48.639 1: IPCAM Kamera_Hauseingang Wrong or not supported image format: unknown
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HolyMoly am 15 Juli 2015, 17:00:10
Ich würde an deiner stelle mal den FOSCAM support damit beglücken. Die sollen ganz ordentlich sein.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: crazystone am 24 August 2015, 22:20:15
Also hier läuft das Modul auch prima mit den Foscam HD-Cams (9821W V2). Ich habe jetzt den Thread nicht gelesen und weiß nicht, was dein Problem ist aber sowohl bei Instar HD Cams, als auch Foscam HD Kameras habe ich mit den Snapshots kein Problem.

Marvin, bitte verrätst du uns, welche INSTAR HD du verwendet hast? Bei mir steht auch eine Neuanschaffung an...

Vielen Dank!
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 25 August 2015, 09:31:34
Instar habe ich wieder abgeschafft. Die Außenkam und auch zwei gleiche Austauschgeräte hatten jeweils nach einer Nacht draußen tief unter dem Dach, sehr viel Feuchtigkeit (eine Pfütze) zwischen Linse und Glas. Scheint ein generelles Problem zu sein. Ich bin auf, leider etwas teurere, Vivotek Kameras umgestiegen. Von der Qualität her nicht vergleichbar mit Foscam oder Instar. Eine andere Liga. Und sie lassen sich auch prima mit dem IPCAM Modul steuern. Nur die Fotos hole ich mir mittlerweile mit einer eigenen Sub, da IPCAM nicht Non-Blocking ist.

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 25 August 2015, 09:36:23
Hallo,

könntest Du diese sub evtl mal erklären? Die Blockade von fhem ist mir auch schon aufgefallen.
Meine IN-5907 ist bisher dicht und funktioniert gut.

schöne Grüße
Jo

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 25 August 2015, 09:50:15
Von der Kamera habe ich 3 Stück zurück gesendet, die alle das gleiche Problem hatten. Vielleicht eine Serie, es führt aber dazu, dass ich die Marke meide ;)

Hier sind 3 subs, die man am besten in eine eigene myUtils packt (ein Teil davon ist aber aus dem IPCAM Modul "geklaut". Dabei geht es um den Filetype):

## Kamera Bilder holen
sub getCamPicSave($;$$) {
    my ($dv,$snaps,$delay) = @_;
  my @devs=();
  if ($dv eq "all") {
         @devs=devspec2array("TYPE=IPCAM");
  }
  else {
      @devs=split(",",$dv);
  }
  foreach my $dev (@devs) {
      my $ip=InternalVal($dev,"AUTHORITY","-");
      my $auth=AttrVal($dev,"basicauth","-");
      my $path=AttrVal($dev,"path","-");
      my $storage=AttrVal($dev,"storage","-");
      my $camDevice=AttrVal($dev,"camDevice","-");
      $snaps=AttrVal($dev,"snapshots",0) unless defined($snaps);
      $delay=AttrVal($dev,"delay",2) unless defined($delay);
      if ($ip ne "-" && $path ne "-" && $storage ne "-" && $camDevice ne "-" && Value($camDevice) eq "present") {
              my $camURI="http://".$ip."/".$path;
        my $seqWait=0;
        my $seqDelay=$delay;
        my $count=0;
        for (my $i=0;$i<$snaps;$i++) {
            $count=$i+1;
          my $param = {
            url        => $camURI,
            timeout    => 7,
            storage         => $storage,
            dev        => $dev,
            count         => $count,
            callback   => \&StoreCamFile,
          };
          InternalTimer(gettimeofday()+$seqWait, "HttpUtils_NonblockingGet", $param, 0);
          $seqWait = $seqWait + $seqDelay;
        }                       
      }
      else {
          my $error="CamPic-Error(s): ";
          $error.="Device ($dev) not available. " if ($ip eq "-");
        $error.="Device ($dev) has no path attribut. " if ($path eq "-");
        $error.="Device ($dev) has no camDevice attribut. " if ($camDevice eq "-");
        $error.="Could not fetch picture. Cam-Device ($dev) not present. " if (Value($camDevice) ne "present");   
        Log 3, $error;
        fhem("setreading $dev lastError $error");
      }
  }
  return undef;
}


sub StoreCamFile($$$)
{
  my ($hash, $err, $data) = @_;
  my $dev = $hash->{dev};
  my $dev_hash=$defs{$dev};
  readingsBeginUpdate($dev_hash);
  if ($err) {
      Log 3,"CamPic-Error: Image could not be fetched";
    readingsBulkUpdate( $dev_hash, 'lastError', $err );
  }
  else {
    my @imageTypes = qw(JPEG PNG GIF TIFF BMP ICO PPM XPM XBM SVG);
    my $imageFormat = camPicGuessFileFormat(\$data);
    if( ! grep { $_ eq "$imageFormat"} @imageTypes) {
        Log 3, "CamPic-Error: Wrong File-Format";
      readingsBulkUpdate( $dev_hash, 'lastError', 'CamPic-Error: Wrong File-Format' );
    }
    else {
          my $storage = $hash->{storage};
          my $count = $hash->{count};
          my $dateTime = TimeNow();
          my $timestamp = $dateTime;
          $timestamp =~ s/ /_/g;
          $timestamp =~ s/(:|-)//g;
      $imageFormat = "JPG" if($imageFormat eq "JPEG");
          my $filename=$dev."_".$timestamp.".".lc($imageFormat);
          open(FH, ">$storage/$filename");
          print FH $data;
          close(FH);
        readingsBulkUpdate( $dev_hash, 'snapshot'.$count, $filename );
        readingsBulkUpdate( $dev_hash, 'last', $filename );
            readingsBulkUpdate( $dev_hash, 'snapshots', $count );
    }
  }
  readingsEndUpdate( $dev_hash, 1 );
}


sub camPicGuessFileFormat($) {
  my ($src) = shift;
  my $header;
  my $srcHeader;

  open(my $s, "<", $src) || return "can't open source image: $!";
  $src = $s;

  my $reading = read($src, $srcHeader, 64);
  return "error while reading source image: $!" if(!$reading);

  local($_) = $srcHeader;
  return "JPEG" if /^\xFF\xD8/;
  return "PNG"  if /^\x89PNG\x0d\x0a\x1a\x0a/;
  return "GIF"  if /^GIF8[79]a/;
  return "TIFF" if /^MM\x00\x2a/;
  return "TIFF" if /^II\x2a\x00/;
  return "BMP"  if /^BM/;
  return "ICO"  if /^\000\000\001\000/;
  return "PPM"  if /^P[1-6]/;
  return "XPM"  if /(^\/\* XPM \*\/)|(static\s+char\s+\*\w+\[\]\s*=\s*{\s*"\d+)/;
  return "XBM"  if /^(?:\/\*.*\*\/\n)?#define\s/;
  return "SVG"  if /^(<\?xml|[\012\015\t ]*<svg\b)/;
  return "unknown";
}

Hier wird auf die Konfiguration (Pfade) eines IPCAM Devices zugegriffen (DEVICENAME).

Aufgerufen wird sie per

{getCamPicSave("DEVICENAME", "ANZAHLSNAPS", "DELAY")}
Damit werden non-blocking ANZAHLSNAPS Bilder im Abstand von DELAY Sekunden geholt und die Readings im entsprechenden IPCAM-Device aktualisiert. Gibt man ANZAHLSNAPS und DELAY nicht an, wird das jeweils aus dem IPCAM Device geholt. Das ist alles nicht sehr elegant und schnell hin gebaut aber es funktioniert.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 25 August 2015, 10:17:22
Das werde ich auf jeden Fall mal bei mir testen. Vielen Dank!
Was mich an der Instar stört, ist die fixe Video-Aufzeichnungsdauer. 30 oder 40 Sekunden wären hier und da manchmal besser.

schöne Grüße
Jo

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 25 August 2015, 13:11:41
Hier sind 3 subs, die man am besten in eine eigene myUtils packt (ein Teil davon ist aber aus dem IPCAM Modul "geklaut". Dabei geht es um den Filetype):

Vielen Dank dafür!
Habe es gleich mal ausprobiert, hat aber nicht auf Anhieb geklappt. Der Grund dafür ist das Attribut camDevice, dass es so bei mir nicht gibt. Hast Du da noch irgendwie PRESENCE mit eingebunden?

Ich habe für mich die entsprechenden Abfragen rausgenommen, dann klappt es, also anstatt
if ($ip ne "-" && $path ne "-" && $storage ne "-" && $camDevice ne "-" && Value($camDevice) eq "present") {nur
if ($ip ne "-" && $path ne "-" && $storage ne "-") {
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 25 August 2015, 14:50:18
Ah stimmt sorry. Ich habe mir noch ein userattr camDevice  in die IPCAM Devices gepackt. Dort trage ich ein emtsprechendes PRESENCE Device ein, sodass vor dem Fotos machen nachgeschaut werden kann, ob die Kamera überhaupt verfügbar ist und die Anfragen nicht ins leere laufen. Meine Innenkameras sind nämlich nur an, wenn wir weg sind oder Nachts.

Das kommt davon, wenn man den Quick and Dirty Quellcode nicht kommentiert ;)

Diese Zeile in meinem Code ist falsch:

my $camDevice=AttrVal($dev,"camDevice",0);
Es müsste lauten

my $camDevice=AttrVal($dev,"camDevice","-");
Dann klappt es auch mit komplettem Filter. Ich habe das oben geändert.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 25 August 2015, 16:08:55
my $camDevice=AttrVal($dev,"camDevice","-");
Dann klappt es auch mit komplettem Filter. Ich habe das oben geändert.

Aber auch dann klappt es nur, wenn man das userattr camDevice überhaupt verwendet. Ansonsten bekommt man auch eine Fehlermeldung. Halt nur eine etwas aussagekräftigere...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 25 August 2015, 16:32:58
Hm. Es mag sein, dass wenn es gar nicht vorhanden ist, dass es dann nicht funktioniert. AttrVal funktioniert also etwas anders, als ich dachte, das macht aber auch durchaus Sinn. Verwendet werden muss es aber nicht.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 25 August 2015, 17:07:42
Hallo,

sehr seltsam, bei mir klappt der code mit einer Foscam aber bei meiner INSTAR wird ein falsches image Format als Fehler ausgegeben. Verstehe ich gerade nicht, weil das IPCAM_Modul mit dieser Kamera auch funktioniert und der code eigentlich identisch ist (zumindest die entsprechenden Zeilen). Allerdings versuche ich das gerade noch zu prüfen.

schöne Grüße
Jo
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: bsl02 am 25 August 2015, 19:27:45
Dann müsste ich zu viel zensieren. ;) Aber folgender path funktioniert:

cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=USER&pwd=PWD
Wichtig ist snapPicture2. Das liefert ein JPEG.

Danke, jetzt klappts auch bei meiner Foscam9826 HD-IPcam ;-)
Gruß, Stefan
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 25 August 2015, 19:34:50
Hallo,

sehr seltsam, bei mir klappt der code mit einer Foscam aber bei meiner INSTAR wird ein falsches image Format als Fehler ausgegeben. Verstehe ich gerade nicht, weil das IPCAM_Modul mit dieser Kamera auch funktioniert und der code eigentlich identisch ist (zumindest die entsprechenden Zeilen). Allerdings versuche ich das gerade noch zu prüfen.

schöne Grüße
Jo

Poste hier doch mal ein list deiner IPCAM Devices (Instar und Foscam). Ich habe eine kleine Vermutung.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 25 August 2015, 19:58:02
Die lists der beiden Kameras:

INSTAR (geht nicht)
Internals:
   AUTHORITY  192.xxx.xxx.xxx:80
   CFGFN      ./FHEM/000_Kameras.cfg
   DEF        192.xxx.xxx.xxx:80
   NAME       CAM01
   NR         2460
   SEQ        0
   STATE      last: 2015-08-25 19:51:27
   TYPE       IPCAM
   Readings:
     2015-08-25 19:51:27   last            CAM01_snapshot.jpg
     2015-08-25 18:34:27   lastError       CamPic-Error: Wrong File-Format
     2015-08-25 19:51:22   snapshot1       CAM01_20150825_195122.jpg
     2015-08-25 19:51:23   snapshot2       CAM01_20150825_195123.jpg
     2015-08-25 19:51:25   snapshot3       CAM01_20150825_195125.jpg
     2015-08-25 19:51:27   snapshot4       CAM01_20150825_195127.jpg
     2015-08-25 19:51:27   snapshots       4
Attributes:
   basicauth  {USERNAME}:{PASSWORD}
   cmd01      cmd=setinfrared&-infraredstat=close
   cmd02      cmd=setinfrared&-infraredstat=auto
   credentials /opt/fhem/FHEM/000_CAM01_config.cfg
   delay      2
   path       tmpfs/snap.jpg?user={USERNAME}&pwd={PASSWORD}
   pathCmd    cgi-bin/hi3510/param.cgi
   room       Kameras
   snapshots  4
   storage    ./www/snapshots
   timestamp  1

FOSCAM (geht):
Internals:
   AUTHORITY  192.xxx.xxx.xxx:88
   CFGFN      ./FHEM/000_Kameras.cfg
   DEF        192.xxx.xxx.xxx:88
   NAME       CAM02
   NR         2467
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
   Readings:
     2015-08-25 18:30:44   last            CAM02_20150825_183044.jpg
     2015-08-25 18:30:42   snapshot1       CAM02_20150825_183042.jpg
     2015-08-25 18:30:44   snapshot2       CAM02_20150825_183044.jpg
     2015-08-25 18:18:42   snapshot3       CAM02_20150825_181842.jpg
     2015-08-25 18:18:44   snapshot4       CAM02_20150825_181844.jpg
     2015-08-25 18:18:47   snapshot5       CAM02_20150825_181847.jpg
     2015-08-25 18:18:50   snapshot6       CAM02_20150825_181850.jpg
     2015-08-25 18:30:44   snapshots       2
Attributes:
   cmd01      cmd=openInfraLed&usr=USER&pwd=PASSWORD
   cmd02      cmd=closeInfraLed&usr=USER&pwd=PASSWORD
   cmd03      cmd=setInfraLedConfig&mode=0&usr=USER&pwd=PASSWORD
   cmd04      cmd=setInfraLedConfig&mode=1&usr=USER&pwd=PASSWORD
   cmd05      cmd=ptzGotoPresetPoint&name=1&usr=USER&pwd=PASSWORD
   cmd06      cmd=ptzGotoPresetPoint&name=2&usr=USER&pwd=PASSWORD
   cmd07      cmd=ptzGotoPresetPoint&name=3&usr=USER&pwd=PASSWORD
   delay      1
   path       cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=USER&pwd=PASSWORD
   pathCmd    cgi-bin/CGIProxy.fcgi
   room       Kameras
   snapshots  6
   storage    ./www/snapshots
   timestamp  1

Bei der Foscam habe ich username und password fest eingegeben und nicht über "credentials" ausgelagert (hier durch "USER" und "PASSWORD" ersetzt). Das scheint neben dem Port der einzige Unterschied zu sein. Ach, und bei STATE erscheint etwas anderes.

schöne Grüße
Jo
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 25 August 2015, 20:00:18
Es ist das basicauth. Das ist zwar in der sub ganz rudimentär vorbereitet aber nicht umgesetzt.

Bitte beachten: ich habe hier kein für jeden funktionierendes Modul gepostet sondern auf Nachfrage nur eine sub, die ich verwende und die für mich funktioniert und als Workaround dient, bis jemand das Modul IPCAM endlich auf Non-Blocking umbaut.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dennis87 am 25 August 2015, 20:09:30
Hat eigentlich jemand auch das Problem, dass keine IPCAM-Aktionen mehr ausgeführt werden, wenn die Verbindung zur Kamera mal kurz weg war (lange vor der Zeit des Events)


Im Log steht dann folgendes:

2015.08.25 10:39:19 3: TuerklingelReceiver return value: Device needs to be reachable to send a message to screen.
2015.08.25 10:39:19 1: IPCAM Kamera_Haustuer Wrong or not supported image format: unknown

Die Kamera ist zu der Zeit aber wieder Problemlos erreichbar.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 25 August 2015, 20:09:33
Ok, die Vermutung hatte ich auch. Werde es mal raus nehmen. Danke für deine Unterstützung! Schon klar, dass das kein offizielles Modul ist ^-^

schöne Grüße
Jo

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: crazystone am 26 August 2015, 22:38:50
Instar habe ich wieder abgeschafft. Die Außenkam und auch zwei gleiche Austauschgeräte hatten jeweils nach einer Nacht draußen tief unter dem Dach, sehr viel Feuchtigkeit (eine Pfütze) zwischen Linse und Glas. Scheint ein generelles Problem zu sein. Ich bin auf, leider etwas teurere, Vivotek Kameras umgestiegen. Von der Qualität her nicht vergleichbar mit Foscam oder Instar. Eine andere Liga. Und sie lassen sich auch prima mit dem IPCAM Modul steuern. Nur die Fotos hole ich mir mittlerweile mit einer eigenen Sub, da IPCAM nicht Non-Blocking ist.

Danke für die Tipps! Dann also doch Vivotek. Wetterblastung ist doch bei mir eher sehr hoch.

Bzgl. des non-blocking wäre einfch cool, wenn die subs Eingang in das IPCAM finden würden, vielleicht hat Martin mal wieder etwas Zeit für das Modul  ;)
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 27 August 2015, 07:56:10
Ich habe mir IPCAM diesbezüglich schon angeschaut. Man müsste ein wenig anders umbauen. Ich habe aktuell keinerlei Zeit, mich damit zu beschäftigen, sonst würde ich versuchen, einen Patch anzubieten. Ich möchte das aber auch nicht einfach so machen. Es gibt hier einen Thread, in dem ich frage, wie es mit den Plänen zu IPCAM aussieht. Dieser ist jedoch unbeantwortet geblieben.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 02 September 2015, 18:38:38
Vielen Dank nochmal, bei mir klappt es jetzt mit beiden Kameras  :)

schöne Grüße
Jo
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Damu am 04 September 2015, 15:14:56
Hallo

Hab auch vier Kameras installiert.
Bei Abwesenheit schalte ich 3 ein.
Das Modul finde ich sehr gut.
Es wäre gut wenn sich das Modul pro Angemeldete Kamera einfach ausschalten liese.
Wenn ich eine Kamera vor der Haustüre habe, kann die sicherlich immer laufen.
Aber im Wohnbereich eher nicht.
Das ist nur als Anregung gedacht.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: errazzor am 06 Oktober 2015, 11:37:17
Hallo,

ich bin noch sehr neu im Thema FHEM, habe aber doch schon einiges geschafft. Nur jetzt stehe ich total auf dem Schlauch und muss euch mal nerven.
Ich habe meine Wansview mit dem IPCAM Modul soweit erfolgreich eingebunden.

Ich lasse mir den Videostream in einem "Room" anzeigen (per Weblink iframe).

Mit dem IPCAM-Modul kann ich die Kamera mit hilfe der Set-Befehle auch steuern.

Nur wie bringe ich es jetzt fertig, Steuerelemente (Icons) für die Kamera zu erstellen und diese im Raum anzeigen zu lassen?

Also nehmen wir an, ich habe einen Raum "Cam", dort ist der Videostream als Weblink (iframe) hinterlegt.
Jetzt hätte ich gerne unter dem Livestream 4 Buttons, welche auf Klick den entsprechenden Steuerbefehl (set) ausführen.

Nur wie?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 06 Oktober 2015, 11:38:56
Das sollte mit einer remoteControl kein Problem sein. Eventuell auch mit readingsGroup.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: errazzor am 06 Oktober 2015, 11:54:19
Sorry, ich bräuchte etwas "DAU-freundlichere" Antworten  :)

Die Begriffe sagen mir zwar etwas, aber einfach nur so wüsste ich jetzt überhaupt nicht, was ich damit machen soll.

Ich habe gelesen man könnte es auch mit webcmd und notify machen ... aber auch hier, keine Ahnung wie..mir fehlt da einfach der Anfang.

Wenn mir jemand mal ein kleines Beispiel aufschreiben könnte, das wäre toll!

Im Endeffekt sollen 4 Buttons dargestellt werden (Pfeil link,rechts,hoch,runter).
Beim klick auf den entsprechenden Pfeil so über das IPCAM-Modul der entsprechende Befehl gesendet werden.

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 06 Oktober 2015, 11:55:55
Du musst im Grunde einfach nur die commandref, das Wiki und das Forum nach den Stichworten durchsuchen, die ich dir gegeben habe. Dann findest du, was du brauchst (ja, auch Beispiele). Ein wenig selber denken ist nicht so schlecht, denn dabei lernt man etwas. Von mir bekommst du nur Hilfe zur Selbsthilfe. Das kannst du annehmen oder auf jemand anderen warten. Das erste geht schneller.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: errazzor am 06 Oktober 2015, 12:04:02
Selber denken kann ich schon, ich suche schon seit Tagen nach einer Lösung. Und ja, ich habe auch in der Commandref und im Forum gesucht. Und auch Beispiele gefunden.
Das bringt mir nur alles nichts, wenn ich einfach die Grundlagen (wie bekomme ich Buttons hin, welche ein Modul ansteuern etc.) aufgrund von Verständnisschwierigkeiten nicht hinbekomme.

Ich hätte hier nicht gefragt, wenn ich es mit Selbstrecherche hinbekommen hätte...

Vielleicht hilft mir ja jemand anderes.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 06 Oktober 2015, 12:31:18
Ich hätte hier nicht gefragt, wenn ich es mit Selbstrecherche hinbekommen hätte...
Das Stichwort remotecontrol ist doch schon gefallen. Im Wiki gibt es dazu einen ausführlichen Artikel nebst Codebeispielen.
http://www.fhemwiki.de/wiki/Remotecontrol
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: errazzor am 06 Oktober 2015, 12:46:30
Ja, das hatte ich schon versucht, leider klappt es damit bisher auch nicht.
Versucht hatte ich das Beispiel aus dem Wiki.

Ausgangssituation:

-IPCAM Cam1 angelegt
- als Attribut unter anderem: cmdPanLeft | command=6&onestep=0   (damit würde die Cam nach links schwenken)

^^ Es funktioniert, wenn ich im Cam1-Modul oben mit der Befehlsschaltfläche "set" "pan" "left" auswähle / eingebe. Die Kamera schwenkt nach links.

Ich habe nach dem Wiki eine Remotecontrol angelegt, 4 Buttons wie folgt:

cmdPanLeft:REWIND,cmdPanRight:FF,cmdTiltUp:VOLUP,cmdTiltDown:VOLDOWN

Dazu ein Notify:

define notify_Cam1_Test notify Cam1_Test set Cam1 $EVENT

Drücke ich auf der Remotecontrol die Taste "links", sehe ich oben, dass der befehl "cmdPanLeft" gesendet wird - aber es passiert nichts.

Habe ich irgendwo einen Denkfehler?



Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 06 Oktober 2015, 12:55:31
Ah. Eine konkrete Frage. Geht doch ;)

Mache mal ein list aller beteiligten Devices und poste jeweils das Ergebnis in Codetags.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: errazzor am 06 Oktober 2015, 13:03:19
Gerne, ich hoffe das hilft:

Internals:
   AUTHORITY  192.168.178.26
   CFGFN
   DEF        192.168.178.26
   NAME       Cam1
   NR         815
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
Attributes:
   basicauth  foo:bar
   cmd01      command=6&onestep=0
   cmdPanLeft command=6&onestep=0
   cmdPanRight command=4&onestep=0
   cmdTiltDown command=0&onestep=0
   cmdTiltUp  command=2&onestep=0
   path       videostream.cgi
   pathPanTilt decoder_control.cgi?
   room       Cam

Internals:
   CFGFN
   NAME       Cam1_Test
   NR         950
   STATE      cmd01
   TYPE       remotecontrol
   Readings:
     2015-10-06 12:58:00   state           cmd01
Attributes:
   rc_iconpath icons/remotecontrol
   rc_iconprefix black_btn_
   room       Cam
   row00      cmd01:REWIND,cmdPanRight:FF,cmdTiltUp:VOLUP,cmdTiltDown:VOLDOWN

Internals:
   CFGFN
   DEF        Cam1_Test set Cam1 $EVENT
   NAME       notify_Cam1_Test
   NOTIFYDEV  Cam1_Test
   NR         963
   NTFY_ORDER 50-notify_Cam1_Test
   REGEXP     Cam1_Test
   STATE      2015-10-06 12:58:00
   TYPE       notify
   Readings:
     2015-10-06 12:18:37   state           active
Attributes:
   room       Cam
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 06 Oktober 2015, 13:09:02
Du hast es oben selbst geschrieben

Zitat
^^ Es funktioniert, wenn ich im Cam1-Modul oben mit der Befehlsschaltfläche "set" "pan" "left" auswähle / eingebe. Die Kamera schwenkt nach links

Der Befehl heißt schlicht nicht

set Cam1 cmdPanLeft
sondern

set Cam1 pan left
Und so musst du auch deine RemoteControl konfigurieren.

Das meinte ich mit "commandref lesen". Es steht drin.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: errazzor am 06 Oktober 2015, 13:16:16
Ok, alles klar. Ich habs hinbekommen.

row00      pan left:REWIND [...]

Damit funktioniert es. Freue mich sehr, vielen Dank für die Hilfe.

Manchmal braucht es halt Denkanstöße oder einen Schubs in die richtige Richtung.
Danke nochmal.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 06 Oktober 2015, 13:24:47
Sollte folgendes nicht funktionieren

attr Cam1_Test  row00 pan left:REWIND
"erfinde" einfach selber einen Befehlf und übersetze im im notify (am besten mit einer eigenen sub in einer myUtils).

Beispiel:

attr Cam1_Test row00 set Cam1 left:REWIND
als Button in der RC.

Das notify (kann dann für alle Events gelten):

define notify_Cam1_Test notify Cam1_Test {myCamRemote($EVENT)}
Und dann die sub in der myUtils:

sub myCamRemote($) {
  my ($EVENT)=@_;

  if ($EVENT eq "left") {
    fhem("set Cam1 pan left");
  }
  return undef;
}

Das bitte als Anregung sehen. Denkanstöße gab's hier schon genug. Leider hast du noch nicht weiter gedacht. Versuche die Dinge zu verstehen und nicht einfach nur nach zu machen.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: errazzor am 06 Oktober 2015, 13:46:46
Ich verstehe was Du sagen willst.

Ich habe gerade festgestellt, dass es eigentlich mehr Zufall ist, dass die Kommandos funktionieren.

Also mit "set pan left" wird halt offenbar ein direkter Befehl in der Kamera bzw. im Modul ausgeführt, ich dachte die ganze Zeit, der Befehl liest dann das entsprechende cmd-Attribut aus. Ist aber natürlich nicht so.

Eigentlich wollte ich die Befehle bzw. URLs aus den Attributen verwenden, weil ich damit auch bestimmte Positionen anfahren kann. Müsste ja eigentlich auch irgendwie gehen.
Muss ich mal weitertesten.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 06 Oktober 2015, 13:56:09
Probiere mal folgendes:

attr Cam1_Test  row00 /pan left:REWIND/
Ich bin nicht sicher, ob das funktioniert.

Es ist aber auch nichts falsch daran, eine sub zu verwenden. Im Gegenteil. Das bietet einem flexible Erweiterungsmöglichkeiten.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 12 Oktober 2015, 19:55:19
Hallo,

wäre es vielleicht möglich, die Anzahl der custom commands im IPCAM-Modul von 15 auf mindestens 30 anzuheben? Vom code her sehe ich (als Nicht-Programmierexperte) keine Schwierigkeiten - spricht irgendwas dagegen? Mit 15 komme ich leider nicht aus  :-\

schöne Grüße
Jo
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: speex am 20 Oktober 2015, 12:45:13
Hallo Marvin, ich versuche gerade deine getsnap Non Blocking Sub zu übernehmen allerdings hat er bei mir ein Problem mit dem cgi jpeg das meine D-Link Cam erzeugt:
image/jpeg.cgi
Er schmeisst mir immer den Fehler das dass File Format nicht korrekt sei:
lastError | CamPic-Error: Wrong File-Format
Hat da jemand Rat wie ich den Code anpassen könnte?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 20 Oktober 2015, 12:49:58
Dann versuche doch mal den Check auf Filetype auszukommentieren.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: speex am 20 Oktober 2015, 15:37:53
Jetzt bin ich schon einen Schritt weiter es wird eine datei erzeugt allerdings mit der Dateiendung unknown?

Wie muss ich das denn für die cgi endung anpassen das mir dort ein JPG erzeugt wird.

Mein Code sieht nun so aus:
## Kamera Bilder holen
sub getCamPicSave($;$$) {
    my ($dv,$snaps,$delay) = @_;
  my @devs=();
  if ($dv eq "all") {
         @devs=devspec2array("TYPE=IPCAM");
  }
  else {
      @devs=split(",",$dv);
  }
  foreach my $dev (@devs) {
      my $ip=InternalVal($dev,"AUTHORITY","-");
      my $auth=AttrVal($dev,"basicauth","-");
      my $path=AttrVal($dev,"path","-");
      my $storage=AttrVal($dev,"storage","-");
      my $camDevice=AttrVal($dev,"camDevice","-");
      $snaps=AttrVal($dev,"snapshots",0) unless defined($snaps);
      $delay=AttrVal($dev,"delay",2) unless defined($delay);
      if ($ip ne "-" && $path ne "-" && $storage ne "-") {
              my $camURI="http://".$ip."/".$path;
        my $seqWait=0;
        my $seqDelay=$delay;
        my $count=0;
        for (my $i=0;$i<$snaps;$i++) {
            $count=$i+1;
          my $param = {
            url        => $camURI,
            timeout    => 7,
            storage         => $storage,
            dev        => $dev,
            count         => $count,
            callback   => \&StoreCamFile,
          };
          InternalTimer(gettimeofday()+$seqWait, "HttpUtils_NonblockingGet", $param, 0);
          $seqWait = $seqWait + $seqDelay;
        }                       
      }
      else {
          my $error="CamPic-Error(s): ";
          $error.="Device ($dev) not available. " if ($ip eq "-");
        $error.="Device ($dev) has no path attribut. " if ($path eq "-");
        $error.="Device ($dev) has no camDevice attribut. " if ($camDevice eq "-");
        $error.="Could not fetch picture. Cam-Device ($dev) not present. " if (Value($camDevice) ne "present");   
        Log 3, $error;
        fhem("setreading $dev lastError $error");
      }
  }
  return undef;
}


sub StoreCamFile($$$)
{
  my ($hash, $err, $data) = @_;
  my $dev = $hash->{dev};
  my $dev_hash=$defs{$dev};
  readingsBeginUpdate($dev_hash);
  { {
          my $imageFormat = camPicGuessFileFormat(\$data);
          my $storage = $hash->{storage};
          my $count = $hash->{count};
          my $dateTime = TimeNow();
          my $timestamp = $dateTime;
          $timestamp =~ s/ /_/g;
          $timestamp =~ s/(:|-)//g;
      $imageFormat = "JPG" if($imageFormat eq "JPEG");
          my $filename=$dev."_".$timestamp.".".lc($imageFormat);
          open(FH, ">$storage/$filename");
          print FH $data;
          close(FH);
        readingsBulkUpdate( $dev_hash, 'snapshot'.$count, $filename );
        readingsBulkUpdate( $dev_hash, 'last', $filename );
            readingsBulkUpdate( $dev_hash, 'snapshots', $count );
    }
  }
  readingsEndUpdate( $dev_hash, 1 );
}


sub camPicGuessFileFormat($) {
  my ($src) = shift;
  my $header;
  my $srcHeader;

  open(my $s, "<", $src) || return "can't open source image: $!";
  $src = $s;

  my $reading = read($src, $srcHeader, 64);
  return "error while reading source image: $!" if(!$reading);

  local($_) = $srcHeader;
  return "JPEG" if /^\xFF\xD8/;
  return "PNG"  if /^\x89PNG\x0d\x0a\x1a\x0a/;
  return "GIF"  if /^GIF8[79]a/;
  return "TIFF" if /^MM\x00\x2a/;
  return "TIFF" if /^II\x2a\x00/;
  return "BMP"  if /^BM/;
  return "ICO"  if /^\000\000\001\000/;
  return "PPM"  if /^P[1-6]/;
  return "XPM"  if /(^\/\* XPM \*\/)|(static\s+char\s+\*\w+\[\]\s*=\s*{\s*"\d+)/;
  return "XBM"  if /^(?:\/\*.*\*\/\n)?#define\s/;
  return "SVG"  if /^(<\?xml|[\012\015\t ]*<svg\b)/;
  return "unknown";
}

Erzeugt bei mir folgende Datei:
IPCam_20151020_153101.unknown
Wenn ich hier unknown durch jpg ersetze ist das Bild auch nicht funktional sowie die dateigrösse macht mich auch stutzig von 94byte die Bilder die das IPCam Device von sich aus holt sind ca. 22-25kb groß.

Der path zu meiner D-Link DCS-942L ist:
image/jpeg.cgi

stocher leider irgendwie im trüben, danke für die Tipps. :)
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 20 Oktober 2015, 17:10:50
Ein recht verbreitetes Problem scheint zu sein, dass manche Kameras kein jpg sondern eine html-Seite zurückgeben. Dann gibt es ebenfalls diese Meldung.

schöne Grüße
Jo

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 20 Oktober 2015, 17:17:38
Viele Kameras haben 2 Funktionen, ein Bild zu liefern. Eine liefert ein HTML und eine ein JPEG.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: speex am 20 Oktober 2015, 17:39:12
Ja es ist das Problem der HTML Seite die durch das CGI erzeugt wird allerdings finde ich im Backend meiner Cam keine möglichkeit das anzufassen ich kann praktisch nur die Qualität für das jpeg bestimmen weitere Einstellungen werden dort nicht geboten.

Auf der HTML Seite ist das Bild in einem IMG Tag eingebunden mit folgender src:
http://<ip>/image/jpeg.cgi
Gibt es dafür noch eine Alternative, ich habe probiert den Code mit dem normalen IPCam modul zu vergleichen aber das ist gerade noch eine Nummer zu hoch für mich mit der Hoffnung der Sache weiter auf die Spur zu kommen da ich mit einem get IPCam image ein Bild bekomme.

Frage mich halt was dort an der Stelle unterschiedlich läuft...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 20 Oktober 2015, 17:57:37
Ich habe ja geschrieben, dass meine subs nicht überall funktionieren werden. Man müsste schauen, was GetFileFromURLQuiet und darin HttpUtils_BlockingGet anders macht, als die NonBlocking Variante.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: speex am 21 Oktober 2015, 14:18:41
Ich habe mir die Subs angesehen allerdings wie bereits erwähnt ist das momentan noch eine Nummer zu hoch, ich habe probiert die subs im HTTPUtils zu verändern mit dem Resultat das FHEM nach einem Neustart nicht mehr durchstartet. Da lass ich also erstmal lieber noch die finger von. :)

sub
HttpUtils_NonblockingGet($)
{
  my ($hash) = @_;
  $hash->{hu_blocking} = 0;
  my ($isFile, $fErr, $fContent) = HttpUtils_File($hash);
  return $hash->{callback}($hash, $fErr, $fContent) if($isFile);
  my $err = HttpUtils_Connect($hash);
  $hash->{callback}($hash, $err, "") if($err);
}

#################
# Parameters same as HttpUtils_NonblockingGet up to callback
# Returns (err,data)
sub
HttpUtils_BlockingGet($)
{
  my ($hash) = @_;
  $hash->{hu_blocking} = 1;
  my ($isFile, $fErr, $fContent) = HttpUtils_File($hash);
  return ($fErr, $fContent) if($isFile);
  my $err = HttpUtils_Connect($hash);
  return ($err, undef) if($err);
 
  my ($buf, $ret) = ("", "");
  $hash->{conn}->timeout($hash->{timeout});
  for(;;) {
    my ($rout, $rin) = ('', '');
    vec($rin, $hash->{conn}->fileno(), 1) = 1;
    my $nfound = select($rout=$rin, undef, undef, $hash->{timeout});
    if($nfound <= 0) {
      undef $hash->{conn};
      return ("$hash->{displayurl}: Select timeout/error: $!", undef);
    }

    my $len = sysread($hash->{conn},$buf,65536);
    last if(!defined($len) || $len <= 0);
    $ret .= $buf;
    last if(HttpUtils_DataComplete($ret));
  }
  return HttpUtils_ParseAnswer($hash, $ret);
}

Meine Fähigkeiten sind hier momentan noch begrenzt, aber was mir auffällt das sich die sub`s ab den returns jeweils unterscheiden und die nonblocking sub natürlich viel kürzer ist, jedoch erschliessen sich mir die funktionalen unterschiede nicht da ich es einfach nicht verstehe was da passiert. :)
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Mexx_007 am 20 November 2015, 15:50:02
Hi

habe eine Wansview NCB 545W IP cam , habe sie auch ins Fhem eingebunden bekomme auch ein Live Bild .... kann mir jemand sage wie ich die Steuerung der Cam realisieren kann.
hab was gelesen das man die cgi befehle braucht , leider finde ich im Netz keine bzw. Was von einer anderen Cam selber Marke

cgi in camera file                  cgi used in webui

backup_params.cgi
    
camera_control.cgi                       camera_control.cgi
check_user2.cgi    
check_user.cgi                      check_user.cgi
comm_write.cgi    
decoder_control.cgi                     decoder_control.cgi
erase_allparams.cgi    
get_camera_params.cgi            get_camera_params.cgi
get_factory_ddns.cgi    
get_forbidden.cgi    
get_log.cgi                           get_log.cgi
get_misc.cgi                          get_misc.cgi
get_p2p.cgi    
get_params.cgi                 get_params.cgi
get_realip.cgi                          get_realip.cgi
get_smarteye.cgi                  get_smarteye.cgi
get_status.cgi                           get_status.cgi
get_wifi_scan_result.cgi               get_wifi_scan_result.cgi
reboot.cgi                                 reboot.cgi
restore_factory.cgi                                 restore_factory.cgi
restore_factory_ddns.cgi    
restore_params.cgi    
set_alarm.cgi    
set_alias.cgi    
set_datetime.cgi                          set_datetime.cgi
set_ddns.cgi                                  set_ddns.cgi
set_decoder.cgi                             set_decoder.cgi
set_devices.cgi                            set_devices.cgi
set_factory_ddns.cgi    
set_forbidden.cgi    
set_ftp.cgi                                     set_ftp.cgi
set_mac.cgi    
set_mail.cgi                                     set_mail.cgi
set_misc.cgi                                       set_misc.cgi
set_msn.cgi    
set_network.cgi                               set_network.cgi
set_p2p.cgi    
set_pppoe.cgi                                            set_pppoe.cgi
set_smarteye.cgi                                 set_smarteye.cgi
set_smarteye_factory_params.cgi          set_smarteye_factory_params.cgi
set_upnp.cgi                                          set_upnp.cgi
set_users.cgi                                          set_users.cgi
set_wifi.cgi                                          set_wifi.cgi
snapshot.cgi                                          snapshot.cgi
test_ftp.cgi                                         test_ftp.cgi
test_mail.cgi                                         test_mail.cgi
upgrade_firmware.cgi                       upgrade_firmware.cgi
upgrade_htmls.cgi                               upgrade_htmls.cgi
video.cgi    
videostream.cgi                               videostream.cgi
wifi_scan.cgi                                       wifi_scan.cgi


kann mir jemand weiter Helfen

Danke ;-)

gruß

Andy
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: nhetzke am 10 Dezember 2015, 10:42:24
Hallo @All,

ich habe da ein Problem beim holen der Bilder mittels
get <Dev> imageIch habe zwei IP-WLAN Cams. Die Konfig sieht so aus:
Cam1:
define IPCamTreppenhaus IPCAM 192.168.0.158:81
attr IPCamTreppenhaus delay 0
attr IPCamTreppenhaus event-on-update-reading snapshots
attr IPCamTreppenhaus path snapshot.cgi?loginuse=admin&loginpas=&user=admin&pwd=&
attr IPCamTreppenhaus snapshots 10
attr IPCamTreppenhaus storage /opt/fhem/IPCom
attr IPCamTreppenhaus timestamp 1

Cam2:
define IPCamKueche IPCAM 192.168.0.100:8080
attr IPCamKueche delay 0
attr IPCamKueche event-on-update-reading snapshots
attr IPCamKueche path shot.jpg
attr IPCamKueche snapshots 10
attr IPCamKueche storage /opt/fhem/IPCom
attr IPCamKueche timestamp 1

Die Cams sollen nun bei einem Notify quasi parallel die eingestellten 10 Bilder holen. Das Resultat ist aber das es in Summe nicht 20 Bilder sind. Die Anzahl variiert hier bei. Es sind auch nicht immer gleich viele pro Kamera.
Die Antwortzeiten je Kamera, getestet mittels wget liegen unter 1s.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marty29ak am 12 Januar 2016, 08:21:47
Hallo,
ich habe mir an der Haustüre eine günstige Wansview NCM628D02 Kamera installiert.
Im Flur ist ein All in One PC (MSI Wind Top AE1900) mit Windows 7 Home Premium an der Wand.
Die Verbindung zum Lan läuft über die interne Wlankarte.
Als Browser nutze ich Chrome im Kiosk Modus.

Soweit funktioniert alles perfekt bis auf den Umstand das die Kamera nach einer gewissen Zeit nur noch ein Standbild anzeigt. Ich muss dann erst die Webseite neu laden, dann geht es wieder für eine gewisse Zeit.
Das ist natürlich blöd wenn man mal im vorbei gehen, oder wenn es klingelt, kurz drauf schauen möchte.
Energiespareinstellungen für das Wlan sind alle aus und die Icons für Schalter, Licht und Fensterkontakte werden auch weiterhin zuverlässig aktualisiert. Nur eben die Kamera nicht.
Lediglich die Festplatte und der Bildschirm wird nach 15Min abgeschaltet.
Ich vermute ja das der Fehler in den Einstellungen von Windows liegt, finde aber keinen Ansatz dazu. Evtl. das abschalten von Bildschirm? Den möchte ich aber aus Stromspargründen ungern durchlaufen lassen.
Alternativ wäre eine Notfall Lösung wenn man auf das Kamerabild oder einen Button darunter klicken könnte um nur die Kamera auf die schnelle zu aktualisieren. Wäre sowas denn möglich?

DEF iframe http://192.168.178.38/cgi-bin/hi3510/mjpegstream.cgi?-chn=12&-usr=admin&-pwd=xxxxxxx
LINK          http://192.168.178.38/cgi-bin/hi3510/mjpegstream.cgi?-chn=12&-usr=admin&-pwd=passat35
NAME        IP_Camera_Anzeige
NR            133
STATE       initialized
TYPE         weblink
WLTYPE    iframe

Attributes
fp_Erdgeschoss          10,1050,0,
fp_Obergeschoss        10,1050,0,
fp_Terminal                3,730,1,
htmlattr                      width="640" height="360"
room                           I_Kamera


Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: frank am 12 Januar 2016, 14:00:52
Zitat
Ich vermute ja das der Fehler in den Einstellungen von Windows liegt, finde aber keinen Ansatz dazu. Evtl. das abschalten von Bildschirm? Den möchte ich aber aus Stromspargründen ungern durchlaufen lassen.
zum testen würde ich den bidschirm mal laufen lassen.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marty29ak am 12 Januar 2016, 15:05:15
Danke, habe den Fehler evtl. gefunden. Der Mini PCI Anschluss hat nochmal eine eigene Energieeinstellung, nachdem ich diese auch abgeschaltet habe scheint es (bis jetzt) zu funktionieren.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Tompsg am 15 März 2016, 23:50:28
Ich versuche hier nochmal eine Lösung für das Problem "Wrong or not supported image format: unknown" zusammen zu fassen und hoffe, dass es Verzweifelten hilft  :)

Zunächst gilt es festzustellen, ob das Problem mit der hier beschriebenen Lösung umgangen werden kann. Da das Modul 49_IPCAM hierfür keine Debug-Option hat, muss es von Hand erweitert werden. Dies wurde weiter oben im Thread bereits angeregt.

Also im fhem/FHEM-Verzeichnis die Datei 49_IPCAM.pm öffnen und folgende Stelle suchen (Zeile 380)

...
  $timestamp =~ s/(:|-)//g;

  $snapshot = GetFileFromURLQuiet($camURI);

  $imageFormat = IPCAM_guessFileFormat(\$snapshot);

  my @imageTypes = qw(JPEG PNG GIF TIFF BMP ICO PPM XPM XBM SVG);
...

Dort die beiden beiden Debug-Ausgaben einfügen:

...
  $timestamp =~ s/(:|-)//g;

  $snapshot = GetFileFromURLQuiet($camURI);
  Log 1, "IPCAM $name URI: $camURI";
  Log 1, "IPCAM $name Snapshot: $snapshot";

  $imageFormat = IPCAM_guessFileFormat(\$snapshot);

  my @imageTypes = qw(JPEG PNG GIF TIFF BMP ICO PPM XPM XBM SVG);
...

Jetzt in FHEM ein "reload 49_IPCAM" eingeben und mit "get camname image" einen neuen snapshot anfordern. Im Log findet Ihr nun die Ausgaben, die wir benötigen. Interessant ist die zweite Zeile, den hier erwartet das Modul eigentlich das Kamerabild. Steht hier ein solcher oder ähnlicher Text, dann findet Ihr weiter unten eine Lösung dazu. Ansonsten die beiden oben eingefügten Zeilen wieder entfernen, da der Bildinhalt im Log nicht schön ist.

2015.07.13 22:00:48.629 1: IPCAM Kamera1 URI: http://192.168.1.1:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=guest&pwd=guest
2015.07.13 22:00:48.637 1: IPCAM Kamera1 Snapshot: <html><body><img src="../snapPic/Snap_20150713-220101.jpg"/></body></html>
2015.07.13 22:00:48.639 1: IPCAM Kamera1 Wrong or not supported image format: unknown

Die Lösung ist nun den Link anzupassen und erneut an die Funktion GetFileFromURLQuiet zu senden. Dazu schneiden wir den relevanten Teil aus dem String heraus, indem wir Startpunkt und die Länge ermitteln.

          1         2
01234567890123456789012345
<html><body><img src="../snapPic/Snap_20150713-220101.jpg"/></body></html>
                                  1         2         3
                         12345678901234567890123456789012



Hier also ab Position 25 mit einer Länge von 32 Zeichen. Nun erweitern wir die 49_IPCAM.pm um folgende Kommandos.

...
  $timestamp =~ s/(:|-)//g;

  $snapshot = GetFileFromURLQuiet($camURI);
  Log 1, "IPCAM $name URI: $camURI";
  Log 1, "IPCAM $name Snapshot: $snapshot";

  $snapshot="http://$camAuth/".substr($snapshot,25,32);
  Log 1, "IPCAM $name SnapshotNeu: $snapshot";

  $snapshot = GetFileFromURLQuiet($snapshot);

  $imageFormat = IPCAM_guessFileFormat(\$snapshot);

  my @imageTypes = qw(JPEG PNG GIF TIFF BMP ICO PPM XPM XBM SVG);
...

Nun wieder reload und get image und dann solltet ihr in der Debug-Ausgabe eine korrekt formatiere URL sehen. Damit sollte das Modul jetzt arbeiten können. Der Nachteil ist, dass nun unterschiedliche Kameras nicht mehr laufen. Daher wäre es prima die Funktion als Option im Modul einzubauen.

Viele Grüße,
Thomas
Titel: Edimax IC-3115W
Beitrag von: coh3r3nt am 28 April 2016, 16:02:46
Hallo zusammen,

bie mir läuft die Edimax IC-3115W mit dem Modul.

define IC3115W IPCAM 192.x.x.x
attr IC3115W basicauth user:geheim
attr IC3115W path snapshot.jpg

Wer eine andere Edimax-Cam hat, kann sich den paramter für path hier raussuchen: https://www.ispyconnect.com/man.aspx?n=Edimax (https://www.ispyconnect.com/man.aspx?n=Edimax) raussuchen.

Ich hätte auch noch einen Wunsch für das Modul. Könnte man als Kommando auch das Bild (get IC3115W image) machen lassen, zB.:
attr IC3115W webCmd image
So könnte man im Frontend das speichern eines Bildes antriggern durch klick auf das webCmd.

greets,
coh3r3nt
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Calle78 am 29 Mai 2016, 19:48:17
docb ich hatte das gleiche Problem. Mit

attr Cam1 pathPanTilt decoder_control.cgi?
ging es auch mit der Instar 3010 und 3011

hier meine ganze Definition:

define Cam1 IPCAM IP:PORT
attr Cam1 basicauth user:pass
attr Cam1 cmdPanLeft command=4
attr Cam1 cmdPanRight command=6
attr Cam1 cmdPos01 command=31
attr Cam1 cmdPos02 command=33
attr Cam1 cmdPos03 command=35
attr Cam1 cmdPos04 command=37
attr Cam1 cmdPos05 command=39
attr Cam1 cmdPos06 command=41
attr Cam1 cmdStep onstep
attr Cam1 cmdTiltDown command=2
attr Cam1 cmdTiltUp command=0
attr Cam1 pathPanTilt decoder_control.cgi?
attr Cam1 delay 0
attr Cam1 group Kamera
attr Cam1 icon it_camera
attr Cam1 path snapshot.cgi
attr Cam1 room Security
attr Cam1 snapshots 1
attr Cam1 storage /opt/fhem/www/snapshots/cam1
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: franky08 am 19 Juni 2016, 19:27:21
Hallo, mich würde interessieren wie ihr euch die snapshot's (hier als jpg) anzeigen lasst? Direkt in der fhem GUI mittels weblink oder wie macht ihr das?

P.S. ein
weblink image /opt/snapshot/ipcam_snapshot.jpg
Internals:
   DEF        image /opt/snapshot/ipcam_snapshot.jpg
   LINK       /opt/snapshot/ipcam_snapshot.jpg
   NAME       Bilder
   NR         2009
   STATE      initialized
   TYPE       weblink
   WLTYPE     image
Attributes:
   DbLogExclude .*
   htmlattr   width="720" height="480"
   room       Flur

funktioniert leider nicht obwohl unter /opt/snapshot die Bilder zu finden sind und Benutzer/Gruppe von /opt/snapshot fhem.dialout ist und Schreib-Lesezugriff besteht

VG
Frank
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: marvin78 am 22 Juni 2016, 16:45:08
Dein Pfad stimmt auch? Was genau funktioniert nicht? Gibt es Fehler? Ich würde die snapshots relativ zum fhem Pfad speichern.

Ich mache sowas (um es dynamisch zu halten):

sub last_pics($;$$$)
{
 my ($cam,$w,$c) = @_;
 my $c=6 if (!defined($c));
 my $w=450 if (!defined($w));
 my ($s, $i, $j, $o);
 $s="<tr><td>";
 for ($i=1; $i<=$c; $i++)
 {
    $o=$i-1;
    $j  = $i."p";
    $s .="  <script>
    \$(function() {
      \$( '#pic_".$j."_dialog' ).dialog({
          autoOpen: false,
          closeOnEscape: true,
          width: 820,
       });
      \$( '#pic_".$j."_link' ).click(function() {
        \$( '#pic_".$j."_dialog' ).dialog( 'open' );
        return false;
      });
    });
    </script>";
    if ($o % 2==0) {$s .= "</td></tr><tr><td>";}
    elsif ($o!=0) {$s .= "</td><td>";}
    $s .="<a id='pic_".$j."_link' href='#'><img src='/fhem/";
    $s .= qx(ls -1t ./www/snapshots/$cam/* | sed -n $j);
    $s .= "' width='$w' /></a>";
    $s .= "<div id='pic_".$j."_dialog' title='Pic'><img src='/fhem/";
    $s .= qx(ls -1t ./www/snapshots/$cam/* | sed -n $j);
    $s .= "' width='800' /></div>";
 }
 $s.= "</td></tr>";
 $s = "<table>".$s."</table>";
 return $s;
}

Das ganze aus dem Weblink (htmlCode) mit dem IPCAM-Devicenamen als Parameter (+ möglicherweise Anzahl der letzten Fortos und Breite) aufrufen und man hat eine kleine Galerie.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: franky08 am 22 Juni 2016, 18:33:41
@marvin78
Habe es über HTTPSRV gelöst, funktioniert top. Zugriff dann über weblink image ...

https://forum.fhem.de/index.php/topic,54819.0.html

Zitat
aufrufen und man hat eine kleine Galerie.
gefällt mir  :)

VG
Frank
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: franky08 am 27 Juni 2016, 19:30:24
Irgendwie bekomme ich die Foscam FI8918W nicht dazu gespeicherte Positionen anzufahren. Habe mir auf der Foscam Seite mal die cgi Befehle zu Gemüte geführt und damit müsste es eigentlich funktionieren.

Hier mal ein list:
Internals:
   AUTHORITY  192.168.2.64:88
   DEF        192.168.2.64:88
   NAME       ipcam
   NR         2008
   SEQ        0
   STATE      last: 2016-06-27 18:41:46
   TYPE       IPCAM
   Readings:
     2016-06-27 18:41:46   last            ipcam_snapshot.jpg
     2016-06-27 18:41:38   snapshot1       ipcam_snapshot_1.jpg
     2016-06-27 18:41:39   snapshot2       ipcam_snapshot_2.jpg
     2016-06-27 18:41:40   snapshot3       ipcam_snapshot_3.jpg
     2016-06-27 18:41:41   snapshot4       ipcam_snapshot_4.jpg
     2016-06-27 18:41:42   snapshot5       ipcam_snapshot_5.jpg
     2016-06-27 18:41:43   snapshot6       ipcam_snapshot_6.jpg
     2016-06-27 18:41:44   snapshot7       ipcam_snapshot_7.jpg
     2016-06-27 18:41:45   snapshot8       ipcam_snapshot_8.jpg
     2016-06-27 18:41:46   snapshot9       ipcam_snapshot_9.jpg
     2016-06-27 18:41:46   snapshots       9
Attributes:
   DbLogExclude .*
   cmdPos01   command=39&user=xxxxxx&pwd=xxxxxxxx
   cmdPos02   command=41&user=xxxxxx&pwd=xxxxxxxx
   delay      1
   path       cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=xxxxxxx&pwd=xxxxxxxx 
   pathPanTilt decoder_control.cgi?
   room       Flur,Kamera
   snapshots  9
   storage    ./www

oder müsste in pathPanTilt der komplette Pfad?

Das funktioniert leider auch nicht:

Internals:
   AUTHORITY  192.168.2.64:88
   DEF        192.168.2.64:88
   NAME       ipcam
   NR         2008
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
   Readings:
     2016-06-28 08:29:14   last            ipcam_snapshot.jpg
     2016-06-28 08:29:06   snapshot1       ipcam_snapshot_1.jpg
     2016-06-28 08:29:07   snapshot2       ipcam_snapshot_2.jpg
     2016-06-28 08:29:08   snapshot3       ipcam_snapshot_3.jpg
     2016-06-28 08:29:09   snapshot4       ipcam_snapshot_4.jpg
     2016-06-28 08:29:10   snapshot5       ipcam_snapshot_5.jpg
     2016-06-28 08:29:11   snapshot6       ipcam_snapshot_6.jpg
     2016-06-28 08:29:12   snapshot7       ipcam_snapshot_7.jpg
     2016-06-28 08:29:13   snapshot8       ipcam_snapshot_8.jpg
     2016-06-28 08:29:14   snapshot9       ipcam_snapshot_9.jpg
     2016-06-28 08:29:14   snapshots       9
Attributes:
   DbLogExclude .*
   cmdPos01   command=39
   cmdPos02   command=41
   cmdPos03   command=31
   delay      1
   path       cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=xxxxxxx&pwd=xxxxxxx
   pathPanTilt decoder_control.cgi?usr=xxxxxxxx&pwd=xxxxxxxx
   room       Kamera,Wohnzimmer
   snapshots  9
   storage    ./www

Hat jemand eine Tipp?

VG
Frank
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: franky08 am 28 Juni 2016, 15:53:26
Ich geb es auf  :(
Habe jetzt etliche Möglichkeiten durchgespielt, die Foscam lässt sich nicht dazu überreden sich zu bewegen. Snapshot's funktionieren ohne Probleme nur decoder_control.cgi? bekomme ich nicht hin.

Die cgi Befehle habe ich von hier: http://www.foscam.es/descarga/ipcam_cgi_sdk.pdf

VG
Frank
   
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Maista am 28 Juni 2016, 21:14:32
Hallo Frank.

Ich habe das bei meiner Ipc10 so eingetragen


decoder_control.cgi?user={USERNAME}&pwd={PASSWORD}

Das Password und Username werden aus einer Datei gelesen.
In deinem List führst du den Befehl ohne diese Angaben aus?!

Habe das einmal eingerichtet seit dem nichts mehr verändert.

Viel Glück

Gerd
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: franky08 am 28 Juni 2016, 21:30:12
Ich habe es mit basicauth (wie du es verwendest) und auch mit usr,pwd probiert. Leider funktioniert beides nicht. Wenn ich basicauth einrichte funktioniert die snapshot funktion auch nicht mehr. Die Camera ist eine Foscam FI8918w, im Netz geistern auch wiedersprüchlich Angaben zu den cgi Befehlen rum, diese habe ich mittlerweile alle durch probiert.

P.S. User:Password sind da mit drin:
pathPanTilt decoder_control.cgi?usr=xxxxxxxx&pwd=xxxxxxxx
VG
Frank
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: raspklaus am 18 Juli 2016, 12:32:49
Ich habe jetzt auch mal 2 IPcams installiert.

Was mir dabei aufgefallen ist:

Mit einem get imagewerden zwei identische snapshots erzeugt

<webcamname>_snaphot.jpg
<webcamname>_snaphot_1.jpg


Warum ? Einer würde doch ausreichen.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: heikoh81 am 19 Juli 2016, 19:41:24
Ich wollte meine IPCams einmal auf SSL-Verschlüsselung umstellen (hinter Apache Reverse Proxy, mit Let's Encrypt-Zertifikat).
Leider lädt IPCam kein Bild mehr, im Log steht nur:

2016.07.19 19:35:26 1: IPCAM Kamername Wrong or not supported image format: unknown

URL im Browser funktioniert, ohne SSL funktioniert es, somit muss es an SSL liegen.

Hat irgendjeman IPCAM mit SSL-geschützten Kameras am laufen?

Viele Grüße,
Heiko
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: andre07 am 25 Juli 2016, 20:49:31
Hallo

Möchte gern meine Hootoo  HT IP211 HDP ins modul mit einbinden um scapshots zu erzeugen
der Log gibt dieses aus
IPCAM hootoocam URI: http://192.168.178.49:1024/cgi-bin/hi3510/param.cgi?cmd=snap&
2016.07.25 20:18:43 1: IPCAM hootoocam Snapshot: "
2016.07.25 20:18:43 1: IPCAM hootoocam Wrong or not supported image format: unknown
2016.07.25 20:19:18 1: IPCAM hootoocam URI: http://192.168.178.49:1024/cgi-bin/hi3510/param.cgi?cmd=snap&
2016.07.25 20:19:18 1: IPCAM hootoocam Snapshot:  var path="/tmpfs/snap_tmpfs/20160725/IMG001/IMG_chn0_TIMER_MNG_20160725201917_006.jpg"
2016.07.25 20:19:18 1: IPCAM hootoocam Wrong or not supported image format: unknown


Modul um debug erweitert hier im Thread erklärt

http://192.168.178.49:1024/cgi-bin/hi3510/param.cgi?cmd=snap& erzeugt ein bild
list hootoocam
Internals:
   AUTHORITY  192.168.178.49:1024
   DEF        192.168.178.49:1024
   NAME       hootoocam
   NR         675
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
   Readings:
     2016-07-22 14:52:41   snapshots       0
Attributes:
   event-on-change-reading snapshots
   icon       it_camera
   path       cgi-bin/hi3510/param.cgi?cmd=snap&
   room       Status
   snapshots  2
   storage    /opt/fhem/FHEM
   timestamp  1
   verbose    5

Wahrscheinlich  "var path="/tmpfs/snap_tmpfs/20160725/IMG001/IMG_chn0_TIMER_MNG_20160725201917_006.jpg"  " nicht lesbar für IPCAM
aber wie kann man das richtig formatieren?
Andre
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: micky0867 am 27 Juli 2016, 06:52:40
Sieht nach Linux/Unix aus.

Was kommt denn raus, wenn du dich auf der Shell anmeldest und

ls -la /tmpfs/snap_tmpfs/20160725/IMG001/IMG_chn0_TIMER_MNG_20160725201917_006.jpg
machst, bzw.
file /tmpfs/snap_tmpfs/20160725/IMG001/IMG_chn0_TIMER_MNG_20160725201917_006.jpg
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: andre07 am 01 August 2016, 01:38:46
Habs zwischenzeitlich hinbekommen Ipcam läuft jetzt mit
meiner hootoo
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: jmike am 01 August 2016, 09:04:08
URL im Browser funktioniert, ohne SSL funktioniert es, somit muss es an SSL liegen.

Hat irgendjeman IPCAM mit SSL-geschützten Kameras am laufen?

Viele Grüße,
Heiko

Hallo Heiko.
Ich habe zwar keine SSL/IPCAM aber dreh mal dein verbose (Device & global wenn du Sicher gehen willst) auf 4.
Das Modul IPCAM nutzt unter der Haube HttpUtils::CustomGetFileFromURL welches ab "verbose level 4" Fehlermeldungen ins Log schreiben sollte.

Möglicherweise bräuchtest du das SSL Argument "SSL_verify_mode => 0", weil der code sonst lets encrypt als CA abweist. Ist aber nur Spekulation, erst das Log anschauen.

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Shadow3561 am 15 Oktober 2016, 10:44:15
Hallo,
Ist es auch möglich mehrere Bilder speichern zu lassen?

Ich nutze das Modul um ein Bild zu speichern wenn jemand klingelt.
Wenn jedoch mehrere Leute über den Tag verteilt klingeln, wird das erste Bild überschrieben und ich sehen immer nur das letzte Event(Person die klingelt)

Kann man das Modul evtl so erweitern, dass nach jedem Event(get Image) eine neue Datei angelegt wird und nach einer definierten Anzahl wieder das erste Bild überschrieben wird?

Ich stelle mir das so vor:

1. mal klingeln > speichere Bild 1
2. mal klingeln > speichere Bild 2
...
...
5. mal klingeln > speichere Bild 1

MfG
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 15 Oktober 2016, 11:50:58
Ist es auch möglich mehrere Bilder speichern zu lassen?
Wenn Du das Attribut timestamp auf 1 setzt, werden die Dateien mit einem Timestamp anstelle einer Nummer versehen und dadurch auch nicht mehr überschrieben.
Um das Löschen alter Bilder musst Du Dich dann allerdings selbst kümmern. Eine Lösung wie Du Sie Dir vorstellst, dass IPCAM automatisch immer die letzten x Aufnahmen aufbewahrt, ist in dieser Form nicht vorgesehen. Aber man könnte ja beispielsweise mit einem Skript täglich oder wöchentlich alle Bilder älter als x Tage löschen lassen.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Shadow3561 am 15 Oktober 2016, 12:37:55
Das mit dem täglichen löschen der Aufnahmen stellt kein Problem dar.
Aber wie überrede ich tabletUi immer nur die letzen 5 Aufnahmen anzeigen zu lassen?


Mit freundlichen Grüßen
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 15 Oktober 2016, 13:03:28
Indem Du immer die letzte Aufnahme weg kopierst und mit einer Nummer versiehst. Gleichzeitig benennst Du die älteren Aufnahmen entsprechend um. 10, 9, 8...
Kannst Du als sh Skript auslagern.

schöne Grüße
Jo

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Shadow3561 am 15 Oktober 2016, 16:41:21
Hast du evtl eine Starthilfe für mich?
Bin nicht so der Linux Profi.

Mit freundlichen Grüßen
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 15 Oktober 2016, 17:17:22
Hallo,

Du kannst diese sub in die 99_myUtils.pm kopieren:

sub GetLastPics($$)
{
 my ($cam,$shot) = @_;
 my $cmd="";
 my $old="";
 my $new="";
 my $j=0;
 my $path='./www/snapshots/';
 my $pic=$path.ReadingsVal($cam,'snapshot'.$shot,'');
 $cmd=chr(34).'rm '.$path.'last/'.$cam.'_10.jpg'.chr(34);
 fhem("$cmd");
 for(my $i=9;$i>0;$i--) {
  $j=$i+1;
  $old=$path.'last/'.$cam.'_'.$i.'.jpg';
  $new=$path.'last/'.$cam.'_'.$j.'.jpg';
  $cmd=chr(34).'cp '.$old.' '.$new.chr(34);
  fhem("$cmd");
 }
 $cmd=chr(34).'cp '.$pic.' '.$path.'last/'.$cam.'_1.jpg'.chr(34);
 fhem("$cmd");
}

Diese Funktion kopiert neue Bilder in einen Ordner und benennt sie um in CAMxy_1, CAMxy_2 usw.
Da nicht immer das erste der geschossenen Bilder das "Gute" ist, kann man mit $shot auch das zweite usw. wählen (=2).
Die Bilder werden dann immer umbenannt, sobald ein neues dazu kommt. In FTUI musst Du dann nur die 10 (oder entsprechend weniger) Bilder anzeigen.
Nicht wirklich hübsch, aber funktional  ::)

schöne Grüße
Jo
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Shadow3561 am 15 Oktober 2016, 17:20:14
Danke.
Ich werde mich gleich mal ransetzen und es über die Woche ausprobieren.

Mit freundlichen Grüßen
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Shadow3561 am 15 Oktober 2016, 18:34:47
Hallo Jojo11,

Muss ich noch Ergänzungen machen?
Habe das Script in die 99_myUtils eingefügt und ein paar Bilder mit "get Ipcam Image" gemacht, es werden jedoch keine Bilder gespeichert im angegebenen Pfad.

Ich habe es mit dem "Timestamp" Attribut versucht und ohne.

Internals:
   AUTHORITY  192.168.1.38
   DEF        192.168.1.38
   NAME       CamAuffahrt
   NR         35
   SEQ        0
   STATE      letztes Bild: 2016-10-15 18:49:11
   TYPE       IPCAM
   Helper:
     Dblog:
       Last:
         Logdb:
           TIME       1476550153.25252
           VALUE      CamAuffahrt_snapshot.jpg
       Snapshots:
         Logdb:
           TIME       1476550153.25252
           VALUE      1
   Readings:
     2016-10-15 18:49:13   last            CamAuffahrt_snapshot.jpg
     2016-10-15 18:49:11   snapshot1       CamAuffahrt_snapshot_1.jpg
     2016-10-15 18:49:13   snapshots       1
Attributes:
   basicauth  admin:*******
   delay      0
   group      Kamera
   icon       it_camera
   path       Streaming/channels/201/picture
   room       Cams
   storage    ./www/snapshots/CamAuffahrt
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Jojo11 am 15 Oktober 2016, 19:46:53
Hallo,

vor Allem musst Du es mal aufrufen, sonst kann es ja nichts machen  :o
Testen z.B., indem Du es mit
{GetLastPics("CamAuffahrt", 1)}
aufrufst.
IPCAM gibt mir die letzten Bilder als Readings "snapshot1", "snapshot2", "snapshot3", ... aus. Die Werte sind dann "CAM01_20161015_192138.jpg", ... (s. Anhang).
Ggf. musst Du das bei Dir anpassen. Meine Version von IPCAM ist etwas älter - falls da in letzter Zeit was geändert wurde. Mir reichte die Anzahl der Kommandos nicht, weshalb ich es angepasst habe.
Aber als Starthilfe sollte es reichen  ;)

schöne Grüße
Jo
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: visionsurfer am 29 Oktober 2016, 17:26:05
Hallo,

ich lasse meine Tür durch eine Mobotix S15 Kamera überwachen. Ich kann mir URL, sowohl den Live Stream aufrufen, als auch einfach nur ein gerade geschossenes Bild. Livestream ist erst mal nebensächlich.

Ich bekomme über den Browser mit folgender URL ganz normal ein Live Bild:

http://192.168.178.225/record/current.jpg

Meine Definition sieht nun wie folgt aus:

Internals:
   AUTHORITY  192.168.178.225
   CFGFN
   DEF        192.168.178.225
   NAME       mobotix
   NR         3985
   SEQ        0
   STATE      last: 2016-10-29 17:23:49
   TYPE       IPCAM
   Readings:
     2016-10-29 17:23:49   last            mobotix_snapshot.jpg
     2016-10-29 17:23:49   snapshot1       mobotix_snapshot_1.jpg
     2016-10-29 17:23:49   snapshots       1
Attributes:
   path       record/current.jpg
   room       Geräte
   storage    ./www/snapshots

Kann ich irgendwie kontrollieren, ob da auch ein Bild gemacht wurde und wie dieses Bild aussieht ?

Kann ich das irgendwie aufrufen oder mir irgendwie anzeigen lassen ?
Ich bin mir auch unsicher ob mein Path richtig ist ?

Also muss es heißen /record/current.jpg oder record/current.jpg

Grüße,
Visionsurfer



Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: visionsurfer am 29 Oktober 2016, 21:03:55
Hi,

ich habe es rausgefunden. Damit kann ich das Bild öffnen:

http://192.168.178.49:8086/fhem/www/snapshots/mobotix_snapshot.jpg

Ich hab dann noch mal mit dem GET Befehl ein neues Image angefordert und schon was das Bild aktuell. Scheint also zu funktionieren. Sehr gut. Vielen Dank.

Ich denke so kann ich erst mal weiter machen.

Grüße,
Visionsurfer
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: cameli2 am 17 Dezember 2016, 17:41:54
Hallo coh3r3nt,
ich habe ebenfalls die Edimax IC-3115W im Einsatz.

Dank Deines Hinweises auf die Seite https://www.ispyconnect.com/man.aspx?n=Edimax (https://www.ispyconnect.com/man.aspx?n=Edimax) bin ich nicht nur auf die Lösung meines Problems (Bilder von der Cam generell einzulesen), sondern auch auf die Lösung Deines Wunsches gekommen.
Der Trick ist, die Account-Daten vor die IP-Adresse zu setzen, also
define IC3115W IPCAM [user]:[password]@192.168.xxx.yyyIn diesem Fall müssen für die Strings [user] und [password] die Account-Daten entsprechend ersetzt werden.

Das funktioniert auch, wenn man die Account-Daten über das separate Credencial-File (mittels attr credencials) einsetzt:
define IC3115W IPCAM {USERNAME}:{PASSWORD}@192.168.xxx.yyy
attrib IC3115W credencials /opt/fhem/ipcam.conf

In beiden Fällen braucht dann das Attribut basicauth nicht gesetzt werden.

Und das Wichtigste zum Schluss:
get IC3115W image
funktioniert auch. Zumindest bei mir...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Grafkox am 29 Dezember 2016, 18:10:20
Hallo zusammen,

ich implementiere gerade Überwachungskameras in FHEM und möchte mit FHEM auch die Bewegungserkennung ein- und ausschalten.

Anhand des Howto´s (https://213.252.140.23/index.php/topic,54028.msg462414.html#msg462414) von pitman habe ich es geschafft, die Bewegungserkennung meiner Hikvision-Kameras mittels CURL-Aufruf aus der FHEM-Befehlszeile zu aktivieren/deaktivieren.

Leider funktioniert die nachfolgenden Befehl mit cmd01 und cmd02 allerdings nicht:

cmd01:{ qx(curl -T Motion_Detection_an.xml http://user:pwd\@IP/ISAPI/Smart/fielddetection) }
cmd02:{ qx(curl -T Motion_Detection_aus.xml http://user:pwd\@IP/ISAPI/Smart/fielddetection) }   
Hat jemand eine Idee wie man die Befehle im IPCAM-Modul verwenden kann?

Vielen Dank und viele Grüße

Thorsten
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Patrik.S am 10 Januar 2017, 22:36:07
Meine alten Smartphones werden mit der "IP Webcam" App zu Überwachungszwecken weiter benutzt.

Nicht immer, aber dann doch irgendwann bekomme ich diesen bekannten Fehler im Logfile
IPCAM MyIPCam Wrong or not supported image format: error while reading source image:
Bei mir hat dann immer ein kompletter Raspi System reboot geholfen.
Das kann's aber auch nicht im entscheidenen Augenblick sein

Die simple Lösung ist bei mir: Der Default Timeout Wert ist einfach zu klein. Fhem als Client wartet einfach zu kurz, während die Webcam noch gar nicht fertig ist, das Bild zu liefern.


Auf die Lösung bin ich über den Post "IPCAM mit Axis Kamera liefert Wrong or not supported image format" https://forum.fhem.de/index.php/topic,55584.msg471865.html#msg471865 (https://forum.fhem.de/index.php/topic,55584.msg471865.html#msg471865) gekommen.

Da wird die Zeile erwähnt, wo mit dem GetFileFromURLQuiet() Aufruf im Modul 49_IPCAM das Bild geholt wird.
Und die zusätzliche Logausgabe von Log 1, "IPCAM $name Snapshot: $snapshot"; war immer leer, anstatt des Bildes

Das Fhem Wiki gibt Auskunft, das man noch optionale Parameter setzen kann.
https://wiki.fhem.de/wiki/HttpUtils#GetFileFromURLQuiet

Nachdem ich nun folgendes nutze, bekomme ich immer zuverlässig ein Bild$snapshot = GetFileFromURLQuiet($camURI, 10, "", 1, 5);
Der Negativ Gegentest mit 1 Sek Timeout zeigt dann wiederum wie erwartet immer den Fehler
$snapshot = GetFileFromURLQuiet($camURI, 1, "", 1, 5);
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Andre0909 am 25 Januar 2017, 15:11:21
Hallo,

Du kannst diese sub in die 99_myUtils.pm kopieren:

sub GetLastPics($$)
{
 my ($cam,$shot) = @_;
 my $cmd="";
 my $old="";
 my $new="";
 my $j=0;
 my $path='./www/snapshots/';
 my $pic=$path.ReadingsVal($cam,'snapshot'.$shot,'');
 $cmd=chr(34).'rm '.$path.'last/'.$cam.'_10.jpg'.chr(34);
 fhem("$cmd");
 for(my $i=9;$i>0;$i--) {
  $j=$i+1;
  $old=$path.'last/'.$cam.'_'.$i.'.jpg';
  $new=$path.'last/'.$cam.'_'.$j.'.jpg';
  $cmd=chr(34).'cp '.$old.' '.$new.chr(34);
  fhem("$cmd");
 }
 $cmd=chr(34).'cp '.$pic.' '.$path.'last/'.$cam.'_1.jpg'.chr(34);
 fhem("$cmd");
}

Diese Funktion kopiert neue Bilder in einen Ordner und benennt sie um in CAMxy_1, CAMxy_2 usw.
Da nicht immer das erste der geschossenen Bilder das "Gute" ist, kann man mit $shot auch das zweite usw. wählen (=2).
Die Bilder werden dann immer umbenannt, sobald ein neues dazu kommt. In FTUI musst Du dann nur die 10 (oder entsprechend weniger) Bilder anzeigen.
Nicht wirklich hübsch, aber funktional  ::)

schöne Grüße
Jo

Hallo zusammen, hierzu benötige ich auch eure Hilfe. IPCAM zeichnet bei mir 2 Snapshots auf wenn es an der Tür klingelt. In FTUI kann ich mit Zeit und Datum des Klingelns anzeigen lassen, dazu würde ich gerne die 2 Snaps einblenden. Das soll z.B. für die letzten 5 Klingelaktionen also bei 10 Screens passieren. Leider lässt sich das mit IPCAM Readings nicht darsellen da nur die letzte SNAP-Aktion als Reading aufgezeichnet wird. Setze ich Timestamps habe ich zwar die Screens aber kann wegen unterschiedlicher Namen sie nicht fest einbinden.

Eigentlich hatten wir in einem anderen Thread eine Lösung mit einer SUB, welche die Dateinamen durchsuchte und dann per -F8 nur den Dateinamen ausgab. Die SUB wurde alle 5 min aufgerufen und die readings in ein dummy geschrieben. Das ging allerdings nicht mehr, weil, warum auch immer, bei manchen Snaps das Verzeihnis unter -f8 bei manchen unter -f7 auftauchte.

Ich denke oben verlinkte SUB könnte die Lsöung sein, da somit feste Daeinamen mit dem IMAGE-Widget aufgerufen werden. Mangels meiner PERL-KEntnisse raffe ich jedoch nicht, wie ich diese abändern und/oder richtig in Fhem dann einbinden kann. Meine Screens liegen in www/tablet/image/Kamera .... Bin über jede Hilfe dankbar! DANKE
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Andre0909 am 25 Januar 2017, 18:17:41
Habe jetzt die Funktion mit meinen Ordner angepasst.

Wenn ich Sie aufrufe {...("Draussen", 1)} bekomme ich im Log:

rm: das Entfernen von „./www/tablet/images/Kamera/last/Draussen_10.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: der Aufruf von stat für „./www/tablet/images/Kamera/last/Draussen_9.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: der Aufruf von stat für „./www/tablet/images/Kamera/last/Draussen_8.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: der Aufruf von stat für „./www/tablet/images/Kamera/last/Draussen_7.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: der Aufruf von stat für „./www/tablet/images/Kamera/last/Draussen_6.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: der Aufruf von stat für „./www/tablet/images/Kamera/last/Draussen_5.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: der Aufruf von stat für „./www/tablet/images/Kamera/last/Draussen_4.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: der Aufruf von stat für „./www/tablet/images/Kamera/last/Draussen_3.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: der Aufruf von stat für „./www/tablet/images/Kamera/last/Draussen_2.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: der Aufruf von stat für „./www/tablet/images/Kamera/last/Draussen_1.jpg“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Verzeichnis „./www/tablet/images/Kamera/“ wurde ausgelassen

Irgendwie raff ich die Funktion der SUB wohl noch nicht
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Tueftler1983 am 07 Februar 2017, 22:40:09
Hallo ich habe ein Problem
Wenn ich das
192.168.2.101:86/web/cgi-bin/hi3510/param.cgi?cmd=preset&-act=goto&-number=1

I'm Browser eingebe, Fährt die Kamera eine definierte Position an. Aber ich bekomme es nicht hin über dein Modul die Position anzufahren.

Kannst du mir sagen wie ich die Attribute setzen muss?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: weini am 08 März 2017, 23:19:36
Feature Request: Timestamp als {timestamp} Variable

Ich kämpfe gerade mit der neuen Webcam der AllianzArena:
Über folgende Website werden die Bilder im 10 Sekunden-Takt aktualisiert: https://allianz-arena.com/de/die-arena/webcams/esplanade (https://allianz-arena.com/de/die-arena/webcams/esplanade)
Das konkrete Bild gibt es über folgende URL: https://allianz-arena.com/static-content-upload/webcam/esplanade-webcam-image-01.jpg (https://allianz-arena.com/static-content-upload/webcam/esplanade-webcam-image-01.jpg)

Aber Achtung: Die Gemeinheit ist, dass sich das Bild unter der zweiten URL nach dem ersten Aufruf nicht aktualisiert wird. Es wird nur ein neues Bild gezogen, wenn die URL sich ändert. Erreicht wird das in der Website (erste URL), in dem via JS ein sich ändernder Suffix angehängt wird. Der JS Code hänngt hier ein Datum an, tatsächlich reicht es aber aus, wenn "irgendeine" neue URL generiert wird, also sinngemäß https://allianz-arena.com/static-content-upload/webcam/esplanade-webcam-image-01.jpg?_2017-03-08_08-23 (https://allianz-arena.com/static-content-upload/webcam/esplanade-webcam-image-01.jpg?_2017-03-08_08-23)

Was mir hier unglaublich helfen würde wäre ein Platzhalter analog zu {USERNAME} und {PASSWORD}, der sich irgendwie ändert. Sinnvoll wäre hier ein {TIMESTAMP}, der Datum und Uhrzeit enthält, also etwas in der Art: {TIMESTAMP} => "2017-03-08_08-23"

Wäre das mit vertretbarem Aufwand realiserbar?

Viele Grüße,
weini
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: weini am 18 März 2017, 17:37:32
So, ich habe mir jetzt mal selbst geholfen:

Anbei ein Patch für IPCAM. Es wird zusätzlich der Platzhalter {TIMESTAMP} eingeführt, der das aktuelle Datum im Format "YYYY-MM-TT_HH-MI-SS" zurückliefert. Die Ersetzung im Attribut "path" wird aktuell nur bei einem "GET IMAGE" durchgeführt.

Ich würde mich sehr freuen, wenn der Patch in die nächste Version wandert. Nützlich ist das nur für öffentliche Webcams, die beim Abruf der Bilder etwas "zickig" sind. Es schadet aber nichts und die Änderung im Modul ist minimal.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: wolfram am 13 April 2017, 11:13:14
Hallo zusammen,

seit einiger Zeit setze ich das ipcam-modul erfolgreich ein. Beim Auslösen eines Kontaksensors verschicke ich ein Bild per Telegram. Das klappt alles wunderbar. Leider bekomme ich nicht immer das letzte aufgenommene Bild, sondern das vorletzte.
Meine Frage: wie bekomme ich es hin, dass immer da letzte Bild aus meinem Ordner "snapshots" versendet wird?

hier mein notify:

#Notify für Bildversand von Telegram
define testdoor notify Tuerstatus:on set cam pos 1;;get cam image;;set my_bot sendPhoto /opt/fhem/SonosSpeak/snapshots/cam_snapshot.jpg
attr testdoor room Notify

und hier meine Kameradefinition:

# IP CAM
define cam IPCAM 192.168.1.xx
attr cam basicauth meinusername:meinpasswort
attr cam cmdPanLeft command=4
attr cam cmdPanRight command=6
attr cam cmdPos01 command=31
attr cam cmdPos02 command=33
attr cam cmdPos03 command=35
attr cam cmdPos04 command=37
attr cam cmdStep onstep
attr cam cmdTiltDown command=2
attr cam cmdTiltUp command=0
attr cam delay 5
attr cam genericDeviceType security
attr cam icon it_camera
attr cam path snapshot.cgi?user=meinusername&pwd=meinpasswort
attr cam pathPanTilt decoder_control.cgi?
attr cam room Homekit,Wohnzimmer
attr cam snapshots 2
attr cam storage /opt/fhem/SonosSpeak/snapshots
attr cam timestamp 0

vielleicht kann mir jemand weiterhelfen - das wäre ein tolles Ostergeschenk.

Danke ,
wolf
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Tueftler1983 am 13 April 2017, 11:40:25
Ich mache es mit DOIF und warte 2 sek von dem Moment wo das Bild gemacht wird zu dem Zeitpunkt an dem ich es sende
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: wolfram am 13 April 2017, 20:28:02
Ich mache es mit DOIF und warte 2 sek von dem Moment wo das Bild gemacht wird zu dem Zeitpunkt an dem ich es sende


Mhh, ja, das würde natürlich gehen, aber gibt es denn keine Möglichkeit, die neueste Datei eines Verzeichnisses zu bestimmen und diese zu verwenden?


Gesendet von iPhone mit Tapatalk Pro
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Tueftler1983 am 13 April 2017, 20:47:36
I'm Prinzip ist es ja so wie du es definiert hast die neueste datei. Aber fhem führt den sende Befehl schneller aus als das neue Bild gespeichert ist. Das Problem hatte ich auch und habe deshalb ein wait 2 vor dem senden gesetzt damit ist die Datei auf jeden Fall aktuell
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 14 April 2017, 09:12:31
Kann ich bestätigen. Es dauert einfach, bis das Bild gespeichert wurde.

Du könntest das Versenden durch ein separates Notify machen, das auf die Aktualisierung des Readings last in Deinem IPCam-Modul triggert.
Dann hast Du die Gewissheit, erst zu Versenden, wenn ein neues Bild aufgenommen wurde.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: wolfram am 17 April 2017, 18:38:17
frohe Ostern zusammen,
das mit dem notify auf "last" probiere ich mal. vielen Dank für den Tip

wolf
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: andies am 30 April 2017, 12:48:19
Ich versuche hier nochmal eine Lösung für das Problem "Wrong or not supported image format: unknown" zusammen zu fassen und hoffe, dass es Verzweifelten hilft  :)

Danke, mir hat es geholfen. Ich habe festgestellt, dass bei der Angabe der URL nicht http:// davor stehen darf und der Pfad nicht mit einem Slash beginnen kann (bei mir stand dann im Aufruf http://http://url//snapshot.cgi). Vielleicht könnte man den Entwickler bitten, bei der Fehlermeldung gleich die URL aufzuzeigen, dann sieht man den Fehler sofort? Oder in der commandref...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Franz Tenbrock am 28 Juni 2017, 19:08:13
so langsam wird es was..
leider kann meine Foscam C1 kein MJPG stream, ganze Netz rauf und runter

Ich hab die cam so definiert:
Internals:
   AUTHORITY  192.168.10.32:88
   CHANGED
   DEF        192.168.10.32:88
   NAME       CAM
   NR         32
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
   Readings:
     2017-06-28 17:32:48   snapshots       0
Attributes:
   delay      10
   icon       it_camera
   path       cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=pi&pwd=passwort
   room       CAM
   snapshots  2
   storage    /opt/fhem/www/snapshots/cam
   verbose    5

wenn ich nun ein get image mache kommt kurz später das im Log:

IPCAM CAM Can't write /opt/fhem/www/snapshots/cam/CAM_snapshot.jpg: Keine Berechtigung

mit diesem hier bekomme ich ein aktuelles Bild im fhem Fenster 8)

define GartenCam weblink htmlCode <img src="http://192.168.10.32:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=pi&pwd=passwort">
attr GartenCam room Garten

den Ordner /snapshots/cam habe ich als user pi mittels
mkdir snapshots
mkdir cam
und dann Rechtevergabe
sudo chmod 755 snapshots
sudo chmod 755 cam

pi ist sowohl der user von camera als auch vom pi

wenn ich beide Ordner nun auf
777 setze kann ich ein Bild speichern, aber ob das sinnvoll ist ??

wie kann man dann die Bilder anzeigen, bei doorpi reicht ein einfacher Klick auf den Link
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 28 Juni 2017, 19:40:46
den Ordner /snapshots/cam habe ich als user pi mittels
mkdir snapshots
mkdir cam
und dann Rechtevergabe
sudo chmod 755 snapshots
sudo chmod 755 cam

pi ist sowohl der user von camera als auch vom pi
FHEM und damit auch das Modul IPCAM wird üblicherweise vom Benutzer fhem ausgeführt. Der sollte also Besitzer dieser Ordner sein.
Das kannnst Du mit chown nachträglich ändern. Die Zugriffsrechte sollten wie bei den übergeordneten sein (etwa /opt/fhem/www/), denn die gehören auch fhem.
Damit sollte sich das Berechtigungsproblem lösen lassen.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Franz Tenbrock am 28 Juni 2017, 20:07:30
so nun hab ich also schon wieder 30 Minuten versucht mit google rauszufinden wie man nun dem Ordner die passenden Rechte gibt.
Ich bin normalerweise als pi am raspi angemeldet, wenn ich nun mit Winscp oder putty die Rechte vergebe ist der Besitzer p und nicht fhem
bei Windows wäre das für mich ein Klacks
Sorry

im Einsteiger Pdf und in der commandref bisher nichts gefunden
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: franky08 am 28 Juni 2017, 20:13:38
Such mal nach Linux chown  ;)
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Franz Tenbrock am 28 Juni 2017, 20:26:15
also
chown -R fhem:fhem  /snapshots/cam
?!

die Syntax wieder nicht verstanden..
oder sonst was
mit Winscp als root eingewählt dann ging es, einfahc nachgesheen wie die übergeordneten Ordner eingestellt waren ....
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Skenik am 25 August 2017, 13:11:44
Hallo
Ich hoffe mir kan hier jemand helfen.
Ich habe meine D-imk dcs933l ins FHEM integriert:

define CAM1 weblink iframe http://xxx:XXX@192.168.0.120/video/mjpg
attr CAM1 htmlattr width="180" height="180"
attr CAM1 room Camera

(xxx=benutzername; XXX=passwort)

Kriege aber kein bild angezeigt

das habe ich von der Home seite von Dlink:

Um ein LiveBild oder einen LiveStream von einer Kamera zu erhalten kann man folgende URLs verwenden:
JPEG:
http(s)://benutzername:passwort@ip_der_kamera/image/jpeg.cgi
MJPEG:
http(s)://benutzername:passwort@ip_der_kamera/video/mjpg.cgi
Anmerkung: Ein direkter Aufruf der URL im Browser funktioniert nur unter Firefox und Chrome.

in jeder Browster kriege ich das video angezeigt

was mache ich falsch?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: qlaus am 25 August 2017, 14:18:14
Hallo Skenik,

vielleicht fehlt ja auch nur das ".cgi" am Schluss des Links. Manchmal funktioniert das Bild auch nicht im Frame.

Gruß
qlaus
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Skenik am 25 August 2017, 15:34:44
"cgi" steht am Ende
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Skenik am 25 August 2017, 15:36:52
Gibt es andere Möglichkeiten die Camera ins fhem einzubinden süßer "weblink"?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: franky08 am 10 September 2017, 18:51:28
Hallo, mich beschäftigt iMo die Frage wie ich mehr als nur einen snapshot abholen kann. Die Kamera macht z.B. 5 snapshots, mittels weblink kann ich mir nun ein Foto zur Anzeige abholen. Mir fehlt ein Lösungsansatz um alle 5 snapshots zu holen und als Mosaik darzustellen.

Hat jemand einen Tipp?

VG
Frank
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: MiMoAC am 11 September 2017, 11:34:53
Hallo Zusammen.

Ich habe mir eine IP-Kamera von CTronics gekauft.

http://www.ctronicssecuritycameras.com/shop/wifi-720p-ip-camera/150-wide-viewip-cameractronics-wifi-wireless-security-camera-surveillance-dome-camera-vandalproofaudiohd-720pnight-visionmotion-detectemail-alertpcphonetabletcms-remote16g-sd-includ/ 

(Bei Amazon für 80€ https://www.amazon.de/gp/product/B0744JNLLX/ref=oh_aui_detailpage_o04_s00?ie=UTF8&psc=1)

Bisher funktioniert alles ganz gut mit der App des Herstellers und mit iSpy.

Ich würde gerne die IP-Kamera in FHEM einbinden, sodass ich wie bei euch ein Bild zugeschickt bekomme.

Das Kamerabild in iSpy erhalte ich über folgenden Link:

IPKamera mit Wizard

Ich habe festgestellt, dass ich ein Bild bekomme, wenn ich statt Ctronics -- HiSilicon RTSP(TCP) DVR als Hersteller auswähle.

rtsp://admin.admin@192.168.xxx.xxx:554/11   (Dieser Link funktioniert auch im VLC-Player)

(Zur Sicherheit verwende ich HIER die Default Passwörter und die gekürzte IP.)

Kann mir jemand weiterhelfen?

Meine Config sieht derzeit so aus:

define IPKAMERA IPCAM 192.168.xxx.xxx:554/11
attr IPKAMERA delay 0
attr IPKAMERA group Kamera
attr IPKAMERA icon it_camera
attr IPKAMERA path rtsp://username:passwort@192.168.xxx.xxx:554/11
attr IPKAMERA room IP Kamera
attr IPKAMERA snapshots 1
attr IPKAMERA storage /opt/fhem/www/snapshots/cam1
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 12 September 2017, 08:15:08
rtsp://admin.admin@192.168.xxx.xxx:554/11   (Dieser Link funktioniert auch im VLC-Player)
RTSP ist ein Streaming-Protokoll. Darüber überträgt die Kamera Video und Audio.
Für IPCAM benötigst Du aber Snapshots, also Einzelbildaufnahmen.

Du musst als einen Link finden, unter dem Du jeweils ein Einzelbild abrufen kannst.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dk3572 am 19 November 2017, 12:56:57
Hallo,

ich versuche über das Modul ipcam meine Instar 5907HD zu steuern. Leider ohne Erfolg.
Ich habe diesen und viele weitere Beiträge bereits mehrfach gelesen. Auch diese Seite
https://www.fischer-net.de/hausautomation/fhem/62-fhem-modul-ipcam-ueberarbeitet.html
mehrfach gelesen. Mir erschließt sich nicht wie ich diese Befehle https://wiki.instar.de/1080p_Series_CGI_List/
in das Modul eintagen muss.

Vielleicht kann mir bitte jemand behilflich sein oder seine Einstellungen zeigen?

defmod ipcam_Hof IPCAM 192.xxx.xxx.xxx:xxxx
attr ipcam_Hof basicauth {USERNAME}:{PASSWORD}
attr ipcam_Hof cmd01 param.cgi?cmd=setinfrared&-infraredstat=auto
attr ipcam_Hof credentials /opt/fhem/ipcam.conf
attr ipcam_Hof path snapshot.cgi?user={USERNAME}&pwd={PASSWORD}
attr ipcam_Hof pathCmd param.cgi?cmd=getinfrared
attr ipcam_Hof room Alarme
attr ipcam_Hof snapshots 1
attr ipcam_Hof storage /opt/fhem/ipcam

Vielen Dank im Voraus.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Schlimbo am 19 November 2017, 19:35:49
Hallo dk3572,

Ich habe eine INSTAR 8015 Full HD, hier meine Einstellungen:
defmod Cam1 IPCAM 192.xxx.xxx.xxx:80
attr Cam1 basicauth {USERNAME}:{PASSWORD}
attr Cam1 cmd01 cmd=setinfrared&-infraredstat=auto
attr Cam1 cmd03 cmd=setinfrared&-infraredstat=close
attr Cam1 cmd04 cmd=setioattr&-io_enable=1&-io_flag=1
attr Cam1 cmd05 cmd=setioattr&-io_enable=0&-io_flag=0
attr Cam1 cmd06 cmd=setmdalarm&-aname=type&-switch=on
attr Cam1 cmd07 cmd=setmdalarm&-aname=type&-switch=off
attr Cam1 cmd08 cmd=setmdattr&-name=1&-enable=1
attr Cam1 cmd09 cmd=setmdattr&-name=1&-enable=0
attr Cam1 cmdPanLeft -act=left
attr Cam1 cmdPos01 -act=goto&-number=0
attr Cam1 cmdPos02 -act=goto&-number=1
attr Cam1 cmdPos03 -act=goto&-number=2
attr Cam1 cmdPos04 -act=goto&-number=3
attr Cam1 cmdPos05 -act=goto&-number=4
attr Cam1 credentials /opt/fhem/IPcam_credentials.cfg
attr Cam1 delay 2
attr Cam1 path /tmpfs/snap.jpg
attr Cam1 pathCmd param.cgi
attr Cam1 pathPanTilt param.cgi?cmd=preset
attr Cam1 storage ./www/snapshots

Da deine Cam eine 720p Kamera ist solltest du diese Befehle verwenden:
https://wiki.instar.de/720p_Series_CGI_List/ (https://wiki.instar.de/720p_Series_CGI_List/)

Leider ist das mit dem Modul etwas undurchsichtig, wie sich die Befehle aus den Attributen pathPanTilt/pathCmd und path zusammensetzen.
Erst einen Blick in den Sourcecode brachte etwas Licht ins dunkle.

"cmd"-Befehle werden Intern so zusammengefügt:
<pathCmd>?<cmd>schaut man sich jetzt den INSTART Befehl für die Infrarot LEDs an:
param.cgi?cmd=setinfrared&-infraredstat=autosieht man , wie die Attribute gesetzt werden müssen.
Da <pathCmd> und <cmdXX> im Modul mit einen "?"-Zeichen verbunden werden, sehen die Attribute wie folgt aus:
attr <name> pathCmd param.cgi
attr <name> cmd01 cmd=setinfrared&-infraredstat=auto
Die Befehle "set <name> pos" werten Intern so verschaltet:
<pathPanTilt>&<cmdPosXX> Der INSTAR Befehl um einen Position anzufahren lautet:
param.cgi?cmd=preset&-act=goto&-number=0 Da <pathPanTilt> und <cmdPosXX> im Modul mit einen "&"-Zeichen verbunden werden, müssen die Attribute so gesetzt werden:
attr <name> pathPanTilt param.cgi?cmd=preset
attr <name> cmdPos01 -act=goto&-number=0
Der INSTAR Befehl um nach rechts zu schwenken lautet:
ptzctrl.cgi?-step=&-act=lefthier müssten dann die Attribute wie folgt gesetzt werden:
attr <name> pathPanTilt ptzctrl.cgi?-step=
attr <name> cmdPanLeft -act=left
Da für die "pan","tilt" und "pos" immer der Pfad "pathPanTilt" verwendet wird, muss man sich also entscheiden auf welchen Wert man "pathPanTilt" setzt.
Schön wäre hier ein extra Attribut "pathPos".

Ich steuere meine INSTAR ausschließlich über den raw Befehl, denn dann können die Befehle einfach so benutzt werden, wie sie auf der INSTAR-WIKI Seite stehen und man muss sich keine Gedanken über die Zusammensetzung der Attribute machen.
z.B
set <name> raw param.cgi?cmd=setinfrared&-infraredstat=auto
Hoffe das hilft dir etwas.
Gruß Schlimbo
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dk3572 am 19 November 2017, 20:18:56
Hallo Schlimbo,

vielen Dank für die ausführliche Hilfe!
Das mit den 720p ist mir auch bereits aufgefallen.
Habe alles wie von dir beschrieben umgesetzt, funktioniert aber immer noch nicht.
Bekomme diese Warnung:
Zitat
PERL WARNING: Possible unintended interpolation of @IS in string at (eval 151402) line 5

Habe es gelöst. Lag an dem "@" in meinem Passwort. Passwort geändert, funzt!

Vielen Dank noch mal für deine sehr detaillierte Hilfe!

Gruß Dieter
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: berrnd am 03 Januar 2018, 18:19:49
Hallo zusammen,

ich wollte heute eine DCS-5000L von D-Link einbinden, klappt auch alles mit dem Modul, bis auf dass die Nachtsicht-Infrarot-LEDs leider nur per POST und nicht per GET Request gesteuert werden können.

Ich habe dazu die Attribute cmdPostXX, analog cmdXX, und den Set-Befehl cmdPost eingebaut.
Heißt ein set cmdPost 1 führt dann entsprechend das Gleiche als POST-Request aus, wie set cmd 1, nur dass der Pfad aus dem Attribut pathCmdPost kommt und die Werte im Attribute cmdPost01 stehen.

Außerdem war nötig, dass die POST-Requests einen Referer-Header haben, dazu habe ich dann noch das Attribut cmdPostReferer hinzugefügt.

Falls das jemand was nützt, hier sind die Änderungen: https://github.com/berrnd/fhem-mirror/compare/master...berrnd:feature-IPCAM-postrequests (https://github.com/berrnd/fhem-mirror/compare/master...berrnd:feature-IPCAM-postrequests)
(Ich bin in Perl leider immer noch absolut nicht Zuhause, also seid dahingehend gerne nachsichtig...  :D)

Die Definition meiner Kamera sieht dann aktuell so aus
defmod Flur.Kamera IPCAM camera-flur
attr Flur.Kamera userattr streamurl
attr Flur.Kamera basicauth xx:xx
attr Flur.Kamera cmdPanLeft PanSingleMoveDegree=15&TiltSingleMoveDegree=15&PanTiltSingleMove=3
attr Flur.Kamera cmdPanRight PanSingleMoveDegree=15&TiltSingleMoveDegree=15&PanTiltSingleMove=5
attr Flur.Kamera cmdPos01 PanTiltPresetPositionMove=1
attr Flur.Kamera cmdPos02 PanTiltPresetPositionMove=2
attr Flur.Kamera cmdPos03 PanTiltPresetPositionMove=3
attr Flur.Kamera cmdPos04 PanTiltPresetPositionMove=4
attr Flur.Kamera cmdPos05 PanTiltPresetPositionMove=5
attr Flur.Kamera cmdPos06 PanTiltPresetPositionMove=6
attr Flur.Kamera cmdPos07 PanTiltPresetPositionMove=7
attr Flur.Kamera cmdPosHome PanTiltPresetPositionMove=7
attr Flur.Kamera cmdPost01 IRLed=0
attr Flur.Kamera cmdPost02 IRLed=1
attr Flur.Kamera cmdPostReferer http://camera-flur
attr Flur.Kamera cmdTiltDown PanSingleMoveDegree=15&TiltSingleMoveDegree=15&PanTiltSingleMove=7
attr Flur.Kamera cmdTiltUp PanSingleMoveDegree=15&TiltSingleMoveDegree=15&PanTiltSingleMove=1
attr Flur.Kamera group Kameras
attr Flur.Kamera path image/jpeg.cgi
attr Flur.Kamera pathCmdPost setControlDayNight
attr Flur.Kamera pathPanTilt pantiltcontrol.cgi?
attr Flur.Kamera room Flur
attr Flur.Kamera storage ./www/snapshots
attr Flur.Kamera streamurl http://xx:xx@camera-flur/video.cgi

Was ich auch noch ganz nützlich fände, wären Aliasnamen für die gespeicherten Positionen, evtl. bekomme ich das bei Gelegenheit ja auch noch hin...

Grüße,
Bernd
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: msfox am 04 Januar 2018, 15:11:55
Der INSTAR Befehl um nach rechts zu schwenken lautet:
ptzctrl.cgi?-step=&-act=left
Dann darf ich aber cmdStep nicht setzen oder?
Wenn ich das aber nicht setze, kann ich set cam1 pan left 1 nicht absetzen. Hier kommt der Fehler, dass cmdStep nicht gesetzt ist.


Ich habe eine IN-6014HD.
Die Befehle von der Seite https://www.instar.de/faq_cgi_hd klappen auch.

http://192.168.2.9/cgi-bin/hi3510/ptzctrl.cgi?-step=1&-act=left
definiert ist das Device wie folgt:
defmod cam1 IPCAM 192.168.2.9
attr cam1 alias Kamera 1
attr cam1 basicauth admin:qwertz
attr cam1 cmd01 cmd=setimageattr&-flip=on
attr cam1 cmd02 cmd=setimageattr&-flip=off
attr cam1 cmd03 cmd=setinfrared&-infraredstat=open
attr cam1 cmdPanLeft -act=left
attr cam1 cmdPanRight right
attr cam1 cmdStep -step
attr cam1 cmdTiltDown down
attr cam1 cmdTiltUp up
attr cam1 loglevel 6
attr cam1 path snap.jpg
attr cam1 pathCmd param.cgi?
attr cam1 pathPanTilt cgi-bin/hi3510/ptzctrl.cgi?
attr cam1 room Kameras
attr cam1 storage ./www/snapshots
attr cam1 webCmd pan left:pan right
Wenn ich den Befehl "set cam1 pan left" absetze passiert nix.
passiert nix:

Wenn ich attr cam1 pathPanTilt cgi-bin/hi3510/ptzctrl.cgi?-step=
passiert auch nix.

Wie wäre denn ein Beispiel, damit die Befehl https://www.instar.de/faq_cgi_hd richtig als URL in IPCAM umgesetzt werden.

Mit einem LOG kann ich leider nicht dienen. Trotz loglevel im IPCAM-Modul = 6 und in global = 4 ist das einzige was geloggt wird:

Was geht
GET cam1 image
und
set cam1 cmd01

D.h. irgendwie wird die URL für Pan und Til nicht sauber zusammengebaut.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: msfox am 04 Januar 2018, 17:51:13
So folgendes klappt jetzt:
defmod cam1 IPCAM 192.168.2.9
attr cam1 alias Kamera 1
attr cam1 basicauth admin:qwertz
attr cam1 cmd01 cmd=setimageattr&-flip=on
attr cam1 cmd02 cmd=setimageattr&-flip=off
attr cam1 cmd03 cmd=setinfrared&-infraredstat=open
attr cam1 cmdPanLeft -act=left
attr cam1 cmdPanRight -act=right
attr cam1 cmdTiltDown -act=down
attr cam1 cmdTiltUp -act=up
attr cam1 delay 2
attr cam1 loglevel 6
attr cam1 path snap.jpg
attr cam1 pathCmd param.cgi?
attr cam1 pathPanTilt ptzctrl.cgi?-step=0
attr cam1 room Kameras
attr cam1 storage ./www/snapshots
attr cam1 webCmd pan left:pan right:tilt up:tilt down:raw ptzctrl.cgi%3F-step%3D0%26-act%3Dstop
Schöne wäre, wenn man den webCmd für STOP noch sinnvoller definieren könnte. Leider geht das nur via RAW, da ich für cmd-Befehle schon param.cgi verwende.
Auch klappt es nicht via cmdIcon hier Icons zuzuweisen.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: berrnd am 04 Januar 2018, 20:28:52
Was ich auch noch ganz nützlich fände, wären Aliasnamen für die gespeicherten Positionen, evtl. bekomme ich das bei Gelegenheit ja auch noch hin...

Das habe ich nun gebastelt - falls es wer nützlich findet: https://github.com/berrnd/fhem-mirror/compare/master...berrnd:feature-IPCAM-posaliases (https://github.com/berrnd/fhem-mirror/compare/master...berrnd:feature-IPCAM-posaliases)
(Die Anpassungen erfolgten unabhängig voneinander, als Basis hier habe ich wieder das aktuelle IPCAM Modul genommen.)

Man kann damit nun z. B. einen Alias für Position 1 definieren
attr Flur.Kamera cmdPos01Alias garderobeund die dann einfach ansteuern
set Flur.Kamera pos garderobewobei ganz normal das Kommando aus cmdPos01 verwendet wird.

Der Vollständigkeit halber habe ich das auch für cmdXX ergänzt.

Grüße,
Bernd
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: blueberry63 am 08 Januar 2018, 13:17:45
Hallo,

ich sehe immer mal wieder folgenden Eintrag im LOG:

PERL WARNING: Use of uninitialized value $camret in concatenation (.) or string at ./FHEM/49_IPCAM.pm line 234

Hat jemand eine Idee, wo das herkommen könnte?

Gruß
Blueberry63
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Patrik.S am 08 Januar 2018, 21:20:22
Von deiner IP Kamera konnte kein Bild geholt werden.
Die Ausgabe
Zitat
Use of uninitialized value $camret
kommt aus der IPCAM_Set()

Ich habe mir das Modul an den beiden Stellen erweitert, das es überprüft ob das Bild holen auch erfolgreich war.
Wenn die jeweilige Variable durch das jeweilige GetFileFromURLQuiet() Leer geblieben ist, dann gibt's eine etwas besser lesbare Warnung

     my $camret = GetFileFromURLQuiet($camURI, 10, "", 1, 5);
     $camret = "" unless defined $camret;
     if($camret eq '') {
       Log 1, "IPCAM $name IPCAM_Set() got not image in time!";
       ##Log 5, "IPCAM $name camURI was: $camURI"; # ACHTUNG! Diese Zeile nur im Notfall oder wenn neue IPcam in Betrieb genommen wird. URL enthält sensible Daten, wie z.B. auch User & Passwort !!!!
       return "Error IPCAM $name got not image in time!";
     }
     Log 5, "ipcam return:$camret";

   }
   return undef;

   $snapshot = GetFileFromURLQuiet($camURI, 10, "", 1, 5);
   $snapshot = "" unless defined $snapshot;
   if($snapshot eq '') {
     Log 1, "IPCAM $name IPCAM_getSnapshot() got not image in time!";
     ##Log 5, "IPCAM $name camURI was: $camURI"; # ACHTUNG! Diese Zeile nur im Notfall oder wenn neue IPcam in Betrieb genommen wird. URL enthält sensible Daten, wie z.B. auch User & Passwort !!!!
     return "Error IPCAM $name got not image in time!";
   }

   $imageFormat = IPCAM_guessFileFormat(\$snapshot);
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: RpiEinOzean am 04 Februar 2018, 16:37:45
Hallo zusammen,
sitze hier gerade auch an den ersten Versuchen mit meiner HooToo.
@ Patrik.S.
Mir scheint wohl nur der richtige Pfad zu fehlen.
Kannst Du mir den, besser alles dazu, mitteilen?

Gruß an alle
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: inesa394 am 11 Februar 2018, 13:20:07
Hallo

Das Modul abändern wie folgt
In IPCAM Zeile 380 unter
$timestamp =~ s/(:|-)//g;
$snapshot = GetFileFromURLQuiet($camURI);
dies zusätzlich einfügen
$snapshot="http://$camAuth/".substr($snapshot,12,74);
Log 1, "IPCAM $name SnapshotNeu: $snapshot";
$snapshot = GetFileFromURLQuiet($snapshot);

Definiert ist das Modul so
define hootoocam IPCAM 192.168.178.49:1024
attr hootoocam path cgi-bin/hi3510/param.cgi?cmd=snap&
attr hootoocam room Status
attr hootoocam storage ./www/snapshots
attr hootoocam icon it_camera
attr hootoocam event-on-change-reading snapshots
bei mir
Titel: Antw:Edimax IC-3115W
Beitrag von: holzwurm83 am 05 April 2018, 10:17:03
Hallo zusammen,

bie mir läuft die Edimax IC-3115W mit dem Modul.

define IC3115W IPCAM 192.x.x.x
attr IC3115W basicauth user:geheim
attr IC3115W path snapshot.jpg


Wer eine andere Edimax-Cam hat, kann sich den paramter für path hier raussuchen: https://www.ispyconnect.com/man.aspx?n=Edimax (https://www.ispyconnect.com/man.aspx?n=Edimax) raussuchen.

Ich hätte auch noch einen Wunsch für das Modul. Könnte man als Kommando auch das Bild (get IC3115W image) machen lassen, zB.:
attr IC3115W webCmd image
So könnte man im Frontend das speichern eines Bildes antriggern durch klick auf das webCmd.

greets,
coh3r3nt

Hallo zusammen,

ich versuche gerade wie oben beschrieben meine Edimax IC-9110w zu implementieren. Allerdings schmiert mir dann immer mein Fhem ab und im Log steht die folgende Meldung.

IPCAM cam_garten Wrong or not supported image format: error while reading source image:
Ich habe aus dem Link oben beide Path Einstellungen probiert. Immer mit dem gleichen Problem.
attr path mjpg/video.mjpgattr path mjpg/1/video.mjpg
Habe das auch schon so versucht zu definieren:

define CamGarten IPCAM user:passwort@192.x.x.x

Könnt ihr mir hierbei weiter helfen?
Titel: Antw:Edimax IC-3115W
Beitrag von: Brockmann am 06 April 2018, 07:55:06
Könnt ihr mir hierbei weiter helfen?
Für IPCAM benötigst Du Snapshots, also Einzelbildaufnahmen (PEG, PNG, GIF, TIFF, BMP, ICO, PPM, XPM, XBM oder SVG).
MJPG ist ein Videoformat, damit kann IPCAM nichts anfangen.

Du müsstest einen Link finden, unter dem Du jeweils ein Einzelbild Deiner Kamera abrufen kannst.
Titel: Antw:Edimax IC-3115W
Beitrag von: holzwurm83 am 06 April 2018, 09:47:20
Du müsstest einen Link finden, unter dem Du jeweils ein Einzelbild Deiner Kamera abrufen kannst.

OK, danke dir schon mal! Wenn ich manuell ein Einzelbild auf der Kamera erstelle finde ich es unter diesem Link.

http://192.168.***.***/storage/IPCamera_Manual/2018_04_06/snapshot-001/2018-04-06-09-28-16-Snapshot.jpg
Allerdings ist mir nicht ganz klar wie, oder was ich davon einfügen soll, da die Bilder auch immer in einem Ordner mit dem jeweiligen Datum des Tages abgelegt werden.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: misux am 09 April 2018, 13:03:36
HI!

Ich habe meine DAHUA IPC-HDW4431C-A erfolgreich eingebunden. Leider bekomme ich hin und wieder keine Bilder zugesendet bzw es werde keine gemacht. Aber nicht immer! Dann bekomme ich im Log einen Error:

2018.04.09 12:33:31.161 1: IPCAM CAMHof Wrong or not supported image format: error while reading source image:

aber wie gesagt nicht immer... Hat jeman dine Idee woran es liegen könnte?

HIer ein List der Cam:

Internals:
   AUTHORITY  192.168.xxx.xxx
   DEF        192.168.xxx.xxx
   NAME       CAMHof
   NR         134
   SEQ        0
   STATE      last: 2018-04-05 22:23:52
   TYPE       IPCAM
   READINGS:
     2018-04-05 22:23:52   last            CAMHof_snapshot.jpg
     2018-04-05 22:23:52   snapshot1       CAMHof_snapshot_1.jpg
     2018-04-05 22:23:52   snapshots       1
Attributes:
   basicauth  xxxxxxx:xxxxxxx
   delay      0
   path       cgi-bin/snapshot.cgi?chn=[0]
   room       CAMS
   snapshots  1
   storage    ./www/snapshots
   verbose    3

und hier ein Auszug vom Log:

[code]2018.04.09 07:07:47.059 3: CULHat2 IT: EingangsTuer closed->off
2018.04.09 07:07:47.099 3: CULHat2 IT: EingangsTuer closed->off
2018.04.09 07:07:47.139 3: CULHat2 IT: EingangsTuer closed->off
2018.04.09 09:31:52.146 1: RMDIR: ./restoreDir/save/2018-04-06
2018.04.09 09:51:29.794 2: CULHat2: CUL_TCM97001 Unknown device CUL_TCM97001_0, please define it
2018.04.09 12:32:05.394 1: IPCAM CAMHof Wrong or not supported image format: error while reading source image:
2018.04.09 12:33:08.596 3: CULHat2 IT: EingangsTuer closed->on
2018.04.09 12:33:08.637 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:08.733 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:08.739 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:08.753 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:08.794 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:08.834 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:09.196 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:09.276 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:09.600 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:09.641 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:09.680 3: CULHat2 IT: EingangsTuer open->on
2018.04.09 12:33:26.008 2: DOIFKlingel: off eq "on" and absent eq "absent": Unknown command off, try help.
2018.04.09 12:33:31.161 1: IPCAM CAMHof Wrong or not supported image format: error while reading source image:
2018.04.09 12:33:31.170 3: CULHat2 IT: EingangsTuer open->off
2018.04.09 12:33:31.195 3: CULHat2 IT: EingangsTuer closed->off
2018.04.09 12:33:31.208 3: CULHat2 IT: EingangsTuer closed->off
2018.04.09 12:33:31.220 3: CULHat2 IT: EingangsTuer closed->off
2018.04.09 12:33:35.692 3: CULHat2 IT: EingangsTuer closed->on
2018.04.09 12:33:38.498 3: CULHat2 IT: EingangsTuer open->off
[/code]
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: misux am 10 April 2018, 18:18:30
Was noch sehr komisch ist, das das Modul immer 2 Bilder macht! egal ob ich attr snapshots 1 mache oder nicht eingebe... der Name lautet dann genauso wie das eine Bild nur mit _1.jpg

Kann man das irgendwie abstellen? Er soll nur ien Bild machen...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 11 April 2018, 08:14:48
Was noch sehr komisch ist, das das Modul immer 2 Bilder macht! egal ob ich attr snapshots 1 mache oder nicht eingebe... der Name lautet dann genauso wie das eine Bild nur mit _1.jpg
Kann man das irgendwie abstellen? Er soll nur ien Bild machen...
Das letzte Bild wird immer nochmal zusätzlich ohne Nummer gespeichert, damit man immer einen festen Pfad zur letzten Aufnahme hat. Das macht es einfacher, wenn man beispielsweise ein Bild per Messenger oder E-Mail verschicken möchte. Abschalten kann man das m.W.n. nicht, aber es stört doch auch nicht wirklich, oder?

Du könntest auf Timestamp statt Index in den Dateinamen umstellen, dann wird das nicht mehr gemacht. Allerdings werden alte Aufnahmen dann nicht überschrieben und Du musst Dich selbst darum kümmern, dass die ganzen Aufnahmen regelmäßig gelöscht werden.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: misux am 11 April 2018, 12:15:24
Hmm... Meine Vermutung ist das WENN Fhem das Bild Senden möchte ABER es noch nicht komplett gespeichert wurde WEIL er ja unbedingt 2 davon machen muss und jedes ca 300 bis 500KB hat,  er diesen Error macht weil es nunmal noch nicht komplett gespriechert ist.

Könnte man das erstellen den zweiten Bilden unterdrücken würde es vielleicht weniger bis gar nicht pasieren...

Könnte ich da richtig liegen oder eher nicht?

Das mit dem Timestamp ist eine Gute Idee... Man kann doch FHEM irgendwie beibringen das er bitte jeden Tag den Ordner (snapshots) checken soll und Dateien die älter sind als 1 Tag löschen soll... wäre sowas machbar?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 12 April 2018, 08:28:13
Das mit dem Timestamp ist eine Gute Idee... Man kann doch FHEM irgendwie beibringen das er bitte jeden Tag den Ordner (snapshots) checken soll und Dateien die älter sind als 1 Tag löschen soll... wäre sowas machbar?
Ich habe dafür eine Funktion in 99_myUtils.pm, die täglich einmal ausgeführt wird. Müsstest Du Dir anpassen, insbesondere $purge_dir und das Reading am Schluss (oder weglassen).
### Löscht im angegebenen Ordner ($purge_dir) alle Dateien älter als übergebene Zahl Tage
### Aufruf: {purge_logpics 30}
### Schreibt die Anzahl der gelöschten Dateien in ein fest verdrahtetes Reading zurück

sub purge_logpics($) {
my $days = shift;
my $purge_dir = "/opt/fhem/log/pics";

# purge backups older than AGE in days
my @file_list;
my @find_dirs       = ($purge_dir);             # directories to search
my $now             = time();                   # get current time
my $seconds_per_day = 60*60*24;                 # seconds in a day
my $AGE             = $days*$seconds_per_day;   # age in seconds
my $filecnt = 0; # counter for deleted files
find ( sub {
  my $file = $File::Find::name;
  if ( -f $file ) {
    push (@file_list, $file);
  }
}, @find_dirs);

for my $file (@file_list) {
  my @stats = stat($file);
  if ($now-$stats[9] > $AGE) {
    unlink $file;
$filecnt = $filecnt +1;
  }
}
fhem("setreading DI_Systemwartung last_purge_logpics $filecnt");  # Anzahl der gelöschten Dateien in Reading schreiben
return 1;  # 1 als Returnwert, damit ein aufrufendes DOIF keinen "Fehler"" registriert
}

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: misux am 15 April 2018, 17:07:03
HI!

Cool! Habe es dann mal angepasst.... Ich muss doch nix anderes als den Ordner anpassen oder? Wo wird denn angegeben wie alt die Dateien max werden dürfen?

Und dieser Code muss nur in die 99_myutils.pm und neustart, sonst nix?

### Löscht im angegebenen Ordner ($purge_dir) alle Dateien älter als übergebene Zahl Tage
### Aufruf: {purge_logpics 30}
### Schreibt die Anzahl der gelöschten Dateien in ein fest verdrahtetes Reading zurück

sub purge_logpics($) {
my $days = shift;
my $purge_dir = "/opt/fhem/www/snapshots";

# purge backups older than AGE in days
my @file_list;
my @find_dirs       = ($purge_dir);             # directories to search
my $now             = time();                   # get current time
my $seconds_per_day = 60*60*24;                 # seconds in a day
my $AGE             = $days*$seconds_per_day;   # age in seconds
my $filecnt = 0; # counter for deleted files
find ( sub {
  my $file = $File::Find::name;
  if ( -f $file ) {
    push (@file_list, $file);
  }
}, @find_dirs);

for my $file (@file_list) {
  my @stats = stat($file);
  if ($now-$stats[9] > $AGE) {
    unlink $file;
$filecnt = $filecnt +1;
  }
}
fhem("setreading DI_Systemwartung last_purge_logpics $filecnt");  # Anzahl der gelöschten Dateien in Reading schreiben
return 1;  # 1 als Returnwert, damit ein aufrufendes DOIF keinen "Fehler"" registriert
}

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 16 April 2018, 08:43:56
Cool! Habe es dann mal angepasst.... Ich muss doch nix anderes als den Ordner anpassen oder? Wo wird denn angegeben wie alt die Dateien max werden dürfen?

Und dieser Code muss nur in die 99_myutils.pm und neustart, sonst nix?
Das ist eine Perl-Funktion. Aufrufen kannst Du Sie mit {purge_logpics 30}, wobei die Zahl angibt, wieviele Tage Dateien maximal alt sein dürfen, um NICHT gelöscht zu werden. Mit {purge_logpics 30} werden also alle Dateien gelöscht, die älter als 30 Tage sind.
Damit das ganze läuft, brauchst Du noch ein AT oder DOIF o. ä., das diese Funktion einmal täglich (oder wöchentlich usw.) aufruft.
Im einfachsten Fall also
define DI_Systemwartung DOIF ([00:01])({purge_logpics 7;; 0})
(Das mit dem ;;0 ist nur, damit das DOIF keine Fehlermeldung ins Log schreibt.)
Außerdem muss Du die vorletzte Zeile (fhem("setreading DI_Systemwartung ...) entweder anpassen oder löschen. Die schreibt bei mir die Anzahl der gelöschte Dateien als Reading in das aufrufende DOIF. Ist aber nur Statistik und kann weggelassen werden.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: ChrisW am 09 Mai 2018, 13:58:40
Gibt es auch die möglichkeit eine Video aufzeichnung zu starten ?
Ich möchte per Knopfdruck ( Dashbutton ) gerne PTZ drehen ( das geht ja einfach ) und eine Aufzeichnug starten. Das ganze beim 2. Klick wieder andere Position udn Aufzeichnung stoppen.
Ich denke Fotos sind möglich aber ein ganzes Video / Stream ?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: HansChris am 13 Mai 2018, 20:41:29
Hallo,
ich habe das Problem, dass die Snapshots meiner Instar 5905HD mit dem IPCAM Modul zwar problemlos erzeugt und abgelegt werden, aber die Bilder dann scheinbar defekt sind (s. Anhang).
Es gibt auch keinerlei Fehlermeldung seitens FHEM. Wenn ich den Snapshot Link im Browser öffne, erhalte ich das korrekte Bild der Kamera.
Hat jemand eine Ahnung woran das liegen könnte?
Beste Grüße
Hans

P.S. Auch wenn ich das Bild einer beliebigen öffentlichen Webcam über das Modul abrufe, zeigen sich die Bildfehler. Es scheint also kein Problem mit der Kamera, sondern mit dem Modul zu sein.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: howi42 am 04 August 2018, 09:28:03
Die Fehlermeldung :

2018.04.09 12:32:05.394 1: IPCAM CAMHof Wrong or not supported image format: error while reading source image:

kommt bei mir immer dann, wenn die Rechte fehlen.

Kamera : dahua hdbw4431r-zs

Das Snapshot-Kommando


http://10.0.0.30/cgi-bin/snapshot.cgi?chn=[0]

funktioniert, will aber immer user/pass

Das hier aendert daran nichts :

http://user:pass@10.0.0.30/cgi-bin/snapshot.cgi?chn=[0]


Mein Fehler :
Mam muss sich halt die Referenz richtig durchlesen und basic auth und credentials korrekt setzen.

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dbox2user am 02 September 2018, 21:15:36
Hallo!

Ich würde gerne meine IP-Kamera "SV3C PoE IP Kamera 1080P" über das IP-Cam Modul anbinden.
Leider passiert mit dem Befehl "get image" garnichts.
Bei "get snapshots" bekomme ich "Cam1 snapshots => 0" als Rückmeldung

Mein define schaut so aus:

define Cam1 IPCAM 192.168.178.200
attr Cam1 delay 5
attr Cam1 icon it_camera
attr Cam1 loglevel 6
attr Cam1 path web/cgi-bin/hi3510/param.cgi?cmd=snap&-getpic&-chn=2
attr Cam1 room Kamera
attr Cam1 snapshots 3
attr Cam1 storage ./www/snapshots
attr Cam1 timestamp 1

Gebe ich den Befehl http://192.168.178.200/web/cgi-bin/hi3510/param.cgi?cmd=snap&-getpic&-chn=2 direkt im Browser ein, bekomme ich problemlos ein Standbild angezeigt. Ganz ohne Benutzeranmelung oder neueFenster wo man etwas anklicken muss.
Das funktioniert im Browser am Notebook aber auch auf dem Browser des Raspberrys auf dem Fhem läuft.

Muss der Befehl evtl auf die Attribute "path" und "pathCmd" aufgeteilt werden?
Der hohe Log-Level bringt mir auch keine Hilfe.

Hat jemand eine Idee?  ::)

Danke schonmal!

Gruß, Christian

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: NewRasPi am 02 September 2018, 21:27:00
Hallo!

Ich würde gerne meine IP-Kamera "SV3C PoE IP Kamera 1080P" über das IP-Cam Modul anbinden.
Leider passiert mit dem Befehl "get image" garnichts.
Bei "get snapshots" bekomme ich "Cam1 snapshots => 0" als Rückmeldung

Mein define schaut so aus:

define Cam1 IPCAM 192.168.178.200
attr Cam1 delay 5
attr Cam1 icon it_camera
attr Cam1 loglevel 6
attr Cam1 path http://192.168.178.200/web/cgi-bin/hi3510/param.cgi?cmd=snap&-getpic&-chn=2
attr Cam1 room Kamera
attr Cam1 snapshots 3
attr Cam1 storage ./www/snapshots
attr Cam1 timestamp 1

Gebe ich den Befehl http://192.168.178.200/web/cgi-bin/hi3510/param.cgi?cmd=snap&-getpic&-chn=2 direkt im Browser ein, bekomme ich problemlos ein Standbild angezeigt. Ganz ohne Benutzeranmelung oder neueFenster wo man etwas anklicken muss.
Das funktioniert im Browser am Notebook aber auch auf dem Browser des Raspberrys auf dem Fhem läuft.

Muss der Befehl evtl auf die Attribute "path" und "pathCmd" aufgeteilt werden?
Der hohe Log-Level bringt mir auch keine Hilfe.

Hat jemand eine Idee?  ::)

Danke schonmal!

Gruß, Christian

Hallo dbox2user
ich würde bei path mal die IP Adresse und den Anfangs Slash weg lassen
also >> path web/cgi-bin/hi3510/param.cgi?cmd=snap&-getpic&-chn=2

dann sind die Chancen besser.
Schöne Grüße

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dbox2user am 02 September 2018, 21:34:42
Wow, das war ja eine Blitzantwort!  ;)

Sorry, das passiert beim vielen rumprobieren.
Genauso wie du es schreibst hatte ich es probiert und hab es jetzt natürlich wieder eingestellt.
Leider genau das gleiche Verhalten.

Meinem Post ändere ich gleich entsprechend.

Vielleicht noch eine andere Idee?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: NewRasPi am 02 September 2018, 23:44:41
Wow, das war ja eine Blitzantwort!  ;)

Sorry, das passiert beim vielen rumprobieren.
Genauso wie du es schreibst hatte ich es probiert und hab es jetzt natürlich wieder eingestellt.
Leider genau das gleiche Verhalten.

Meinem Post ändere ich gleich entsprechend.

Vielleicht noch eine andere Idee?

Hallo nochmal
und im Browser geht der Kamera Zugriff ohne Eingabe des Benutzer und Passwort???
(oder wurde das einmal eingegeben und steckt schon in einem cookie/ Zwischenspeicher)
Das Attribut basicauth [Benutzer]:[Password] könnte dann eine weitere mögliche Lösung sein.
Viel Glück
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dbox2user am 03 September 2018, 06:28:09
Guten Morgen!

Ja, der Link zum Snapshot und auch zu den Videostreams funktionieren ohne Anmeldedaten. (Ich weiß, das ist bei dieser Cam nicht so schön, da jeder im Netzwerk einfach zugreifen kann)
Die Anmeldedaten braucht man nur für die das Kamera-Web-Interface, um Einstellungen zu ändern.
AUf dem Fhem-Raspberry ging der Link zum Snapshot ohne Probleme im Browser. Auf diesem Raspberry hatte ich jedoch NIE das Web-Interface des Kamera geöffnet. Es funktioniert also definitiv ohne Benutzeranmeldung.

Versuchsweise habe ich jetzt doch mal das "basicauth" Attribut mit {USERNAME}:{PASSWORD} befüttert, aber auch hier leider keine Besserung.

Achja... im Logfile sehe ich nur diese eine Meldung ...auch ohne das "basicauth" Attribut.
2018.09.03 06:19:10 1: IPCAM Cam1 Wrong or not supported image format: unknown
Das Bild aus dem Browser ist definitv im jpg-Format. Das zeigt mir der Browser unter Medieninformation an.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 03 September 2018, 08:37:32
Achja... im Logfile sehe ich nur diese eine Meldung ...auch ohne das "basicauth" Attribut.
2018.09.03 06:19:10 1: IPCAM Cam1 Wrong or not supported image format: unknown
Hat der fhem Schreibrecht im angegebenen Pfad?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dbox2user am 03 September 2018, 08:56:30
Hi!

Nachdem der Pfad ./www/snapshots ein Unterordner vom Fhem ist, gehe ich eigentlich davon aus, dass der User Fhem Schreibrechte haben sollte, oder?
Wie lautet wieder der Befehl für die Kommandozeile um das entsprechend zu testen?

Davon abgesehen sollte doch ein " get image" nur ein Bild abrufen, aber noch nicht speichern, oder?

Gruß,
Christian
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 04 September 2018, 08:16:30
Nachdem der Pfad ./www/snapshots ein Unterordner vom Fhem ist, gehe ich eigentlich davon aus, dass der User Fhem Schreibrechte haben sollte, oder?
Wie lautet wieder der Befehl für die Kommandozeile um das entsprechend zu testen?
Der Ordner gehört erstmal dem Benutzer, der ihn erstellt hat. Wenn Du ihn mit root erstellt hast, gehört er root. Dann müsstest Du den Besitzer ändern bzw. die Schreibrechte anpassen.
ls -l <Ordnerpfad> verrät Dir alles, was Du über den Ordner wissen musst.

Zitat
Davon abgesehen sollte doch ein " get image" nur ein Bild abrufen, aber noch nicht speichern, oder?
Wo soll es das denn hin abrufen?
get image speichert ein oder mehrere Bilder gemäß den im Device definierten Vorgaben.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dbox2user am 04 September 2018, 12:39:45
Ich habe die Berechtigung mal nachgeschaut.  Der Besitzer ist 'Fhem" . Daran liegt es also leider auch nicht. ???

Ausser meinen eingestellten Attribute fehlen mir keine wichtigen Attribute, oder?

Gruss Christian
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 05 September 2018, 09:14:19
Ausser meinen eingestellten Attribute fehlen mir keine wichtigen Attribute, oder?
attr Cam1 storage ./www/snapshots
Ich bin mir nicht sicher, ob das so passt. Je nach Art der Installation hat der fhem-User kein Home-Verzeichnis bzw. es ist nicht da, wo Du es vermutest.
cat /etc/passwd | grep ^fhem: | awk -F: '{print $6}'verrät Dir das Home-Verzeichnis von fhem.

Oder im Zweifelsfall gibst Du bei storage eben den absoluten Pfad an, also abhängig von Deiner Installation beispielsweise
attr Cam1 storage /opt/fhem/www/snapshots
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dbox2user am 08 September 2018, 16:45:20
erstmal Danke an Brockmann für Deine Mühen!  :)

Leider gibts keine neuen / gute Nachrichten.  :(

Der Befehl cat /etc/passwd | grep ^fhem: | awk -F: '{print $6}'brachte mir als Antwort /opt/fhem
Trotzdem habe ich jetzt als  storage Verzeichnis direkt /opt/fhem/www/snapshots eingetragen, aber auch damit gibt es keine Änderung.

Mein einziges Reading ist immernoch 2018-09-02 20:32:01   snapshots       0

So langsam bin ich ratlos ... :o
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dbox2user am 19 September 2018, 21:13:13
Hi Leute!

Nachdem es nun funzt möchte ich das natürlich nicht für mich behalten und hoffe das es vielleicht mal einen anderen elfen kann!  ;D

Nun zur Lösung....
Ausschlaggebend zur Lösung war folgender Beitrag: https://forum.fhem.de/index.php?topic=47551.0 (https://forum.fhem.de/index.php?topic=47551.0)

Bei "Path" funktioniert es nun mit web/cgi-bin/hi3510/snap.cgi?&-getstream&-sn anstatt dem bisherigem web/cgi-bin/hi3510/param.cgi?cmd=snap&-getpic&-chn=2
Hier noch mein define falls es jemanden hilft:
define Cam2 IPCAM 192.168.178.220
attr Cam2 delay 5
attr Cam2 icon it_camera
attr Cam2 path web/cgi-bin/hi3510/snap.cgi?&-getstream&-sn
attr Cam2 room Kamera
attr Cam2 snapshots 3
attr Cam2 storage /opt/fhem/www/snapshots
attr Cam2 timestamp 1

Vielen Danke nochmal vorallem an Brockmann für seine Mühen!

Gruß Chrstian
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: laserrichi am 27 Oktober 2018, 12:42:48
Hi, ich habe das selbe Thema, habe eine SV3C  1080P POE  SV-B01POE-1080P-L und wenn ich das einzelbild abrufe mit cgi-bin/hi3510/snap.cgi?&-getstream&-sn  dann ist aber die Bildauflösung nur 640x360  also das Bild vom Substream.

Wie schafft man es da das Hauptbild zu bekommen mit 1920x1080 ?

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: rob am 29 Oktober 2018, 12:38:50
Hi, ich habe das selbe Thema, habe eine SV3C  1080P POE  SV-B01POE-1080P-L und wenn ich das einzelbild abrufe mit cgi-bin/hi3510/snap.cgi?&-getstream&-sn  dann ist aber die Bildauflösung nur 640x360  also das Bild vom Substream.

Wie schafft man es da das Hauptbild zu bekommen mit 1920x1080 ?

Hallo laserrichi.

Ich habe von SV3C die WLAN-Kamera (SV-B01W-960P-HX). Meine Snapshots greife ich so ab:
attr MyCam path web/cgi-bin/hi3510/snap.jpg
Damit bekomme ich die volle Auflösung (.jpg scheint auch ein Script zu sein, neuer Zugriff = neues Snap). Vielleicht klappt das bei Deinem Modell auch so. Immerhin sind die Dokus + URLs quasi gleich.

Viele Grüße
rob
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dbox2user am 30 Oktober 2018, 20:17:45
Hi, ich habe das selbe Thema, habe eine SV3C  1080P POE  SV-B01POE-1080P-L und wenn ich das einzelbild abrufe mit cgi-bin/hi3510/snap.cgi?&-getstream&-sn  dann ist aber die Bildauflösung nur 640x360  also das Bild vom Substream.

Wie schafft man es da das Hauptbild zu bekommen mit 1920x1080 ?

Hi!

Ich habe nochmal nachgeschaut, bei mir wird das Bild in 1920x1080 abgespeichert.
Bist Du sicher, dass dein Hauptstream in der Kamera auch wirklich auf 1920x1080 eingestellt ist?

Grüße,
Christian
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: laserrichi am 31 Oktober 2018, 08:28:04
Hi, 
ja bei der POE und nicht WLAN Kamera geht das leider so nicht. Da unterscheiden diese sich wohl in der Software.

Der Hauptstream ist auf 1920 eingestellt. Dieser läuft als Videostream auch in der richtigen Auflösung auch auf der VU Box.

Habe schon den Hersteller wegen der cgi doku angeschrieben, warte da noch auf Antwort.

Ansonsten wäre es cool wenn das IPCAM Modul aus dem HTML Code den Imagepfad extrahieren könnte ;-) dann könnte man das mit
http://IP-ADRESSE/web/cgi-bin/hi3510/snap.cgi?&-getpic  einfach nehmen
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: rob am 31 Oktober 2018, 17:18:06
Hi, 
ja bei der POE und nicht WLAN Kamera geht das leider so nicht. Da unterscheiden diese sich wohl in der Software.

Hi.

Schade eigentlich. Einen Versuch hätte ich noch, denn die SV3C haben anscheinend jede Menge undokumentierte URLs:
Haupt:
http://<ip>/web/cgi-bin/hi3510/snap.cgi?&-getstream-chn=1Sub
http://<ip>/web/cgi-bin/hi3510/snap.cgi?&-getstream-chn=2
Das klappt bei meiner ebenfalls und lt. Tante Google wohl öfter bei OMVIF-Cams zu finden. Ein letzter Strohhalm  :D

Viel Erfolg und beste Grüße
rob
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: laserrichi am 31 Oktober 2018, 19:13:01
Hallo rob, ja es gibt viele Varianten wie man da was bekommt. Deine Variante liefert auch nicht das Bild blank.
Gibt aber wirklich viel zu experimentieren, auch klappt nicht überall die Angabe -chn= was für Channel steht. Bei mir ist Channel 0 der Hauptstream, und 1-3 der sub, und 4 wieder der Hauptstream.

das hier:
http://<ip>/cgi-bin/hi3510/param.cgi?cmd=snap&-getpic&-chn=0liefert mir:
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</head>
<body>
<img src="../../../tmpfs/snap_tmpfs/20181031/IMG001/IMG_chn0_TIMER_MNG_20181031184044_027.jpg">


</body></html>

und http://<ip>/cgi-bin/hi3510/snap.cgi?&-getpic&-chn=0liefert
<body>
<img src="../../../tmpfs/snap_tmpfs/20181031/IMG001/IMG_chn0_TIMER_MNG_20181031184401_031.jpg">


</body>
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Paul am 31 Januar 2019, 18:22:15
Sn nachdem ich nach den Anleitungen alles einrichten konnte, nur eine kleine Frage. Ist das Modul noch blocking?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 01 Februar 2019, 12:45:37
Hallo, bin gerade auf der suche nach einer "ersten" Kamera. "Erste" bedeutet, hab noch nie eine Kamera in FHEM integriert. Meine Anforderungen habe ich im "Beginnerforum" formuliert. Von dort hat man mich hierher verwiessen. Zuerst war ich mit IPCAM SSCAM unterwegs. Ich scheue es aber, hierfür eine NAS zu kaufen.
Zuerst mal die Kamer: gerne hätte ich von euch eine Empfehlung für die Verwendung in IPCAM (kopiert aus meinem "Einsteiger-Block)

1. Aussen, wetterfest
2. Keine Kamera für eine Alarmanlage, Bewegungsmelder, möchte Livestreams und LiveBilder von Remote über FHEM auf Anforderungen anschauen.
3. Keine spezielle Nachtanforderungen
4. Netzwerk (LAN) und auch Strom (falls notwendig) ist da.
5. Schwenken und Zoomen ist sehr gern gesehen, aber nicht zwingend.
6. Sollte benutzerfreundlich in FHEM integrierbar sein, ich bin leider kein Programmierer.
7. Raspberry 3 Performance // angebunden an Fritzbox und guter Internetperformance

Ich bin nicht der Programmierer und suche deshalb die Kamera auch nach der Möglichkeit aus, dies einfach in FHEM/IPCAM zu integrieren.
Die Wiki habe ich schon gelesen. Die dort aufgeführten Kameras sind hauptsächlich Indoor und auch leider älter und nicht mehr verfügbar.

Danke, Danke, Danke

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: PSI69 am 01 Februar 2019, 13:58:58
gerne hätte ich von euch eine Empfehlung für die Verwendung in IPCAM (kopiert aus meinem "Einsteiger-Block)

Ich habe seit ein paar Jahren 3 * die 5907 von Instar https://www.instar.de/ip-aussenkameras-sicherheitskamera-netzwerkkamera-wlan-kamera-poe-ueberwachungskamera-smarthome-onvif/in-5907hd-serie-video-kamera-ip-kamera-ip-cam-netzwerkkamera-sicherheitskamera-cctv-bewegungserkennung.html (https://www.instar.de/ip-aussenkameras-sicherheitskamera-netzwerkkamera-wlan-kamera-poe-ueberwachungskamera-smarthome-onvif/in-5907hd-serie-video-kamera-ip-kamera-ip-cam-netzwerkkamera-sicherheitskamera-cctv-bewegungserkennung.html) im Außeneinsatz und bin sehr zufrieden. Ich habe die 3 über LAN angschlossen. Bei Bewegung schreiben die Cams Videos per FTP auf's NAS. Bei Bedarf (und beim Klingeln) gibt es Bilder per Telegram.

Wenn ich jetzt kaufen müßte, dann wären eher die neueren Full HD Modell von Instar meine Wahl - die 5907'er machen 'nur' die 720'er Auflösung.

Die Nachtsicht passt - die Infrarot LEDs leuchten gut aus. Einzig einen Tele-Umbausatz vermisse ich, denn eine Kamera ist vom Standort zu weit weg... Die FHEM Einbindung per IPCAM geht einfach.

Peter
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Paul am 01 Februar 2019, 14:16:39
Bei Bewegung schreiben die Cams Videos per FTP auf's NAS. Bei Bedarf (und beim Klingeln) gibt es Bilder per Telegram.



Er will doch keinen NAS.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: PSI69 am 01 Februar 2019, 14:36:07
Er will doch keinen NAS.
Das habe ich gelesen, bei mir machen sie es... Die Instar's haben allerings auch eine int. Karte, auf der Bilder/Videos abgelegt werden können. Dann geht's auch ohne NAS. Das hätte ich gleich erwähnen sollen 8)
Peter
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 01 Februar 2019, 17:26:42
Hallo PSI69 und Paul,
das NAS selbst ist nicht mein Problem, ich habe ein NAS (Buffalo Link Station LX-WSXLA5E). Das kann ich auch dazu verwenden. Ich wollte mir nur nicht zusätzlich jetzt ein NAS von Synology kaufen, zusätzlich zu der Kamera, als Einsteiger.
Danke für den Tip zu Instar.
Wenn ich meine Wünsche so mit den Instar Kameras spiegele, so gibt es da die IN-9010 Full HD WiFi schwarz (https://www.instar.de/ip-aussenkameras-sicherheitskamera-netzwerkkamera-wlan-kamera-poe-ueberwachungskamera-smarthome-onvif/in-9010-full-hd-wifi-black.html)
Wenn ich auf Schwenken verzichte, so habe ich noch zur Auswahl: IN-5907HD WLAN schwarz. https://www.instar.de/ip-aussenkameras-sicherheitskamera-netzwerkkamera-wlan-kamera-poe-ueberwachungskamera-smarthome-onvif/in-5907hd-serie-video-kamera-ip-kamera-ip-cam-netzwerkkamera-sicherheitskamera-cctv-bewegungserkennung/in-5907hd-black.html
So wie ich euch verstanden habe, ist die Integration der 5907hd in FHEM ein machbares Thema und ich kann dann
Bilder über Mail oder Bot verschicken, Livebilder anschauen,Videos und Bilder regelmässig auf dem NAS ablegen und über FHEM wieder anschauen. (deckt meine Anforderungen ab)
Die schwenkbare Kamera IN-9010 reizt mich etwas. Ist die Integration in FHEM ähnlich oder identisch? und da sind dann noch die 120€ Mehrpreis.
Merci für die Ratschläge schon mal.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 04 Februar 2019, 09:49:09
Hallo,
ich habe mich heute nochmals bei Instar erkundigt. Die https://www.instar.de/ip-aussenkameras-sicherheitskamera-netzwerkkamera-wlan-kamera-poe-ueberwachungskamera-smarthome-onvif/in-9010-full-hd-wifi-black.html ist verfügbar und auch das Ziel meiner Wahl. Hat jemand von euch schon Erfahrung mit der Anbindung dieser Kamera zu FHEM? Alarmfunktion ist nicht mein Interesse. Livebilder, Livevideo, Schwenken, Outdoor, Anbindung an FHEM für Anwender, nicht Programmierer.


Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: laserrichi am 04 Februar 2019, 12:37:25
Also mit IP Kameras ist das immer so eine Sache. Ich habe schon einige Kameras ausprobiert, und ONFIV bedeutet nicht gleich das alles gleich ist und so funktioniert wie man sich das vorstellt.
Mit dem IPCAM Modul in Fhem hat bei mir eine FOSCAM FI9900P sehr gut funktioniert. Glaube davon gibt es auch eine Dome Kamera mit PTZ Funktion was für dich vermutlich das richtige wäre.

Was ich als sehr wichtig finde, das eine saubere Dokumentation vorhanden ist über die ganzen Befehle. CGI aufrufe für die funktionen usw..  da du ja z.b. mit PTZ in dem IPCAM Modul das auch definieren musst. Da ist FOSCAM absolut vorbildlich und ich denke das ist so das beste was am Markt ist, zu INSTAR kann ich nichts sagen, ist da vieleicht auch so, hatte davon noch keine. Am besten nachsehen ob es für dein ausgesuchtes Model auch die Doku gibt.

Ich hatte eine INKOVIDEO da ich dachte teuer = gut, aber wurde eins besseren belehrt, die Snapshots waren nicht in FullHD und auch nicht wirklich zu gebrauchen, dokumentation= 0. Mit IPCAM Modul geht die auch nicht.
Aber man kann auch beim Chinesen gute Erfahrungen sammeln, ich habe eine SV3C FullHD Kamera mit POE, macht alles was sie soll, chinese ist kooperativ, aber mit dem IPCAM Modul geht es nicht, ich nutze daher ein Shell Script das mir Einzelfotos macht, die ich dann in der Fhem oberfläche mit einbaue, es ist aber genau das was du nicht möchtest "Bastelarbeit"

Um eine gewisse Programierarbeit sei es in IPCAM Modul oder aufwändig mittels Shell Scripte wirst du nicht drumherum kommen.

Von Cloud Lösungen rate ich aber ab. Da kannst du dich gleich Nackt in die Innenstadt stellen ;-)



Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 04 Februar 2019, 17:52:40
Hallo laserrichi,

danke für deine ausführlichen Anmerkungen. Ich habe deine DOME Kamera von Foscam gefunden. Ich denke, du meinst die https://www.bueromarkt-ag.de/ip-kamera_foscam_fi9928p_dome_wlan_outdoor,p-fi9928p.html?,l-google-adw,pd-b2b&gclid=CjwKCAiA4t_iBRApEiwAn-vt-5FKK8Y4dx41QfinETvpMqiUFlf8AUSuVkB3QHkgPlO1dyDlP5yh5hoC4ZUQAvD_BwE. Die Foscam ist 100 € bei Böttcher persigünstiger, als die vergleichbare Instar.
Die meintest du doch. Korrekt?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: laserrichi am 04 Februar 2019, 21:02:46
Jo hab jetzt nicht weiter danach gesucht, gibts auch noch flache Dome Kameras. Aber grundsätzlich gibts dafür die CGI Doku:

https://www.foscam.es/descarga/Foscam-IPCamera-CGI-User-Guide-AllPlatforms-2015.11.06.pdf (https://www.foscam.es/descarga/Foscam-IPCamera-CGI-User-Guide-AllPlatforms-2015.11.06.pdf)

Wie du die Bewegung in Fhem mit IPCAM dann einbindest weis ich nicht, aber lt. doku geht das eben durch das einbinden mit den Befehlen, die man ja in der CGI Doku findet.

Kannst ja bei INSTAR auch mal anfragen ob es sowas gibt.

Einwas stört mich aber auch noch an der Foscam. Für die Browser Betrachtung hat man ein Plugin, das wird dir in ein paar Jahren zum verhängnis, wenn die Browser das dann nicht mehr unterstützen usw.

Aber so lange es Updates gibt ist alles gut :-)
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 04 Februar 2019, 21:54:41
Hallo laserrichi, hab heute noch eine Anfrage an INSTAR geschickt. Mal sehen, was die schreiben.

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: laserrichi am 04 Februar 2019, 22:19:05
fast hätte ich das wichtigste vergessen, es reicht natürlich nicht die Doku, sondern was liefert die Kamera zurück.


Die FOSCAM liefert beim Aufruf  des snapshots mittels http://<IP-ADRESS>:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture&usr=admin&pwd=deinpasswort  direkt das Bild als jpeg  was IPCAM dann direkt an einem Speicherort ablegen kann.

Meine SV3C Kamera liefert einen html code zurück mit Pfadangabe wo es in der Kamera liegt: http://192.168.1.14/cgi-bin/hi3510/snap.cgi?und liefert dir das: var path="/tmpfs/snap_tmpfs/20190204/IMG001/IMG_chn0_TIMER_MNG_20190204221147_031.jpg"
Was bedeutet das IPCAM kein Bild findet und es auch nicht speichern kann, ich habe daher alles mit einem Shell script gemacht.
Glaub das hab ich hier irgendwo schon mal geschrieben


Wenn die INSTAR direkt ein Bild liefert dann geht das mit dem Modul
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 05 Februar 2019, 10:28:50
Hallo, danke, werd mich gleich nochmals an Instar wenden.
Bezüglich der CGI Listen hat sich Instar gemeldet.
Da gibt es folgenden Link: https://wiki.instar.de/Erweitert/CGI_Befehle/[/code]
CGI Befehle Instar  https://wiki.instar.de/Erweitert/CGI_Befehle/Ich kann es nicht beurteilen, ob dies gut ist und genügend.
Instar sagt, dass die IN-8015FullHD kompatibel mit der IN-9010FullHD ist. Aber wer betreibt erfolgreich eine IN-8015FullHD in FHEM? Ich melde mich nochmals nach Rückfrage bezüglich des snapshots.
Danke erstmals  8).



Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: laserrichi am 05 Februar 2019, 22:30:16
grade nachgeschaut: http://IP-Address:Port/tmpfs/snap.jpg?usr=admin&pwd=instarda hast in der Doku deinen Snapshot. Wenn da jetzt das jpg nackt gesendet wird ist das super.

Pan & Tilt
http://IP-Address:Port/ptzctrl.cgi?-step=&-act=up
Move Up
http://IP-Address:Port/ptzctrl.cgi?-step=&-act=right
Move Right
http://IP-Address:Port/ptzctrl.cgi?-step=&-act=down
Move Down
http://IP-Address:Port/ptzctrl.cgi?-step=&-act=left
Move Left
http://IP-Address:Port/ptzctrl.cgi?-step=&-act=stop
Stop
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: inoma am 05 Februar 2019, 23:31:30
Zitat
Aber wer betreibt erfolgreich eine IN-8015FullHD in FHEM?
Siehe Antwort #153 in diesem Thread.
Ich übrigens auch, habs von da kopiert.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 08 Februar 2019, 22:24:53
Hallo, hab die INSTAR 9010 gekauft, installiert und über die Apps von Instar am Laufen (ist aber noch da  :)  ).
Gemäss eurer tollen Vorarbeit habe ich jetzt mal IPCAM definiert, attr versehen und versucht den Inhalt zu verstehen. Braucht sicherlich noch etwas Zeit. Einige Beispiele durchspielen möchte ich.
Jetzt wollte ich ein erstes Bild abholen und hab mir folgenden Befehl überlegt:  set K.Sim raw tmpfs/snap.jpg?usr=admin&pwd=xxxx. Scheint auch 1:1 durchgekommen zu sein: 2019-02-08 22:09:06 IPCAM K.Sim raw tmpfs/snap.jpg?usr=admin&pwd=xxxx. Wenn ich es richtig verstanden habe, so sollte ich jetzt ein File mit Namen snap.jpg im Directory /tmpfs haben.
Fehlermeldung habe ich keine bekommen.
Durchsuche ich der RPI nach "snap" mit Filezilla, so finde ich kein entsprechendes File und auch den Pfad tmpfs/ finde ich nicht. Müsste ich zuerst im directory /FHEM ein directory mit /tmpfs erzeugen. Und wie kann ich mir das Bild dann in FHEM anschauen?

attr hab ich noch in Richtung storage:attr K.Sim path /tmpfs/snap.jpg
attr K.Sim storage ./www/snapshots

Mein erstes Ziel ist es morgens und abends ein Bild zu machen und über Bot zu verschicken.




Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Paul am 09 Februar 2019, 11:08:33
Wenn ich es richtig verstanden habe, so sollte ich jetzt ein File mit Namen snap.jpg im Directory /tmpfs haben

Nö,/Topfs ist das Verzeichnis deiner Cam.

Das Bild sollte unter /www/Snapshot sein.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 09 Februar 2019, 11:19:54
Hallo, danke für die Antwort,
hab gerade mal nachgeschaut. Unterr /home/pi/www finde ich weder /Snapshot noch ein Bild.
Kann es sein, dass ich das directory erst einrichten muss?
Was bedeutet Topfs ist das Verzeichnis deiner Cam.
Mit dem Befehl 2019-02-08 22:09:06 IPCAM K.Sim raw tmpfs/snap.jpg?usr=admin&pwd=xxxx. und den Attributen attr K.Sim path /tmpfs/snap.jpg
attr K.Sim storage ./www/snapshots
erwarte ich doch ein unterschiedliches Verhalten..

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: NewRasPi am 09 Februar 2019, 14:10:22
Hallo, danke für die Antwort,
hab gerade mal nachgeschaut. Unterr /home/pi/www finde ich weder /Snapshot noch ein Bild.

Hallo UweUwe

alles was nicht "umgebogen" wird landet wenn es aus FHEM heraus gestartet wird wohl erst mal im Verzeichnis (absoluter Pfad)
/opt/fhem/www/snapshots
oder - für die die sich auskennen heißt das im Zusammenhang mit FHEM
./www/snapshots/... weil man ja schon in diesem Verzeichnis steht!

Viel Spass
NewRasPi
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 09 Februar 2019, 14:26:26
Hallo NewRasPi,

ich das Verzeichnis /opt/fhem/www/snapshots eingerichtet. Es war noch nicht da. Hab ihm alle Rechte gegeben.
Dann nochmals den Befehl
set K.Sim raw tmpfs/snap.jpg?usr=admin&pwd=xxxxx abgesetzt.
Ichs  sehe im Eventmonitor, dass der Befehl richtig abgesetzt wird. Aber in dem directory auf dem Pi tut sich nicht.
Zum Verständnis. Bis auch fdie Kamera bisher erst mit der INSTAR APP gegangen. Kamera ist FHEM mässig jungfräulich. User und Passwort sind aber ok.
Danke für die Unterstützung, hast du noch einen Tip..

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: NewRasPi am 09 Februar 2019, 14:56:29
Hallo NewRasPi,

ich das Verzeichnis /opt/fhem/www/snapshots eingerichtet. Es war noch nicht da. Hab ihm alle Rechte gegeben.

Hallo UweUwe
ich (bin auch immer noch Anfänger) hätte ja behauptet, bei einer Standart Installation ist dieses Verzeichnis vorhanden!!!
Als Besitzer: fhem und als Gruppe: dialout könnte noch wichtig sein.
Überprüfen kannst Du das mit: ls -l /opt/fhem/www
sieht dann bei mir so aus:
drwxrwxrwx 2 fhem dialout   4096 Okt  1  2015 snapshots
Ein list von Deinem IPCam Device bringt vielleicht einen weiteren Ansatz zur Fehlersuche.
Schöne Grüße
NewRasPi
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 09 Februar 2019, 15:06:40
Also, von vorne:
pi@raspberrypi:~/www $  ls -l /opt/fhem/www
total 36
drwxrwxrwx 2 fhem dialout  4096 Nov 27 11:45 codemirror
drwxrwxrwx 3 fhem dialout  4096 Nov 27 11:45 frontend
drwxrwxrwx 2 fhem dialout 12288 Jan 26 09:56 gplot
drwxr-xr-x 3 fhem dialout  4096 Dec 16 17:46 hausautomatisierung-com
drwxrwxrwx 7 fhem dialout  4096 Jan 19 07:10 images
drwxrwxrwx 2 fhem dialout  4096 Nov 27 11:45 jscolor
drwxrwxrwx 3 fhem dialout  4096 Jan 23 08:33 pgm2
da gibt es kein "snapshots".

durch ein Wechsel in das doch vorhandene "snapshots"  gibt es dann: pi@raspberrypi:~/www/snapshots $ ls -la
total 8
drwxrwxrwx  2 pi   pi      4096 Feb  9 14:18 .
drwxrwxrwx 11 fhem dialout 4096 Feb  9 14:18 ..
die Rechte sind identisch mit deinen. Ein list auf die Kamera ergibt Internals:
   AUTHORITY  192.168.10.72:80
   CFGFN     
   DEF        192.168.10.72:80
   FUUID      5c5de04c-f33f-64ff-646a-f67245de4cc1cd43
   NAME       K.Sim
   NR         2956
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
Attributes:
   DbLogExclude .*
   basicauth  admin:xxxx
   cmd01      cmd=setinfrared&-infraredstat=auto
   cmd03      cmd=setinfrared&-infraredstat=close
   cmd04      cmd=setioattr&-io_enable=1&-io_flag=1
   cmd05      cmd=setioattr&-io_enable=0&-io_flag=0
   cmd06      cmd=setmdalarm&-aname=type&-switch=on
   cmd07      cmd=setmdalarm&-aname=type&-switch=off
   cmd08      cmd=setmdattr&-name=1&-enable=1
   cmdPanLeft -act=left
   cmdPos01   -act=goto&-number=0
   cmdPos02   -act=goto&-number=1
   cmdPos03   -act=goto&-number=2
   cmdPos04   -act=goto&-number=3
   cmdPos05   -act=goto&-number=4
   credentials /opt/fhem/IPcam_credentials.cfg
   delay      2
   icon       it_camera
   path       /tmpfs/snap.jpg
   pathCmd    param.cgi
   pathPanTilt param.cgi?cmd=preset
   room       DRAUSSEN
   snapshots  1
   storage    ./www/snapshot

Danke für deine Unterstützung. Merci
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: NewRasPi am 09 Februar 2019, 15:18:34
Also, von vorne:
pi@raspberrypi:~/www $  ls -l /opt/fhem/www
total 36
drwxrwxrwx 2 fhem dialout  4096 Nov 27 11:45 codemirror
drwxrwxrwx 3 fhem dialout  4096 Nov 27 11:45 frontend
drwxrwxrwx 2 fhem dialout 12288 Jan 26 09:56 gplot
drwxr-xr-x 3 fhem dialout  4096 Dec 16 17:46 hausautomatisierung-com
drwxrwxrwx 7 fhem dialout  4096 Jan 19 07:10 images
drwxrwxrwx 2 fhem dialout  4096 Nov 27 11:45 jscolor
drwxrwxrwx 3 fhem dialout  4096 Jan 23 08:33 pgm2
da gibt es kein "snapshots".

durch ein Wechsel in das doch vorhandene "snapshots"  gibt es dann: pi@raspberrypi:~/www/snapshots $ ls -la
total 8
drwxrwxrwx  2 pi   pi      4096 Feb  9 14:18 .
drwxrwxrwx 11 fhem dialout 4096 Feb  9 14:18 ..
die Rechte sind identisch mit deinen. Ein list auf die Kamera ergibt Internals:
   AUTHORITY  192.168.10.72:80
   CFGFN     
   DEF        192.168.10.72:80
   FUUID      5c5de04c-f33f-64ff-646a-f67245de4cc1cd43
   NAME       K.Sim
   NR         2956
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
Attributes:
   DbLogExclude .*
   basicauth  admin:xxxx
   cmd01      cmd=setinfrared&-infraredstat=auto
   cmd03      cmd=setinfrared&-infraredstat=close
   cmd04      cmd=setioattr&-io_enable=1&-io_flag=1
   cmd05      cmd=setioattr&-io_enable=0&-io_flag=0
   cmd06      cmd=setmdalarm&-aname=type&-switch=on
   cmd07      cmd=setmdalarm&-aname=type&-switch=off
   cmd08      cmd=setmdattr&-name=1&-enable=1
   cmdPanLeft -act=left
   cmdPos01   -act=goto&-number=0
   cmdPos02   -act=goto&-number=1
   cmdPos03   -act=goto&-number=2
   cmdPos04   -act=goto&-number=3
   cmdPos05   -act=goto&-number=4
   credentials /opt/fhem/IPcam_credentials.cfg
   delay      2
   icon       it_camera
   path       /tmpfs/snap.jpg
   pathCmd    param.cgi
   pathPanTilt param.cgi?cmd=preset
   room       DRAUSSEN
   snapshots  1
   storage    ./www/snapshot

Danke für deine Unterstützung. Merci

Hallo UweUwe

zuerst mal ist Dir ein Tippfehler beim angeben des Pfad passiert! da fehlt das "s" am Ende von storage /www/snapshots

Warum Du im Verzeichnis das Directory snapshots nicht findest kann ich Dir nicht erklären.
Da musst Du von Hand Änderungen gemacht haben. Vielleicht kann da ein Profi mehr dazu sagen.
Ich würde es jetzt neu anlegen und die Rechte noch mal neu vergeben.
Mit dem Programm MC kann man das super einfach anlegen und auch die Rechte und Besitzer anpassen, wenn man nicht
schon im Linux so weit fortgeschritten ist.
sudo apt-get install mc -yMit "sudo mc" hat man dann eine grafische Oberfläche. Mir fällt es damit einfacher, den Überblick zu behalten.
Schöne Grüße 
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 09 Februar 2019, 16:02:04
Hi, danke für die Unterstützung.
Der Tip-Fehler, war ein Past und Copy des "List". Internals:
   AUTHORITY  192.168.10.72:80
   CFGFN     
   DEF        192.168.10.72:80
   FUUID      5c5de04c-f33f-64ff-646a-f67245de4cc1cd43
   NAME       K.Sim
   NR         2956
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
Attributes:
   DbLogExclude .*
   basicauth  admin:xxxx
   cmd01      cmd=setinfrared&-infraredstat=auto
   cmd03      cmd=setinfrared&-infraredstat=close
   cmd04      cmd=setioattr&-io_enable=1&-io_flag=1
   cmd05      cmd=setioattr&-io_enable=0&-io_flag=0
   cmd06      cmd=setmdalarm&-aname=type&-switch=on
   cmd07      cmd=setmdalarm&-aname=type&-switch=off
   cmd08      cmd=setmdattr&-name=1&-enable=1
   cmdPanLeft -act=left
   cmdPos01   -act=goto&-number=0
   cmdPos02   -act=goto&-number=1
   cmdPos03   -act=goto&-number=2
   cmdPos04   -act=goto&-number=3
   cmdPos05   -act=goto&-number=4
   credentials /opt/fhem/IPcam_credentials.cfg
   delay      2
   icon       it_camera
   path       /tmpfs/snap.jpg
   pathCmd    param.cgi
   pathPanTilt param.cgi?cmd=preset
   room       DRAUSSEN
   snapshots  1
   storage    ./www/snapshots
War  :'( leider korrekt eingetragen.
Das Verzeichnis snapshots war angelegt, ich hatte ein pi@raspberrypi:~/www/snapshots $ ls -la
total 8
drwxrwxrwx  2 pi   pi      4096 Feb  9 14:18 .
drwxrwxrwx 11 fhem dialout 4096 Feb  9 14:18 ..
mitgeschickt.  Auch aus /www sieht man die directories pi@raspberrypi:~/www $ dir -la
total 52
drwxrwxrwx 11 fhem dialout  4096 Feb  9 14:18 .
drwxr-xr-x 22 pi   pi       4096 Dec 31 16:35 ..
drwxrwxrwx  2 fhem dialout  4096 Nov 27 11:45 codemirror
drwxrwxrwx  3 fhem dialout  4096 Nov 27 11:45 frontend
drwxrwxrwx  2 fhem dialout 12288 Dec 22 21:41 gplot
drwxr-xr-x  3 fhem dialout  4096 Dec 16 17:46 hausautomatisierung-com
drwxrwxrwx  7 fhem dialout  4096 Dec 16 17:46 images
drwxrwxrwx  2 fhem dialout  4096 Nov 27 11:45 jscolor
drwxrwxrwx  3 fhem dialout  4096 Dec 17 13:23 pgm2
drwxrwxrwx  2 pi   pi       4096 Feb  8 21:56 Snapshot
drwxrwxrwx  2 pi   pi       4096 Feb  9 14:18 snapshots
MC hab ich gleich mal angelegt. Merci.




Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: NewRasPi am 09 Februar 2019, 16:20:31
Hi, danke für die Unterstützung.
....
 
....

drwxrwxrwx  2 pi   pi       4096 Feb  8 21:56 Snapshot
drwxrwxrwx  2 pi   pi       4096 Feb  9 14:18 snapshots
MC hab ich gleich mal angelegt. Merci.

Hallo UweUwe

hier wird ein FHEM Befehl nie was rein speichern!
Bei Linux wird die Rechte Verwaltung sehr genau genommen. Dein Verzeichnis /www/snapshots gehört dem Benutzer: pi und der Gruppe: pi
Grüße
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 09 Februar 2019, 17:52:13
Hallo, vielen Dank für deine Antworten :  8) 8) 8)

ich hab jetzt alles umgestellt. Gemäss des attributes:
attr K.Sim storage ./www/snapshots erwarte ich in ./www/snapshots das snap.jpg.
Als Befehl benutze ich set K.Sim raw tmpfs/snap.jpg?usr=admin&pwd=xxxx. Es kommt bisher noch nichts in snapshots an:
snapshot gehört zwischenzeitlich fhem und hat alle Rechte:fhem@raspberrypi:~/www$ dir -ls
total 40
 4 drwxrwxrwx 2 fhem dialout  4096 Nov 27 11:45 codemirror
 4 drwxrwxrwx 3 fhem dialout  4096 Nov 27 11:45 frontend
12 drwxrwxrwx 2 fhem dialout 12288 Jan 26 09:56 gplot
 4 drwxr-xr-x 3 fhem dialout  4096 Dec 16 17:46 hausautomatisierung-com
 4 drwxrwxrwx 7 fhem dialout  4096 Jan 19 07:10 images
 4 drwxrwxrwx 2 fhem dialout  4096 Nov 27 11:45 jscolor
 4 drwxrwxrwx 3 fhem dialout  4096 Jan 23 08:33 pgm2
 4 drwxrwxrwx 2 fhem dialout  4096 Feb  9 17:28 snapshots
. Was mich noch wundert ist dieses attr:attr K.Sim path /tmpfs/snap.jpgIst dies der Pfad in der Kamera?
Hast du noch ne Idee? Vielen Dank
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 09 Februar 2019, 18:23:14
Hi an alle:
Eine Ergänzung möchte ich noch machen. Ich hab den Direktbefehl für den snapshot für die Kamera ausgetestet mit dem Befehl:
http://192.168.10.72:80/tmpfs/snap.jpg?usr=admin&pwd=xxxx mit positivem Ergebnis. Der Snapshot ist ausgelöst worden und die Datei /tmpfs/snap.jpg wird auf dem Explorer angezeigt. Damit vermute ich, dass das Bild mit dem Befehl noch nicht auf den Raspberry transferiert worden ist. Für mich stellt sich die Frage , wie bekomme ich die Datei auf den Raspberry und von dort über den Bot raus als Telegramm.
Über Tips freue ich mich sehr. ..
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 09 Februar 2019, 18:44:43
Hallo,
das in dem letzten Blog beschriebene war das Problem. Der Befehl http://192.168.10.72:80/tmpfs/snap.jpg?usr=admin&pwd=xxxx macht auf der Kamera das Bild und legt das Bild dort ab. Mit get K.Sim image holt man die Bilder ab auf den Raspberry. Danke für die Unterstützung.
Merci.. Pst.. Da gibt es sicherlich noch weitere Fragen...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 09 Februar 2019, 22:02:23
Hallo, ich würde mich über eine Beratung sehr freuen:
Ich möchte mir nach Eingabe eines Keywortes  jeweils ein aktuelles Bild von 2 Kameras (identische Kameras, mit IPCAM angebunden) mit teleBot  zuschicken lassen. Klingt einfacher.
1. Snapshot machen
2. Bild über die vpn von der Kamera auf den Raspberry
3. Bild verschicken.
Die Schwierigkeit liegt im Netzwerk: die Kameras sind in 2 unterschiedlichen Netzwerken, die über VPN verbunden sind.(192.168.10.xxx und 192.168.20.xxx) In beiden Netzen gibt es jeweils ein FHEM System.
fhem2fhem ist nicht installiert.
Was spricht dagegen, beide Kameras in dem lokalen FHEM-System zu definieren, in dem der Telebot zur Übertragung bereitsteht.
Das lokale Bild machen, copy in Raspberry, wegschicken, ok.  Und dann das Image von der "entfernten Kamera" über die vpn auf den lokalen Raspberry übertragen, mit get Kamera image und anschliessend wegschicken.
Kann IPCAM über VPN Kameras verwalten?
Kann man mit 2 unterschiedlichen FHEM Systemes jeweils mit IPCAM auf eine Kamera zugreifen? Eigentlich würde ich die 2. Kamera auch gern in das entfernte FHEM System integrieren.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: andies am 10 Februar 2019, 09:03:57
wem zuschicken? Dir? Dem anderen RPi? Ich weiß nicht, ob zwei Bots miteinander „reden“ können. Und was ist mit shell kommandos (ich weiß aber nicht, wie man mit shell einen tunnel aufbaut)?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 10 Februar 2019, 09:35:03
Hallo, danke für die Antwort,

sorry, meine Angaben sind nicht genau genug:

FHEM A  System: Telebot A, Kamera A (IP 192.168.10.99), Raspberry A Fritzbox A (192.168.10.xx)
FHEM B  System: Kamera B (IP 192.168.20.99), Fritzbox B (192.168.20.xx)

Fritzbox A ist mit Fritzbox B per VPN verbunden.

Ziel: Kamera 1 ist an Raspberry 1 konfiguriert (kein Thema)
        Kamera 2 ist an Raspberry 1 konfiguriert (??, anderes Netz, funktioniert IPCAM über VPN)

        Snapshot Kamera 1 machen (kein Thema)
        Snapshot Kamera 2 machen (VPN?)

        "get Bild image" von Kamera 1 (kein Thema)
        "get Bild image" von Kamera 2 (über VPN ?)  von Kamera B im fremden Netz auf Raspberry A

         Versenden von 2 Bildern mit dem Telebot A auf Raspberry A (kein Thema an mich)

Sollte jetzt etwas genauer sein. Danke nochmals der Nachfrage.






Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: NewRasPi am 10 Februar 2019, 13:20:07
Hallo, danke für die Antwort,

sorry, meine Angaben sind nicht genau genug:

FHEM A  System: Telebot A, Kamera A (IP 192.168.10.99), Raspberry A Fritzbox A (192.168.10.xx)
FHEM B  System: Kamera B (IP 192.168.20.99), Fritzbox B (192.168.20.xx)

Fritzbox A ist mit Fritzbox B per VPN verbunden.

Ziel: Kamera 1 ist an Raspberry 1 konfiguriert (kein Thema)
        Kamera 2 ist an Raspberry 1 konfiguriert (??, anderes Netz, funktioniert IPCAM über VPN)

        Snapshot Kamera 1 machen (kein Thema)
        Snapshot Kamera 2 machen (VPN?)

        "get Bild image" von Kamera 1 (kein Thema)
        "get Bild image" von Kamera 2 (über VPN ?)  von Kamera B im fremden Netz auf Raspberry A

         Versenden von 2 Bildern mit dem Telebot A auf Raspberry A (kein Thema an mich)

Sollte jetzt etwas genauer sein. Danke nochmals der Nachfrage.

Hallo UweUwe
mein erster Gedanke wäre eigentlich beim Raspberry 2 den Pfad im Storage auf den ersten Raspberry zu legen.  //192.168.10.99/opt/fhem/www/snapshots/
Aber in diesem Thread steht, das das leider nicht geht.
https://forum.fhem.de/index.php?topic=37318.0Hier ist aber beschrieben wie man es mit einem Script lösen kann.

Super wäre natürlich, wenn sich die Modulentwickler mal der Sache annehmen könnten und vielleicht die Begrenzung auf den eigenen Raspi Pfad aufbohren könnten.
Ein FTP Verzeichnis als möglicher Speicherort wäre bestimmt auch eine willkommene Erweiterung.
Für Anfänger ist das mit zusätzlichen Scripten ganz schön schwierig.

Viel Erfolg
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 10 Februar 2019, 15:24:05
Hallo NewRaspPi,
sorry, hatte gerade erfolglos versucht die Kamera 1 draussen hardwaremässig zu installieren. Leider fehlt ein Teil bei der Deckenhalterung.
Danke mit dem Tip https://forum.fhem.de/index.php?topic=37318.0. Aktuell bin ich noch auf einem anderen Pferd.
Wenn ich die Kamera 2 mit IPCAM auf dem Raspberry 1 installiert bekomme (über die VPN), so sollte es völlig transparent sein. Was spricht gegen einen Befehl defmod K.HN IPCAM 192.168.20.99:80   ##  aus einem Netzwerk 192.168.10.xxx mit VPN zu 192.168.20.xxx.  Die Kamera 2 kennt ja den Raspberry 2 nicht, alle Befehle kommen erstmal vom Raspberry 1. Ob ich dann zusätzlich noch eine Installation der Kamera 2 auf dem Raspberry 2 machen kann, das wäre noch ne Frage.
Dies alles ist aber abhängig, wie der Entwickler von IPCAM hier die Realisierung bei VPN gemacht hat. Er ist zuverlässig  8) 8) und wird sich bei uns melden.
Danke nochmals. Schönen Sonntag erstmal , man schreibt sich  8) 8)

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 20 Februar 2019, 12:55:37
Hallo,
hab zwischenzeitlich 2 Kameras installiert und bekomme auch Bilder von beiden Kameras mit dem BOT zugeschickt. In ein notify hab ich folgende Befehle für die lokale Kamera (K.HN) eingebaut.

fhem("set K.HN raw tmpfs/snap.jpg?usr=admin&pwd=password");
fhem("get K.HN image");
fhem("set teleBot sendImage @#xxxxx ./www/snapshots/K.HN_snapshot.jpg ");
                  
Ich bekomme nicht das aktuelle Bild, sondern das vorherige Bild.  Auch mit 2 x sleep a 10 sec dazwischen.
Sobald ich den letzten Befehl einfach aufdopple, bekomme ich das aktuelle und das vorherige Bild.
fhem("set K.HN raw tmpfs/snap.jpg?usr=admin&pwd=password");
fhem("get K.HN image");
fhem("set teleBot sendImage @#xxxxx ./www/snapshots/K.HN_snapshot.jpg ");
fhem("set teleBot sendImage @#xxxxx ./www/snapshots/K.HN_snapshot.jpg ");

Kann ja nicht die Lösung sein? Hat jemand ne Idee?

Die Anmeldung einer Kamera über eine VPN (ich habe lokal sehr weit entferne Netze per LAN-VPN zwischen zwei Fritzboxen über das öffentliche Netz verbunden).
P.S. Das Problem oben taucht aber mit der lokalen Kamera und der entfernten Kamera gleich auf, unabhängig vom sleep.
Sobald ich mir mit einem notify von beiden Kameras ein Bild schicken lasse und folgenden Ablauf wähle:
Zitat
-- Entferntes Bild machen
-- Entferntes Bild transferieren auf RPI
-- Lokales Bild machen
-- Lokales Bild transferieren auf RPI
-- Lokales Bild verschicken
-- Entferntes Bild verschicken.
Bekomme ich das vorherige Bild der lokalen und das aktuelle Bild der entfernten Kamera.


Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Paul am 20 Februar 2019, 19:36:16
Probier es mal so:

-- Entferntes Bild machen
-- Entferntes Bild transferieren auf RPI
-- Lokales Bild machen
-- Lokales Bild transferieren auf RPI
-- Entferntes Bild verschicken
-- Lokales Bild verschicken


Es gab irgendwo hier schon das Problem, dass das senden schneller als das Schreiben der Datei war.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Schlimbo am 20 Februar 2019, 20:04:24
Ich bekomme nicht das aktuelle Bild, sondern das vorherige Bild. 
Hatte das Problem auch, meine Lösung:
Ich löse ein snapshot bei der Kamera durch "get Cam image“ aus.
Das Versenden des Bildes aber löse ich erst aus wenn sich das Reading "snapshots" am IPCAM device ändert:
defmod sendSnapshot notify Cam.snapshots.* set myTelegramBot sendImage www/snapshots/Cam_snapshot.jpg
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 20 Februar 2019, 20:35:52
Vielen Dank für die Antwort,
darf ich noch etwas nachfragen:

du sagst also die Lösung ist, wenn ich meinen aktuellen Befehl:

fhem("set teleBot sendImage @#xxxxx ./www/snapshots/K.HN_snapshot.jpg ");gegen defmod sendSnapshot notify K.HN.snapshots.* set teleBot sendImage www/snapshots/K.HN_snapshot.jpg ändere.
Da wär ich nie draufgekommen. Da fällt mir auf, dass ich dann ein notify innnerhalb eines notify habe. Funktioniert das?

Folgende Situation hat sich heute nachmittag noch bei mir bestätigt, vielleicht hast du dafür auch ne Erklärung:
Ich habe ja 2 identische Kameras an einem FHEM System auf einem RPI angeschlossen.
1 x Kamera in lokalem Netzwerk des RPI  (lokale Kamera)
1x Kamera über VPN an das RPI Netzwerk angeschlossen (entfernte Kamera)

Folgende Aktionen führe ich nacheinander durch (mit den üblichen Befehlen)
1. Mache Bild mit "entfernter Kamera"
2. Hole Bild von entfernter Kamera auf RPI
3. Mache Bild mit "lokaler Kamera"
4. Hole Bild von lokaler Kamera auf RPI
5. Verschicke Bild der lokalen Kamera von RPI
6. Verschicke Bild der entfernter Kamera von RPI

Ergebnis: aktuelles Bild der "entfernten Kamera" und altes Bild der "lokalen Kamera".



Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 20 Februar 2019, 21:00:33
Hallo Schlimbo,
tolle Lösung, hab es gerade in mein grosses notify für die beiden Kameras eingebaut. Bekomme jetzt die aktuellen Bilder von jeder Kamera.  Ein kleineres Thema ist da noch.
Eine der beiden Kameras schickt 2 Bilder direkt nacheinander, nachdem ich das notify eingebaut hatte. Komisch.  Mal sehen, woran dies liegt.

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 20 Februar 2019, 21:45:58
Hab mal getestet, das grosse Thema Aktualität ist weg. Es sind die aktuellen Bilder.
Das notify bewirkt bei mir noch einen Nebeneffekt, den ich mir nicht erklären kann:

Zitat
Über eine Anfage vom Bot schicke ich, gesteuert durch ein notify entweder das Bild der Kamera A, Kamera B oder Kamera A und B.
Das Ergebnis ist, dass ich Anfrage  A: Nur  Kamera A  Ergebnis: 2 Bilder (identischer Zeitstempel, heisst nichts)
                                         Anfrage B: Nur Kamera B   Ergebnis : 2 Bilder (identsicher Zeitstempel, heisst nichts)
                                         Anfrage C gleichzeitige Anfrage A und B: Ergebis 3 Bilder: 2 Bilder der Kamera, die im DEF vorne steht und ein Bild der 2. Kamera.
im Detail nochmals
Anfrage A defmod sendSnapshot notify K.HN.snapshots.* set teleBot sendImage www/snapshots/K.HN_snapshot.jpg  2 Bilder

Anfage B defmod sendSnapshot notify K.XX.snapshots.* set teleBot sendImage www/snapshots/K.XX_snapshot.jpg   2 Bilder

Anfage C defmod sendSnapshot notify K.HN.snapshots.* set teleBot sendImage www/snapshots/K.HN_snapshot.jpg  2 Bilder
         defmod sendSnapshot notify K.XX.snapshots.* set teleBot sendImage www/snapshots/K.XX_snapshot.jpg   1 Bild
Hab schon vermutet, ob es an der identischen Namensgebung "sendSnapshot" liegt? hab schon geändert, keine Änderung im Ergebnis. Irgendwie bekommt der Event K.XX.snapshots.* und oder K.HN.snapshots.*  noch einen trigger.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Schlimbo am 20 Februar 2019, 23:24:01
du sagst also die Lösung ist, wenn ich meinen aktuellen Befehl:

fhem("set teleBot sendImage @#xxxxx ./www/snapshots/K.HN_snapshot.jpg ");gegen defmod sendSnapshot notify K.HN.snapshots.* set teleBot sendImage www/snapshots/K.HN_snapshot.jpg ändere.
Da wär ich nie draufgekommen. Da fällt mir auf, dass ich dann ein notify innnerhalb eines notify habe. Funktioniert das
Nein, das "defmod sendSnapshot notify" war von mir nicht so gedacht, dass es den alten Befehl ersetzt und jedes Mal ausgeführt wird, mein Code sollte einmalig in die FHEM Kommandozeile eingegeben werden, danach triggert es immer auf einen neuen snapshot und sendet diesen.

Deine Anforderung für ein aktuelles Bild heißt dann nur noch:
fhem("get K.HN image")
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: UweUwe am 21 Februar 2019, 11:09:08
Hallo, ja das Ergebnis ist prächtig, nur ein Bild und das Aktuelle.
Für alle, die auch vor dem Thema stehen, anbei noch die Zusammenfassung:

Ausgangssituation:
Ziel ein Snapshot auf Anforderung entweder von einer oder von beiden Kameras per teleBot abholen.

2 Kameras sind an ein FHEM System angeschlossen. 2x Instar IN-9010FULLHD
Physikalisch sitzt eine Kamera in dem lokalen Netz des Raspberry und eine Kamera ist über eine VPN (Fritzbox zu Fritzbox) angeschlossen.
Mit den üblichen Befehlen:
fhem("set K.xx raw tmpfs/snap.jpg?usr=admin&pwd=password");
fhem("get K.xx image");
fhem("set teleBot sendImage @#xxxxx ./www/snapshots/K.xx_snapshot.jpg ");
bekommt man nicht das aktuell von der Kamera aufgenomme Bild, sondern das zuvor aufgenomme Bild.
Von "Schlimbo"  8) kam der Hinweis, dass man einmalig in der Kommandozeile den folgenden Befehl absetzt. Kommt dann ein neues Bild an, und nur dann, dann schickt der teleBot dieses Bild weiter: defmod sendSnapshot notify K.xx.snapshots.* set teleBot sendImage www/snapshots/K.xx_snapshot.jpg
damit reduziert sich das Holen und Verschicken eines Bildes auf folgende Befehlsfolge:
fhem("set K.K1 raw tmpfs/snap.jpg?usr=user&pwd=password");
fhem("get K.K1 image");
Das Verschicken des Bildes geschieht durch den oben beschriebenen defmod Befehl implizit.  Hat man nun, wie in meinem Fall, 2 Kameras, so benötigt man 2 notifies :defmod sendSnapshotK1 notify K.K1.snapshots.* set teleBot sendImage www/snapshots/K.K1_snapshot.jpg
 defmod sendSnapshotK2 notify K.K2.snapshots.* set teleBot sendImage www/snapshots/K.K2_snapshot.jpg
jeweils 1 x in der Kommandozeile abgesetzt.

Das Abholen von Bildern von beiden Kameras geschieht jetzt über:
fhem("set K.K1 raw tmpfs/snap.jpg?usr=user&pwd=passw");
fhem("get K.K1 image");

fhem("set K.K1 raw tmpfs/snap.jpg?usr=user&pwd=passw");
fhem("get K.K2 image");


Ohne den Hinweis von Schlimpo hätte dies nicht klappt..  8) 8) 8) Merci
                  




Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dk3572 am 23 Februar 2019, 14:01:22
Hallo,

kann mir bitte jemand erklären, wie der set Befehl in fhem aussehen muss, damit ich meine Instar IN-5905HD von Sommer- auf Winterzeit umstellen kann?

Das funktioniert schon mal nicht:
set ipcam_Garten raw param.cgi?cmd=setservertime&-dstmode=on
Hiermit kann ich den Status auf An setzen, aber die Zeit wird nicht aktualisiert:
cmd=setntpattr&-ntpenable=1&-ntpserver=0.de.pool.ntp.org&-ntpinterval=1&cmd=setservertime&-timezone=Europe/Amsterdam&cmd=set_instar_admin&-index=50&-value=on
Danke und VG
Dieter

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: dk3572 am 26 Februar 2019, 18:47:09
Hallo,

kann mir bitte jemand erklären, wie der set Befehl in fhem aussehen muss, damit ich meine Instar IN-5905HD von Sommer- auf Winterzeit umstellen kann?

Das funktioniert schon mal nicht:
set ipcam_Garten raw param.cgi?cmd=setservertime&-dstmode=on
Hiermit kann ich den Status auf An setzen, aber die Zeit wird nicht aktualisiert:
cmd=setntpattr&-ntpenable=1&-ntpserver=0.de.pool.ntp.org&-ntpinterval=1&cmd=setservertime&-timezone=Europe/Amsterdam&cmd=set_instar_admin&-index=50&-value=on
Danke und VG
Dieter

Keiner eine Idee?  ???
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Schlimbo am 27 Februar 2019, 08:24:17
Bei mir hat es auf jeden Fall Mal so funktioniert, wie du geschrieben hast :
set ipcam_Garten raw param.cgi?cmd=setservertime&-dstmode=on
Habe es aber gerade noch mal bei meiner IN-8015 Full HD getestet und musste feststellen dass es jetzt auch nicht mehr funktioniert.
Der Schalter "Sommerzeit berücksichtigen" ändert sich zwar in der Weboberfläche, aber die Uhrzeit bleibt gleich.
Ist wohl ein Thema für den Support
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Tungsten am 29 April 2019, 08:45:38
Moin Zusammen,

ich habe ein Problem mit dem IPCAM Modul.

Ich habe eine Instar Webcam eingebunden, diese funktioniert auch gut.
Ich hole täglich mit einem DOIF ein Bild und verschicke es per Telegram.

Nun passiert es seit ein paar Wochen immer wieder, dass get image nicht funktioniert.

Im Log steht dann:
2019.04.29 08:29:35 1: IPCAM WebcamInstar Wrong or not supported image format: error while reading source image:

Nach einem Restart geht es wieder für eine gewisse Zeit. Woran kann das liegen. Das image format ändert sich ja durch einen FHEM restart nicht,
somit muss der Fehler irgendwo in FHEM liegen. Hat jemand eine Idee?

Danke Euch
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 30 April 2019, 08:12:48
2019.04.29 08:29:35 1: IPCAM WebcamInstar Wrong or not supported image format: error while reading source image:

Nach einem Restart geht es wieder für eine gewisse Zeit. Woran kann das liegen. Das image format ändert sich ja durch einen FHEM restart nicht,
somit muss der Fehler irgendwo in FHEM liegen. Hat jemand eine Idee?
Das Modul braucht etwas Zeit, um das Bild zu holen und als Datei zu speichern. Wenn die Bilddatei noch nicht fertig ist, kann es zu dem beschriebenen Fehler kommen.
Deshalb am Besten zwischen Bild machen und Bild versenden einige Sekunden Pause einlegen.

Alternativ trennst Du Bild erstellen und Bild versenden. Dann kannst Du auf das vom Modul beim Erstellen erzeugte Event triggern und bist sicher, dass die Bilddatei dann auch schon fertig gespeichert wurde.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Tungsten am 30 April 2019, 09:02:44
Moin, Danke für die Antwort. Das ist aber bekannt und ich warte auch schon ein paar Sek.
Der Fehler tritt aber bereits beim get image auf und nicht erst beim versenden.

Habe es gerade noch einmal manuell versucht. Wieder der Fehler.
2019.04.30 08:56:24 1: IPCAM WebcamInstar Wrong or not supported image format: error while reading source image:

Letztes Bild ist von gestern Morgen, nach dem letzten FHEM Restart und ebenfalls manuellem get image.

Hier ein List der Kamera:
Internals:
   AUTHORITY  192.168.178.92:90
   DEF        192.168.178.92:90
   FUUID      5c472d23-f33f-2776-865e-cd0feb4985082cc1
   NAME       WebcamInstar
   NR         250
   SEQ        0
   STATE      last: 2019-04-29 08:38:35
   TYPE       IPCAM
   READINGS:
     2019-04-29 08:38:36   last            WebcamInstar_snapshot.jpg
     2019-04-29 08:38:35   snapshot1       WebcamInstar_snapshot_1.jpg
     2019-04-29 08:38:36   snapshots       0
Attributes:
   DbLogExclude .*
   icon       it_camera
   path       tmpfs/snap.jpg?usr=xxx&pwd=yyy
   room       8_Webcams
   snapshots  1
   storage    ./www/snapshots
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 06 Mai 2019, 08:05:53
Der Fehler tritt aber bereits beim get image auf und nicht erst beim versenden.
Traditionell ist es ein Zugriffsproblem. An den Rechten kann es aber kaum liegen, wenn es nur zeitweise nicht klappt.
Speicherplatz ist auch kein Problem, nehme ich mal an?
Gibt es eventuell sporadische Netzwerkprobleme?

Ansonsten... :-[
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Tungsten am 06 Mai 2019, 10:35:53
Zitat
Gibt es eventuell sporadische Netzwerkprobleme?

Habe ich auch schon gedacht, aber der Stream der Kamera ist eigentlich immer sofort verfügbar.
Habe ansonsten auch nichts geändert in den letzten Wochen.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 07 Mai 2019, 08:14:25
Hast Du mal probiert, in der 49_IPCAM.pm ein Delay einzufügen, wie hier beschrieben:
https://forum.fhem.de/index.php/topic,10772.msg558326/topicseen.html#msg558326

Wäre zwar nicht Update-fest, aber wenn es funktioniert, weiß man zumindest, woran es liegt...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Tungsten am 07 Mai 2019, 08:19:20
Zitat
Hast Du mal probiert, in der 49_IPCAM.pm ein Delay einzufügen, wie hier beschrieben:
https://forum.fhem.de/index.php/topic,10772.msg558326/topicseen.html#msg558326

der Link tut es leider nicht...
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 08 Mai 2019, 07:59:39
der Link tut es leider nicht...
Bei mir tut er es.

Ist in diesem Thread Seite 9, Beitrag #127 von "Patrik S."

Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: ujaudio am 25 Mai 2019, 08:55:01
Ich versuche nochmals meine IPCAM  in FHEM zu integrieren. Mit weblink funktioniert es:
image http://192.168.178.44/snapshot.cgi?user=ich&pwd=123$456
Mit IPCAM bekomme ich wenn ich ein "get image" mache den Fehler
IPCAM interactive_webcam2 Wrong or not supported image format: error while reading source image:
Meine Definition ist wie folgt:
Internals:
   AUTHORITY  http://192.168.178.44
   DEF        http://192.168.178.44
   NAME       interactive_webcam2
   NR         1622
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
   READINGS:
     2019-02-01 17:34:42   snapshots       0
Attributes:
   basicauth  ich:123$456
   delay      3
   path       snapshot.cgi
   room       ACHTUNG
   snapshots  3
   storage    /media/usb0/log
   verbose    5

Ich füge eine Bilddatei der Kamera unverändert im Anhang bei.

Die letzte Hoffnung ist, dass die path-Angabe noch irgendwie anzupassen ist, denn für manche Kameras stehen im Wiki auch "eigenartige" Einträge.

Meine Kamera ist die LogiLink WC0043.

Allerletzte Möglichkeit: Kamera auf den Elektroschrott und eine neue kaufen - welche Outdoor-Kamera funktioniert zuverlässig ?

Einen lieben Gruß
Jürgen
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Brockmann am 27 Mai 2019, 08:15:30
Ich versuche nochmals meine IPCAM  in FHEM zu integrieren. Mit weblink funktioniert es:
Was hast Du denn schon probiert? Die Fehlermeldung kommt alleine hier im Thread zigmal vor, oft auch mit Lösungen.
Häufig sind es Probleme mit den Zugriffsrechten. Hat FHEM in dem festgelegten Pfad die nötigen Schreibrechte?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: ujaudio am 27 Mai 2019, 09:27:27
Was hast Du denn schon probiert? Die Fehlermeldung kommt alleine hier im Thread zigmal vor, oft auch mit Lösungen.
Ich habe ganz viele Lösungsmöglichkeiten mal ausprobiert!

Häufig sind es Probleme mit den Zugriffsrechten. Hat FHEM in dem festgelegten Pfad die nötigen Schreibrechte?
Ok, ich weiß zwar nicht, was FHEM da schreiben soll, aber das wäre noch ein Ansatz, den ich noch nicht probiert habe.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: frober am 27 Mai 2019, 10:04:01
Hier

storage    /media/usb0/log

sollte Fhem schreiben dürfen.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: ujaudio am 27 Mai 2019, 11:35:29
Ganz sicher, da schreibt FHEM schon ganz viel hinein! :)!
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: cpramhofer am 27 Mai 2019, 16:23:54
Ich versuche nochmals meine IPCAM  in FHEM zu integrieren. Mit weblink funktioniert es:
image http://192.168.178.44/snapshot.cgi?user=ich&pwd=123$456
Mit IPCAM bekomme ich wenn ich ein "get image" mache den Fehler
IPCAM interactive_webcam2 Wrong or not supported image format: error while reading source image:
Meine Definition ist wie folgt:
Internals:
   AUTHORITY  http://192.168.178.44
   DEF        http://192.168.178.44
   NAME       interactive_webcam2
   NR         1622
   SEQ        0
   STATE      Defined
   TYPE       IPCAM
   READINGS:
     2019-02-01 17:34:42   snapshots       0
Attributes:
   basicauth  ich:123$456
   delay      3
   path       snapshot.cgi
   room       ACHTUNG
   snapshots  3
   storage    /media/usb0/log
   verbose    5

Ich füge eine Bilddatei der Kamera unverändert im Anhang bei.

Die letzte Hoffnung ist, dass die path-Angabe noch irgendwie anzupassen ist, denn für manche Kameras stehen im Wiki auch "eigenartige" Einträge.

Meine Kamera ist die LogiLink WC0043.

Allerletzte Möglichkeit: Kamera auf den Elektroschrott und eine neue kaufen - welche Outdoor-Kamera funktioniert zuverlässig ?

Einen lieben Gruß
Jürgen

Hallo Jürgen,
hast du mal versucht das Passwort zu ändern und kein Sonderzeichen (schon gar kein $) zu verwenden?
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: frober am 27 Mai 2019, 21:19:06
Probiere mal basicauth weg zu lassen und als path
snapshot.cgi?user=ich&pwd=123$456

So funktioniert es bei mir.

Nachtrag:
In der commandref ist es sogar so erklärt.
basicauth funktioniert nur bei
user:passwd@pfad
ansonsten ist der string als pfad anzugeben
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: laserrichi am 27 Mai 2019, 22:00:14
mal ne blöde frage, weil ich das bei mir ja auch hatte. Bist du dir sicher das wirklich ein .jpg zurückgeliefert wird ?
Oder wird hier eine html zurückgeliefert in der dann der absolute pfad in der Kamera dann steht.
Im Browser selbst bekommst du das nicht mit, es wird ja das richtige Bild angezeigt.

Checken kannst du das z.b. im Browser wenn du dann mit rechter Maustaste mal den seitenquelltext ansiehst.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: frober am 28 Mai 2019, 07:56:20
Bei mir werden die Bilder als jpg im storage-pfad abgelegt.
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: ujaudio am 28 Mai 2019, 08:37:14
mal ne blöde frage, weil ich das bei mir ja auch hatte. Bist du dir sicher das wirklich ein .jpg zurückgeliefert wird ?
Oder wird hier eine html zurückgeliefert in der dann der absolute pfad in der Kamera dann steht.
Im Browser selbst bekommst du das nicht mit, es wird ja das richtige Bild angezeigt.

Checken kannst du das z.b. im Browser wenn du dann mit rechter Maustaste mal den seitenquelltext ansiehst.
Ja, das Bild ist ein jpg.

Probiere mal basicauth weg zu lassen und als path
snapshot.cgi?user=ich&pwd=123$456

So funktioniert es bei mir.

Nachtrag:
In der commandref ist es sogar so erklärt.
basicauth funktioniert nur bei
user:passwd@pfad
ansonsten ist der string als pfad anzugeben
Funktioniert beides nicht.

Hallo Jürgen,
hast du mal versucht das Passwort zu ändern und kein Sonderzeichen (schon gar kein $) zu verwenden?
Das war's!!!!!

Ich habe zwar nicht das hier angegebene Passwort, aber es enthält Sonderzeichen - diese entfernt - alles ist gut.

DANKE!
Titel: Antw:Modul IPCAM überarbeitet
Beitrag von: Merlin1 am 11 Juni 2019, 16:22:13
Gibt es eigentlich inzwischen die Möglichkeit das letzte Video herunterzuladen und dann z.B. per Telegram schicken zu lassen?

Also nicht nur Snapshots, sondern das letzte Video?

Wäre ja toll.