notice.sh 739 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #!/bin/sh
  2. execPath=`readlink -f "$0"`
  3. dirPath="${execPath%/*}"
  4. modemFunc="${dirPath}/modemFunc.sh"
  5. [ -f "${modemFunc}" ] && . "${modemFunc}" || exit 1
  6. PORT="3"
  7. MaxNum=`Config MaxNum "120"`
  8. LOG=`Config NoticeLOG "/dev/null"`
  9. NoticePID=`Config NoticePID "/tmp/NoticePID"`
  10. DeadPID "$NoticePID" || exit 1
  11. echo "$$" >"$NoticePID"
  12. ResetLED 1
  13. while true; do
  14. WaitAT || {
  15. sleep 5
  16. continue
  17. }
  18. while IFS= read -r line; do
  19. echo -ne "$line" |grep -q '+CMTI:\s*"ME"\|+C5GREG:\s*[15]\|+CREG:\s*[15]'
  20. [ $? -eq 0 ] || continue
  21. var=`echo -ne "${line%%:*}"`
  22. case $var in
  23. +CMTI)
  24. NewSMS;
  25. ;;
  26. +CREG|+C5GREG)
  27. ReloadWAN;
  28. ;;
  29. *)
  30. ;;
  31. esac
  32. done < "/dev/ttyUSB${PORT}"
  33. done