NEWS
Kamera PTZ Steuerung von Vis
-
Hallo zusammen,
ich mal wieder Brauchte mal einen Tipp wie ich 2 Kamera von dem angefügten Script Steuern kann ? So wie es jetzt ist Funktioniert es mit einen Kamera. Position 0 und 1
Jetzt soll eine weitere Kamera dazu kommen mit einer anderen IP:
http://******@192.168.2.111/param.cgi?cmd=preset&-act=goto&-number=
Diese soll dann auf Position 2 und 3 reagieren. Wie mache ich das am schlausten ?// Steuerkreuz createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS var webcam_wz_steuerung_url ='http://******@192.168.2.110/param.cgi?cmd=preset&-act=goto&-number=', request = require('request'), idPresetKameraWZ = "javascript.0.Kamera_Wohnzimmer_Preset"; // Valuelist 0 bis 3 für Presets 1 - 4 on({ id:'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung', change: 'any' }, function (data) { var steuerbefehl_wz = webcam_wz_steuerung_url + data.newState.val; request(steuerbefehl_wz, function (err, state, body){ if (body) { //setState(idPresetKameraWZ, 5); // verhindert, dass im View eine der 4 Steuertasten für Presets aktiviert wird log('Webcam Wohnzimmer Manueller PTZ-Steuerung: ' + data.newState.val, 'info'); log(steuerbefehl_wz, 'debug'); } else { log('Drehbefehl' + data.newState.val + 'nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!', 'info'); } }); });
Grüße Timo
-
Prinzip:
// Steuerkreuz createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS var url = 'http://******@192.168.2.'; var param = '/param.cgi?cmd=preset&-act=goto&-number='; on({id: 'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung'}, function(dp) { var pos = dp.state.val; var addr = 110; if(pos >= 2) { pos = pos - 2; addr = 111; } var cmd = url + addr + param + pos; request(cmd, function (err, state, body){ if (body) { log(cmd, 'debug'); } else { log('Drehbefehl ' + pos + ' nicht übertragen, Kamera ' + addr + ' nicht bewegt, Fehler bei Ansteuerung!', 'warn'); } }); });
-
Hilfe ich kriege es nicht hin. Wie müsste das ganze aussehen ???
createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS var webcam_wz_steuerung_url ='http://****@192.168.2.110:81/param.cgi?cmd=preset&-act=goto&-number=', var url = 'http://****@192.168.2.'; var param = '/param.cgi?cmd=preset&-act=goto&-number='; request = require('request'), idPresetKameraWZ = "javascript.0.Kamera_Wohnzimmer_Preset"; // Valuelist 0 bis 3 für Presets 1 - 4 on({ id:'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung', change: 'any' }, function (data) { var steuerbefehl_wz = webcam_wz_steuerung_url + data.newState.val; request(steuerbefehl_wz, function (err, state, body){ on({id: 'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung'}, function(dp) { var pos = dp.state.val; var addr = 110; if(pos >= 2) { pos = pos - 2; addr = 111; } var cmd = url + addr + param + pos; }); });
-
@kasperfunsurfer
Habe es oben ergänzt. -
Funktioniert leider nicht. In den Objekten wir 2 und 3 gesetzt aber der Drehbefehl wird nicht übertragen. Es fehlt der Port 81.
192.168.2.110:81// Steuerkreuz createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS var url = 'http://****@192.168.2.'; var param = '/param.cgi?cmd=preset&-act=goto&-number='; on({id: 'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung'}, function(dp) { var pos = dp.state.val; var addr = 111; if(pos >= 2) { pos = pos - 2; addr = 111; } var cmd = url + addr + param + pos; request(cmd, function (err, state, body){ if (body) { log(cmd, 'debug'); } else { log('Drehbefehl' + pos + 'nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!', 'warn'); } }); });
17:35:13.408 info javascript.0 Stop script script.js.Kamera_Test_2
17:35:13.468 info javascript.0 Start javascript script.js.Kamera_Test_2
17:35:13.468 info javascript.0 script.js.Kamera_Test_2: registered 1 subscription and 0 schedules
17:35:17.027 warn javascript.0 script.js.Kamera_Test_2: Drehbefehl0nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!
17:35:18.081 warn javascript.0 script.js.Kamera_Test_2: Drehbefehl0nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!
17:35:38.262 warn javascript.0 script.js.Kamera_Test_2: Drehbefehl1nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung! -
@kasperfunsurfer sagte:
Es fehlt der Port 81.
Dann füge den Port hinzu
var param = ':81/param.cgi?cmd=preset&-act=goto&-number=';
-
@paul53 sauber so geht es schon mal.
Jetzt haben wir ja 192.168.2.111 Position 2 und 3
wie würde es jetzt aussehen mit noch einer Kamera 192.168.2.110 Position 0 und 1 ????
-
@kasperfunsurfer sagte:
noch einer Kamera 192.168.2.110 Position 0 und 1 ????
Ist doch enthalten:
Vis 0, 1: Kamera 192.168.2.110 Pos. 0, 1
Vis 2, 3: Kamera 192.168.2.111 Pos. 0, 1 -
Das ist jetzt mein Komlpettes Script was fehlt denn da bzw. was muss da noch hin ?
// Steuerkreuz createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS var url = 'http://****@192.168.2.'; var param = ':81/param.cgi?cmd=preset&-act=goto&-number='; on({id: 'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung'}, function(dp) { var pos = dp.state.val; var addr = 111; if(pos >= 2) { pos = pos - 2; addr = 111; } var cmd = url + addr + param + pos; request(cmd, function (err, state, body){ if (body) { log(cmd, 'debug'); } else { log('Drehbefehl' + pos + 'nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!', 'warn'); } }); });
-
@kasperfunsurfer
Zeile 8 ist falsch !var addr = 110;
-
@paul53 sauber stimmt mal wieder.
Mal wieder vielen DANK und großes Lob an dich !!