Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

45 рядки
1.9 KiB

  1. #!/bin/bash
  2. current_time=`date +"%Y-%m-%d %H:%M:%S"`
  3. echo '海普天门禁设备自动切换开门方式定时任务......'
  4. #设备列表
  5. #device_list=('http://192.168.69.121:80' 'http://192.168.69.121:80')
  6. 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')
  7. #设备用户名密码
  8. #device_user_password='admin:admin'
  9. device_user_password='admin:yzx123456.'
  10. base64_str=$(echo -n $device_user_password | base64)
  11. #设置门禁开门方式 0默认 人脸开门 3人脸核验+远程开门
  12. function setOpenDoorMode(){
  13. echo "$2"
  14. 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'}}')
  15. echo $response
  16. }
  17. #检测服务器服务状态
  18. function checkServiceStatus(){
  19. #检测青白江指定服务是否可用
  20. #service='http://118.89.136.154:9009/parent/faceDeviceCallBack/subscribe'
  21. service='http://192.168.12.181:9009/parent/faceDeviceCallBack/subscribe'
  22. response=$(curl -s -o /dev/null -w "%{http_code}" --max-time 3 --location $service --header 'Content-Type: application/json' --data '{"operator":"来至祥福穿透服务器的消息,测试服务是否可用","info":{"DeviceID":0}}')
  23. echo $response
  24. }
  25. service_status=$(checkServiceStatus)
  26. #判断服务器服务是否可用
  27. if [ $service_status -eq 200 ]
  28. then
  29. for item in ${device_list[*]}
  30. do
  31. echo "[$current_time]服务正常,切换设备:$item,开门方式为:人脸核验+远程开门方式"
  32. setOpenDoorMode $item 3 #人脸核验+远程开门
  33. done
  34. else
  35. for item in ${device_list[*]}
  36. do
  37. echo "[$current_time]服务不可用,切换设备:$item,开门方式为:人脸开门"
  38. setOpenDoorMode $item 0 #人脸开门
  39. done
  40. fi