| @@ -0,0 +1,45 @@ | |||||
| #!/bin/bash | |||||
| current_time=`date +"%Y-%m-%d %H:%M:%S"` | |||||
| echo '海普天门禁设备自动切换开门方式定时任务......' | |||||
| #设备列表 | |||||
| #device_list=('http://192.168.69.121:80' 'http://192.168.69.121:80') | |||||
| device_list=('http://20.20.66.231:80' 'http://20.20.66.234:80' 'http://20.20.66.236:80' 'http://20.20.66.232:80' 'http://20.20.66.233:80' 'http://20.20.66.235:80') | |||||
| #设备用户名密码 | |||||
| #device_user_password='admin:admin' | |||||
| device_user_password='admin:yzx123456.' | |||||
| base64_str=$(echo -n $device_user_password | base64) | |||||
| #设置门禁开门方式 0默认 人脸开门 3人脸核验+远程开门 | |||||
| function setOpenDoorMode(){ | |||||
| echo "$2" | |||||
| response=$(curl -s -o /dev/null -w "%{http_code}" --connect-timeout 1 --max-time 1 --retry 2 --location $1'/action/SetDoorCondition' --header 'Content-Type: application/json' --header 'Authorization: Basic '${base64_str} --data '{"operator":"SetDoorCondition","info":{"OpendoorWay":'$2'}}') | |||||
| echo $response | |||||
| } | |||||
| #检测服务器服务状态 | |||||
| function checkServiceStatus(){ | |||||
| #检测青白江指定服务是否可用 | |||||
| #service='http://118.89.136.154:9009/parent/faceDeviceCallBack/subscribe' | |||||
| service='http://192.168.12.181:9009/parent/faceDeviceCallBack/subscribe' | |||||
| response=$(curl -s -o /dev/null -w "%{http_code}" --max-time 3 --location $service --header 'Content-Type: application/json' --data '{"operator":"来至祥福穿透服务器的消息,测试服务是否可用","info":{"DeviceID":0}}') | |||||
| echo $response | |||||
| } | |||||
| service_status=$(checkServiceStatus) | |||||
| #判断服务器服务是否可用 | |||||
| if [ $service_status -eq 200 ] | |||||
| then | |||||
| for item in ${device_list[*]} | |||||
| do | |||||
| echo "[$current_time]服务正常,切换设备:$item,开门方式为:人脸核验+远程开门方式" | |||||
| setOpenDoorMode $item 3 #人脸核验+远程开门 | |||||
| done | |||||
| else | |||||
| for item in ${device_list[*]} | |||||
| do | |||||
| echo "[$current_time]服务不可用,切换设备:$item,开门方式为:人脸开门" | |||||
| setOpenDoorMode $item 0 #人脸开门 | |||||
| done | |||||
| fi | |||||