Die aus Sicherheitsgründen restriktiv gehaltenen User-Zugänge erschweren auch für die RoboCam, die Marmitek und andere baugleiche IP- Netzwerk- Kameras eine einfache Darstellung auf eigenen HTML- Seiten. Dieser Wunsch ist zwar nicht sicherheitstypisch, da er dem Missbrauch* Tür und Tor öffnet, er existiert jedoch bei einigen Hobby- Webcam- Webmastern.
Da ich kurze Zeit alle Zugangsdaten zu einer RoboCam mit installierter Firmware (Änderungen sind also noch möglich!) erhielt, konnte ich mittels Menü und Quelltext der einzelnen Steuer- und Wiedergabeseiten Lösungen zur passwort- freien Wiedergabe, zur Darstellung ohne ActiveX und Java-Applet und zur begrenzten Steuerung ohne Javascript, mittels einfacher Links, finden. Gleichzeitig kann so die Wiedergabe und Steuerung in beliebigen Browsern realisiert werden.
Methoden zum für den Besucher bequemen, passwortfreien Zugang, ohne die zusätzliche Installation von AddOns bzw. Lockerung der Sicherheitseinstellungen, ist entweder die Verwendung eines zusätzlichen Webcam- Programms, wie z.B. webcamXP, AbelCam oder VisionGS, oder aber von simplem HTML. Voraussetzung ist dabei immer, daß der komplette Pfad zum Einzelbild bzw. Livestream sowie ggf. Zugangsdaten (Username, Passwort) bekannt sind. Für unsere RoboCam ist das der Pfad
http://ip:port/cgi/jpg/image.cgi bzw. vollständig http://username:passwort@ip:port/cgi/jpg/image.cgi ,
wobei "ip" die öffentliche IP-Adresse und "port" der für die RoboCam verwendete Port ist.
Obwohl Username und Passwort durch den Webcam- Webmaster in beiden Varianten, d.h. bei den Programmeinstellungen im zusätzlichen Webcam- Programm oder aber in den Quelltext der Wiedergabeseite eingegeben werden müssen, weil das ja momentan die Firmware der Kamera so verlangt, brauchen die Besucher, die "nur" auf den Webcam- Server bzw. die Wiedergabeseite zugreifen, diese nicht mehr.
Eine simple Livestream- Wiedergabe - Dynamisierung mittels Flash- Player- und eine einfache RoboCam- Steuerung über "einfache" Hyperlinks demonstriere ich hier (Voraussetzung: die Kamera ist aktiv ).
|
Die Wiedergabe beliebiger "Livestream s" im Flash- Player sollte bereits bekannt sein (erläutert zum Beispiel unter Webcam- HTML ). Aber auch alle anderen dort genannten Wiedergabe- Varianten, die in unterschiedlichen Browsern laufen, sind für die RoboCam bei Kenntnis des Pfades brauchbar.
Die Fernbedienung von IP- Netzwerk- Kameras, also auch der RoboCam und der Marmitek wird durch die Hardware und die Firmware des Herstellers, d.h. spezieller Software bestimmt. Das Prinzip bei der RoboCam: CGI-Scripte zur Steuerung der Kamera- Servo- Motoren werden durch Aufruf der jeweils vereinbarten URL gestartet.
http://username:passwort@ip:port/cgi/admin/ptctrl.cgi?action=movedegree&Cmd=[Richtung]&Degree=[Grad]
- so wäre der vollständige Pfad zur Steuerung des Kamera-Fokus, wobei die [Richtung] durch "up, down, left, right" und die [Grad]- Zahlen als Steuerwinkel in absoluten Zahlen 1...5 Grad, kaum größer, angegeben werden sollte.
Ein Beispiel für die Richtung "Nach unten" (praktisch auch im Quelltext dieser Seite erkennbar):
http://ip:port/cgi/admin/ptctrl.cgi?action=movedegree&Cmd=down&Degree=5 .
Für eine bereits übers klassische Steuermenü festgelegte Position, z.B. für "Position 1" dagegen:
http://ip:port/cgi/admin/ptctrl.cgi?action=move&Cmd=Position1
Für die Startposition (Ausgangsposition):
http://ip:port/cgi/admin/ptctrl.cgi?action=move&Cmd=home .
Sicher sind über den Programmierer der Firmware des Herstellers der 7Links RoboCam von Pearl bzw. der Marmitek weitere Kommandos, die für fremde User aber wohl nie benötigt werden, zu erfahren. Schließlich besteht die gesamte Steuerung auch jeder IP- Netzwerk- Kamera "nur" aus Einsen und Nullen ... Und etwas selbst probieren ("empirischer Weg") gehört immer auch zu den wissenschaftlichen Methoden ;-).
Meine praktischen Beispiele sind im Quelltext dieser Seite deutlich erkennbar. Da ich aber in den Links die kompletten Steuer-Pfade ohne Zugangsschutz, d.h. ohne Username und Passwort verwende, verlangt der Browser bei der ersten Steuerung nach Zugangsdaten: nicht jeder soll die Kamera (ver-) steuern können.
Die Steuerung der Kamera wird jedoch über verlinkte Buttons als einfaches "User- Webinterface", also ohne jegliches Javascipt, realisiert. Das war ja mein Ansatz:
<a href="http://ip:port/cgi/admin/ptctrl.cgi?action=movedegree&Cmd=left&Degree=5" target="dummy">
<img src="robocam/left.gif" alt="Nach links" width="18" height="18"></a>
Obwohl es sich jeweils um eine klassisch verlinkte Bild-Datei als Button handelt, sollen einige wenige Besonderheiten hervorgehoben werden:
1. Für die Steuer- Links wird zusätzlich immer ein Ziel ( target="dummy", als ein kleines, unsichtbares Inline- Frame) verwendet. Das ist notwendig, um einerseits den gewünschten Link aufrufen zu können, andererseits aber auf der gleichen HTML-Seite mit dem Webcam- Wiedergabestring zu bleiben. Ohne dieses "Ziel ins Nirwana" würde die gesamte HTML- Seite weitergeschaltet, wäre ganz einfach weg.
Das technisch also notwendige, für den Besucher sowieso unsichtbare Inline-Frame, weil nur 0x1 Pixel groß, wird im Quelltext der Wiedergabeseite untergebracht:
<iframe src="" height="1" width="0" name="dummy" frameborder="0">
2. Für die sichtbaren Bedienelemente (= Bilder /Buttons / Tasten bzw. Images/ img) können natürlich eigene, selbstgestaltete Icons/ kleine Bildchen verwendet werden, die mittels Tabellen angeordnet werden sollten.
Diese sollten besser auf dem Webspace bei der HTML-Wiedergabeseite liegen, da sie beim Hoster zuverlässiger und schneller als aus der Kamera selbst erreichbar sind. So schont man die eigenen Ressourcen (Bandbreite, Kamera- Prozessor usw.)
Beispiele:
<img src="robocam/right.gif" alt="Taste rechts" width="18" height="18">
-
oder aber
<img src="robocam/home.gif" alt="Mitte" width="24" height="29">
-
(als ein Symbol für die Start- bzw. Ausgangs- und Stopp- Position)
Der Button für die Steuerung "Nach rechts" befindet sich erkennbar als "right.gif" im Verzeichnis "robocam" meines Speicherplatzes von angelpage.de (bei 1und1).
Die Hyperlinks zur Steuerung (= <a href=... ) jedoch sind dagegen immer vollständig, als absolute Pfade zum Webcam- Server, d.h. die RoboCam, die Marmitek usw. anzugeben, also z.B. als
http://ip:port/cgi/admin/ptctrl.cgi?action=movedegree&Cmd=left&Degree=5
http://ip:port/cgi/admin/ptctrl.cgi?action=move&Cmd=panscan
http://ip:port/cgi/admin/ptctrl.cgi?action=move&Cmd=autopatrol .
Beachten Sie unbedingt die Unterschiede in den Steuer- URLs zum Aufruf der entsprechenden CGI-Scripte im Kamera- Server:
* "move" für die Steuer- Grundfunktionen wie Start, Stopp, Ausgangsposition, Fixpositionen, automatische horizontale Kontrolle und Zufallskontrolle
und
* "movedegree" dagegen für die Steuerung nach Sektoren bzw. Ausschnitten
Achtung aber: Der Aufruf bzw. das Zulassen der servogesteuerten Patrouille- Funktionen durch Besucher wird im Dauerbetrieb zum Heißlaufen der Servo- Motoren und damit zu ihrer Zerstörung führen. Begrenzen Sie deshalb unbedingt die zeitliche Aktivität dieser Steuerelemente, z.B. durch automatisches Weiterschalten in die Start- bzw. Stopp- Position mittels HTML (als simples Inline- Frame "refreshen" lassen).
Mit den gegebenen Hinweisen und unter Berücksichtigung der gesamten möglichen Palette zur Wiedergabe eines angenäherten Livestreams sollte es so auch jedem Laien möglich sein, eine eigene Wiedergabeseite zur Steuerung der RoboCam, auch durch Besucher, zu erstellen.
Bei Problemen mit der vereinfachten Wiedergabe und der Steuerung der 7Link RoboCam, der Marmitek usw. fragen Sie notfalls mit Angabe der konkreten URL Ihrer Wiedergabeseite und ggf. den Admin- Zugangsdaten im Webcam- Forum -dort bitte auch die Suche verwenden- oder übers Feedback- Formular im Impressum an.
