通过bash或REST在Hikvision相机中设置日期和时间?

时间:2019-06-17 20:54:32

标签: onvif python-onvif

如何从Linux命令行在hikvision摄像机中设置日期和时间?或者从某种语言,例如Python,PHP等... 我有一台连接到相机的计算机,我想仅通过终端在不访问浏览器的情况下更改相机中的日期和时间。 谢谢

2 个答案:

答案 0 :(得分:2)

您可以使用文档HIKVISION ISAPI 。如您所知,界面取决于相机固件版本。 用于设置相机的日期和时间。您需要带有URL的HTTP PUT方法

http:// hikvision_camera_ipaddress [: http_port ] / ISAPI / System / time

通常,IP摄像机具有3种时间模式。 NTP,手动,同步(HIKVISION的时间正确)。

最好首先使用上面的url通过GET方法获取摄像机的日期和时间。 之后,您将获得有关HTTP正文的提示,以通过PUT方法设置日期和时间。

有关更多详细信息,请参阅文档8.1.9

答案 1 :(得分:1)

如果您的相机支持onvif,则可以使用称为python-onvif(适用于2.x)的python库:

pip install onvif

或python-zeep-onvif(适用于3 +):

pip3 install --upgrade onvif_zeep

Python代码:

from onvif import ONVIFCamera
camera_ip = "your camera ip"
camera_port = "your camera port, default is 80"
wsdl_path = "path to wsdl folder"
cam = ONVIFCamera(args.ip, 80, login, password, wsdl_path)
time_request = cam.devicemgmt.create_type('SetSystemDateAndTime')
time_request.DateTimeType = "Manual"
time_request.DaylightSavings = True
time_request.UTCDateTime.Time.Hour = 4 
time_request.UTCDateTime.Time.Minutes = 20
time_request.UTCDateTime.Time.Seconds = 0
cam.devicemgmt.SetSystemDateAndTime(time_request)

请检查python-onvif软件包page和onvif操作page以获取更多详细信息