In een eerdere blog heb ik geschreven over Nx Witness. Deze software bevalt me uitermate goed en ik heb dan ook een licentie aangeschaft voor een Starterspack-4 waarmee je tot 4 camera’s videobeelden kunt opnemen. Zoals reeds eerder aangegeven heb je voor het bekijken van je beelden geen licentie nodig.
Nu heeft Nx Witness ook een goed gedocumenteerde API zodat je gebruik kunt maken van de extra functionaliteit van je camera’s (denk aan snapshots en beelden bekijken). Deze kun je ook heel handig gebruiken in Domoticz. In deze blog leg ik uit hoe ik dat heb gedaan.
Om een bepaalde IP-camera te gebruiken moet je deze benaderen met een ID. Normaal gesproken is dat een lange hexadecimale string, maar je kunt in Nx Witness ook een ‘Logical ID’ definiëren voor elke IP camera in je netwerk. Dat is wel zo gemakkelijk. Dit doe je in je Camera Settings van de Nx Witness software.
Nu we een ‘Logical ID’ hebben gedefinieerd gaan we de camera in Domoticz integreren via de API. Ga hiervoor in Domoticz naar je Camera instellingen en vul je gegevens in.
Voor de ImageURL maken we nu gebruik van de API van Nx Witness. Hier vul je in:
/web/ec2/cameraThumbnail?cameraId=<logical ID>
Deze URL kun je ook heel handig gebruiken als je een snapshot wilt maken in je LUA scripts. Gebruik hiervoor onderstaande code:
-- Make snapshot os.execute("curl -k -u admin:password https://<ip-adres>:<poort>/ec2/cameraThumbnail?cameraId=<logical ID> > /home/pi/domoticz/www/foto_voordeur.jpg")
Je kunt met de API van Nx Witness ook een video-stream benaderen met de volgende code:
https://admin:paswoord@<ip-adres>:<poort>/media/<logical ID>.webm
Kijk zelf maar eens in de Nx Witness API wat er nog meer kan. Het voordeel van de API is dat deze erg snel en betrouwbaar werkt. Tevens ondersteunt Nx Witness erg veel IP camera’s (ze claimen 99% van wat er beschikbaar is). Als je IP camera dus geen URL heeft om een snapshot te maken kun je dat met deze manier wel voor elkaar krijgen.
Ik hoop dat je even de tijd zou willen nemen om mij te helpen. Ik zou heel graag NX witness op mijn Rapserry pi 4 willen laten draaien. Jouw blog werkte voor mij niet, ik krijg deze melding;
dpkg: fout: krijg geen toegang tot archief ‘nxwitness-server-3.2.0.287838-linux64.deb’: Bestand of map bestaat niet root@raspberrypi:/home/pi#
Zou je me wat tips kunnen geven?
Het lijkt erop dat je software nog niet hebt gedownload. Zie ook de volgende tekst in mijn originele blog:
Maak een account aan op de site van NX Network Optix en log hiermee in. Download nu de Nx Witness Server software voor Ubuntu Linux vanaf deze lokatie.
Downloaden van de installatie-file doe je vanaf hier. Je moet wel eerst een account op de site van NX Network Optix hebben aangemaakt en hiermee zijn ingelogd. In jouw geval (Raspberry Pi) kies je dan de download voor ARM devices (rechtsonder).