Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter onvif-alt v0.1.x

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

Test Adapter onvif-alt v0.1.x

Geplant Angeheftet Gesperrt Verschoben Tester
onvif
271 Beiträge 33 Kommentatoren 39.8k Aufrufe 37 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Jey CeeJ Jey Cee

    @Jan1 Es wurde keine Kamera gefunden, das dauert kurz nach dem der Adapter gestartet wurde. Sonst vielleicht das selbe Problem wie bei Dr. Bakterius.

    @Knallochse kannst du mir mal die Objekte für den Drucker Exportieren? Das Objekt vom Drucker Anklicken und dann oben bei den Buttons den ganz rechten Pfeil Klicken.
    160753ec-7c9e-428f-b70b-cea8d75623ca-image.png
    Das dann hier posten.

    SegwayS Offline
    SegwayS Offline
    Segway
    schrieb am zuletzt editiert von Segway
    #40

    @Jey-Cee
    Moin ich hänge mich hier auch rein.

    Hab die 0.0.2 Version installiert.
    Habe eine Scricam SP007 die nur einen rtsp stream liefert ohne benutzername und passwort.
    Leider findet der Adapter nichts:

    onvif.0	2020-01-01 12:18:12.756	debug	(5942) stateChange onvif.0.discoveryRunning {"val":false,"ack":true,"ts":1577877492727,"q":0,"from":"system.adapter.onvif.0","user":"system.user.admin","lc":1577877486238}
    onvif.0	2020-01-01 12:18:12.754	debug	(5942) startCameras: []
    onvif.0	2020-01-01 12:18:12.716	debug	(5942) startCameras
    onvif.0	2020-01-01 12:18:12.679	info	(5942) starting. Version 0.0.2 in /opt/iobroker/node_modules/iobroker.onvif, node: v12.14.0
    onvif.0	2020-01-01 12:18:08.143	debug	(2292) system.adapter.admin.0: logging true
    onvif.0	2020-01-01 12:18:08.083	info	(2292) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason
    onvif.0	2020-01-01 12:18:08.082	info	(2292) terminating
    onvif.0	2020-01-01 12:18:08.081	debug	(2292) cleaned everything up...
    onvif.0	2020-01-01 12:18:08.078	info	(2292) Got terminate signal TERMINATE_YOURSELF
    onvif.0	2020-01-01 12:18:06.248	debug	(2292) startCameras: []
    onvif.0	2020-01-01 12:18:06.242	debug	(2292) stateChange onvif.0.discoveryRunning {"val":false,"ack":true,"ts":1577877486238,"q":0,"from":"system.adapter.onvif.0","user":"system.user.admin","lc":1577877486238}
    onvif.0	2020-01-01 12:18:06.236	debug	(2292) sendTo "discovery" to system.adapter.admin.0 from system.adapter.onvif.0
    onvif.0	2020-01-01 12:18:06.235	debug	(2292) Discovery finished
    onvif.0	2020-01-01 12:18:06.233	debug	(2292) startCameras
    onvif.0	2020-01-01 12:17:56.209	debug	(2292) stateChange onvif.0.discoveryRunning {"val":true,"ack":true,"ts":1577877476192,"q":0,"from":"system.adapter.onvif.0","user":"system.user.admin","lc":1577877476192}
    onvif.0	2020-01-01 12:17:56.190	debug	(2292) a.b.c.d 554
    onvif.0	2020-01-01 12:17:56.188	debug	(2292) Received "discovery" event
    onvif.0	2020-01-01 12:17:42.237	debug	(2292) system.adapter.admin.0: logging false
    onvif.0	2020-01-01 12:17:35.228	debug	(2292) sendTo "getDevices" to system.adapter.admin.0 from system.adapter.onvif.0
    

    über vlc kommt der stream per
    rtsp://a.b.c.d:554/onvif1

    Gruß Dirk
    Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

    Jey CeeJ 1 Antwort Letzte Antwort
    0
    • SegwayS Segway

      @Jey-Cee
      Moin ich hänge mich hier auch rein.

      Hab die 0.0.2 Version installiert.
      Habe eine Scricam SP007 die nur einen rtsp stream liefert ohne benutzername und passwort.
      Leider findet der Adapter nichts:

      onvif.0	2020-01-01 12:18:12.756	debug	(5942) stateChange onvif.0.discoveryRunning {"val":false,"ack":true,"ts":1577877492727,"q":0,"from":"system.adapter.onvif.0","user":"system.user.admin","lc":1577877486238}
      onvif.0	2020-01-01 12:18:12.754	debug	(5942) startCameras: []
      onvif.0	2020-01-01 12:18:12.716	debug	(5942) startCameras
      onvif.0	2020-01-01 12:18:12.679	info	(5942) starting. Version 0.0.2 in /opt/iobroker/node_modules/iobroker.onvif, node: v12.14.0
      onvif.0	2020-01-01 12:18:08.143	debug	(2292) system.adapter.admin.0: logging true
      onvif.0	2020-01-01 12:18:08.083	info	(2292) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason
      onvif.0	2020-01-01 12:18:08.082	info	(2292) terminating
      onvif.0	2020-01-01 12:18:08.081	debug	(2292) cleaned everything up...
      onvif.0	2020-01-01 12:18:08.078	info	(2292) Got terminate signal TERMINATE_YOURSELF
      onvif.0	2020-01-01 12:18:06.248	debug	(2292) startCameras: []
      onvif.0	2020-01-01 12:18:06.242	debug	(2292) stateChange onvif.0.discoveryRunning {"val":false,"ack":true,"ts":1577877486238,"q":0,"from":"system.adapter.onvif.0","user":"system.user.admin","lc":1577877486238}
      onvif.0	2020-01-01 12:18:06.236	debug	(2292) sendTo "discovery" to system.adapter.admin.0 from system.adapter.onvif.0
      onvif.0	2020-01-01 12:18:06.235	debug	(2292) Discovery finished
      onvif.0	2020-01-01 12:18:06.233	debug	(2292) startCameras
      onvif.0	2020-01-01 12:17:56.209	debug	(2292) stateChange onvif.0.discoveryRunning {"val":true,"ack":true,"ts":1577877476192,"q":0,"from":"system.adapter.onvif.0","user":"system.user.admin","lc":1577877476192}
      onvif.0	2020-01-01 12:17:56.190	debug	(2292) a.b.c.d 554
      onvif.0	2020-01-01 12:17:56.188	debug	(2292) Received "discovery" event
      onvif.0	2020-01-01 12:17:42.237	debug	(2292) system.adapter.admin.0: logging false
      onvif.0	2020-01-01 12:17:35.228	debug	(2292) sendTo "getDevices" to system.adapter.admin.0 from system.adapter.onvif.0
      

      über vlc kommt der stream per
      rtsp://a.b.c.d:554/onvif1

      Jey CeeJ Online
      Jey CeeJ Online
      Jey Cee
      Developer
      schrieb am zuletzt editiert von
      #41

      @Segway Sorry die 0.0.2 ist nicht von mir, das ist eine von 2 Versionen die nicht mehr Weiterentwickelt wird und von meiner ersetzt werden soll. Die Version 0.1.0 ist eine Komplette neu Entwicklung.
      Deshalb kann ich dir da nicht weiterhelfen.

      Persönlicher Support
      Spenden -> paypal.me/J3YC33

      SegwayS 2 Antworten Letzte Antwort
      0
      • Jey CeeJ Jey Cee

        @Segway Sorry die 0.0.2 ist nicht von mir, das ist eine von 2 Versionen die nicht mehr Weiterentwickelt wird und von meiner ersetzt werden soll. Die Version 0.1.0 ist eine Komplette neu Entwicklung.
        Deshalb kann ich dir da nicht weiterhelfen.

        SegwayS Offline
        SegwayS Offline
        Segway
        schrieb am zuletzt editiert von
        #42

        @Jey-Cee
        Oh, okay, verstanden. installiere das mal über die Katze / Github Link ! Melde mich :-)

        Gruß Dirk
        Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

        1 Antwort Letzte Antwort
        0
        • Jey CeeJ Jey Cee

          @Segway Sorry die 0.0.2 ist nicht von mir, das ist eine von 2 Versionen die nicht mehr Weiterentwickelt wird und von meiner ersetzt werden soll. Die Version 0.1.0 ist eine Komplette neu Entwicklung.
          Deshalb kann ich dir da nicht weiterhelfen.

          SegwayS Offline
          SegwayS Offline
          Segway
          schrieb am zuletzt editiert von
          #43

          @Jey-Cee

          okay, hat meine Kamera gefunden - und was nun ?

          cdb0a080-189c-410e-b66b-1431fe783099-image.png

          Gruß Dirk
          Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

          Jey CeeJ 1 Antwort Letzte Antwort
          0
          • SegwayS Segway

            @Jey-Cee

            okay, hat meine Kamera gefunden - und was nun ?

            cdb0a080-189c-410e-b66b-1431fe783099-image.png

            Jey CeeJ Online
            Jey CeeJ Online
            Jey Cee
            Developer
            schrieb am zuletzt editiert von
            #44

            @Segway Benutzername und passwort der Kamera eingeben, Speicherund Schließen, dann holt er sich alles an Infos von der Cam was er kriegen kann. Da sollte auch der rtsp Stream Link dabei sein.

            Persönlicher Support
            Spenden -> paypal.me/J3YC33

            SegwayS 1 Antwort Letzte Antwort
            0
            • Jey CeeJ Jey Cee

              @Segway Benutzername und passwort der Kamera eingeben, Speicherund Schließen, dann holt er sich alles an Infos von der Cam was er kriegen kann. Da sollte auch der rtsp Stream Link dabei sein.

              SegwayS Offline
              SegwayS Offline
              Segway
              schrieb am zuletzt editiert von
              #45

              @Jey-Cee
              Jo habe ich ja, aber die Cam hat keinen Benutzernamen und Passwort. Brauche ich in dem VLC Link wo es geht auch nicht eingeben.
              Als Objekte werden nur folgende angelegt:
              ffd483d5-6339-4d13-b5aa-b321c896a996-image.png

              Gruß Dirk
              Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

              1 Antwort Letzte Antwort
              0
              • KnallochseK Knallochse

                @Jey-Cee

                @Knallochse kannst du mir mal die Objekte für den Drucker Exportieren? Das Objekt vom Drucker Anklicken und dann oben bei den Buttons den ganz rechten Pfeil Klicken.
                160753ec-7c9e-428f-b70b-cea8d75623ca-image.png
                Das dann hier posten.

                Klar, kein Problem

                
                {
                  "onvif.0._003.system.reboot": {
                    "type": "state",
                    "common": {
                      "name": "Reboot ",
                      "type": "boolean",
                      "role": "button",
                      "read": false,
                      "write": true
                    },
                    "native": {},
                    "from": "system.adapter.onvif.0",
                    "user": "system.user.admin",
                    "ts": 1577873649242,
                    "_id": "onvif.0._003.system.reboot",
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    }
                  },
                  "onvif.0._003.logs.getlogs": {
                    "type": "state",
                    "common": {
                      "name": "Get Logs from camera",
                      "type": "boolean",
                      "role": "button",
                      "read": false,
                      "write": true
                    },
                    "native": {},
                    "from": "system.adapter.onvif.0",
                    "user": "system.user.admin",
                    "ts": 1577873649242,
                    "_id": "onvif.0._003.logs.getlogs",
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    }
                  },
                  "onvif.0._003.logs.systemlog": {
                    "type": "state",
                    "common": {
                      "name": "System Log ",
                      "type": "string",
                      "role": "text",
                      "read": true,
                      "write": false
                    },
                    "native": {},
                    "from": "system.adapter.onvif.0",
                    "user": "system.user.admin",
                    "ts": 1577873649242,
                    "_id": "onvif.0._003.logs.systemlog",
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    }
                  },
                  "onvif.0._003.logs.accesslog": {
                    "type": "state",
                    "common": {
                      "name": "Access Log ",
                      "type": "string",
                      "role": "text",
                      "read": true,
                      "write": false
                    },
                    "native": {},
                    "from": "system.adapter.onvif.0",
                    "user": "system.user.admin",
                    "ts": 1577873649242,
                    "_id": "onvif.0._003.logs.accesslog",
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    }
                  },
                  "onvif.0._003": {
                    "type": "device",
                    "common": {
                      "name": "SamsungDrucker",
                      "role": "camera"
                    },
                    "native": {
                      "user": "",
                      "password": "",
                      "ip": "192.168.178.23",
                      "urn": "urn:uuid:16a65700-007c-1000-bb49-30cda7aa23f1",
                      "service": "http://192.168.178.23:8018/wsd",
                      "hardware": "",
                      "location": "",
                      "types": [
                        "wsdp:Device",
                        "wprt:PrintDeviceType",
                        "wscn:ScanDeviceType"
                      ],
                      "scopes": [
                        ""
                      ],
                      "port": ""
                    },
                    "from": "system.adapter.onvif.0",
                    "user": "system.user.admin",
                    "ts": 1577873900661,
                    "_id": "onvif.0._003",
                    "acl": {
                      "object": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    }
                  }
                }
                
                
                Jey CeeJ Online
                Jey CeeJ Online
                Jey Cee
                Developer
                schrieb am zuletzt editiert von
                #46

                @Knallochse Danke, der Drucker benutzt das gleiche Protokoll um gefunden zu werden. Hab jetzt einen Filter eingebaut damit wirklich nur Kameras gefunden werden.

                Persönlicher Support
                Spenden -> paypal.me/J3YC33

                1 Antwort Letzte Antwort
                1
                • KnallochseK Offline
                  KnallochseK Offline
                  Knallochse
                  schrieb am zuletzt editiert von Knallochse
                  #47

                  @Jey-Cee könnte man über onvif die RSSI Werte der WLAN Verbindung der Kameras auslesen?
                  Meine Kameras verbinden sich manchmal mit dem falschen Repeater (Sch... Mesh).
                  So könnte man auf Grund von schlechten Verbindungswerten einen Reboot starten.

                  HM&HMIP über 100 Geräte + IoBroker auf DS918+ uvm.

                  ? Jey CeeJ 2 Antworten Letzte Antwort
                  0
                  • KnallochseK Knallochse

                    @Jey-Cee könnte man über onvif die RSSI Werte der WLAN Verbindung der Kameras auslesen?
                    Meine Kameras verbinden sich manchmal mit dem falschen Repeater (Sch... Mesh).
                    So könnte man auf Grund von schlechten Verbindungswerten einen Reboot starten.

                    ? Offline
                    ? Offline
                    Ein ehemaliger Benutzer
                    schrieb am zuletzt editiert von
                    #48

                    @Knallochse hast du AVM Kisten?
                    Hatte mit dem "Mesh" auch so meine Probleme.. schau mal, so gehts bei mir sehr gut :
                    22e4518f-47f8-416e-a56d-ed4f9ffba761-grafik.png

                    hab permanent zwischen 245 und 300 Geräte im Netz..

                    880d4519-3f5b-4068-9d1a-bf30b192f2d3-grafik.png

                    KnallochseK 1 Antwort Letzte Antwort
                    1
                    • KnallochseK Knallochse

                      @Jey-Cee könnte man über onvif die RSSI Werte der WLAN Verbindung der Kameras auslesen?
                      Meine Kameras verbinden sich manchmal mit dem falschen Repeater (Sch... Mesh).
                      So könnte man auf Grund von schlechten Verbindungswerten einen Reboot starten.

                      Jey CeeJ Online
                      Jey CeeJ Online
                      Jey Cee
                      Developer
                      schrieb am zuletzt editiert von
                      #49

                      @Knallochse sagte in Test Adapter onvif v0.1.x:

                      könnte man über onvif die RSSI Werte der WLAN Verbindung der Kameras auslesen?

                      Es gibt tatsächlich die Möglichkeit per onvif WLAN Informationen ab zu rufen, aber ich weis nicht ob RSSI Werte auch dabei sind. Zumindest sollte es möglich sein nach WLANs in Reichweite zu scannen wenn die Kamera das Unterstützt.

                      Persönlicher Support
                      Spenden -> paypal.me/J3YC33

                      KnallochseK 1 Antwort Letzte Antwort
                      0
                      • ? Ein ehemaliger Benutzer

                        @Knallochse hast du AVM Kisten?
                        Hatte mit dem "Mesh" auch so meine Probleme.. schau mal, so gehts bei mir sehr gut :
                        22e4518f-47f8-416e-a56d-ed4f9ffba761-grafik.png

                        hab permanent zwischen 245 und 300 Geräte im Netz..

                        880d4519-3f5b-4068-9d1a-bf30b192f2d3-grafik.png

                        KnallochseK Offline
                        KnallochseK Offline
                        Knallochse
                        schrieb am zuletzt editiert von
                        #50

                        @ilovegym ja, Fitzbox 7580+3 AVM Repeater.
                        Ich habe mal deine Einstellungen übernommen. Jetzt beobachte ich das Verhalten der WLAN Geräte .
                        Vielen Dank und ein gesundes neues Jahr 👍

                        HM&HMIP über 100 Geräte + IoBroker auf DS918+ uvm.

                        ? 1 Antwort Letzte Antwort
                        0
                        • KnallochseK Knallochse

                          @ilovegym ja, Fitzbox 7580+3 AVM Repeater.
                          Ich habe mal deine Einstellungen übernommen. Jetzt beobachte ich das Verhalten der WLAN Geräte .
                          Vielen Dank und ein gesundes neues Jahr 👍

                          ? Offline
                          ? Offline
                          Ein ehemaliger Benutzer
                          schrieb am zuletzt editiert von
                          #51

                          @Knallochse Danke, auch frohes neues !
                          Hab 18 Kameras, und seitdem ist Ruhe, da das Mesh versucht hat, die Streams woanders hin zu connecten, was zu abrissen führte..

                          1 Antwort Letzte Antwort
                          0
                          • Jey CeeJ Jey Cee

                            @Knallochse sagte in Test Adapter onvif v0.1.x:

                            könnte man über onvif die RSSI Werte der WLAN Verbindung der Kameras auslesen?

                            Es gibt tatsächlich die Möglichkeit per onvif WLAN Informationen ab zu rufen, aber ich weis nicht ob RSSI Werte auch dabei sind. Zumindest sollte es möglich sein nach WLANs in Reichweite zu scannen wenn die Kamera das Unterstützt.

                            KnallochseK Offline
                            KnallochseK Offline
                            Knallochse
                            schrieb am zuletzt editiert von
                            #52

                            @Jey-Cee sagte in Test Adapter onvif v0.1.x:

                            Zumindest sollte es möglich sein nach WLANs in Reichweite zu scannen wenn die Kamera das Unterstützt.

                            Bei meinen Kameras kann man über das WebUI einen Suchlauf anleiern, und es werden alle erkannten Netzwerke aufgelistet.

                            HM&HMIP über 100 Geräte + IoBroker auf DS918+ uvm.

                            1 Antwort Letzte Antwort
                            0
                            • C Offline
                              C Offline
                              ChrisXY
                              schrieb am zuletzt editiert von
                              #53

                              hm was ist wenn die cams unterschiedliche Logins haben ? Es wurden 3 gefunden auch mit Bild. Ohne Zugangsdaten. Schön wäre wenn man draufklicken kann und die Speziellen Login Daten der gefunden Cam einzutragen

                              Jey CeeJ 1 Antwort Letzte Antwort
                              0
                              • C ChrisXY

                                hm was ist wenn die cams unterschiedliche Logins haben ? Es wurden 3 gefunden auch mit Bild. Ohne Zugangsdaten. Schön wäre wenn man draufklicken kann und die Speziellen Login Daten der gefunden Cam einzutragen

                                Jey CeeJ Online
                                Jey CeeJ Online
                                Jey Cee
                                Developer
                                schrieb am zuletzt editiert von
                                #54

                                @ChrisXY sagte in Test Adapter onvif v0.1.x:

                                hm was ist wenn die cams unterschiedliche Logins haben ?

                                Du meinst wenn eine Cam mehrere Logins hat? Das macht für mich keinen Sinn, ioBroker ist in meinen Cams der Administrator und kann damit alles machen. Warum sollte ich mehrere Benutzer anlegen wenn es auch einer tut.
                                Vielleicht bau ich das irgendwann ein, aber das hat sehr niedrige Priorität.

                                Persönlicher Support
                                Spenden -> paypal.me/J3YC33

                                C 1 Antwort Letzte Antwort
                                0
                                • Dr. BakteriusD Dr. Bakterius

                                  @Jey-Cee sagte in Test Adapter onvif v0.1.x:

                                  @Dr-Bakterius hast du den Adapter neu gestartet?
                                  Falls ja geht es wohl so nicht oder irgendwas stimmt nicht.

                                  Nicht nur einmal! :confused:

                                  Zusammengefasst: onvif ist aktiviert, die Cams sind vom Broker aus erreichbar (im selben Subnetz) und mit anderer Software (von einem anderen Rechner) klappt auch die onvif-Verbindung. Cams, ioBroker und Adapter wurden mehrfach neu gestartet und das Log wirft keine Fehler aus. Trotzdem wird keine der drei Cams vom Adapter gefunden.

                                  Noch Ideen?

                                  GlasfaserG Online
                                  GlasfaserG Online
                                  Glasfaser
                                  schrieb am zuletzt editiert von Glasfaser
                                  #55

                                  @Dr-Bakterius

                                  Test mal hier , was als Log Ausgabe folgt .

                                  In der Instanz JavaScript , das Modul node-onvif eintragen

                                  1.JPG

                                  JavaScript :

                                  /// ONVIF Ausgabe ioBroker 01.01.2020 Glasfaser
                                  
                                  const onvif = require('node-onvif');// 
                                   
                                  console.log('Start the discovery process.');
                                  // Find the ONVIF network cameras.
                                  // It will take about 3 seconds.
                                  onvif.startProbe().then((device_info_list) => {
                                    console.log(device_info_list.length + ' devices were found.');
                                    // Show the device name and the URL of the end point.
                                    device_info_list.forEach((info) => {
                                      console.log('- ' + info.urn);
                                      console.log('  - ' + info.name);
                                      console.log('  - ' + info.xaddrs[0]);
                                    });
                                  }).catch((error) => {
                                    console.error(error);
                                  });
                                  

                                  So sieht es dann aus :

                                  1.JPG

                                  Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                  Dr. BakteriusD 1 Antwort Letzte Antwort
                                  0
                                  • Jey CeeJ Jey Cee

                                    @Glasfaser sagte in Test Adapter onvif v0.1.x:

                                    Laut Doku von onvif-nvt ,

                                    Auf die habe ich gehört, deswegen hat es auch nicht funktioniert. Die Doku sagt callback geht und so hatte ich es versucht, aber tatsächlich geht nur der Promise weg.
                                    Hab heute nacht noch viel probiert, aber auf das bin ich erst heute morgen gekommen.

                                    GlasfaserG Online
                                    GlasfaserG Online
                                    Glasfaser
                                    schrieb am zuletzt editiert von Glasfaser
                                    #56

                                    @Jey-Cee sagte in Test Adapter onvif v0.1.x:

                                    @Glasfaser sagte in Test Adapter onvif v0.1.x:

                                    Laut Doku von onvif-nvt ,

                                    Auf die habe ich gehört, deswegen hat es auch nicht funktioniert. Die Doku sagt callback geht und so hatte ich es versucht, aber tatsächlich geht nur der Promise weg.
                                    Hab heute nacht noch viel probiert, aber auf das bin ich erst heute morgen gekommen.

                                    Habe sonst dieses Script für eine Cam genutzt , was auch gut funktioniert.
                                    (War hier aus dem Forum)

                                    Dort wird Preset auch angesprochen , vielleicht kannst du damit etwas anfangen !???

                                    /* 
                                    Instanz Javascript Modul eintragen : node-onvif
                                    
                                    Ab Zeile 219 anpassen // Create an OnvifDevice object
                                    xaddr :http://deineIP/onvif/device_service
                                    user :
                                    pass :
                                    
                                    */
                                    
                                    const fC = false;
                                    const logging = false;
                                    
                                    const pfad = 'javascript.' + instance + '.VIS.Kamera.1.PTZ.';
                                    const idSpeed     = pfad + 'Geschwindigkeit';
                                    
                                    const idStoppzeit = pfad + 'Stoppzeit';
                                    
                                    const idStopp =     pfad + 'Stopp';
                                    
                                    const idRechts =    pfad + 'rechts';
                                    
                                    const idLinks =     pfad + 'links';
                                    
                                    const idHoch =      pfad + 'hoch';
                                    
                                    const idRunter =    pfad + 'runter';
                                    
                                    const idZoomIn =    pfad + 'ZoomIn';
                                    
                                    const idZoomOut =   pfad + 'ZoomOut';
                                    
                                    const idGotoPreset =   pfad + 'gotoPreset';
                                    
                                    const onvif = require('node-onvif');
                                    
                                    const fs = require('fs');
                                    
                                    createState(idSpeed, 1, fC, {
                                    
                                      def: 1,
                                    
                                      min: 0,
                                    
                                      max: 1,
                                    
                                      name: 'Kamera 1 PTZ Geschwindkeit bei Bewegung',
                                    
                                      desc: 'Geschwindigkeit von 0-1 bei der Bewegung',
                                    
                                      type: 'number'
                                    
                                    });
                                    
                                    createState(idStoppzeit, 1, fC, {
                                    
                                      def: 0,
                                    
                                      min: 0,
                                    
                                      name: 'Kamera 1 PTZ Stoppzeit',
                                    
                                      desc: 'Dauer in Sekunden bis zum Stopp der Bewegung',
                                    
                                      type: 'number',
                                    
                                      unit: 's'
                                    
                                    });
                                    
                                    createState(idStopp, false, fC, {
                                    
                                      def: false,
                                    
                                      name: 'Kamera 1 PTZ Stopp',
                                    
                                      desc: 'Sofortiger Stopp der Bewegung',
                                    
                                      type: 'boolean',
                                    
                                      role: 'switch'
                                    
                                    });
                                    
                                    createState(idRechts, false, fC, {
                                    
                                      def: false,
                                    
                                      name: 'Kamera 1 PTZ rechts',
                                    
                                      desc: 'Bewegung nach rechts',
                                    
                                      type: 'boolean',
                                    
                                      role: 'switch'
                                    
                                    });
                                    
                                    createState(idLinks, false, fC, {
                                    
                                      def: false,
                                    
                                      name: 'Kamera 1 PTZ links',
                                    
                                      desc: 'Bewegung nach links',
                                    
                                      type: 'boolean',
                                    
                                      role: 'switch'
                                    
                                    });
                                    
                                    createState(idHoch, false, fC, {
                                    
                                      def: false,
                                    
                                      name: 'Kamera 1 PTZ oben',
                                    
                                      desc: 'Bewegung nach oben',
                                    
                                      type: 'boolean',
                                    
                                      role: 'switch'
                                    
                                    });
                                    
                                    createState(idRunter, false, fC, {
                                    
                                      def: false,
                                    
                                      name: 'Kamera 1 PTZ unten',
                                    
                                      desc: 'Bewegung nach unten',
                                    
                                      type: 'boolean',
                                    
                                      role: 'switch'
                                    
                                    });
                                    
                                    createState(idZoomIn, false, fC, {
                                    
                                      def: false,
                                    
                                      name: 'Kamera 1 PTZ Zoom in',
                                    
                                      desc: 'Bild vergößern',
                                    
                                      type: 'boolean',
                                    
                                      role: 'switch'
                                    
                                    });
                                    
                                    createState(idZoomOut, false, fC, {
                                    
                                      def: false,
                                    
                                      name: 'Kamera 1 PTZ Zoom out',
                                    
                                      desc: 'Bild verkleinern',
                                    
                                      type: 'boolean',
                                    
                                      role: 'switch'
                                    
                                    });
                                    
                                    createState(idGotoPreset, 0, fC, {
                                    
                                      def:  0,
                                    
                                      name: 'Kamera 1 PTZ Preset Wähler',
                                    
                                      desc: 'Preset auswählen (Zahlen von 1 bis X)',
                                    
                                      type: 'number'
                                    
                                    });
                                    
                                    
                                    
                                    log('Start the discovery process.');
                                    
                                    //Find the ONVIF network cameras
                                    
                                    onvif.startDiscovery((info) => {
                                    
                                    // Show the device name and the URL of the end point
                                    
                                    log('- ' + info.urn);
                                    
                                    log('  - ' + info.name);
                                    
                                    log('  - ' + info.xaddrs[0]);
                                    
                                    });
                                    
                                    // Stop the discovery process in 3 seconds
                                    
                                    setTimeout(() => {
                                    
                                    onvif.stopDiscovery(() => {
                                    
                                      log('Stopped the discovery process.');
                                    
                                    {1}
                                    
                                    });
                                    
                                    }, 3000);
                                    
                                    
                                    
                                    // Create an OnvifDevice object
                                    
                                    const device = new onvif.OnvifDevice({
                                    
                                      xaddr: 'http://deineIP/onvif/device_service',
                                    
                                      user : 'xxxxxxxxx',
                                    
                                      pass : 'xxxxxxxxx'
                                    
                                    });
                                    
                                    function movePTZ (ptz_x, ptz_y, ptz_z, stoptime) {
                                    
                                      // https://github.com/futomi/node-onvif#ptzmoveparams-callback
                                    
                                      device.init((error) => {
                                    
                                          if (error) {
                                    
                                              log('[ERROR] ' + error.message);
                                    
                                              return;
                                    
                                          } else {
                                    
                                              // +++ CONTROL via PTZ 
                                    
                                              var ptzlog = '';
                                    
                                              ptz_x = (ptz_x <=1 && ptz_x >=-1) ? ptz_x : 0;
                                    
                                              ptz_y = (ptz_y <=1 && ptz_y >=-1) ? ptz_y : 0;
                                    
                                              ptz_z = (ptz_z <=1 && ptz_z >=-1) ? ptz_z : 0;
                                    
                                              if (ptz_x > 0) ptzlog = 'Schwenk nach rechts';
                                    
                                              if (ptz_x < 0) ptzlog = 'Schwenk nach links';
                                    
                                              if (ptz_y > 0) ptzlog = 'Schwenk nach oben';
                                    
                                              if (ptz_y < 0) ptzlog = 'Schwenk nach unten';
                                    
                                              if (ptz_z > 0) ptzlog = 'Zoom in';
                                    
                                              if (ptz_z < 0) ptzlog = 'Zoom out';
                                    
                                              ptzlog += ' für ' + stoptime + 's';
                                    
                                              if (logging) log(ptzlog);
                                    
                                              // Create the parameters
                                    
                                              var params = {
                                    
                                                  'speed': {
                                    
                                                      x: ptz_x, // Speed of pan (in the range of -1 to 1.0)
                                    
                                                      y: ptz_y, // Speed of tilt (in the range of -1 to 1.0)
                                    
                                                      z: ptz_z  // Speed of zoom (in the range of -1 to 1.0)
                                    
                                                  },
                                    
                                                  'timeout': 30 // seconds
                                    
                                              };
                                    
                                              // Move the camera
                                    
                                              device.ptzMove(params, (error) => {
                                    
                                                  if (error) {
                                    
                                                      log(error.message, 'error');
                                    
                                                  } else {
                                    
                                                      log('Camera moved!');
                                    
                                                  }
                                    
                                              });
                                    
                                    
                                    
                                              // Stop to the PTZ in X seconds
                                    
                                              setTimeout(() => {
                                    
                                                  device.ptzStop((error) => {
                                    
                                                      if (error) {
                                    
                                                          log(error.message, 'error');
                                    
                                                      } else {
                                    
                                                          log('Succeeded to stop after ' + stoptime + ' seconds.');
                                    
                                                      }
                                    
                                                  });
                                    
                                              }, stoptime * 1000);  // stopzeit
                                    
                                          }
                                    
                                      });
                                    
                                    }
                                    
                                    function stopMoving () {
                                    
                                      device.ptzStop((error) => {
                                    
                                          if (error) {
                                    
                                              log(error.message, 'error');
                                    
                                          } else {
                                    
                                              log('Succeeded to stop.');
                                    
                                          }
                                    
                                      });
                                    
                                    }
                                    
                                    // https://github.com/futomi/node-onvif#gotopresetparams-callback-method
                                    
                                    function gotoPreset (presetNumber) { // 1,2,3 kommt als ganze Zahl
                                    
                                      if (presetNumber > 0) {
                                    
                                          device.init((error) => {
                                    
                                              if (error) {
                                    
                                                  log('[ERROR] ' + error.message, 'error');
                                    
                                                  return;
                                    
                                              } /*else {*/
                                    
                                              // The OnvifServicePtz object
                                    
                                              var ptz = device.services.ptz;
                                    
                                              if (ptz) {
                                    
                                                  var profile = device.getCurrentProfile(); // debug
                                    
                                                  log(JSON.stringify(profile, null, '  ')); // debug log
                                    
                                    
                                    
                                                  var params = {
                                    
                                                      'ProfileToken': profile['token'],
                                    
                                                      'PresetToken' : presetNumber.toString(),
                                    
                                                      'Speed'       : {'x': 1, 'y': 1, 'z': 1}
                                    
                                                  };
                                    
                                    
                                    
                                                  device.services.ptz.gotoPreset(params, (error, result) => {
                                    
                                                      if (error) {
                                    
                                                          log('[ERROR] ' + error.message, 'error');
                                    
                                                      } else {
                                    
                                                          if (logging) log('Preset: ' + JSON.stringify(result.data, null, '  ')); // statt result.['data']
                                    
                                                          log('Camera moved to Preset #' + presetNumber.toString());
                                    
                                                      }
                                    
                                                  });
                                    
                                              } else {
                                    
                                                  log('[ERROR] Your ONVIF network camera does not support the PTZ service.');
                                    
                                              }
                                    
                                              //}
                                    
                                          });
                                    
                                      } else {
                                    
                                          log('Preset für Kamera 1 kein valider Preset-Wert'); // debug log
                                    
                                      }
                                    
                                    }
                                    
                                    
                                    
                                    
                                    // Links
                                    
                                    on({id: idLinks, val: true},function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         var stoppzeit = getState(idStoppzeit).val;
                                    
                                         var speed = getState(idSpeed).val;
                                    
                                         movePTZ(-1 * speed , 0, 0, stoppzeit);
                                    
                                         setStateDelayed(idLinks, false, 500); // ggf , 500 + (stoppzeit * 1000)
                                    
                                      }
                                    
                                    });
                                    
                                    // rechts
                                    
                                    on({id: idRechts, val: true}, function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         var stoppzeit = getState(idStoppzeit).val;
                                    
                                         var speed = getState(idSpeed).val;
                                    
                                         movePTZ(1 * speed , 0, 0, stoppzeit);
                                    
                                         setStateDelayed(idRechts, false, 500);
                                    
                                      }
                                    
                                    });
                                    
                                    // oben
                                    
                                    on({id: idHoch, val: true}, function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         var stoppzeit = getState(idStoppzeit).val;
                                    
                                         var speed = getState(idSpeed).val;
                                    
                                         movePTZ(0, 1 * speed, 0, stoppzeit);
                                    
                                         setStateDelayed(idHoch, false, 500, 500);
                                    
                                      }
                                    
                                    });
                                    
                                    // runter
                                    
                                    on({id: idRunter, val: true}, function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         var stoppzeit = getState(idStoppzeit).val;
                                    
                                         var speed = getState(idSpeed).val;
                                    
                                         movePTZ(0, -1 * speed, 0, stoppzeit);
                                    
                                         setStateDelayed(idRunter, false, 500);
                                    
                                      }
                                    
                                    });
                                    
                                    // vergrößern
                                    
                                    on({id: idZoomIn, val: true}, function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         var stoppzeit = getState(idStoppzeit).val;
                                    
                                         var speed = getState(idSpeed).val;
                                    
                                         movePTZ(0, 0, 1 * speed, stoppzeit);
                                    
                                         setStateDelayed(idZoomIn, false, 500);
                                    
                                      }
                                    
                                    });
                                    
                                    // verkleinern
                                    
                                    on({id:idZoomOut, val: true}, function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         var stoppzeit = getState(idStoppzeit).val;
                                    
                                         var speed = getState(idSpeed).val;
                                    
                                         movePTZ(0, 0, -1 * speed, stoppzeit);
                                    
                                         setStateDelayed(idZoomOut, false, 500);
                                    
                                      }
                                    
                                    });
                                    
                                    // sofortiger Stopp
                                    
                                    on(idStopp, function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         stopMoving();
                                    
                                         setStateDelayed(idStopp, false, 500);
                                    
                                         setState(idGotoPreset, 0);
                                    
                                      }
                                    
                                    });
                                    
                                    
                                    
                                    on({
                                    
                                      id: [idStopp, idZoomOut, idZoomIn, idRunter, idHoch, idRechts, idLinks], 
                                    
                                      change: 'any'
                                    
                                    }, function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         setState(idGotoPreset, 0);
                                    
                                      }
                                    
                                    });
                                    
                                    // zum bereits gespeicherten Preset X fahren (Ganze Zahl, kommt aus VIS, Scenes oder Script)
                                    
                                    on(idGotoPreset, function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         gotoPreset(parseInt(obj.state.val,10)); // vorher 10 wird später zu einem String gewandelt
                                    
                                         setStateDelayed(idGotoPreset, 0, 500); // reset
                                    
                                      }
                                    
                                    });
                                    
                                    /// Test hochrechts
                                    
                                    const idHochRechts = pfad + 'hochrechts';
                                    
                                    
                                    createState(idHochRechts, false, fC, {def: false,name: 'Kamera 1 PTZ obenrechts',desc: 'Bewegung nach obenrechts',type: 'boolean',role: 'switch'});
                                    
                                    
                                    on(idHochRechts, function (obj) {
                                    
                                      if (!obj.state.ack && obj.state.val) {
                                    
                                         var stoppzeit = getState(idStoppzeit).val;
                                    
                                         var speed = getState(idSpeed).val;
                                         
                                         movePTZ(1 * speed , 0, 0, stoppzeit);
                                    
                                         movePTZ(0, 1 * speed, 0, stoppzeit);
                                    
                                         setStateDelayed(idHochRechts, false, 500);
                                         
                                      }
                                    
                                    });
                                    
                                    
                                    
                                    

                                    Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                    1 Antwort Letzte Antwort
                                    0
                                    • S Offline
                                      S Offline
                                      steimi
                                      schrieb am zuletzt editiert von
                                      #57

                                      @Jey-Cee kannst du die Objekt-Struktur dahingehend anpassen, dass statt IPC-model_xxx die IP-Adresse in Form von 192_168_1_1 verwenden wird? Steigert mMn die Übersichtlichkeit. Und wäre es möglich im Adapter die Liste der Cam sortierbar zu machen?

                                      Thx Steimi

                                      Jey CeeJ 1 Antwort Letzte Antwort
                                      0
                                      • S steimi

                                        @Jey-Cee kannst du die Objekt-Struktur dahingehend anpassen, dass statt IPC-model_xxx die IP-Adresse in Form von 192_168_1_1 verwenden wird? Steigert mMn die Übersichtlichkeit. Und wäre es möglich im Adapter die Liste der Cam sortierbar zu machen?

                                        Thx Steimi

                                        Jey CeeJ Online
                                        Jey CeeJ Online
                                        Jey Cee
                                        Developer
                                        schrieb am zuletzt editiert von Jey Cee
                                        #58

                                        @steimi Also die IP zu nutzen ist sicher keine gute Idee, die kann sich ändern. Alternativ kann ich die urn benutzen, die ändert sich nicht: 88d87a05-d7f77e45-b1e9-00626E51E215

                                        @steimi sagte in Test Adapter onvif v0.1.x:

                                        Und wäre es möglich im Adapter die Liste der Cam sortierbar zu machen?

                                        Ich werde es mir merken, ist aber gerade niedrige Priorität.
                                        Edit: Wonach soll denn Sortiert werden können?

                                        Persönlicher Support
                                        Spenden -> paypal.me/J3YC33

                                        1 Antwort Letzte Antwort
                                        0
                                        • S Offline
                                          S Offline
                                          steimi
                                          schrieb am zuletzt editiert von
                                          #59

                                          Wie oft ändern man den die IP-Adresse der Cam's? Beim 'wiffi-wz'-Adapter funktioniert dies ganz gut. Vlt geht aber auch ein frei vergebbarer Name für den Objektbaum.
                                          Es muss nicht sortierbar sein, allerdings sollte zumindest nach der Erkennen nach etwas sortiert sein (IP-Adresse?).

                                          Jey CeeJ 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          748

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe