Adding Reolink API to the IpCamera binding, beta testers needed

@matt1 Below is the output from 3 of my cameras. The log quickly fills at the TRACE level. So not all info is included.

Of note, the binding shows a thing online even if the password or NVR channel is wrong. It would be great if showed online only if successfully connected - I think this was the problem I had above, I had the NVR channel set to a non-existing camera but it was online.

Below is the output of Reolink Duo 2 using an administrator-level account.

image

Here is the ONVIF info.

2024-01-15 20:19:09.173 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: GetStatus
2024-01-15 20:19:09.175 [DEBUG] [amera.internal.onvif.OnvifConnection] - ptzNodeToken=000
2024-01-15 20:19:09.176 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: GetConfigurations
2024-01-15 20:19:09.230 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">c38APMXCPX+qwc3JIEKMsiWnE50=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MTY3NTMzMzYwNQ==</wsse:Nonce><wsu:Created>2024-01-16T02:19:09.174Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:GetStatusResponse><tptz:PTZStatus><tt:MoveStatus><tt:PanTilt>IDLE</tt:PanTilt><tt:Zoom>IDLE</tt:Zoom></tt:MoveStatus><tt:UtcTime>2024-01-16T02:19:09Z</tt:UtcTime></tptz:PTZStatus></tptz:GetStatusResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:19:09.231 [DEBUG] [amera.internal.onvif.OnvifConnection] - Processing new PTZ location now
2024-01-15 20:19:09.231 [WARN ] [amera.internal.onvif.OnvifConnection] - Binding could not determin the cameras current PTZ location. Not all cameras respond to GetStatus requests.
2024-01-15 20:19:09.270 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">kCUtUBpD+yr+j7wMBq46EhKpBHM=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MjAyNDY0MzE0NQ==</wsse:Nonce><wsu:Created>2024-01-16T02:19:09.054Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><trt:GetStreamUriResponse><trt:MediaUri><tt:Uri>rtsp://192.168.1.92:554/h264Preview_01_main</tt:Uri><tt:InvalidAfterConnect>false</tt:InvalidAfterConnect><tt:InvalidAfterReboot>false</tt:InvalidAfterReboot><tt:Timeout>PT10S</tt:Timeout></trt:MediaUri></trt:GetStreamUriResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:19:09.271 [DEBUG] [amera.internal.onvif.OnvifConnection] - GetStreamUri: rtsp://192.168.1.92:554/h264Preview_01_main
2024-01-15 20:19:09.272 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">E2dpM/ENRWECtvKT8VIINI4J2Lo=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MTY5NDI3NDk5MA==</wsse:Nonce><wsu:Created>2024-01-16T02:19:09.177Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:GetConfigurationsResponse><tptz:PTZConfiguration token="000"><tt:Name>PtzConfig000</tt:Name><tt:UseCount>3</tt:UseCount><tt:NodeToken>000</tt:NodeToken><tt:DefaultContinuousPanTiltVelocitySpace>http://www.onvif.org/ver10/tptz/PanTiltSpaces/VelocityGenericSpace</tt:DefaultContinuousPanTiltVelocitySpace><tt:DefaultContinuousZoomVelocitySpace>http://www.onvif.org/ver10/tptz/ZoomSpaces/VelocityGenericSpace</tt:DefaultContinuousZoomVelocitySpace><tt:DefaultPTZSpeed><tt:PanTilt x="1" y="1" space="http://www.onvif.org/ver10/tptz/PanTiltSpaces/GenericSpeedSpace"></tt:PanTilt><tt:Zoom x="1" space="http://www.onvif.org/ver10/tptz/ZoomSpaces/ZoomGenericSpeedSpace"></tt:Zoom></tt:DefaultPTZSpeed><tt:DefaultPTZTimeout>PT5S</tt:DefaultPTZTimeout><tt:PanTiltLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/PanTiltSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange><tt:YRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:YRange></tt:Range></tt:PanTiltLimits><tt:ZoomLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/ZoomSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange></tt:Range></tt:ZoomLimits></tptz:PTZConfiguration><tptz:PTZConfiguration token="001"><tt:Name>PtzConfig001</tt:Name><tt:UseCount>3</tt:UseCount><tt:NodeToken>001</tt:NodeToken><tt:DefaultContinuousPanTiltVelocitySpace>http://www.onvif.org/ver10/tptz/PanTiltSpaces/VelocityGenericSpace</tt:DefaultContinuousPanTiltVelocitySpace><tt:DefaultContinuousZoomVelocitySpace>http://www.onvif.org/ver10/tptz/ZoomSpaces/VelocityGenericSpace</tt:DefaultContinuousZoomVelocitySpace><tt:DefaultPTZSpeed><tt:PanTilt x="1" y="1" space="http://www.onvif.org/ver10/tptz/PanTiltSpaces/GenericSpeedSpace"></tt:PanTilt><tt:Zoom x="1" space="http://www.onvif.org/ver10/tptz/ZoomSpaces/ZoomGenericSpeedSpace"></tt:Zoom></tt:DefaultPTZSpeed><tt:DefaultPTZTimeout>PT5S</tt:DefaultPTZTimeout><tt:PanTiltLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/PanTiltSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange><tt:YRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:YRange></tt:Range></tt:PanTiltLimits><tt:ZoomLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/ZoomSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange></tt:Range></tt:ZoomLimits></tptz:PTZConfiguration><tptz:PTZConfiguration token="002"><tt:Name>PtzConfig002</tt:Name><tt:UseCount>3</tt:UseCount><tt:NodeToken>002</tt:NodeToken><tt:DefaultContinuousPanTiltVelocitySpace>http://www.onvif.org/ver10/tptz/PanTiltSpaces/VelocityGenericSpace</tt:DefaultContinuousPanTiltVelocitySpace><tt:DefaultContinuousZoomVelocitySpace>http://www.onvif.org/ver10/tptz/ZoomSpaces/VelocityGenericSpace</tt:DefaultContinuousZoomVelocitySpace><tt:DefaultPTZSpeed><tt:PanTilt x="1" y="1" space="http://www.onvif.org/ver10/tptz/PanTiltSpaces/GenericSpeedSpace"></tt:PanTilt><tt:Zoom x="1" space="http://www.onvif.org/ver10/tptz/ZoomSpaces/ZoomGenericSpeedSpace"></tt:Zoom></tt:DefaultPTZSpeed><tt:DefaultPTZTimeout>PT5S</tt:DefaultPTZTimeout><tt:PanTiltLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/PanTiltSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange><tt:YRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:YRange></tt:Range></tt:PanTiltLimits><tt:ZoomLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/ZoomSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange></tt:Range></tt:ZoomLimits></tptz:PTZConfiguration><tptz:PTZConfiguration token="003"><tt:Name>PtzConfig003</tt:Name><tt:UseCount>3</tt:UseCount><tt:NodeToken>003</tt:NodeToken><tt:DefaultContinuousPanTiltVelocitySpace>http://www.onvif.org/ver10/tptz/PanTiltSpaces/VelocityGenericSpace</tt:DefaultContinuousPanTiltVelocitySpace><tt:DefaultContinuousZoomVelocitySpace>http://www.onvif.org/ver10/tptz/ZoomSpaces/VelocityGenericSpace</tt:DefaultContinuousZoomVelocitySpace><tt:DefaultPTZSpeed><tt:PanTilt x="1" y="1" space="http://www.onvif.org/ver10/tptz/PanTiltSpaces/GenericSpeedSpace"></tt:PanTilt><tt:Zoom x="1" space="http://www.onvif.org/ver10/tptz/ZoomSpaces/ZoomGenericSpeedSpace"></tt:Zoom></tt:DefaultPTZSpeed><tt:DefaultPTZTimeout>PT5S</tt:DefaultPTZTimeout><tt:PanTiltLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/PanTiltSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange><tt:YRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:YRange></tt:Range></tt:PanTiltLimits><tt:ZoomLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/ZoomSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange></tt:Range></tt:ZoomLimits></tptz:PTZConfiguration><tptz:PTZConfiguration token="004"><tt:Name>PtzConfig004</tt:Name><tt:UseCount>3</tt:UseCount><tt:NodeToken>004</tt:NodeToken><tt:DefaultContinuousPanTiltVelocitySpace>http://www.onvif.org/ver10/tptz/PanTiltSpaces/VelocityGenericSpace</tt:DefaultContinuousPanTiltVelocitySpace><tt:DefaultContinuousZoomVelocitySpace>http://www.onvif.org/ver10/tptz/ZoomSpaces/VelocityGenericSpace</tt:DefaultContinuousZoomVelocitySpace><tt:DefaultPTZSpeed><tt:PanTilt x="1" y="1" space="http://www.onvif.org/ver10/tptz/PanTiltSpaces/GenericSpeedSpace"></tt:PanTilt><tt:Zoom x="1" space="http://www.onvif.org/ver10/tptz/ZoomSpaces/ZoomGenericSpeedSpace"></tt:Zoom></tt:DefaultPTZSpeed><tt:DefaultPTZTimeout>PT5S</tt:DefaultPTZTimeout><tt:PanTiltLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/PanTiltSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange><tt:YRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:YRange></tt:Range></tt:PanTiltLimits><tt:ZoomLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/ZoomSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange></tt:Range></tt:ZoomLimits></tptz:PTZConfiguration><tptz:PTZConfiguration token="005"><tt:Name>PtzConfig005</tt:Name><tt:UseCount>3</tt:UseCount><tt:NodeToken>005</tt:NodeToken><tt:DefaultContinuousPanTiltVelocitySpace>http://www.onvif.org/ver10/tptz/PanTiltSpaces/VelocityGenericSpace</tt:DefaultContinuousPanTiltVelocitySpace><tt:DefaultContinuousZoomVelocitySpace>http://www.onvif.org/ver10/tptz/ZoomSpaces/VelocityGenericSpace</tt:DefaultContinuousZoomVelocitySpace><tt:DefaultPTZSpeed><tt:PanTilt x="1" y="1" space="http://www.onvif.org/ver10/tptz/PanTiltSpaces/GenericSpeedSpace"></tt:PanTilt><tt:Zoom x="1" space="http://www.onvif.org/ver10/tptz/ZoomSpaces/ZoomGenericSpeedSpace"></tt:Zoom></tt:DefaultPTZSpeed><tt:DefaultPTZTimeout>PT5S</tt:DefaultPTZTimeout><tt:PanTiltLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/PanTiltSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange><tt:YRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:YRange></tt:Range></tt:PanTiltLimits><tt:ZoomLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/ZoomSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange></tt:Range></tt:ZoomLimits></tptz:PTZConfiguration><tptz:PTZConfiguration token="006"><tt:Name>PtzConfig006</tt:Name><tt:UseCount>3</tt:UseCount><tt:NodeToken>006</tt:NodeToken><tt:DefaultContinuousPanTiltVelocitySpace>http://www.onvif.org/ver10/tptz/PanTiltSpaces/VelocityGenericSpace</tt:DefaultContinuousPanTiltVelocitySpace><tt:DefaultContinuousZoomVelocitySpace>http://www.onvif.org/ver10/tptz/ZoomSpaces/VelocityGenericSpace</tt:DefaultContinuousZoomVelocitySpace><tt:DefaultPTZSpeed><tt:PanTilt x="1" y="1" space="http://www.onvif.org/ver10/tptz/PanTiltSpaces/GenericSpeedSpace"></tt:PanTilt><tt:Zoom x="1" space="http://www.onvif.org/ver10/tptz/ZoomSpaces/ZoomGenericSpeedSpace"></tt:Zoom></tt:DefaultPTZSpeed><tt:DefaultPTZTimeout>PT5S</tt:DefaultPTZTimeout><tt:PanTiltLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/PanTiltSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange><tt:YRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:YRange></tt:Range></tt:PanTiltLimits><tt:ZoomLimits><tt:Range><tt:URI>http://www.onvif.org/ver10/tptz/ZoomSpaces/PositionGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange></tt:Range></tt:ZoomLimits></tptz:PTZConfiguration></tptz:GetConfigurationsResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:19:09.273 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: GetPresets
2024-01-15 20:19:09.274 [DEBUG] [amera.internal.onvif.OnvifConnection] - ptzConfigToken=000
2024-01-15 20:19:09.275 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: GetConfigurationOptions
2024-01-15 20:19:09.339 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">XurrueYb3VwDblmLbmmjl6smZpU=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">LTg5NzAxNDE0NQ==</wsse:Nonce><wsu:Created>2024-01-16T02:19:09.273Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><SOAP-ENV:Fault><SOAP-ENV:Code><SOAP-ENV:Value>SOAP-ENV:Sender</SOAP-ENV:Value></SOAP-ENV:Code><SOAP-ENV:Reason><SOAP-ENV:Text xml:lang="en"/></SOAP-ENV:Reason></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:19:09.399 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">HzRxm8AWey/zcpaE83i3wIKSlbg=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MTczMjM0NDQ1NQ==</wsse:Nonce><wsu:Created>2024-01-16T02:19:09.275Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:GetConfigurationOptionsResponse><tptz:PTZConfigurationOptions><tt:Spaces><tt:ContinuousZoomVelocitySpace><tt:URI>http://www.onvif.org/ver10/tptz/ZoomSpaces/VelocityGenericSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange></tt:ContinuousZoomVelocitySpace><tt:ZoomSpeedSpace><tt:URI>http://www.onvif.org/ver10/tptz/ZoomSpaces/ZoomGenericSpeedSpace</tt:URI><tt:XRange><tt:Min>-1</tt:Min><tt:Max>1</tt:Max></tt:XRange></tt:ZoomSpeedSpace></tt:Spaces><tt:PTZTimeout><tt:Min>PT1S</tt:Min><tt:Max>PT10S</tt:Max></tt:PTZTimeout></tptz:PTZConfigurationOptions></tptz:GetConfigurationOptionsResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:19:12.874 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=openHAB&user=OpenHAB&password=OpenHAB24
2024-01-15 20:19:13.858 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-15 20:19:13.858 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetMdState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-15 20:19:13.930 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24 contains 	:[

next is from a E1 Outdoor Pro

image

The PTZ does not seem to work.

2024-01-15 19:59:13.707 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetMdState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-15 19:59:13.707 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-15 19:59:13.742 [INFO ] [tion.script.file.occupancyManager.js] - Item CameraDrivewayPan does not belong to a Location.
2024-01-15 19:59:13.761 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetAiState",
      "code" : 0,
      "value" : {
         "channel" : 1,
         "dog_cat" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "face" : {
            "alarm_state" : 0,
            "support" : 0
         },
         "people" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "vehicle" : {
            "alarm_state" : 0,
            "support" : 1
         }
      }
   }
]
:
2024-01-15 19:59:13.802 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetMdState&channel=1&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetMdState",
      "code" : 0,
      "value" : {
         "state" : 0
      }
   }
]
:
2024-01-15 19:59:14.251 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: AbsoluteMove
2024-01-15 19:59:14.281 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">mqCsvrnOFyEZKVqtCoT73CU0P00=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">LTE4MzM2MjUxODQ=</wsse:Nonce><wsu:Created>2024-01-16T01:59:14.252Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:AbsoluteMoveResponse></tptz:AbsoluteMoveResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
==> /var/log/openhab/events.log <==
2024-01-15 19:59:13.741 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraDrivewayPan' received command 76
2024-01-15 19:59:13.744 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraDrivewayPan' predicted to become 76
2024-01-15 19:59:13.747 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraDrivewayPan' changed from 21 to 76
==> /var/log/openhab/openhab.log <==
2024-01-15 19:59:16.708 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=openHAB&user=OpenHAB&password=OpenHAB24
2024-01-15 19:59:21.708 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetMdState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-15 19:59:21.708 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-15 19:59:21.781 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetAiState",
      "code" : 0,
      "value" : {
         "channel" : 1,
         "dog_cat" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "face" : {
            "alarm_state" : 0,
            "support" : 0
         },
         "people" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "vehicle" : {
            "alarm_state" : 0,
            "support" : 1
         }
      }
   }
]
:
2024-01-15 19:59:21.842 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetMdState&channel=1&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetMdState",
      "code" : 0,
      "value" : {
         "state" : 0
      }
   }
]
:

Also the Zoom doesn’t work

024-01-15 20:03:35.088 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: AbsoluteMove
2024-01-15 20:03:35.120 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">xVniqdwPqOl7LfpqYX2MiMTNS30=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">NTQ2NTk0MDgy</wsse:Nonce><wsu:Created>2024-01-16T02:03:35.089Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:AbsoluteMoveResponse></tptz:AbsoluteMoveResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
==> /var/log/openhab/events.log <==
2024-01-15 20:03:34.578 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraDrivewayZoom' received command 51
2024-01-15 20:03:34.582 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraDrivewayZoom' predicted to become 51
2024-01-15 20:03:34.584 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraDrivewayZoom' changed from 0 to 51
==> /var/log/openhab/openhab.log <==
2024-01-15 20:03:36.890 [INFO ] [tion.script.file.occupancyManager.js] - Item CameraDrivewayZoom does not belong to a Location.
2024-01-15 20:03:37.397 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: AbsoluteMove
==> /var/log/openhab/events.log <==
2024-01-15 20:03:36.888 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraDrivewayZoom' received command 19
2024-01-15 20:03:36.890 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraDrivewayZoom' predicted to become 19
2024-01-15 20:03:36.891 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraDrivewayZoom' changed from 51 to 19
==> /var/log/openhab/openhab.log <==
2024-01-15 20:03:37.445 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">dDCOQ0gEK+1sfuz1dV/x4Zo2xL4=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">LTUxOTcyMDk5Ng==</wsse:Nonce><wsu:Created>2024-01-16T02:03:37.397Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:AbsoluteMoveResponse></tptz:AbsoluteMoveResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:03:37.751 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetMdState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-15 20:03:37.751 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-15 20:03:37.802 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetAiState",
      "code" : 0,
      "value" : {
         "channel" : 1,
         "dog_cat" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "face" : {
            "alarm_state" : 0,
            "support" : 0
         },
         "people" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "vehicle" : {
            "alarm_state" : 0,
            "support" : 1
         }
      }
   }
]
:
2024-01-15 20:03:37.841 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetMdState&channel=1&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetMdState",
      "code" : 0,
      "value" : {
         "state" : 0
      }
   }
]
:

Next camera is a bullet - B800W

image

Again zoom doesn’t seem to be working.

2024-01-15 20:07:53.951 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraGarageEastZoom' received command 38
2024-01-15 20:07:53.956 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraGarageEastZoom' predicted to become 38
2024-01-15 20:07:53.957 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraGarageEastZoom' changed from 2 to 38
==> /var/log/openhab/openhab.log <==
2024-01-15 20:07:54.400 [INFO ] [tion.script.file.occupancyManager.js] - Item CameraGarageEastZoom does not belong to a Location.
2024-01-15 20:07:54.466 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: AbsoluteMove
2024-01-15 20:07:54.501 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">jesynzAQzrG6fPnSjFzIS3o6v6I=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MTYxMDI3NjEyMA==</wsse:Nonce><wsu:Created>2024-01-16T02:07:54.466Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:AbsoluteMoveResponse></tptz:AbsoluteMoveResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:07:54.906 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: AbsoluteMove
2024-01-15 20:07:54.940 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">7CpavIkZaxNC9YrlJbaYPT5s1h0=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MTQ1NTA0OTg2Nw==</wsse:Nonce><wsu:Created>2024-01-16T02:07:54.907Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:AbsoluteMoveResponse></tptz:AbsoluteMoveResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:07:55.241 [INFO ] [tion.script.file.occupancyManager.js] - Item CameraGarageEastZoom does not belong to a Location.
==> /var/log/openhab/events.log <==
2024-01-15 20:07:54.398 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraGarageEastZoom' received command 57
2024-01-15 20:07:54.412 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraGarageEastZoom' predicted to become 57
2024-01-15 20:07:54.413 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraGarageEastZoom' changed from 38 to 57
2024-01-15 20:07:55.239 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraGarageEastZoom' received command 35
2024-01-15 20:07:55.241 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraGarageEastZoom' predicted to become 35
2024-01-15 20:07:55.243 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraGarageEastZoom' changed from 57 to 35
==> /var/log/openhab/openhab.log <==
2024-01-15 20:07:55.748 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: AbsoluteMove
2024-01-15 20:07:55.759 [INFO ] [tion.script.file.occupancyManager.js] - Item CameraGarageEastZoom does not belong to a Location.
2024-01-15 20:07:55.780 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">n17f5Qh3kCfMRoikNzTPAh3LXtE=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MTQ1MjA3MTg5Ng==</wsse:Nonce><wsu:Created>2024-01-16T02:07:55.749Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:AbsoluteMoveResponse></tptz:AbsoluteMoveResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:07:56.267 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: AbsoluteMove
2024-01-15 20:07:56.320 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">Q4ZTh7CmFWM8ORJOqKdKvYaVyn0=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">LTg5ODc0Nzg5Nw==</wsse:Nonce><wsu:Created>2024-01-16T02:07:56.268Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:AbsoluteMoveResponse></tptz:AbsoluteMoveResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
==> /var/log/openhab/events.log <==
2024-01-15 20:07:55.757 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraGarageEastZoom' received command 19
2024-01-15 20:07:55.760 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraGarageEastZoom' predicted to become 19
2024-01-15 20:07:55.761 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraGarageEastZoom' changed from 35 to 19
==> /var/log/openhab/openhab.log <==
2024-01-15 20:07:56.467 [INFO ] [tion.script.file.occupancyManager.js] - Item CameraGarageEastZoom does not belong to a Location.
2024-01-15 20:07:56.973 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: AbsoluteMove
2024-01-15 20:07:57.011 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetAiState&channel=3&user=OpenHAB&password=OpenHAB24
2024-01-15 20:07:57.011 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetMdState&channel=3&user=OpenHAB&password=OpenHAB24
2024-01-15 20:07:57.020 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">nbY4QFoxQFRYZjKTJ1j8ga2mcLc=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MTM5NDQ1Mjk2OQ==</wsse:Nonce><wsu:Created>2024-01-16T02:07:56.973Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:AbsoluteMoveResponse></tptz:AbsoluteMoveResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-15 20:07:57.080 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetAiState&channel=3&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetAiState",
      "code" : 0,
      "value" : {
         "channel" : 3,
         "dog_cat" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "face" : {
            "alarm_state" : 0,
            "support" : 0
         },
         "people" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "vehicle" : {
            "alarm_state" : 0,
            "support" : 1
         }
      }
   }
]
:
2024-01-15 20:07:57.142 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetMdState&channel=3&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetMdState",
      "code" : 0,
      "value" : {
         "state" : 0
      }
   }
]
:
==> /var/log/openhab/events.log <==
2024-01-15 20:07:56.465 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraGarageEastZoom' received command 2
2024-01-15 20:07:56.466 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraGarageEastZoom' predicted to become 2
2024-01-15 20:07:56.469 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraGarageEastZoom' changed from 19 to 2

I also tried the turn on Email for this camera which doesn’t work. log:

2024-01-15 20:13:56.126 [INFO ] [tion.script.file.occupancyManager.js] - Item CameraGarageEastEnableEmail does not belong to a Location.
2024-01-15 20:13:56.133 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: POST: http://192.168.1.92:80/api.cgi?cmd=SetEmailV20&user=OpenHAB&password=OpenHAB24
2024-01-15 20:13:56.208 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=SetEmailV20&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "SetEmailV20",
      "code" : 0,
      "value" : {
         "rspCode" : 200
      }
   }
]
:
==> /var/log/openhab/events.log <==
2024-01-15 20:13:56.124 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraGarageEastEnableEmail' received command ON
2024-01-15 20:13:56.126 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraGarageEastEnableEmail' predicted to become ON
2024-01-15 20:13:56.128 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraGarageEastEnableEmail' changed from OFF to ON
==> /var/log/openhab/openhab.log <==
2024-01-15 20:13:57.067 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetAiState&channel=3&user=OpenHAB&password=OpenHAB24
2024-01-15 20:13:57.067 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetMdState&channel=3&user=OpenHAB&password=OpenHAB24
2024-01-15 20:13:57.130 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetMdState&channel=3&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetMdState",
      "code" : 0,
      "value" : {
         "state" : 0
      }
   }
]
:
2024-01-15 20:13:57.174 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetAiState&channel=3&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetAiState",
      "code" : 0,
      "value" : {
         "channel" : 3,
         "dog_cat" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "face" : {
            "alarm_state" : 0,
            "support" : 0
         },
         "people" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "vehicle" : {
            "alarm_state" : 0,
            "support" : 1
         }
      }
   }
]
:
2024-01-15 20:13:58.417 [INFO ] [tion.script.file.occupancyManager.js] - Item CameraGarageEastEnableEmail does not belong to a Location.
2024-01-15 20:13:58.424 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: POST: http://192.168.1.92:80/api.cgi?cmd=SetEmailV20&user=OpenHAB&password=OpenHAB24
==> /var/log/openhab/events.log <==
2024-01-15 20:13:58.415 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'CameraGarageEastEnableEmail' received command OFF
2024-01-15 20:13:58.417 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'CameraGarageEastEnableEmail' predicted to become OFF
2024-01-15 20:13:58.418 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'CameraGarageEastEnableEmail' changed from ON to OFF
==> /var/log/openhab/openhab.log <==
2024-01-15 20:13:58.518 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=SetEmailV20&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "SetEmailV20",
      "code" : 0,
      "value" : {
         "rspCode" : 200
      }
   }
]
:
2024-01-15 20:14:00.075 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/cgi-bin/api.cgi?cmd=Snap&channel=2&rs=openHAB&user=OpenHAB&password=OpenHAB24
2024-01-15 20:14:05.068 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetAiState&channel=3&user=OpenHAB&password=OpenHAB24
2024-01-15 20:14:05.068 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetMdState&channel=3&user=OpenHAB&password=OpenHAB24
2024-01-15 20:14:05.119 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetAiState&channel=3&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetAiState",
      "code" : 0,
      "value" : {
         "channel" : 3,
         "dog_cat" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "face" : {
            "alarm_state" : 0,
            "support" : 0
         },
         "people" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "vehicle" : {
            "alarm_state" : 0,
            "support" : 1
         }
      }
   }
]
:
2024-01-15 20:14:05.139 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetMdState&channel=3&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetMdState",
      "code" : 0,
      "value" : {
         "state" : 0
      }
   }
]
:

Agree, but I will need more info on how to detect for this. I made a change in the latest build that will show the API calls that get made that fail to connect. The NVR is accepting the http connection and then appears to not reply if the api call is not a valid camera channel.
I believe Reolink have two ways of setting up the cameras and one of them gives you direct access to the IP of the camera on the sub network of the NVR, does yours do this?

Regarding your logs you posted, was there an issue with the Duo 2, or did it all function correctly?

Have you tried the different methods that ONVIF provides? not all cameras support all methods, ABSOLUTE/RELATIVE/PRESET

Does this feature work on your other cameras? Would need to check if it works with CURL command or postman app to see if it is the binding, a bug in the camera or if that camera needs a slightly different POST contents.

Zoom not working is the same comment as any PTZ, not all cameras support all methods. Try in onvif device manager, or use the widget in the marketplace and try the different types of movements to see if one works.

Here is the log for when a camera is offline. The Thing status still shows online.

2024-01-30 12:28:47.217 [DEBUG] [era.internal.handler.IpCameraHandler] - The GetAiStateResponse could not be parsed: device offline
2024-01-30 12:28:47.235 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetMdState&channel=7&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetMdState",
      "code" : 1,
      "error" : {
         "detail" : "device offline",
         "rspCode" : -99
      }
   }
]
:
2024-01-30 12:28:55.152 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetAiState&channel=7&user=OpenHAB&password=OpenHAB24
2024-01-30 12:28:55.153 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetMdState&channel=7&user=OpenHAB&password=OpenHAB24
2024-01-30 12:28:55.215 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetAiState&channel=7&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetAiState",
      "code" : 1,
      "error" : {
         "detail" : "device offline",
         "rspCode" : -99
      }
   }
]
:
2024-01-30 12:28:55.216 [DEBUG] [era.internal.handler.IpCameraHandler] - The GetAiStateResponse could not be parsed: device offline
2024-01-30 12:28:55.234 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetMdState&channel=7&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetMdState",
      "code" : 1,
      "error" : {
         "detail" : "device offline",
         "rspCode" : -99
      }
   }
]
:

Here is the output from trying to use Pan

   ] - Item 'Pan' received command 71
2024-01-30 12:40:41.260 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'Pan' predicted to become 71
2024-01-30 12:40:41.264 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'Pan' changed from 66 to 71
==> /var/log/openhab/openhab.log <==
2024-01-30 12:40:41.769 [TRACE] [amera.internal.onvif.OnvifConnection] - Sending ONVIF request: AbsoluteMove to http://192.168.1.92:8000/onvif/ptz_service
2024-01-30 12:40:41.803 [TRACE] [amera.internal.onvif.OnvifConnection] - ONVIF reply is: <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsdd="http://schemas.xmlsoap.org/ws/2005/04/discovery" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:ns1="http://www.onvif.org/ver20/media/wsdl" xmlns:tdn="http://www.onvif.org/ver10/network/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trc="http://www.onvif.org/ver10/recording/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:trv="http://www.onvif.org/ver10/receiver/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl" xmlns:ter="http://www.onvif.org/ver10/error" xmlns:tns1="http://www.onvif.org/ver10/topics" xmlns:tad="http://www.onvif.org/ver20/analytics/wsdl"><SOAP-ENV:Header><wsse:Security><wsse:UsernameToken><wsse:Username>OpenHAB</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">1FHeOYe2x6vIzSwkYtpw/lvBGvU=</wsse:Password><wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MTY3MzA5MzUzNA==</wsse:Nonce><wsu:Created>2024-01-30T18:40:41.770Z</wsu:Created></wsse:UsernameToken></wsse:Security></SOAP-ENV:Header><SOAP-ENV:Body><tptz:AbsoluteMoveResponse></tptz:AbsoluteMoveResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
2024-01-30 12:40:43.365 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-30 12:40:43.366 [TRACE] [era.internal.handler.IpCameraHandler] - Sending camera: GET: http://192.168.1.92:80/api.cgi?cmd=GetMdState&channel=1&user=OpenHAB&password=OpenHAB24
2024-01-30 12:40:43.446 [TRACE] [era.internal.handler.IpCameraHandler] - HTTP Result from /api.cgi?cmd=GetAiState&channel=1&user=OpenHAB&password=OpenHAB24 contains 	:[
   {
      "cmd" : "GetAiState",
      "code" : 0,
      "value" : {
         "channel" : 1,
         "dog_cat" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "face" : {
            "alarm_state" : 0,
            "support" : 0
         },
         "people" : {
            "alarm_state" : 0,
            "support" : 1
         },
         "vehicle" : {
            "alarm_state" : 0,
            "support" : 1
         }
      }
   }
]
:

Thank you for doing this for other users, will look at it soon. Have been busy with this project which all camera users that own android/fire/sheild TV’s will be keen to look at. The changes to Reolink have been merged and will be in the next 4.2 milestone 1 (?) build which is due out any time now so I’ll get onto this to tidy it up. A big thank you to yourself and a few others that have been helping out with the testing.

Android Notifications Binding: Support for multiple methods to send Video, Images and Text to Android TV, Fire TV or Sheild TV - Add-on Marketplace / Bundles - openHAB Community

1 Like

@matt1 Big thank you for your work on this binding and OpenHAB. It’s been a fantastic addition to my home automation! Let me know anything else you need.

I upgraded to OpenHAB 4.2.0.M1.
The issue of the button press event not working after a while seems to be back.
After a reset of the camera thing it starts working again.
Any idea how I can help with debugging?

Thank you for reporting it, I am able to reproduce an issue and I am in the middle of running a special build with extra logging in it to test if it is solved (for my reproducible issue) and it will also log into INFO level some stuff if certain things go wrong to help narrow it down if it is not fixed.
Feel free to run it and just use normal INFO level and report if you get a message and the event has stopped working.

http://pcmus.com/openhab/IpCameraBinding/

To fault find, it is very important that you create your own thread either on the forum, or as a github issue. This way I am not left asking for basic details over and over or having to search through a mega thread. Since I can reproduce an issue lets not go into fault finding yours as it is most likely the same cause.

@nickb5 Have you had a chance to test it yet? as it seems to have solved the issue here for a non reolink camera, assuming it was the same root cause.

1 Like

@matt1 - thank you VERY much for all your hard work here. I’m running a Reolink NVR with 5 cameras behind it via POE, and tested the latest version of the ipcamera binding. In short, as you expected, success with handling button presses on the Reolink Door bell! Here are the finer details/commands that may be of help to others.

-Removed the previous ipcamera SNAPSHOT binding (01/26/2024), running Openhabian on a RPI:
$ cd /usr/share/openhab/addons/
$ rm org.openhab.binding.ipcamera-4.2.0-SNAPSHOT.jar
-Placed the latest binding (org.openhab.binding.ipcamera-4.2.0-SNAPSHOT.jar - 2024-03-23 13:02) in:
$ wget https://pcmus.com/openhab/IpCameraBinding/org.openhab.binding.ipcamera-4.2.0-SNAPSHOT.jar
$ sudo chown openhab.openhab org.openhab.binding.ipcamera-4.2.0-SNAPSHOT.jar

-Cleared the openhab cache; reboot, just in case (may be unnecessary):
$ sudo service openhab stop
$ sudo openhab-cli clean-cache
$ sudo reboot
-Unlink all and Remove Items on the ‘thing’
-Delete the ‘thing’
-Readded the ‘thing’ via jar:ipcamera binding

-Next, I had to fight with the Karaf console a bit to get the latest ipcamera binding activated:
$ sudo openhab-cli console
$ list -s | grep -i cam
-Saw the original binding was Active, but the new one was in a ‘Waiting’ state.
291 x Active x 80 x 4.1.1 x org.openhab.binding.ipcamera
337 x Waiting x 80 x 4.2.0.202403230200 x org.openhab.binding.ipcamera
-Uninstalled the original via Karaf Console; shutdown/restart:
$ bundle:uninstall 291
$ shutdown
-Now back in Karaf Console, shows the latest ipcamera SNAPSHOT binding is active:
$ list -s | grep -i cam
337 x Active x 80 x 4.2.0.202403230200 x org.openhab.binding.ipcamera

-Success! My Reolink Door bell (which is behind the NVR and connected to its POE ports) button press state is updated and can trigger events through openHAB. Woohoo!!! :slight_smile:

Next, I am off to tinkering further with PushOver for real-time notifications, along with camera images in the Android push notifications, with no reliance on Reolink Cloud offerings.

@matt1 - you rock, sir!

1 Like

For those interested in getting Push Notifications working with the openHAB PushOver binding when the Door Bell button is pressed, here is a DSL rule that does just that. Of course you need to install/configure the binding, then adjust the itemName and PushOver account API key below. Notification includes a thumbnail (low res from camera ONVIF substream for speed) and a View link which opens the Reolink native app. Sweet!

configuration: {}
triggers:
  - id: "1"
    configuration:
      itemName: Reolink_Front_Door_Door_Bell
      state: ON
    type: core.ItemStateUpdateTrigger
conditions: []
actions:
  - inputs: {}
    id: "2"
    configuration:
      type: application/vnd.openhab.dsl.rule
      script: "

        var attachmentUrl =
        Reolink_Front_Door_Image_URL.state.toString()


        val pushoverActions = getActions(\"pushover\",
        \"pushover:pushover-account:XXXXXXXXX\")


        pushoverActions.sendAttachmentMessage(\"<b>Door Bell
        Rung!</b><br/>  <a href='reolink://'>View</a>\", \"OH\",
        attachmentUrl,\"image/jpg\")

        \  "
    type: script.ScriptAction

Investigating and trying to pin down a few issues observed with the latest binding SNAPSHOT (2024-03-23):

  • My Reolink DoorBell is capable of Human Detection, yet when triggered it only hits the DoorBell’s ‘Cell_Motion_Alarm’ channel in openHAB with an update, and another camera’s Human channel behind my NVR receives the state change (Human Detection channel) at about the same time (i.e. ‘Cam__PTZ_Human_Alarm’).
  • Widgets which display the MJPEG_URL channel/video feed, which are behind the NVR in my case, all show the same camera real-time feed in the larger popup view. It seems the Reolink NVR Channel setting (at the ‘Item’ level) isn’t being considered when creating URLs (to openHAB .mjpeg links) and it defaults to showing just the first camera.
  • The OH Settings > Add-on Settings section seems broken with the side loaded JAR, along with manually navigating to OH Settings > Things > Add. Basically, for me, they now display only the add-on JAR settings and not the many other addons (FYI - running the latest openHAB v4.1.2). Navigating to OH > Add-on Store, it appears that my other previously installed AddOns aren’t installed, yet they are all still working fine via the previous OH Items and Rules created (i.e. Amazon, Hue, Onkyo, etc. bindings/things/items), as well as seeing activity in the logs and items updated in the model.

Debating just wiping and re-starting with a pristine Raspberry Pi 4 OpenHabian setup next, as time permits! Will continue to share any updates here; happy to help with beta testing further!

Hi,

Thanks for making another build, I installed it but I still seem to have the problem.
The button press stops working after a few days, when stopping/starting the camera thing it works again.
I was under the impression that the button press kept working with the previous custom build I tested earlier.

Also this is my things file for the camera, maybe I missed something here?

Thing ipcamera:reolink:doorbell "Doorbell"
[
  ipAddress="x.x.x.x",
  username="admin",
  password="password",
  onvifPort=8000,
  port=80,
  nvrChannel=0,
  useToken="false"
]

Did you get any messages in your logs? as that build was special in the sense it will log any form of connection issue to a INFO level so you do not need debug active to get the message. There’s nothing missing from the things file if you’re not getting any errors.

The previous build you had working was using a connection check to the snapshot to determine if the camera was online or offline. I made a change in the last Milestone that stopped that check and instead uses the ONVIF stream to know if its on or offline.

After 4 days of non stop working, I did see it stop on my wifi camera but it auto restated again due to a wifi dropout before I got a chance to debug it. This is best discussed in its own thread so others can reply and it does not get lost if someone posts other topics or questions in here.

Hi everyone,

I am using the binding with a reolink NVR and 8 cameras. Unfortunately I get a lot of NVR reboots. I have had my NVR exchanged, but it stays the same with the new one. The issue seems to be related with the binding. I get less problems when setting the cameras up as simple ONVIF (losing doorbell functionality, though). As soon as I use Reolink API, I run into problems. Any recommendations?

@Marcdus - Running reliably solid over here with the latest 16 channel Reolink NVR and only Reolink cameras. Few things come to mind to consider:

  • ‘Problems’ is a bit vague, the more detail the better there, including openHAB TRACE log messages would be helpful for further diagnostics.
  • Do the NVR reboot issues go away when the binding/things are disabled in openHAB?
  • If the NVR issues only occur when the NVR is polled via the ipcamera bindings Reolink API integration, I would suggest starting small with one lower res camera added/enabled in openHAB and see if that has any impact on your problems. If not, slowly add more of them to potentially pin it down to a particular camera/channel behind the NVR.
  • Have you ensured ALL firmware’s (NVR & cameras) are up to date? The Reolink in app & NVR UI always reports everything is up to date when checking for new firmware, but if you go to the Reolink download center you might find newer stable firmware releases available. Be certain you are running the latest versions. On the NVR itself, grab the firmware version numbers of each device and compare to their Download Center directly in a browser.
  • Do you have any non-Reolink cameras connected to the NVR? Many reports of stability issues with other brand cameras; only some have been reported to work well with the Reolink NVR.
  • Which model NVR, and which cameras? (pondering if there might be any incompatibilities/bugs with older model NVRs and modern AI capable cameras)

Best regards,
.

Thanks for the reply. There was nothing other in the trace logs then the restart of the NVR. So there was no obvious trigger. It looked like the NVR lost power and booted.

All firmwares (NVR and cameras) have been updated. The NVR has been exchanged and the cameras have been detached one by one.

Openhab does not use any kind of imaging. I only use the connection for motion triggers and doorbell notification. So it can’t be stream load or resolution.

My conclusion so far after days of trying is that it must be the amount of parallel usage. So for example when all 8 cameras are connected as things and you open parallel streaming through the NVRs web interface on a couple of cams, you can trigger the reboot.

I have also tried adding user accounts on the NVR for each individual camera, so that not too many requests don’t go through the same user.

For now I am limiting the problem through low polling time and not touching the system too much.

Sidenote of potentially different interest: When testing I noticed that while normally the NVR channels start at Channel 0, the jpeg image channel starts at Channel 1. So for example a thing would report the motion alerts from channel 2 while showing the jpeg from channel 3.

@Marcdus - got you!

I also have noticed oddities with the alerts from cameras behind the NVR hitting the wrong channels; have been trying to pin point why. Your not alone there!

Over here, I have not noticed any NVR reboots, and stream the cameras from varying devices/apps without issue. Are you also polling the Images via the openHAB ipcamera ‘Thing’ using the last setting ‘Update image channel when’? Mine is set to ‘Image channel never updates’, which is recommended in the README…

Food for thought there!

You should not loose any alarm functionality, there appears to be a bug that stops the alarm stream from being watched which is what others are discussing in this thread and that may explain it for you. If you camera does have an unsupported alarm, by logging in DEBUG it will tell you the camera is sending an unknown alarm and ask you to report it so that it can be added.

Yes make sure you using the latest changes that I am trialing and will also log to INFO level if something unexpected happens that you can report back to help with looking into this.

@nickb5 and @Marcdus I just uploaded another build that will log more stuff to INFO here and it does contain a fix for 1 bug that was in the last build already.
http://pcmus.com/openhab/IpCameraBinding/

Thanks for taking the time to post your setup is working 100% would you mind posting if your cameras are using wired network cables or via wifi? I agree with your post that people need to capture in TRACE logging the moment the problem occurs, then it makes it far easier and quicker to respond with a fix.

This is a possibility that the http webserver on the NVR can not handle X amount of parrallel requests. Can you PM me some TRACE level logs that shows just how much traffic is being generated? The time stamps will tell me how often the PullMessages onvif message is sent. I have seen some cameras reply instantly to the request when the ONVIF standard states that it should wait until an event occurs or the timeout occurs. I can determine this in more detail only by looking at the log. Can you send one with all cameras running, and then a second one with only 1 camera talking so that I can more clearly see what is happening?

There is a PR for this here

Are you using the newer not merged changes from my private site? I have made some changes in it to allow the NVR 0 to be used. I’ll take a look at this if you can confirm it still happens in the private build.

1 Like