home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / lib / hplip / base / codes.py < prev    next >
Encoding:
Text File  |  2006-08-30  |  20.2 KB  |  627 lines

  1. # -*- coding: utf-8 -*-
  2. #
  3. # (c) Copyright 2003-2006 Hewlett-Packard Development Company, L.P.
  4. #
  5. # This program is free software; you can redistribute it and/or modify
  6. # it under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation; either version 2 of the License, or
  8. # (at your option) any later version.
  9. #
  10. # This program is distributed in the hope that it will be useful,
  11. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13. # GNU General Public License for more details.
  14. #
  15. # You should have received a copy of the GNU General Public License
  16. # along with this program; if not, write to the Free Software
  17. # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
  18. #
  19. # Author: Don Welch
  20. #
  21. #
  22. # NOTE: This module is safe for 'from codes import *'
  23. #
  24.  
  25. # Messaging Error Codes (result-code=)
  26.  
  27. ERROR_SUCCESS = 0
  28. ERROR_UNKNOWN_ERROR = 1
  29. ERROR_DEVICE_NOT_FOUND = 2
  30. ERROR_INVALID_DEVICE_ID = 3
  31. ERROR_INVALID_DEVICE_URI = 4
  32. ERROR_INVALID_MSG_TYPE = 5
  33. ERROR_INVALID_DATA_ENCODING = 6
  34. ERROR_INVALID_CHAR_ENCODING = 7
  35. ERROR_DATA_LENGTH_EXCEEDS_MAX = 8
  36. ERROR_DATA_LENGTH_MISMATCH = 9
  37. ERROR_DATA_DIGEST_MISMATCH = 10
  38. ERROR_INVALID_JOB_ID = 11
  39. ERROR_DEVICE_IO_ERROR = 12
  40. ERROR_STRING_QUERY_FAILED = 14
  41. ERROR_QUERY_FAILED = 15
  42. ERROR_GUI_NOT_AVAILABLE = 16
  43. ERROR_NO_CUPS_DEVICES_FOUND = 17 # deprecated
  44. ERROR_NO_PROBED_DEVICES_FOUND = 18
  45. ERROR_INVALID_BUS_TYPE = 19 # operation not supported on bus
  46. ERROR_BUS_TYPE_CANNOT_BE_PROBED = 20
  47. ERROR_DEVICE_BUSY = 21
  48. ERROR_NO_DATA_AVAILABLE = 22
  49. ERROR_INVALID_DEVICEID = 23
  50. ERROR_INVALID_CUPS_VERSION = 24
  51. ERROR_CUPS_NOT_RUNNING = 25
  52. ERROR_DEVICE_STATUS_NOT_AVAILABLE = 26
  53. ERROR_DATA_IN_SHORT_READ = 27
  54. ERROR_INVALID_SERVICE_NAME = 28
  55. ERROR_INVALID_USER_ERROR_CODE = 29
  56. ERROR_ERROR_INVALID_CHANNEL_ID = 30
  57. ERROR_CHANNEL_BUSY = 31
  58. ERROR_CHANNEL_CLOSE_FAILED = 32
  59. ERROR_UNSUPPORTED_BUS_TYPE = 33 # bus not supported
  60. ERROR_DEVICE_DOES_NOT_SUPPORT_OPERATION = 34
  61. ERROR_INVALID_GUI_NAME = 35
  62. ERROR_INTERFACE_BUSY = 36
  63. ERROR_DEVICEOPEN_FAILED_ONE_DEVICE_ONLY = 37
  64. ERROR_DEVICEOPEN_FAILED_DEV_NODE_MOVED = 38
  65. ERROR_TEST_EMAIL_FAILED = 39
  66. #ERROR_SMTP_CONNECT_ERROR = 40
  67. #ERROR_SMTP_RECIPIENTS_REFUSED = 41
  68. #ERROR_SMTP_HELO_ERROR = 42
  69. #ERROR_SMTP_SENDER_REFUSED = 43
  70. #ERROR_SMTP_DATA_ERROR = 44
  71. ERROR_INVALID_HOSTNAME = 45
  72. ERROR_INVALID_PORT_NUMBER = 46
  73. ERROR_NO_CUPS_QUEUE_FOUND_FOR_DEVICE = 47
  74. ERROR_UNSUPPORTED_MODEL = 48
  75. ERROR_FAX_FILE_NOT_FOUND = 49
  76. ERROR_FAX_INCOMPATIBLE_OPTIONS = 50
  77. ERROR_FAX_INVALID_FAX_FILE = 51
  78. ERROR_FAX_MUST_RUN_SENDFAX_FIRST = 52
  79. # --> add new codes here <--
  80. ERROR_UNABLE_TO_BIND_SOCKET = 95
  81. ERROR_UNABLE_TO_CONTACT_SERVICE = 96
  82. ERROR_DEVICE_NOT_OPEN = 98
  83. ERROR_INTERNAL = 99
  84. # If you add new codes, also add the appropriate description
  85. # to g.py for exception description strings.
  86. # Thank you, The Management
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93. # Event and status codes
  94. # These are used for the 'status-code' returned by DeviceQuery (STATUS_*)
  95. # and by the event-code used by Event (EVENT_* + STATUS_*)
  96.  
  97. # If you add a new EVENT/STATUS code, please add the appropriate
  98. # entry into the STATUS_TO_ERROR_STATE_MAP
  99.  
  100. STATUS_UNKNOWN = 0
  101.  
  102. EVENT_START_PRINT_JOB = 500 # sent by hp: backend
  103. EVENT_END_PRINT_JOB = 501 # sent by hp: backend
  104.  
  105. STATUS_PRINTER_BASE = 1000
  106. STATUS_PRINTER_IDLE = 1000
  107. STATUS_PRINTER_BUSY = 1001
  108. STATUS_PRINTER_PRINTING = 1002
  109. STATUS_PRINTER_TURNING_OFF = 1003
  110. STATUS_PRINTER_REPORT_PRINTING = 1004
  111. STATUS_PRINTER_CANCELING = 1005
  112. STATUS_PRINTER_IO_STALL = 1006
  113. STATUS_PRINTER_DRY_WAIT_TIME = 1007
  114. STATUS_PRINTER_PEN_CHANGE = 1008
  115. STATUS_PRINTER_OUT_OF_PAPER = 1009
  116. STATUS_PRINTER_BANNER_EJECT = 1010
  117. STATUS_PRINTER_BANNER_MISMATCH = 1011
  118. STATUS_PRINTER_PHOTO_MISMATCH = 1012
  119. STATUS_PRINTER_DUPLEX_MISMATCH = 1013
  120. STATUS_PRINTER_MEDIA_JAM = 1014
  121. STATUS_PRINTER_CARRIAGE_STALL = 1015
  122. STATUS_PRINTER_PAPER_STALL = 1016
  123. STATUS_PRINTER_PEN_FAILURE = 1017
  124. STATUS_PRINTER_HARD_ERROR = 1018
  125. STATUS_PRINTER_POWER_DOWN = 1019
  126. STATUS_PRINTER_FRONT_PANEL_TEST = 1020
  127. STATUS_PRINTER_CLEAN_OUT_TRAY_MISSING = 1021
  128. STATUS_PRINTER_OUTPUT_BIN_FULL = 1022
  129. STATUS_PRINTER_MEDIA_SIZE_MISMATCH = 1023
  130. STATUS_PRINTER_MANUAL_DUPLEX_BLOCK = 1024
  131. STATUS_PRINTER_SERVCE_STALL = 1025
  132. STATUS_PRINTER_OUT_OF_INK = 1026 # Also used for out of toner
  133. STATUS_PRINTER_LIO_ERROR = 1027
  134. STATUS_PRINTER_PUMP_STALL = 1028
  135. STATUS_PRINTER_TRAY_2_MISSING = 1029
  136. STATUS_PRINTER_DUPLEXER_MISSING = 1030
  137. STATUS_PRINTER_REAR_TRAY_MISSING = 1031
  138. STATUS_PRINTER_PEN_NOT_LATCHED = 1032
  139. STATUS_PRINTER_BATTERY_VERY_LOW = 1033
  140. STATUS_PRINTER_SPITTOON_FULL = 1034
  141. STATUS_PRINTER_OUTPUT_TRAY_CLOSED = 1035
  142. STATUS_PRINTER_MANUAL_FEED_BLOCKED = 1036
  143. STATUS_PRINTER_REAR_FEED_BLOCKED = 1037
  144. STATUS_PRINTER_TRAY_2_OUT_OF_PAPER = 1038
  145. STATUS_PRINTER_UNABLE_TO_LOAD_FROM_LOCKED_TRAY = 1039
  146. STATUS_PRINTER_NON_HP_INK = 1040
  147. STATUS_PRINTER_PEN_CALIBRATION_RESUME = 1041
  148. STATUS_PRINTER_MEDIA_TYPE_MISMATCH = 1042
  149. STATUS_PRINTER_CUSTOM_MEDIA_MISMATCH = 1043
  150. STATUS_PRINTER_PEN_CLEANING = 1044
  151. STATUS_PRINTER_PEN_CHECKING = 1045
  152.  
  153. # "synthetic" codes
  154. # set to AGENT_TYPE + base (base: 1500=ink, 1600=laser )
  155. STATUS_PRINTER_LOW_INK_BASE = 1500
  156. STATUS_PRINTER_LOW_BLACK_INK = 1501
  157. STATUS_PRINTER_LOW_TRI_COLOR_INK = 1502
  158. STATUS_PRINTER_LOW_PHOTO_INK = 1503
  159. STATUS_PRINTER_LOW_CYAN_INK = 1504
  160. STATUS_PRINTER_LOW_MAGENTA_INK = 1505
  161. STATUS_PRINTER_LOW_YELLOW_INK = 1506
  162. STATUS_PRINTER_LOW_PHOTO_CYAN_INK = 1507
  163. STATUS_PRINTER_LOW_PHOTO_MAGENTA_INK = 1508
  164. STATUS_PRINTER_LOW_PHOTO_YELLOW_INK = 1509
  165. STATUS_PRINTER_LOW_PHOTO_GRAY_INK = 1510
  166. STATUS_PRINTER_LOW_PHOTO_BLUE_INK = 1511
  167.  
  168. STATUS_PRINTER_LOW_TONER_BASE = 1600
  169. STATUS_PRINTER_LOW_BLACK_TONER = 1601
  170. STATUS_PRINTER_LOW_CYAN_TONER = 1604
  171. STATUS_PRINTER_LOW_MAGENTA_TONER = 1605
  172. STATUS_PRINTER_LOW_YELLOW_TONER = 1606
  173. # end
  174.  
  175. # "synthetic" laserjet codes
  176. STATUS_PRINTER_WARMING_UP = 1800
  177. STATUS_PRINTER_LOW_PAPER = 1801
  178. STATUS_PRINTER_DOOR_OPEN = 1802
  179. STATUS_PRINTER_OFFLINE = 1803
  180. STATUS_PRINTER_LOW_TONER = 1804
  181. STATUS_PRINTER_NO_TONER = 1805
  182. STATUS_PRINTER_SERVICE_REQUEST = 1806
  183. STATUS_PRINTER_FUSER_ERROR = 1807
  184. #end
  185.  
  186. # other "synthetic" codes
  187. STATUS_DEVICE_UNSUPPORTED = 1900
  188. #end
  189.  
  190. # scan
  191. EVENT_START_SCAN_JOB = 2000
  192. EVENT_END_SCAN_JOB = 2001
  193. EVENT_SCANNER_FAIL = 2002
  194. #end
  195.  
  196. # fax
  197. EVENT_START_FAX_JOB = 3000
  198. EVENT_END_FAX_JOB = 3001
  199. EVENT_FAX_JOB_FAIL = 3002
  200. EVENT_FAX_JOB_CANCELED = 3003
  201. STATUS_FAX_TX_ACTIVE = 3004
  202. STATUS_FAX_RX_ACTIVE = 3005
  203. #end
  204.  
  205. # copy
  206. EVENT_START_COPY_JOB = 4000
  207. EVENT_END_COPY_JOB = 4001
  208. EVENT_COPY_JOB_FAIL = 4002
  209. #end
  210.  
  211. # Adding the ERROR_CODE_BASE to the above
  212. # ERROR codes will produce a event/status code
  213. # e.g., ERROR_DATA_IN_SHORT_READ=27 -> 5027 status/event code
  214. ERROR_CODE_BASE = 5000
  215. EVENT_ERROR_SUCCESS = 5000
  216. EVENT_ERROR_UNKNOWN_ERROR = 5001
  217. EVENT_ERROR_DEVICE_NOT_FOUND = 5002
  218. EVENT_ERROR_INVALID_DEVICE_ID = 5003
  219. EVENT_ERROR_INVALID_DEVICE_URI = 5004
  220. EVENT_ERROR_INVALID_MSG_TYPE = 5005
  221. EVENT_ERROR_INVALID_DATA_ENCODING = 5006
  222. EVENT_ERROR_INVALID_CHAR_ENCODING = 5007
  223. EVENT_ERROR_DATA_LENGTH_EXCEEDS_MAX = 5008
  224. EVENT_ERROR_DATA_LENGTH_MISMATCH = 5009
  225. EVENT_ERROR_DATA_DIGEST_MISMATCH = 5010
  226. EVENT_ERROR_INVALID_JOB_ID = 5011
  227. EVENT_ERROR_DEVICE_IO_ERROR = 5012
  228. EVENT_ERROR_STRING_QUERY_FAILED = 5014
  229. EVENT_ERROR_QUERY_FAILED = 5015
  230. EVENT_ERROR_GUI_NOT_AVAILABLE = 5016
  231. EVENT_ERROR_NO_CUPS_DEVICES_FOUND = 5017 # deprecated
  232. EVENT_ERROR_NO_PROBED_DEVICES_FOUND = 5018
  233. EVENT_ERROR_INVALID_BUS_TYPE = 5019 # operation not supported on bus
  234. EVENT_ERROR_BUS_TYPE_CANNOT_BE_PROBED = 5020
  235. EVENT_ERROR_DEVICE_BUSY = 5021
  236. EVENT_ERROR_NO_DATA_AVAILABLE = 5022
  237. EVENT_ERROR_INVALID_DEVICEID = 5023
  238. EVENT_ERROR_INVALID_CUPS_VERSION = 5024
  239. EVENT_ERROR_CUPS_NOT_RUNNING = 5025
  240. EVENT_ERROR_DEVICE_STATUS_NOT_AVAILABLE = 5026
  241. EVENT_ERROR_DATA_IN_SHORT_READ = 5027
  242. EVENT_ERROR_INVALID_SERVICE_NAME = 5028
  243. EVENT_ERROR_INVALID_USER_ERROR_CODE = 5029
  244. EVENT_ERROR_ERROR_INVALID_CHANNEL_ID = 5030
  245. EVENT_ERROR_CHANNEL_BUSY = 5031
  246. EVENT_ERROR_CHANNEL_CLOSE_FAILED = 5032
  247. EVENT_ERROR_UNSUPPORTED_BUS_TYPE = 5033 # bus not supported
  248. EVENT_ERROR_DEVICE_DOES_NOT_SUPPORT_OPERATION = 5034
  249. EVENT_ERROR_INVALID_GUI_NAME = 5035
  250. EVENT_ERROR_INTERFACE_BUSY = 5036
  251. EVENT_ERROR_DEVICEOPEN_FAILED_ONE_DEVICE_ONLY = 5037
  252. EVENT_ERROR_DEVICEOPEN_FAILED_DEV_NODE_MOVED = 5038
  253. EVENT_ERROR_FAX_MUST_RUN_SENDFAX_FIRST = 5052
  254. # end
  255.  
  256. # pcard
  257. EVENT_START_PCARD_JOB = 6000
  258. EVENT_END_PCARD_JOB = 6001
  259. EVENT_PCARD_JOB_FAIL = 6002
  260. EVENT_PCARD_UNABLE_TO_MOUNT = 6003
  261. EVENT_PCARD_FILES_TRANSFERED = 6004
  262. # end
  263.  
  264. EVENT_MAX_USER_EVENT = 7999
  265. # end of user events
  266. # start of internal events
  267.  
  268. # fax (internal events)
  269. EVENT_FAX_MIN = 8000
  270. EVENT_FAX_RENDER_COMPLETE = 8000 # sent by hpssd to hp-sendfax after job rendered
  271. EVENT_FAX_ADDRESS_BOOK_UPDATED = 8002 # Sent by FAB to indicate that the dB has changed
  272. EVENT_FAX_RENDER_DISTANT_EARLY_WARNING = 8003
  273. EVENT_FAX_MAX = 8999
  274. # end
  275.  
  276. # end of events
  277.  
  278.  
  279. # Error states
  280. ERROR_STATE_CLEAR = 0        # Show icon w/o overlay
  281. ERROR_STATE_OK = 1           # Icon w/ "OK" overlay
  282. ERROR_STATE_WARNING = 2      # Icon w/ triangle "!" overlay
  283. ERROR_STATE_ERROR = 3        # Icon w/ circle "X" overlay
  284. ERROR_STATE_LOW_SUPPLIES = 4 # Icon w/ supplies overlay
  285. ERROR_STATE_BUSY = 5         # Icon with busy overlay
  286. ERROR_STATE_LOW_PAPER = 6    # Icon w/ paper low overlay
  287. #end
  288.  
  289.  
  290. # Map of status/event codes to UI states
  291. STATUS_TO_ERROR_STATE_MAP = {
  292.     STATUS_UNKNOWN : ERROR_STATE_CLEAR,
  293.     EVENT_START_PRINT_JOB : ERROR_STATE_BUSY,
  294.     EVENT_END_PRINT_JOB   : ERROR_STATE_OK,
  295.     STATUS_PRINTER_IDLE : ERROR_STATE_CLEAR,
  296.     STATUS_PRINTER_BUSY : ERROR_STATE_BUSY,
  297.     STATUS_PRINTER_PRINTING : ERROR_STATE_BUSY,
  298.     STATUS_PRINTER_TURNING_OFF : ERROR_STATE_BUSY,
  299.     STATUS_PRINTER_REPORT_PRINTING : ERROR_STATE_BUSY,
  300.     STATUS_PRINTER_CANCELING : ERROR_STATE_BUSY,
  301.     STATUS_PRINTER_IO_STALL : ERROR_STATE_ERROR,
  302.     STATUS_PRINTER_DRY_WAIT_TIME : ERROR_STATE_BUSY,
  303.     STATUS_PRINTER_PEN_CHANGE : ERROR_STATE_WARNING,
  304.     STATUS_PRINTER_OUT_OF_PAPER : ERROR_STATE_ERROR,
  305.     STATUS_PRINTER_BANNER_EJECT : ERROR_STATE_ERROR,
  306.     STATUS_PRINTER_BANNER_MISMATCH : ERROR_STATE_WARNING,
  307.     STATUS_PRINTER_PHOTO_MISMATCH : ERROR_STATE_WARNING,
  308.     STATUS_PRINTER_DUPLEX_MISMATCH : ERROR_STATE_WARNING,
  309.     STATUS_PRINTER_MEDIA_JAM : ERROR_STATE_ERROR,
  310.     STATUS_PRINTER_CARRIAGE_STALL : ERROR_STATE_ERROR,
  311.     STATUS_PRINTER_PAPER_STALL : ERROR_STATE_ERROR,
  312.     STATUS_PRINTER_PEN_FAILURE : ERROR_STATE_ERROR,
  313.     STATUS_PRINTER_HARD_ERROR : ERROR_STATE_ERROR,
  314.     STATUS_PRINTER_POWER_DOWN : ERROR_STATE_ERROR,
  315.     STATUS_PRINTER_FRONT_PANEL_TEST : ERROR_STATE_ERROR,
  316.     STATUS_PRINTER_CLEAN_OUT_TRAY_MISSING : ERROR_STATE_ERROR,
  317.     STATUS_PRINTER_OUTPUT_BIN_FULL : ERROR_STATE_ERROR,
  318.     STATUS_PRINTER_MEDIA_SIZE_MISMATCH : ERROR_STATE_WARNING,
  319.     STATUS_PRINTER_MANUAL_DUPLEX_BLOCK : ERROR_STATE_ERROR,
  320.     STATUS_PRINTER_SERVCE_STALL : ERROR_STATE_ERROR,
  321.     STATUS_PRINTER_OUT_OF_INK : ERROR_STATE_ERROR,
  322.     STATUS_PRINTER_LIO_ERROR : ERROR_STATE_ERROR,
  323.     STATUS_PRINTER_PUMP_STALL : ERROR_STATE_ERROR,
  324.     STATUS_PRINTER_TRAY_2_MISSING : ERROR_STATE_ERROR,
  325.     STATUS_PRINTER_DUPLEXER_MISSING : ERROR_STATE_ERROR,
  326.     STATUS_PRINTER_REAR_TRAY_MISSING : ERROR_STATE_ERROR,
  327.     STATUS_PRINTER_PEN_NOT_LATCHED : ERROR_STATE_ERROR,
  328.     STATUS_PRINTER_BATTERY_VERY_LOW : ERROR_STATE_WARNING,
  329.     STATUS_PRINTER_SPITTOON_FULL : ERROR_STATE_ERROR,
  330.     STATUS_PRINTER_OUTPUT_TRAY_CLOSED : ERROR_STATE_ERROR,
  331.     STATUS_PRINTER_MANUAL_FEED_BLOCKED : ERROR_STATE_ERROR,
  332.     STATUS_PRINTER_REAR_FEED_BLOCKED : ERROR_STATE_ERROR,
  333.     STATUS_PRINTER_TRAY_2_OUT_OF_PAPER : ERROR_STATE_LOW_PAPER,
  334.     STATUS_PRINTER_UNABLE_TO_LOAD_FROM_LOCKED_TRAY : ERROR_STATE_ERROR,
  335.     STATUS_PRINTER_NON_HP_INK : ERROR_STATE_WARNING,
  336.     STATUS_PRINTER_PEN_CALIBRATION_RESUME : ERROR_STATE_WARNING,
  337.     STATUS_PRINTER_MEDIA_TYPE_MISMATCH : ERROR_STATE_WARNING,
  338.     STATUS_PRINTER_CUSTOM_MEDIA_MISMATCH : ERROR_STATE_WARNING,
  339.     STATUS_PRINTER_PEN_CLEANING : ERROR_STATE_WARNING,
  340.     STATUS_PRINTER_PEN_CLEANING : ERROR_STATE_WARNING,
  341.     STATUS_PRINTER_WARMING_UP : ERROR_STATE_BUSY,
  342.     STATUS_PRINTER_LOW_PAPER : ERROR_STATE_LOW_PAPER,
  343.     STATUS_PRINTER_DOOR_OPEN : ERROR_STATE_ERROR,
  344.     STATUS_PRINTER_OFFLINE : ERROR_STATE_ERROR,
  345.     STATUS_PRINTER_LOW_TONER : ERROR_STATE_LOW_SUPPLIES,
  346.     STATUS_PRINTER_NO_TONER : ERROR_STATE_LOW_SUPPLIES,
  347.     STATUS_PRINTER_SERVICE_REQUEST : ERROR_STATE_ERROR,
  348.     STATUS_PRINTER_FUSER_ERROR : ERROR_STATE_ERROR,
  349.     STATUS_DEVICE_UNSUPPORTED : ERROR_STATE_ERROR,
  350.     # The following block are EVENTs because they are only
  351.     # recieved as events from hpiod, hp backend, etc.
  352.     # i.e., a device does not produce status codes in this range
  353.     EVENT_ERROR_SUCCESS : ERROR_STATE_CLEAR,
  354.     EVENT_ERROR_UNKNOWN_ERROR : ERROR_STATE_ERROR,
  355.     EVENT_ERROR_DEVICE_NOT_FOUND : ERROR_STATE_ERROR,
  356.     EVENT_ERROR_INVALID_DEVICE_ID : ERROR_STATE_ERROR,
  357.     EVENT_ERROR_INVALID_DEVICE_URI : ERROR_STATE_ERROR,
  358.     EVENT_ERROR_INVALID_MSG_TYPE : ERROR_STATE_ERROR,
  359.     EVENT_ERROR_INVALID_DATA_ENCODING : ERROR_STATE_ERROR,
  360.     EVENT_ERROR_INVALID_CHAR_ENCODING : ERROR_STATE_ERROR,
  361.     EVENT_ERROR_DATA_LENGTH_EXCEEDS_MAX : ERROR_STATE_WARNING,
  362.     EVENT_ERROR_DATA_LENGTH_MISMATCH : ERROR_STATE_ERROR,
  363.     EVENT_ERROR_DATA_DIGEST_MISMATCH : ERROR_STATE_ERROR,
  364.     EVENT_ERROR_INVALID_JOB_ID : ERROR_STATE_ERROR,
  365.     EVENT_ERROR_DEVICE_IO_ERROR : ERROR_STATE_ERROR,
  366.     EVENT_ERROR_STRING_QUERY_FAILED : ERROR_STATE_ERROR,
  367.     EVENT_ERROR_QUERY_FAILED : ERROR_STATE_ERROR,
  368.     EVENT_ERROR_GUI_NOT_AVAILABLE : ERROR_STATE_WARNING,
  369.     EVENT_ERROR_NO_CUPS_DEVICES_FOUND : ERROR_STATE_WARNING,
  370.     EVENT_ERROR_NO_PROBED_DEVICES_FOUND : ERROR_STATE_WARNING,
  371.     EVENT_ERROR_INVALID_BUS_TYPE : ERROR_STATE_ERROR,
  372.     EVENT_ERROR_BUS_TYPE_CANNOT_BE_PROBED : ERROR_STATE_ERROR,
  373.     EVENT_ERROR_DEVICE_BUSY : ERROR_STATE_BUSY,
  374.     EVENT_ERROR_NO_DATA_AVAILABLE : ERROR_STATE_ERROR,
  375.     EVENT_ERROR_INVALID_DEVICEID : ERROR_STATE_ERROR,
  376.     EVENT_ERROR_INVALID_CUPS_VERSION : ERROR_STATE_ERROR,
  377.     EVENT_ERROR_CUPS_NOT_RUNNING : ERROR_STATE_ERROR,
  378.     EVENT_ERROR_DEVICE_STATUS_NOT_AVAILABLE : ERROR_STATE_ERROR,
  379.     EVENT_ERROR_DATA_IN_SHORT_READ : ERROR_STATE_ERROR,
  380.     EVENT_ERROR_INVALID_SERVICE_NAME : ERROR_STATE_ERROR,
  381.     EVENT_ERROR_INVALID_USER_ERROR_CODE : ERROR_STATE_ERROR,
  382.     EVENT_ERROR_ERROR_INVALID_CHANNEL_ID : ERROR_STATE_ERROR,
  383.     EVENT_ERROR_CHANNEL_BUSY : ERROR_STATE_BUSY,
  384.     EVENT_ERROR_CHANNEL_CLOSE_FAILED : ERROR_STATE_ERROR,
  385.     EVENT_ERROR_UNSUPPORTED_BUS_TYPE : ERROR_STATE_ERROR,
  386.     EVENT_ERROR_DEVICE_DOES_NOT_SUPPORT_OPERATION : ERROR_STATE_ERROR,
  387.     EVENT_ERROR_INVALID_GUI_NAME : ERROR_STATE_ERROR,
  388.     EVENT_ERROR_INTERFACE_BUSY : ERROR_STATE_BUSY,
  389.     EVENT_ERROR_DEVICEOPEN_FAILED_ONE_DEVICE_ONLY : ERROR_STATE_ERROR,
  390.     EVENT_ERROR_DEVICEOPEN_FAILED_DEV_NODE_MOVED : ERROR_STATE_ERROR,
  391.     
  392.     EVENT_START_SCAN_JOB : ERROR_STATE_BUSY,
  393.     EVENT_END_SCAN_JOB : ERROR_STATE_OK,
  394.     EVENT_SCANNER_FAIL : ERROR_STATE_ERROR,
  395.     
  396.     EVENT_START_FAX_JOB : ERROR_STATE_BUSY,
  397.     EVENT_END_FAX_JOB : ERROR_STATE_OK,
  398.     EVENT_FAX_JOB_FAIL : ERROR_STATE_ERROR,
  399.     EVENT_FAX_JOB_CANCELED : ERROR_STATE_ERROR,
  400.     STATUS_FAX_TX_ACTIVE : ERROR_STATE_BUSY,
  401.     STATUS_FAX_RX_ACTIVE : ERROR_STATE_BUSY,
  402.     
  403.     EVENT_START_COPY_JOB : ERROR_STATE_BUSY,
  404.     EVENT_END_COPY_JOB : ERROR_STATE_OK,
  405.     
  406.     EVENT_START_PCARD_JOB : ERROR_STATE_BUSY,
  407.     EVENT_END_PCARD_JOB : ERROR_STATE_CLEAR,
  408.     
  409.     EVENT_PCARD_JOB_FAIL : ERROR_STATE_ERROR,
  410.     EVENT_PCARD_UNABLE_TO_MOUNT : ERROR_STATE_ERROR,
  411.     EVENT_PCARD_FILES_TRANSFERED : ERROR_STATE_OK,
  412. }
  413.  
  414.  
  415. # Device states
  416. DEVICE_STATE_NOT_FOUND = -1
  417. DEVICE_STATE_FOUND = 0
  418. DEVICE_STATE_JUST_FOUND = 1
  419.  
  420.  
  421. # I/O states
  422. IO_STATE_HP_OPEN = 0
  423. IO_STATE_HP_READY = 1
  424. IO_STATE_HP_NOT_AVAIL = 2
  425. IO_STATE_NON_HP = 3
  426.  
  427. #
  428. # Defines for model query types and status query
  429. #
  430.  
  431. # agent info
  432.  
  433. # 'kind'
  434. AGENT_KIND_NONE = 0
  435. AGENT_KIND_HEAD = 1 # InkJet head (no ink)
  436. AGENT_KIND_SUPPLY = 2 # InkJet supply (ink tank)
  437. AGENT_KIND_HEAD_AND_SUPPLY = 3 # InkJet (cartridge)
  438. AGENT_KIND_TONER_CARTRIDGE = 4 # LaserJet
  439. AGENT_KIND_MAINT_KIT = 5 # LaserJet "Maintenance kit (fuser)"
  440. AGENT_KIND_ADF_KIT = 6 # LaserJet "Document feeder kit"
  441. AGENT_KIND_DRUM_KIT = 7 # LaserJet
  442. AGENT_KIND_TRANSFER_KIT = 8 # LaserJet
  443. AGENT_KIND_INT_BATTERY = 9 # Mobile deskjet (DJ450, etc)
  444. AGENT_KIND_UNKNOWN = 0x3e # (62)
  445.  
  446. # 'type'
  447. AGENT_TYPE_NONE = 0
  448. AGENT_TYPE_BLACK = 1
  449. AGENT_TYPE_CMY = 2
  450. AGENT_TYPE_KCM = 3
  451. AGENT_TYPE_CYAN = 4
  452. AGENT_TYPE_MAGENTA = 5
  453. AGENT_TYPE_YELLOW = 6
  454. AGENT_TYPE_CYAN_LOW = 7
  455. AGENT_TYPE_MAGENTA_LOW = 8
  456. AGENT_TYPE_YELLOW_LOW = 9
  457. AGENT_TYPE_GGK = 10 # 2 shades of grey and black
  458. AGENT_TYPE_BLUE = 11
  459. AGENT_TYPE_KCMY_CM = 12 
  460. AGENT_TYPE_LC_LM = 13 # light cyan and light magenta
  461. AGENT_TYPE_Y_M = 14 # yellow and magenta
  462. AGENT_TYPE_C_K = 15 # cyan and black
  463. AGENT_TYPE_LG_PK = 16 # light grey and photo black
  464. AGENT_TYPE_LG = 17 # light grey
  465. AGENT_TYPE_G = 18 # medium grey
  466. AGENT_TYPE_PG = 19 # photo grey
  467. AGENT_TYPE_WHITE = 0x20 # For ISO 10180 compatibility
  468. AGENT_TYPE_RED = 0x21 # For ISO 10180 compatibility
  469. AGENT_TYPE_UNSPECIFIED = 0x3e # (62) Used for kind = 5, 6, 7, 8, or 9
  470. AGENT_TYPE_ERROR = 0x3f # (63)
  471.  
  472. # 'health'
  473. AGENT_HEALTH_OK = 0
  474. AGENT_HEALTH_MISINSTALLED = 1 # supply/cart
  475. AGENT_HEALTH_FAIR_MODERATE = 1 # head
  476. AGENT_HEALTH_INCORRECT = 2
  477. AGENT_HEALTH_FAILED = 3
  478. AGENT_HEALTH_OVERTEMP = 4 # Battery
  479. AGENT_HEALTH_CHARGING = 5 # Battery
  480. AGENT_HEALTH_DISCHARGING = 6 # Battery
  481. AGENT_HEALTH_UNKNOWN = 0xff
  482.  
  483. # 'level'
  484. AGENT_LEVEL_TRIGGER_SUFFICIENT_0 = 0
  485. AGENT_LEVEL_TRIGGER_SUFFICIENT_1 = 1
  486. AGENT_LEVEL_TRIGGER_SUFFICIENT_2 = 2
  487. AGENT_LEVEL_TRIGGER_SUFFICIENT_3 = 3
  488. AGENT_LEVEL_TRIGGER_SUFFICIENT_4 = 4
  489. AGENT_LEVEL_TRIGGER_MAY_BE_LOW = 5
  490. AGENT_LEVEL_TRIGGER_PROBABLY_OUT = 6
  491. AGENT_LEVEL_TRIGGER_ALMOST_DEFINITELY_OUT = 7
  492.  
  493. # "Computed" configurations
  494. AGENT_CONFIG_NONE = 0
  495. AGENT_CONFIG_BLACK_ONLY = 1
  496. AGENT_CONFIG_PHOTO_ONLY = 2
  497. AGENT_CONFIG_COLOR_ONLY = 3
  498. AGENT_CONFIG_GREY_ONLY = 4
  499. AGENT_CONFIG_COLOR_AND_BLACK = 5
  500. AGENT_CONFIG_COLOR_AND_PHOTO = 6
  501. AGENT_CONFIG_COLOR_AND_GREY = 7
  502. AGENT_CONFIG_INVALID = 99
  503.  
  504. # align-types
  505. ALIGN_TYPE_NONE = 0
  506. ALIGN_TYPE_AUTO = 1
  507. ALIGN_TYPE_8XX = 2
  508. ALIGN_TYPE_9XX = 3
  509. ALIGN_TYPE_LIDIL_0_3_8 = 4
  510. ALIGN_TYPE_LIDIL_0_4_3 = 5
  511. ALIGN_TYPE_LIDIL_AIO = 6
  512. ALIGN_TYPE_LIDIL_VIP = 7
  513. ALIGN_TYPE_DESKJET_450 = 8
  514. ALIGN_TYPE_9XX_NO_EDGE_ALIGN = 9
  515. ALIGN_TYPE_LBOW = 10
  516.  
  517. # clean-types
  518. CLEAN_TYPE_NONE = 0
  519. CLEAN_TYPE_PCL = 1
  520. CLEAN_TYPE_LIDIL = 2
  521. CLEAN_TYPE_PCL_WITH_PRINTOUT = 3
  522.  
  523. # color-cal-types
  524. COLOR_CAL_TYPE_NONE = 0
  525. COLOR_CAL_TYPE_DESKJET_450 = 1
  526. COLOR_CAL_TYPE_MALIBU_CRICK = 2
  527. COLOR_CAL_TYPE_STRINGRAY_LONGBOW_TORNADO = 3
  528. COLOR_CAL_TYPE_CONNERY = 4
  529. COLOR_CAL_TYPE_COUSTEAU = 5
  530.  
  531. # status-types
  532. STATUS_TYPE_NONE = 0
  533. STATUS_TYPE_VSTATUS = 1
  534. STATUS_TYPE_S = 2
  535. STATUS_TYPE_LJ = 3
  536. STATUS_TYPE_S_W_BATTERY = 4
  537. STATUS_TYPE_S_SNMP = 5
  538. STATUS_TYPE_LJ_XML = 6
  539.  
  540. # tech-types
  541. TECH_TYPE_NONE = 0
  542. TECH_TYPE_MONO_INK = 1
  543. TECH_TYPE_COLOR_INK = 2
  544. TECH_TYPE_MONO_LASER = 3
  545. TECH_TYPE_COLOR_LASER = 4
  546.  
  547. # support-type
  548. SUPPORT_TYPE_NONE = 0
  549. SUPPORT_TYPE_HPIJS = 1
  550. SUPPORT_TYPE_HPLIP = 2
  551.  
  552. # fax-types
  553. FAX_TYPE_NONE = 0
  554. FAX_TYPE_BLACK_SEND_EARLY_OPEN = 1 # newer models
  555. FAX_TYPE_BLACK_SEND_LATE_OPEN = 2 # older models
  556. FAX_TYPE_BLACK_AND_COLOR_SEND = 3 # future
  557.  
  558. # pcard-types
  559. PCARD_TYPE_NONE = 0
  560. PCARD_TYPE_MLC = 1
  561. PCARD_TYPE_USB_MASS_STORAGE = 2
  562.  
  563. # scan-types
  564. SCAN_TYPE_NONE = 0
  565. SCAN_TYPE_SCL = 1
  566. SCAN_TYPE_PML = 2
  567.  
  568. # copy-types
  569. COPY_TYPE_NONE = 0
  570. COPY_TYPE_DEVICE = 1
  571. COPY_TYPE_SCAN_TO_PRINT = 2
  572.  
  573. # 'top_door' (lid)
  574. TOP_DOOR_NOT_PRESENT = 0
  575. TOP_DOOR_CLOSED = 1
  576. TOP_DOOR_OPEN = 2
  577.  
  578. # 'supply_door'
  579. SUPPLY_DOOR_NOT_PRESENT = 0
  580. SUPPLY_DOOR_CLOSED = 1
  581. SUPPLY_DOOR_OPEN = 2
  582.  
  583. # 'media_path'
  584. MEDIA_PATH_NOT_PRESENT = 0 # S:00 means banner not present
  585. MEDIA_PATH_CUT_SHEET = 1 # S:01 means banner present/engaged
  586. MEDIA_PATH_BANNER = 2
  587. MEDIA_PATH_PHOTO = 3
  588.  
  589. # 'photo_tray'(S:03 photo/hagaki)
  590. PHOTO_TRAY_NOT_PRESENT = 0
  591. PHOTO_TRAY_NOT_ENGAGED = 1
  592. PHOTO_TRAY_ENGAGED = 2
  593.  
  594. # 'duplexer' (S:02 cleanout)
  595. DUPLEXER_NOT_PRESENT = 0
  596. DUPLEXER_DOOR_CLOSED = 1
  597. DUPLEXER_DOOR_OPEN = 2
  598.  
  599. # 'in_tray1' & 'in_tray2'
  600. IN_TRAY_NOT_PRESENT = 0
  601. IN_TRAY_PRESENT = 1 # for !S:02, test for > IN_TRAY_NOT_PRESENT
  602. IN_TRAY_DEFAULT = 2 # S:02 only
  603. IN_TRAY_LOCKED = 3 # S:02 only
  604.  
  605. # 'io-support'
  606. IO_SUPPORT_PARALLEL = 0x1
  607. IO_SUPPORT_USB = 0x2
  608. IO_SUPPORT_NETWORK = 0x4
  609. IO_SUPPORT_WIRELESS = 0x8
  610. IO_SUPPORT_BLUETOOTH = 0x10
  611.  
  612. # Model categories
  613. MODEL_TYPE_UNSUPPORTED = -1
  614. MODEL_TYPE_COLOR_INKJET = 0
  615. MODEL_TYPE_PHOTOSMART = 1
  616. MODEL_TYPE_COLOR_LASER = 2
  617. MODEL_TYPE_COLOR_LASER_AIO = 3
  618. MODEL_TYPE_COLOR_INKJET_AIO = 4
  619. MODEL_TYPE_MONO_LASER = 5
  620. MODEL_TYPE_MONO_LASER_AIO = 6
  621.  
  622. # 'io-mode'
  623. IO_MODE_UNI = 0
  624. IO_MODE_RAW = 1
  625. IO_MODE_MLC = 2
  626. IO_MODE_DOT4 = 3
  627.