|
|
|
@@ -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 |