Advertisement
coolSever

Получаение различных счётчиков для техники Kyocera

Jul 10th, 2014
4,550
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 3.55 KB | None | 0 0
  1. #!/bin/bash
  2. # Получение различных счётчиков для техники Kyocera на примере Kyocera 2535dn
  3.  
  4. # Доступные параметры:
  5. # accounting_print_black_and_white_copy_counter         : Количество ч/б страниц, напечатанных с использованием копировального аппарата
  6. # accounting_print_black_and_white_printer_counter      : Количество ч/б страниц, напечатанных с использованием принтера
  7. # accounting_print_black_and_white_fax_counter          : Количество ч/б страниц, напечатанных с использованием факса
  8. # accounting_print_duplex_1sided_counter                : Количество страниц, напечатанных на одной стороне листа
  9. # accounting_print_duplex_2sided_counter                : Количество страниц, напечатанных с использованием дуплекса ( листов = страниц/2)
  10. # accounting_print_combine_none_counter                 : Общий счётчик напечатанных страниц
  11. # accounting_print_combine_2in1_counter                 : Количество странниц, распечатанных в режиме `2 страницы на листе` ( листов = страниц * 2)
  12. # accounting_print_combine_4in1_counter                 : Количество странниц, распечатанных в режиме `4 страницы на листе` ( листов = страниц * 4)
  13. # accounting_scan_fax_counter                           : Количество страниц, сканированных с использованием факса
  14. # accounting_scan_copy_counter                          : Количество страниц, сканированных с использованием копира
  15. # accounting_scan_other_counter                         : Количество прочих сканированных страниц ( на флешку, в сеть и пр.)
  16. # device_life_counter                                   : (?) Общий счётчик напечатанных страниц за всю жизнь устройства
  17. param=$2;
  18. host=$1;
  19. port=9090;
  20.  
  21. if [[ (-z "$1") || (-z "$2") ]]
  22. then
  23.         echo "Usage: $0 192.168.101.239 device_life_counter";
  24.         exit 1;
  25. fi
  26.  
  27. while [[ -z $result ]]
  28. do
  29. xml=`curl -X POST -s -d '\
  30. <?xml version="1.0" encoding="utf-8"?>\
  31. <SOAP-ENV:Envelope \
  32. xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"\
  33. xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"\
  34. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\
  35. xmlns:xsd="http://www.w3.org/2001/XMLSchema"\
  36. xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"\
  37. xmlns:xop="http://www.w3.org/2004/08/xop/include"\
  38. xmlns:ns1="http://www.kyoceramita.com/ws/km-wsdl/log/counter_information">\
  39. <SOAP-ENV:Header>\
  40. <wsa:Action SOAP-ENV:mustUnderstand="true">\
  41. http://www.kyoceramita.com/ws/km-wsdl/log/counter_information/get_counter\
  42. </wsa:Action>\
  43. </SOAP-ENV:Header>\
  44. <SOAP-ENV:Body>\
  45. <ns1:get_counterRequest>\
  46. <ns1:counter_type>\
  47. ALL_COUNTER\
  48. </ns1:counter_type>\
  49. </ns1:get_counterRequest>\
  50. </SOAP-ENV:Body>\
  51. </SOAP-ENV:Envelope>\
  52. ' $host:$port`;
  53.  
  54. if [[ `echo $xml | grep DEEP_SLEEP_NOW_ERROR` ]]
  55. then
  56. #       echo "Host deep sleep now";
  57.         sleep 3;
  58. else
  59.         result=`echo $xml | sed "s/.*$param\(.*\)$param.*$/\1/g" | sed "s/[^0-9]//g"`
  60. fi
  61. done
  62. echo $result
  63. exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement