Hama IP Camera M360

Denke das ist das falsche Forum hier. Hier geht es um IP-Symcon und nicht eine spezielle Kameraberatung.

Darüber hinaus hängt die RTD im Wesentlichen von deiner Netzanbindung ab (EDGE, 3G, LTE, xDSL, etc…) Jede wird in einem eigenen typischen Bereich geliefert, aber alle i.d.R. unter 500ms, es sei denn Du bist in Asien, Afrika o.ä,.

Darüber hinaus hängt es noch davon ab, was sonst noch über Deine Leitung (Client und Kamera) geht. Je mehr, desto langsamer wird die Leitung.

@derOlli:

Falls Du die Cam noch nicht geordert hast, warte noch ein bischen. Im Moment liefert Hama Cams aus, deren Firmware den Port des Video-Stream nicht anpassbar hat. FW Update gibt’s noch nicht. Wenn Du dann mehrere Cams von aussen abfragen willst, geht das - je nach verwendeter Methode - nicht.

Ansonsten hängt’s wie Wupperi schon schrieb extrem an der Kette Router – DSL. Und beim DSL halt hauptsächlich der Upstream, der ja bekanntermassen auch bei guter Anbindung recht lau sein kann.

Ich habe mehrere ältere, wo das o.g. Problem noch nicht war) Cams im Einsatz einem Haus, das nur eine „sehr dünne ADSL Leitung“ hat. Da gibts ganz deutliche Verzögerungen und Ruckler, hat mit Echtzeit nix zu tun. Kann man verbessern, wenn man die Farben runter schraubt, dann geht abe Information verloren. Zum reinen Überwachen gehts, wenn man dann was genauer untersucht, braucht’s ja auch oft die Geschwindigkeit nicht mehr.

Das dürfte dann aber auch ein vom verwendeten Cam Typ recht unabhängiges Problem sein.

Immerhin kann die Hama halt auch „bessere“ Auflösungen - fast unschlagbar zu diesem Preis.

jwka

Hallo Gemeinde,

bin noch nicht solange mit IPS unterwegs und bekomme meine HAMA IPCAM nicht über IPS gesteuert.

Zum Status:

  1. IP CAM: HAMA M360 als Instanz in IPS angelegt (funktioniert, Stream kommt)
  2. Einbindung Streaming als Variable mit Direktaufruf (funktioniert)
  3. Skript zu Ansteuerng der PAN / Tilt Funktionen angelegt:

SetValue($IPS_VARIABLE, $IPS_VALUE);

switch ($IPS_VALUE)
{
case 0:
$ecmd = „http://192.168.x.xx/camera-cgi/com/ptz.cgi?gotoserverpresetIndex=0“;
break;

case 1:
$ecmd = „http://192.168.x.xx/camera-cgi/com/ptz.cgi?gotoserverpresetIndex=1“;
break;

case 2:
$ecmd = „http://192.168.x.xx/camera-cgi/com/ptz.cgi?gotoserverpresetIndex=2“;
break;

case 3:
$ecmd = „http://192.168.x.xx/camera-cgi/com/ptz.cgi?gotoserverpresetIndex=3“;
break;

default:
echo „no cam ctrl!“;
exit;
break;

}

?>


  1. Bekomme nun leider immer folgende Fehler:

Notice: Undefined variable: IPS_VARIABLE in C:\IP-Symcon\scripts\54095.ips.php on line 3

Notice: Undefined variable: IPS_VALUE in C:\IP-Symcon\scripts\54095.ips.php on line 3

Warning: Variable #0 existiert nicht in C:\IP-Symcon\scripts\54095.ips.php on line 3

Notice: Undefined variable: IPS_VALUE in C:\IP-Symcon\scripts\54095.ips.php on line 7


  1. Der Tipp von RWN

if($IPS_SENDER == „Execute“) return;


bringt mich hier nicht wirklich weiter, da ich so zwar den Fehler eleminiert bekomme, dass Skript aber ohne Funktion ist.

  1. Hat jemand eine Idee, wass ich falsch mache, bzw. was ich ändern muss?

Danke für die Hilfe,
Michael

Du darfst das Script nicht von Hand starten. $IPS_VALUE enthält nur Daten zum Zeitpunkt eines Befehls. Deswegen dieses.

if($IPS_SENDER == "Execute") return;  

Weise deiner Variable dein Script als Aktion zu, dann funktioniert es auch. Ersetzt das exit noch durch return!

Wo ist denn die Variable, von der der Wert kommen soll?

Also wo ist die Variable, die Du zum steuern der Camera auf Werte zwichen 0 und 3 (siehe switch Abfrage) gesetzt wird? Die sehe ich nicht und ich glaube, dass Du auch da den Fehler hast, denn das moniert jw auch IPS.

jwka

ID 18811 Integervariable.

Hallo + Danke für die Antworten. Klappt leider immer noch nicht :frowning:

Hier meine Änderungen:

  1. das Skript aufgrund RWNs Hinweis lautet nun wie folgt:
<?
if($IPS_SENDER == "18811") return;
SetValue($IPS_VARIABLE, $IPS_VALUE);

switch ($IPS_VALUE)
{
case 0:
$ecmd = "http://192.168.x.xx/camera-cgi/com/ptz.cgi?gotoserverpresetIndex=0";
break;

case 1:
$ecmd = "http://192.168.x.xx/camera-cgi/com/ptz.cgi?gotoserverpresetIndex=1";
break;

case 2:
$ecmd = "http://192.168.x.xx/camera-cgi/com/ptz.cgi?gotoserverpresetIndex=2";
break;

case 3:
$ecmd = "http://192.168.x.xx/camera-cgi/com/ptz.cgi?gotoserverpresetIndex=3";
break;

default:
echo "no cam ctrl!";
return;
break;

}

?>

Frage: das sieht doch eigentlich ok aus, oder?

  1. Die Variable, die das Skript steuern soll, heisst „Auswahl“ / ID 18811 und ist, wie auf dem anliegendem Bild zusehen, definiert.

Ich bin mit meinem Latein am Ende, was ist hier nur falsch?

Beste Grüsse,
Michael

Was machst Du denn jetzt, es hat doch alles gepasst bis auf die Aktion. :confused:

if($IPS_SENDER == "WebFront") 
{
    SetValue($IPS_VARIABLE, $IPS_VALUE);
}

Klasse RWN, jetzt hat es geklappt!

Abgesehen davon, dass Einiges falsch war, fehlte auch Code.

Hier das endgültige Skript:


<?
if($IPS_SENDER == „WebFront“)
{
SetValue($IPS_VARIABLE, $IPS_VALUE);

   switch ($IPS_VALUE)
{
    case 0:
      $ecmd = "http://admin:1234@192.168.x.xx//camera-cgi/com/ptz.cgi?move=left";
        break;

    case 1:
      $ecmd = "http://admin:1234@192.168.x.xx//camera-cgi/com/ptz.cgi?move=up";
        break;

    case 2:
      $ecmd = "http://admin:1234@192.168.x.xx//camera-cgi/com/ptz.cgi?move=down";
        break;

  case 3:
      $ecmd = "http://admin:1234@192.168.x.xx//camera-cgi/com/ptz.cgi?move=right";
        break;

    default:
       echo "no cam ctrl!";
       exit;
       break;

}


$fh = fopen($ecmd, 'r');
  $result = fgets($fh, 2000);
fclose($fh);

SetValue($IPS_VARIABLE,-1);

}
return;
?>


Besten Dank,
Michael

Sorry, Fehlalarm, konnte das Problem lösen.