1#!/usr/local/bin/python3.8
2# -*- coding: utf-8 -*-
3#
4# (c) Copyright 2003-2015 HP Development Company, L.P.
5#
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2 of the License, or
9# (at your option) any later version.
10#
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19#
20# Author: Don Welch, Naga Samrat Chowdary Narla, Yashwant Sahu
21#
22#
23# NOTE: This module is safe for 'from codes import *'
24#
25
26
27# GUI/Console modes
28INTERACTIVE_MODE = 0 # -i
29GUI_MODE = 1 # -u
30NON_INTERACTIVE_MODE = 2 # -n
31BROWSER_MODE = 3 # -w
32
33# Supported UI toolkits
34UI_TOOLKIT_QT3 = 0
35UI_TOOLKIT_QT4 = 1
36UI_TOOLKIT_QT5 = 2
37UI_TOOLKIT_GTK = 3 # Not used
38
39# device types (CUPS queue or SANE types)
40DEVICE_TYPE_UNKNOWN = 0
41DEVICE_TYPE_PRINTER = 1 # hp:
42DEVICE_TYPE_SCANNER = 2 # hpaio:
43DEVICE_TYPE_FAX = 3     # hpfax:
44DEVICE_TYPE_COPIER = 4  # not used
45
46# Error Codes generated by HPMUD or raise Error(code) or func return
47# Add 5000 to code for event code
48ERROR_SUCCESS = 0
49ERROR_UNKNOWN_ERROR = 1
50ERROR_DEVICE_NOT_FOUND = 2 # MUD: HPMUD_R_INVALID_DEVICE
51ERROR_INVALID_DEVICE_ID = 3 # MUD: HPMUD_R_INVALID_DESCRIPTOR
52ERROR_INVALID_DEVICE_URI = 4 # MUD: HPMUD_R_INVALID_URI
53ERROR_DATA_LENGTH_EXCEEDS_MAX = 8 # MUD: HPMUD_R_INVALID_LENGTH
54ERROR_DEVICE_IO_ERROR = 12 # MUD: HPMUD_R_IO_ERROR
55ERROR_NO_PROBED_DEVICES_FOUND = 18
56ERROR_DEVICE_BUSY = 21 # MUD: HPMUD_R_DEVICE_BUSY
57ERROR_DEVICE_STATUS_NOT_AVAILABLE = 26
58ERROR_INVALID_SERVICE_NAME = 28 # MUD: HPMUD_R_INVALID_SN
59ERROR_ERROR_INVALID_CHANNEL_ID = 30 # MUD: HPMUD_R_INVALID_CHANNEL_ID
60ERROR_CHANNEL_BUSY = 31 # MUD: HPMUD_R_INVALID_STATE
61ERROR_DEVICE_DOES_NOT_SUPPORT_OPERATION = 34
62ERROR_DEVICEOPEN_FAILED = 37 # MUD: HPMUD_R_INVALID_DEVICE_OPEN
63ERROR_INVALID_DEVNODE = 38 # MUD: HPMUD_R_INVALID_DEVICE_NODE
64ERROR_INVALID_HOSTNAME = 45 # MUD: HPMUD_R_INVALID_IP
65ERROR_INVALID_PORT_NUMBER = 46 # MUD: HPMUD_R_INVALID_IP_PORT
66ERROR_INVALID_TIMEOUT = 47 # MUD: HPMUD_R_INVALID_TIMEOUT
67ERROR_DATFILE_ERROR = 48 # MUD: HPMUD_R_DATFILE_ERROR
68ERROR_IO_TIMEOUT = 49 # MUD: HPMUD_R_IO_TIMEOUT
69ERROR_FAX_INCOMPATIBLE_OPTIONS = 50
70ERROR_FAX_INVALID_FAX_FILE = 51
71ERROR_NO_CUPS_QUEUE_FOUND_FOR_DEVICE = 55
72ERROR_FAX_FILE_NOT_FOUND = 57
73ERROR_INVALID_ARGUMENT = 58
74# --> add new codes here <--
75ERROR_INTERNAL = 99
76ERROR_FILE_NOT_FOUND = 101
77ERROR_DIRECTORY_NOT_FOUND = 102
78ERROR_NO_NETWORK = 103
79ERROR_CHECKSUM_ERROR = 104
80ERROR_GPG_CMD_NOT_FOUND = 105
81ERROR_UNABLE_TO_RECV_KEYS = 106
82ERROR_DIGITAL_SIGN_NOT_FOUND = 107
83ERROR_FAILED_TO_DOWNLOAD_FILE = 107
84ERROR_DIGITAL_SIGN_BAD = 108
85ERROR_INCORRECT_PASSWORD = 109
86ERROR_UNKNOWN_VALIDATION_ERROR = 110
87ERROR_NO_SI_DEVICE = 111
88ERROR_FAILED_TO_DISABLE_SI = 112
89
90
91
92# If you add new codes, also add the appropriate description
93# to g.py for exception description strings.
94# Thank you, The Management
95
96
97# Event and status codes
98# These are used for the 'status-code' returned by DeviceQuery (STATUS_*)
99# and by the event-code used by Event (EVENT_* + STATUS_*)
100
101# If you add a new EVENT/STATUS code, please add the appropriate
102# entry into the STATUS_TO_ERROR_STATE_MAP
103
104STATUS_UNKNOWN = 0
105
106EVENT_MIN_USER_EVENT = 500
107EVENT_START_PRINT_JOB = 500 # sent by hp: backend
108EVENT_END_PRINT_JOB = 501 # sent by hp: backend
109EVENT_PRINT_FAILED_MISSING_PLUGIN = 502
110
111ERROR_RUNNING_AS_ROOT = 503
112
113EVENT_START_FAX_PRINT_JOB = 600 # sent by hpfax: backend
114EVENT_END_FAX_PRINT_JOB = 601 # sent by hpfax: backend
115
116EVENT_PRINTER_QUEUE_STOPPED = 700
117EVENT_PRINTER_QUEUE_STARTED = 701
118EVENT_PRINTER_QUEUE_REJECTING_JOBS = 702
119EVENT_PRINTER_QUEUE_ACCEPTING_JOBS = 703
120EVENT_PRINTER_QUEUE_SET_AS_DEFAULT = 704
121
122EVENT_FAX_QUEUE_STOPPED = 800
123EVENT_FAX_QUEUE_STARTED = 801
124EVENT_FAX_QUEUE_REJECTING_JOBS = 802
125EVENT_FAX_QUEUE_ACCEPTING_JOBS = 803
126EVENT_FAX_QUEUE_SET_AS_DEFAULT = 804
127EVENT_FAX_FAILED_MISSING_PLUGIN = 805
128
129STATUS_PRINTER_BASE = 1000
130STATUS_PRINTER_IDLE = 1000
131STATUS_PRINTER_BUSY = 1001
132STATUS_PRINTER_PRINTING = 1002
133STATUS_PRINTER_TURNING_OFF = 1003
134STATUS_PRINTER_REPORT_PRINTING = 1004
135STATUS_PRINTER_CANCELING = 1005
136STATUS_PRINTER_IO_STALL = 1006
137STATUS_PRINTER_DRY_WAIT_TIME = 1007
138STATUS_PRINTER_PEN_CHANGE = 1008
139STATUS_PRINTER_OUT_OF_PAPER = 1009
140STATUS_PRINTER_BANNER_EJECT = 1010
141STATUS_PRINTER_BANNER_MISMATCH = 1011
142STATUS_PRINTER_PHOTO_MISMATCH = 1012
143STATUS_PRINTER_DUPLEX_MISMATCH = 1013
144STATUS_PRINTER_MEDIA_JAM = 1014
145STATUS_PRINTER_CARRIAGE_STALL = 1015
146STATUS_PRINTER_PAPER_STALL = 1016
147STATUS_PRINTER_PEN_FAILURE = 1017
148STATUS_PRINTER_HARD_ERROR = 1018
149STATUS_PRINTER_POWER_DOWN = 1019
150STATUS_PRINTER_FRONT_PANEL_TEST = 1020
151STATUS_PRINTER_CLEAN_OUT_TRAY_MISSING = 1021
152STATUS_PRINTER_OUTPUT_BIN_FULL = 1022
153STATUS_PRINTER_MEDIA_SIZE_MISMATCH = 1023
154STATUS_PRINTER_MANUAL_DUPLEX_BLOCK = 1024
155STATUS_PRINTER_SERVCE_STALL = 1025
156STATUS_PRINTER_OUT_OF_INK = 1026 # Also used for out of toner
157STATUS_PRINTER_LIO_ERROR = 1027
158STATUS_PRINTER_PUMP_STALL = 1028
159STATUS_PRINTER_TRAY_2_MISSING = 1029
160STATUS_PRINTER_DUPLEXER_MISSING = 1030
161STATUS_PRINTER_REAR_TRAY_MISSING = 1031
162STATUS_PRINTER_PEN_NOT_LATCHED = 1032
163STATUS_PRINTER_BATTERY_VERY_LOW = 1033
164STATUS_PRINTER_SPITTOON_FULL = 1034
165STATUS_PRINTER_OUTPUT_TRAY_CLOSED = 1035
166STATUS_PRINTER_MANUAL_FEED_BLOCKED = 1036
167STATUS_PRINTER_REAR_FEED_BLOCKED = 1037
168STATUS_PRINTER_TRAY_2_OUT_OF_PAPER = 1038
169STATUS_PRINTER_UNABLE_TO_LOAD_FROM_LOCKED_TRAY = 1039
170STATUS_PRINTER_NON_HP_INK = 1040
171STATUS_PRINTER_PEN_CALIBRATION_RESUME = 1041
172STATUS_PRINTER_MEDIA_TYPE_MISMATCH = 1042
173STATUS_PRINTER_CUSTOM_MEDIA_MISMATCH = 1043
174STATUS_PRINTER_PEN_CLEANING = 1044
175STATUS_PRINTER_PEN_CHECKING = 1045
176STATUS_PRINTER_POWER_SAVE = 1046
177STATUS_PRINTER_CARTRIDGE_WRONG = 1047
178STATUS_PRINTER_CARTRIDGE_MISSING = 1048
179STATUS_PRINTER_PRINTHEAD_MISSING = 1049
180
181#Alert messages for Pentane products RQ 8888
182STATUS_SCANNER_ADF_MISPICK = 1050
183STATUS_PRINTER_PAPER_TOO_SHORT_TO_AUTODUPLEX = 1051
184STATUS_PRINTER_TRAY_2_3_DOOR_OPEN = 1052
185STATUS_PRINTER_INK_TOO_LOW_TO_PRIME = 1053
186STATUS_PRINTER_VERY_LOW_ON_INK = 1054
187STATUS_PRINTER_SERVICE_INK_CONTAINER_ALMOST_FULL =1055
188STATUS_PRINTER_SERVICE_INK_CONTAINER_FULL=1056
189STATUS_PRINTER_SERVICE_INK_CONTAINER_FULL_PROMPT=1057
190STATUS_PRINTER_DUPLEX_MODULE_MISSING=1058
191STATUS_PRINTER_PRINTHEAD_JAM=1059
192STATUS_PRINTER_CLEAR_OUTPUT_AREA=1060
193STATUS_PRINTER_RESEAT_DUPLEXER=1061
194STATUS_MANUALLY_FEED=1062
195STATUS_PRINTER_PRINTHEAD_FAILED = 1063
196STATUS_PRINTER_PRINTHEAD_INCOMPATIBLE = 1064
197STATUS_UNKNOWN_CODE = 1065
198STATUS_PRINTER_STOPPED = 1066
199STATUS_PRINTER_PAUSED = 1067
200STATUS_INPUT_TRAY_MISSING = 1068
201
202
203# derived codes
204# set to AGENT_TYPE + base (base: 1500=ink, 1600=laser )
205STATUS_PRINTER_LOW_INK_BASE = 1500
206STATUS_PRINTER_LOW_BLACK_INK = 1501
207STATUS_PRINTER_LOW_TRI_COLOR_INK = 1502
208STATUS_PRINTER_LOW_PHOTO_INK = 1503
209STATUS_PRINTER_LOW_CYAN_INK = 1504
210STATUS_PRINTER_LOW_MAGENTA_INK = 1505
211STATUS_PRINTER_LOW_YELLOW_INK = 1506
212STATUS_PRINTER_LOW_PHOTO_CYAN_INK = 1507
213STATUS_PRINTER_LOW_PHOTO_MAGENTA_INK = 1508
214STATUS_PRINTER_LOW_PHOTO_YELLOW_INK = 1509
215STATUS_PRINTER_LOW_PHOTO_GRAY_INK = 1510
216STATUS_PRINTER_LOW_PHOTO_BLUE_INK = 1511
217
218STATUS_PRINTER_LOW_TONER_BASE = 1600
219STATUS_PRINTER_LOW_BLACK_TONER = 1601
220STATUS_PRINTER_LOW_CYAN_TONER = 1604
221STATUS_PRINTER_LOW_MAGENTA_TONER = 1605
222STATUS_PRINTER_LOW_YELLOW_TONER = 1606
223# end
224
225# derived laserjet codes
226STATUS_PRINTER_WARMING_UP = 1800
227STATUS_PRINTER_LOW_PAPER = 1801
228STATUS_PRINTER_DOOR_OPEN = 1802
229STATUS_PRINTER_OFFLINE = 1803
230STATUS_PRINTER_LOW_TONER = 1804
231STATUS_PRINTER_NO_TONER = 1805
232STATUS_PRINTER_SERVICE_REQUEST = 1806
233STATUS_PRINTER_FUSER_ERROR = 1807
234STATUS_PRINTER_EMPTY_TONER = 1808
235STATUS_PRINTER_MEDIA_EMPTY_ERROR = 1809
236#end
237
238# other derived codes
239STATUS_DEVICE_UNSUPPORTED = 1900
240#end
241
242# scan
243EVENT_START_SCAN_JOB = 2000
244EVENT_END_SCAN_JOB = 2001
245EVENT_SCANNER_FAIL = 2002
246EVENT_SCAN_FAILED_MISSING_PLUGIN = 2003
247EVENT_SCAN_ADF_LOADED = 2004
248EVENT_SCAN_TO_DESTINATION_NOTSET = 2005
249EVENT_SCAN_WAITING_FOR_PC = 2006
250EVENT_SCAN_ADF_JAM = 2007
251EVENT_SCAN_ADF_DOOR_OPEN = 2008
252EVENT_SCAN_CANCEL = 2009
253EVENT_SIZE_WARNING = 2010
254EVENT_SCAN_ADF_NO_DOCS = 2011
255EVENT_SCAN_ADF_MISPICK = 2012
256EVENT_SCAN_BUSY = 2013
257#end
258
259# fax
260EVENT_START_FAX_JOB = 3000
261EVENT_END_FAX_JOB = 3001
262EVENT_FAX_JOB_FAIL = 3002
263EVENT_FAX_JOB_CANCELED = 3003
264STATUS_FAX_TX_ACTIVE = 3004
265STATUS_FAX_RX_ACTIVE = 3005
266EVENT_FAX_DIALING = 3006
267EVENT_FAX_CONNECTING = 3007
268EVENT_FAX_SEND_ERROR = 3008
269EVENT_FAX_ERROR_STORAGE_FULL = 3009
270EVENT_FAX_RECV_ERROR =  3010
271EVENT_FAX_BLOCKING = 3011
272#end
273
274# copy
275EVENT_START_COPY_JOB = 4000
276EVENT_END_COPY_JOB = 4001
277EVENT_COPY_JOB_FAIL = 4002
278EVENT_COPY_JOB_CANCELED = 4003
279#end
280
281# Adding the ERROR_CODE_BASE to the above
282# ERROR codes will produce a event/status code
283# e.g., EVENT_ERROR_DEVICE_NOT_FOUND=2 -> 5002 status/event code
284ERROR_CODE_BASE = 5000
285EVENT_ERROR_SUCCESS = 5000
286EVENT_ERROR_UNKNOWN_ERROR = 5001
287EVENT_ERROR_DEVICE_NOT_FOUND = 5002
288EVENT_ERROR_INVALID_DEVICE_ID = 5003
289EVENT_ERROR_INVALID_DEVICE_URI = 5004
290EVENT_ERROR_DATA_LENGTH_EXCEEDS_MAX = 5008
291EVENT_ERROR_DEVICE_IO_ERROR = 5012
292EVENT_ERROR_NO_PROBED_DEVICES_FOUND = 5018
293EVENT_ERROR_DEVICE_BUSY = 5021
294EVENT_ERROR_DEVICE_STATUS_NOT_AVAILABLE = 5026
295EVENT_ERROR_INVALID_SERVICE_NAME = 5028
296EVENT_ERROR_ERROR_INVALID_CHANNEL_ID = 5030
297EVENT_ERROR_CHANNEL_BUSY = 5031
298EVENT_ERROR_DEVICE_DOES_NOT_SUPPORT_OPERATION = 5034
299EVENT_ERROR_DEVICEOPEN_FAILED_ONE_DEVICE_ONLY = 5037
300EVENT_ERROR_DEVICEOPEN_FAILED_DEV_NODE_MOVED = 5038
301# end
302
303# diagnosis tool codes
304EVENT_DIAGNOSE_PRINTQUEUE = 5502
305#end
306
307# pcard
308EVENT_START_PCARD_JOB = 6000
309EVENT_END_PCARD_JOB = 6001
310EVENT_PCARD_JOB_FAIL = 6002
311EVENT_PCARD_UNABLE_TO_MOUNT = 6003
312EVENT_PCARD_FILES_TRANSFERED = 6004
313# end
314
315# maint
316EVENT_START_MAINT_JOB = 6050 # used for polling control (if print not used)
317EVENT_END_MAINT_JOB = 6051
318
319EVENT_MAX_USER_EVENT = 7999
320# end of user events
321# start of internal events
322
323# fax (internal events)
324EVENT_FAX_MIN = 8000
325EVENT_FAX_RENDER_COMPLETE = 8000
326EVENT_FAX_WAITING = 8001 # Sent by hpssd to toolbox when fax is waiting
327EVENT_FAX_ADDRESS_BOOK_UPDATED = 8002 # Sent by FAB to indicate that the dB has changed
328EVENT_FAX_MAX = 8999
329# end
330
331# UI
332EVENT_MIN_UI_EVENT = 9000
333EVENT_CUPS_QUEUES_ADDED = 9000 # sent by hp-setup if queues added
334EVENT_RAISE_DEVICE_MANAGER = 9001
335#EVENT_JOB_STORAGE_UI_REQUEST = 9002 # sent by hplipjs CUPS filter for job storage UI
336EVENT_HISTORY_UPDATE = 9003 # sent by hp-systray to hp-toolbox when a device's history changes
337EVENT_USER_CONFIGURATION_CHANGED = 9004 # sent when ~/.hplip/hplip.conf has been changed by another app.
338EVENT_SYS_CONFIGURATION_CHANGED = 9005 # sent when /usr/local/etc/hp/hplip.conf has been changed by another app.
339EVENT_DEVICE_UPDATE_REQUESTED = 9010
340EVENT_DEVICE_UPDATE_REPLY = 9011
341EVENT_DEVICE_START_POLLING = 9020
342EVENT_DEVICE_STOP_POLLING = 9021
343EVENT_POLLING_REQUEST = 9022
344EVENT_DEVICE_UPDATE_ACTIVE = 9030
345EVENT_DEVICE_UPDATE_INACTIVE = 9031
346EVENT_DEVICE_UPDATE_BLIP = 9032
347EVENT_SYSTEMTRAY_EXIT = 9040
348EVENT_CUPS_QUEUES_REMOVED = 9041 # sent by hp-setup if queues removed
349EVENT_MAX_UI_EVENT = 9999
350
351EVENT_MAX_EVENT = 9999
352
353# do not add any events > 100000 (PJL error code space)
354
355# end of events
356
357
358# Error states
359ERROR_STATE_CLEAR = 0        # Show icon w/o overlay
360ERROR_STATE_OK = 1           # Icon w/ "OK" overlay
361ERROR_STATE_MAX_OK = 99
362ERROR_STATE_WARNING = 100      # Icon w/ triangle "!" overlay
363ERROR_STATE_ERROR = 101        # Icon w/ circle "X" overlay
364ERROR_STATE_LOW_SUPPLIES = 102 # Icon w/ supplies overlay
365ERROR_STATE_BUSY = 103         # Icon with busy overlay
366ERROR_STATE_LOW_PAPER = 104    # Icon w/ paper low overlay
367ERROR_STATE_PRINTING = 105
368ERROR_STATE_SCANNING = 106
369ERROR_STATE_PHOTOCARD = 107
370ERROR_STATE_FAXING = 108
371ERROR_STATE_COPYING = 109
372ERROR_STATE_REFRESHING = 999
373#end
374
375
376# Map of status/event codes to UI states
377STATUS_TO_ERROR_STATE_MAP = {
378    STATUS_UNKNOWN : ERROR_STATE_CLEAR,
379    EVENT_START_PRINT_JOB : ERROR_STATE_BUSY,
380    EVENT_END_PRINT_JOB   : ERROR_STATE_OK,
381    EVENT_START_FAX_PRINT_JOB : ERROR_STATE_BUSY,
382    EVENT_END_FAX_PRINT_JOB : ERROR_STATE_FAXING,
383
384    EVENT_PRINTER_QUEUE_STOPPED : ERROR_STATE_WARNING,
385    EVENT_PRINTER_QUEUE_STARTED : ERROR_STATE_CLEAR,
386    EVENT_PRINTER_QUEUE_REJECTING_JOBS : ERROR_STATE_WARNING,
387    EVENT_PRINTER_QUEUE_ACCEPTING_JOBS : ERROR_STATE_CLEAR,
388    EVENT_PRINTER_QUEUE_SET_AS_DEFAULT : ERROR_STATE_OK,
389
390    EVENT_FAX_QUEUE_STOPPED : ERROR_STATE_WARNING,
391    EVENT_FAX_QUEUE_STARTED : ERROR_STATE_CLEAR,
392    EVENT_FAX_QUEUE_REJECTING_JOBS : ERROR_STATE_WARNING,
393    EVENT_FAX_QUEUE_ACCEPTING_JOBS : ERROR_STATE_CLEAR,
394    EVENT_FAX_QUEUE_SET_AS_DEFAULT : ERROR_STATE_OK,
395
396    STATUS_PRINTER_IDLE : ERROR_STATE_CLEAR,
397    STATUS_PRINTER_BUSY : ERROR_STATE_BUSY,
398    STATUS_PRINTER_POWER_SAVE : ERROR_STATE_CLEAR,
399    STATUS_PRINTER_PRINTING : ERROR_STATE_PRINTING,
400    STATUS_PRINTER_TURNING_OFF : ERROR_STATE_BUSY,
401    STATUS_PRINTER_REPORT_PRINTING : ERROR_STATE_PRINTING,
402    STATUS_PRINTER_CANCELING : ERROR_STATE_BUSY,
403    STATUS_PRINTER_IO_STALL : ERROR_STATE_ERROR,
404    STATUS_PRINTER_DRY_WAIT_TIME : ERROR_STATE_PRINTING,
405    STATUS_PRINTER_PEN_CHANGE : ERROR_STATE_WARNING,
406    STATUS_PRINTER_OUT_OF_PAPER : ERROR_STATE_WARNING,
407    STATUS_PRINTER_BANNER_EJECT : ERROR_STATE_WARNING,
408    STATUS_PRINTER_BANNER_MISMATCH : ERROR_STATE_WARNING,
409    STATUS_PRINTER_PHOTO_MISMATCH : ERROR_STATE_WARNING,
410    STATUS_PRINTER_DUPLEX_MISMATCH : ERROR_STATE_WARNING,
411    STATUS_PRINTER_MEDIA_JAM : ERROR_STATE_ERROR,
412    STATUS_PRINTER_CARRIAGE_STALL : ERROR_STATE_ERROR,
413    STATUS_PRINTER_PAPER_STALL : ERROR_STATE_ERROR,
414    STATUS_PRINTER_PEN_FAILURE : ERROR_STATE_ERROR,
415    STATUS_PRINTER_HARD_ERROR : ERROR_STATE_ERROR,
416    STATUS_PRINTER_POWER_DOWN : ERROR_STATE_ERROR,
417    STATUS_PRINTER_FRONT_PANEL_TEST : ERROR_STATE_ERROR,
418    STATUS_PRINTER_CLEAN_OUT_TRAY_MISSING : ERROR_STATE_ERROR,
419    STATUS_PRINTER_OUTPUT_BIN_FULL : ERROR_STATE_ERROR,
420    STATUS_PRINTER_MEDIA_SIZE_MISMATCH : ERROR_STATE_WARNING,
421    STATUS_PRINTER_MANUAL_DUPLEX_BLOCK : ERROR_STATE_ERROR,
422    STATUS_PRINTER_SERVCE_STALL : ERROR_STATE_ERROR,
423    STATUS_PRINTER_OUT_OF_INK : ERROR_STATE_ERROR,
424    STATUS_PRINTER_LIO_ERROR : ERROR_STATE_ERROR,
425    STATUS_PRINTER_PUMP_STALL : ERROR_STATE_ERROR,
426    STATUS_PRINTER_TRAY_2_MISSING : ERROR_STATE_ERROR,
427    STATUS_PRINTER_DUPLEXER_MISSING : ERROR_STATE_ERROR,
428    STATUS_PRINTER_REAR_TRAY_MISSING : ERROR_STATE_ERROR,
429    STATUS_PRINTER_PEN_NOT_LATCHED : ERROR_STATE_ERROR,
430    STATUS_PRINTER_BATTERY_VERY_LOW : ERROR_STATE_WARNING,
431    STATUS_PRINTER_SPITTOON_FULL : ERROR_STATE_ERROR,
432    STATUS_PRINTER_OUTPUT_TRAY_CLOSED : ERROR_STATE_ERROR,
433    STATUS_PRINTER_MANUAL_FEED_BLOCKED : ERROR_STATE_ERROR,
434    STATUS_PRINTER_REAR_FEED_BLOCKED : ERROR_STATE_ERROR,
435    STATUS_PRINTER_TRAY_2_OUT_OF_PAPER : ERROR_STATE_LOW_PAPER,
436    STATUS_PRINTER_UNABLE_TO_LOAD_FROM_LOCKED_TRAY : ERROR_STATE_ERROR,
437    STATUS_PRINTER_NON_HP_INK : ERROR_STATE_WARNING,
438    STATUS_PRINTER_PEN_CALIBRATION_RESUME : ERROR_STATE_WARNING,
439    STATUS_PRINTER_MEDIA_TYPE_MISMATCH : ERROR_STATE_WARNING,
440    STATUS_PRINTER_CUSTOM_MEDIA_MISMATCH : ERROR_STATE_WARNING,
441    STATUS_PRINTER_PEN_CLEANING : ERROR_STATE_WARNING,
442    STATUS_PRINTER_PEN_CLEANING : ERROR_STATE_WARNING,
443    STATUS_PRINTER_WARMING_UP : ERROR_STATE_BUSY,
444    STATUS_PRINTER_LOW_PAPER : ERROR_STATE_LOW_PAPER,
445    STATUS_PRINTER_DOOR_OPEN : ERROR_STATE_ERROR,
446    STATUS_PRINTER_OFFLINE : ERROR_STATE_ERROR,
447    STATUS_PRINTER_LOW_TONER : ERROR_STATE_LOW_SUPPLIES,
448    STATUS_PRINTER_NO_TONER : ERROR_STATE_LOW_SUPPLIES,
449    STATUS_PRINTER_SERVICE_REQUEST : ERROR_STATE_ERROR,
450    STATUS_PRINTER_FUSER_ERROR : ERROR_STATE_ERROR,
451    STATUS_DEVICE_UNSUPPORTED : ERROR_STATE_ERROR,
452    STATUS_PRINTER_CARTRIDGE_MISSING : ERROR_STATE_ERROR,
453    STATUS_PRINTER_CARTRIDGE_WRONG : ERROR_STATE_ERROR,
454    STATUS_PRINTER_PRINTHEAD_MISSING : ERROR_STATE_ERROR,
455    STATUS_PRINTER_EMPTY_TONER : ERROR_STATE_LOW_SUPPLIES,
456    STATUS_PRINTER_MEDIA_EMPTY_ERROR : ERROR_STATE_ERROR,
457
458    #Alert messages for Pentane products RQ 8888
459    STATUS_SCANNER_ADF_MISPICK : ERROR_STATE_ERROR,
460    STATUS_PRINTER_PAPER_TOO_SHORT_TO_AUTODUPLEX : ERROR_STATE_ERROR,
461    STATUS_PRINTER_TRAY_2_3_DOOR_OPEN : ERROR_STATE_ERROR,
462    STATUS_PRINTER_INK_TOO_LOW_TO_PRIME : ERROR_STATE_WARNING,
463    STATUS_PRINTER_VERY_LOW_ON_INK : ERROR_STATE_OK,
464    STATUS_PRINTER_SERVICE_INK_CONTAINER_ALMOST_FULL : ERROR_STATE_WARNING,
465    STATUS_PRINTER_SERVICE_INK_CONTAINER_FULL: ERROR_STATE_WARNING,
466    STATUS_PRINTER_SERVICE_INK_CONTAINER_FULL_PROMPT: ERROR_STATE_ERROR,
467    STATUS_PRINTER_DUPLEX_MODULE_MISSING: ERROR_STATE_ERROR,
468    STATUS_PRINTER_PRINTHEAD_JAM: ERROR_STATE_ERROR,
469    STATUS_PRINTER_CLEAR_OUTPUT_AREA: ERROR_STATE_WARNING,
470    STATUS_PRINTER_RESEAT_DUPLEXER: ERROR_STATE_WARNING,
471    STATUS_MANUALLY_FEED: ERROR_STATE_WARNING,
472    STATUS_UNKNOWN_CODE:ERROR_STATE_OK,
473    STATUS_PRINTER_STOPPED:ERROR_STATE_ERROR,
474    STATUS_PRINTER_PAUSED:ERROR_STATE_WARNING,
475    STATUS_INPUT_TRAY_MISSING:ERROR_STATE_ERROR,
476
477
478    # The following block are EVENTs because they are only
479    # recieved as events from hpmud, hp backend, etc.
480    # i.e., a device does not produce status codes in this range
481    EVENT_ERROR_SUCCESS : ERROR_STATE_CLEAR,
482    EVENT_ERROR_UNKNOWN_ERROR : ERROR_STATE_ERROR,
483    EVENT_ERROR_DEVICE_NOT_FOUND : ERROR_STATE_ERROR,
484    EVENT_ERROR_INVALID_DEVICE_ID : ERROR_STATE_ERROR,
485    EVENT_ERROR_INVALID_DEVICE_URI : ERROR_STATE_ERROR,
486    EVENT_ERROR_DATA_LENGTH_EXCEEDS_MAX : ERROR_STATE_WARNING,
487    EVENT_ERROR_DEVICE_IO_ERROR : ERROR_STATE_ERROR,
488    EVENT_ERROR_NO_PROBED_DEVICES_FOUND : ERROR_STATE_WARNING,
489    EVENT_ERROR_DEVICE_BUSY : ERROR_STATE_BUSY,
490    EVENT_ERROR_DEVICE_STATUS_NOT_AVAILABLE : ERROR_STATE_ERROR,
491    EVENT_ERROR_INVALID_SERVICE_NAME : ERROR_STATE_ERROR,
492    EVENT_ERROR_ERROR_INVALID_CHANNEL_ID : ERROR_STATE_ERROR,
493    EVENT_ERROR_CHANNEL_BUSY : ERROR_STATE_BUSY,
494    EVENT_ERROR_DEVICE_DOES_NOT_SUPPORT_OPERATION : ERROR_STATE_ERROR,
495    EVENT_ERROR_DEVICEOPEN_FAILED_ONE_DEVICE_ONLY : ERROR_STATE_ERROR,
496    EVENT_ERROR_DEVICEOPEN_FAILED_DEV_NODE_MOVED : ERROR_STATE_ERROR,
497    # Scan
498    EVENT_START_SCAN_JOB : ERROR_STATE_SCANNING,
499    EVENT_END_SCAN_JOB : ERROR_STATE_OK,
500    EVENT_SCANNER_FAIL : ERROR_STATE_ERROR,
501    EVENT_SCAN_ADF_DOOR_OPEN : ERROR_STATE_ERROR,
502    EVENT_SCAN_ADF_JAM : ERROR_STATE_ERROR,
503    EVENT_SCAN_WAITING_FOR_PC : ERROR_STATE_SCANNING,
504    EVENT_SCAN_TO_DESTINATION_NOTSET : ERROR_STATE_ERROR,
505    EVENT_SCAN_ADF_LOADED : ERROR_STATE_OK,
506    EVENT_SCAN_CANCEL : ERROR_STATE_OK,
507    EVENT_SIZE_WARNING : ERROR_STATE_WARNING,
508    EVENT_SCAN_ADF_NO_DOCS : ERROR_STATE_OK,
509    EVENT_SCAN_ADF_MISPICK : ERROR_STATE_WARNING,
510    EVENT_SCAN_BUSY : ERROR_STATE_SCANNING,
511    # Fax
512    EVENT_FAX_DIALING : ERROR_STATE_BUSY,
513    EVENT_FAX_CONNECTING : ERROR_STATE_BUSY,
514    EVENT_START_FAX_JOB : ERROR_STATE_FAXING,
515    STATUS_FAX_TX_ACTIVE : ERROR_STATE_FAXING,
516    STATUS_FAX_RX_ACTIVE : ERROR_STATE_FAXING,
517    EVENT_END_FAX_JOB : ERROR_STATE_OK,
518    EVENT_FAX_JOB_FAIL : ERROR_STATE_ERROR,
519    EVENT_FAX_JOB_CANCELED : ERROR_STATE_ERROR,
520    EVENT_FAX_SEND_ERROR : ERROR_STATE_ERROR,
521    EVENT_FAX_RECV_ERROR : ERROR_STATE_ERROR,
522    EVENT_FAX_ERROR_STORAGE_FULL : ERROR_STATE_WARNING,
523    EVENT_FAX_BLOCKING : ERROR_STATE_ERROR,
524    # Copy
525    EVENT_START_COPY_JOB : ERROR_STATE_COPYING,
526    EVENT_END_COPY_JOB : ERROR_STATE_OK,
527    EVENT_COPY_JOB_FAIL : ERROR_STATE_ERROR,
528    EVENT_COPY_JOB_CANCELED : ERROR_STATE_ERROR,
529    # PCard
530    EVENT_START_PCARD_JOB : ERROR_STATE_PHOTOCARD,
531    EVENT_END_PCARD_JOB : ERROR_STATE_CLEAR,
532    EVENT_PCARD_JOB_FAIL : ERROR_STATE_ERROR,
533    EVENT_PCARD_UNABLE_TO_MOUNT : ERROR_STATE_ERROR,
534    EVENT_PCARD_FILES_TRANSFERED : ERROR_STATE_OK,
535
536    # Low supplies
537    STATUS_PRINTER_LOW_BLACK_INK : ERROR_STATE_LOW_SUPPLIES,
538    STATUS_PRINTER_LOW_TRI_COLOR_INK : ERROR_STATE_LOW_SUPPLIES,
539    STATUS_PRINTER_LOW_PHOTO_INK : ERROR_STATE_LOW_SUPPLIES,
540    STATUS_PRINTER_LOW_CYAN_INK : ERROR_STATE_LOW_SUPPLIES,
541    STATUS_PRINTER_LOW_MAGENTA_INK : ERROR_STATE_LOW_SUPPLIES,
542    STATUS_PRINTER_LOW_YELLOW_INK : ERROR_STATE_LOW_SUPPLIES,
543    STATUS_PRINTER_LOW_PHOTO_CYAN_INK : ERROR_STATE_LOW_SUPPLIES,
544    STATUS_PRINTER_LOW_PHOTO_MAGENTA_INK : ERROR_STATE_LOW_SUPPLIES,
545    STATUS_PRINTER_LOW_PHOTO_YELLOW_INK : ERROR_STATE_LOW_SUPPLIES,
546    STATUS_PRINTER_LOW_PHOTO_GRAY_INK : ERROR_STATE_LOW_SUPPLIES,
547    STATUS_PRINTER_LOW_PHOTO_BLUE_INK : ERROR_STATE_LOW_SUPPLIES,
548
549    STATUS_PRINTER_LOW_BLACK_TONER : ERROR_STATE_LOW_SUPPLIES,
550    STATUS_PRINTER_LOW_CYAN_TONER : ERROR_STATE_LOW_SUPPLIES,
551    STATUS_PRINTER_LOW_MAGENTA_TONER : ERROR_STATE_LOW_SUPPLIES,
552    STATUS_PRINTER_LOW_YELLOW_TONER : ERROR_STATE_LOW_SUPPLIES,
553    # end
554
555}
556
557
558# Device states
559DEVICE_STATE_NOT_FOUND = -1
560DEVICE_STATE_FOUND = 0
561DEVICE_STATE_JUST_FOUND = 1
562
563
564# I/O states
565IO_STATE_HP_OPEN = 0
566IO_STATE_HP_READY = 1
567IO_STATE_HP_NOT_AVAIL = 2
568IO_STATE_NON_HP = 3
569
570#
571# Systray visibility setting
572#
573SYSTRAY_VISIBLE_SHOW_ALWAYS = 0
574SYSTRAY_VISIBLE_HIDE_WHEN_INACTIVE = 1
575SYSTRAY_VISIBLE_HIDE_ALWAYS = 2
576
577#
578# Systray messages setting
579#
580SYSTRAY_MESSAGES_SHOW_ALL = 0
581SYSTRAY_MESSAGES_SHOW_ERRORS_AND_WARNINGS = 1
582SYSTRAY_MESSAGES_SHOW_ERRORS_ONLY = 2
583SYSTRAY_MESSAGES_SHOW_NONE = 3
584
585#
586# Defines for model query types and status query
587#
588
589# agent info
590
591# 'kind'
592AGENT_KIND_NONE = 0
593AGENT_KIND_HEAD = 1 # InkJet head (no ink)
594AGENT_KIND_SUPPLY = 2 # InkJet supply (ink tank)
595AGENT_KIND_HEAD_AND_SUPPLY = 3 # InkJet (cartridge)
596AGENT_KIND_TONER_CARTRIDGE = 4 # LaserJet
597AGENT_KIND_MAINT_KIT = 5 # LaserJet "Maintenance kit (fuser)"
598AGENT_KIND_ADF_KIT = 6 # LaserJet "Document feeder kit"
599AGENT_KIND_DRUM_KIT = 7 # LaserJet
600AGENT_KIND_TRANSFER_KIT = 8 # LaserJet
601AGENT_KIND_INT_BATTERY = 9 # Mobile deskjet (DJ450, etc)
602AGENT_KIND_UNKNOWN = 0x3e # (62)
603
604# 'type'
605AGENT_TYPE_NONE = 0
606AGENT_TYPE_BLACK = 1
607AGENT_TYPE_CMY = 2 # Tricolor
608AGENT_TYPE_KCM = 3 # Photo
609AGENT_TYPE_CYAN = 4
610AGENT_TYPE_MAGENTA = 5
611AGENT_TYPE_YELLOW = 6
612AGENT_TYPE_CYAN_LOW = 7
613AGENT_TYPE_MAGENTA_LOW = 8
614AGENT_TYPE_YELLOW_LOW = 9
615AGENT_TYPE_GGK = 10 # 2 shades of grey and black
616AGENT_TYPE_BLUE = 11
617AGENT_TYPE_KCMY_CM = 12 # K/C/M/Y/LM/LC (02 pen set head)
618AGENT_TYPE_LC_LM = 13 # light cyan and light magenta
619#AGENT_TYPE_Y_M = 14 # yellow and magenta (B9180)
620#AGENT_TYPE_C_K = 15 # cyan and black (B9180)
621AGENT_TYPE_K_Y = 14 # black and yellow (for LJ Pro)
622AGENT_TYPE_C_M = 15 # cyan and magenta (for LJ Pro)
623AGENT_TYPE_LG_PK = 16 # light grey and photo black
624AGENT_TYPE_LG = 17 # light grey
625AGENT_TYPE_G = 18 # grey
626AGENT_TYPE_PG = 19 # photo grey
627AGENT_TYPE_PHOTO_BLACK = 20 # photo black
628AGENT_TYPE_MATTE_BLACK = 21 # matte black
629AGENT_TYPE_LC = 22 #light cyan
630AGENT_TYPE_LM = 23 #light magenta
631AGENT_TYPE_DG = 24 #dark gray
632AGENT_TYPE_BLACK_B8800 = 39 # For PS B8800
633AGENT_TYPE_WHITE = 0x20 # For ISO 10180 compatibility
634AGENT_TYPE_RED = 0x21 # For ISO 10180 compatibility
635AGENT_TYPE_UNSPECIFIED = 0x3e # (62) Used for kind = 5, 6, 7, 8, or 9
636AGENT_TYPE_ERROR = 0x3f # (63)
637
638# 'health'
639AGENT_HEALTH_OK = 0
640AGENT_HEALTH_MISINSTALLED = 1 # supply/cart
641AGENT_HEALTH_FAIR_MODERATE = 1 # head
642AGENT_HEALTH_INCORRECT = 2
643AGENT_HEALTH_FAILED = 3
644AGENT_HEALTH_OVERTEMP = 4 # Battery
645AGENT_HEALTH_CHARGING = 5 # Battery
646AGENT_HEALTH_DISCHARGING = 6 # Battery
647AGENT_HEALTH_UNKNOWN = 0xff
648
649# 'level'
650AGENT_LEVEL_TRIGGER_SUFFICIENT_0 = 0
651AGENT_LEVEL_TRIGGER_SUFFICIENT_1 = 1
652AGENT_LEVEL_TRIGGER_SUFFICIENT_2 = 2
653AGENT_LEVEL_TRIGGER_SUFFICIENT_3 = 3
654AGENT_LEVEL_TRIGGER_SUFFICIENT_4 = 4
655AGENT_LEVEL_TRIGGER_MAY_BE_LOW = 5
656AGENT_LEVEL_TRIGGER_PROBABLY_OUT = 6
657AGENT_LEVEL_TRIGGER_ALMOST_DEFINITELY_OUT = 7
658AGENT_LEVEL_UNKNOWN = 0xff
659
660# "Computed" configurations (2-pen products)
661AGENT_CONFIG_NONE = 0
662AGENT_CONFIG_BLACK_ONLY = 1
663AGENT_CONFIG_PHOTO_ONLY = 2
664AGENT_CONFIG_COLOR_ONLY = 3
665AGENT_CONFIG_GREY_ONLY = 4
666AGENT_CONFIG_COLOR_AND_BLACK = 5
667AGENT_CONFIG_COLOR_AND_PHOTO = 6
668AGENT_CONFIG_COLOR_AND_GREY = 7
669AGENT_CONFIG_INVALID = 99
670
671# align-types
672ALIGN_TYPE_UNSUPPORTED = -1
673ALIGN_TYPE_NONE = 0
674ALIGN_TYPE_AUTO = 1
675ALIGN_TYPE_8XX = 2
676ALIGN_TYPE_9XX = 3
677ALIGN_TYPE_LIDIL_0_3_8 = 4
678ALIGN_TYPE_LIDIL_0_4_3 = 5
679ALIGN_TYPE_LIDIL_AIO = 6
680ALIGN_TYPE_LIDIL_VIP = 7
681ALIGN_TYPE_DESKJET_450 = 8
682ALIGN_TYPE_9XX_NO_EDGE_ALIGN = 9
683ALIGN_TYPE_LBOW = 10
684ALIGN_TYPE_LIDIL_0_5_4 = 11
685ALIGN_TYPE_OJ_PRO = 12 # OJ Pro L7xxx
686ALIGN_TYPE_AIO = 13 # AiO Non-LIDIL (OJ J4500/J4600)
687ALIGN_TYPE_LIDIL_DJ_D1600 = 14
688ALIGN_TYPE_LEDM = 15
689ALIGN_TYPE_LEDM_MANUAL = 16
690ALIGN_TYPE_LEDM_FF_CC_0 = 17
691
692# clean-types
693CLEAN_TYPE_UNSUPPORTED = -1
694CLEAN_TYPE_NONE = 0
695CLEAN_TYPE_PCL = 1
696CLEAN_TYPE_LIDIL = 2
697CLEAN_TYPE_PCL_WITH_PRINTOUT = 3
698CLEAN_TYPE_LEDM = 4
699
700# color-cal-types
701COLOR_CAL_TYPE_UNSUPPORTED = -1
702COLOR_CAL_TYPE_NONE = 0
703COLOR_CAL_TYPE_DESKJET_450 = 1
704COLOR_CAL_TYPE_MALIBU_CRICK = 2
705COLOR_CAL_TYPE_STRINGRAY_LONGBOW_TORNADO = 3
706COLOR_CAL_TYPE_CONNERY = 4
707COLOR_CAL_TYPE_COUSTEAU = 5
708COLOR_CAL_TYPE_CARRIER = 6
709COLOR_CAL_TYPE_TYPHOON = 7
710
711# status-types
712STATUS_TYPE_NONE = 0
713STATUS_TYPE_VSTATUS = 1
714STATUS_TYPE_S = 2
715STATUS_TYPE_LJ = 3
716#STATUS_TYPE_S_W_BATTERY = 4 # DEPRECATED
717#STATUS_TYPE_S_SNMP = 5 # DEPRECATED
718STATUS_TYPE_LJ_XML = 6
719#STATUS_TYPE_S_LIDIL = 7 # DEPRECATED
720STATUS_TYPE_PJL = 8
721STATUS_TYPE_PML_AND_PJL = 9 # Same as types 3(tbx)+8(hp:)
722STATUS_TYPE_LEDM = 10 # Low-end Data Model
723STATUS_TYPE_LEDM_FF_CC_0 = 11  #Low-end Data Model over FF/CC/0 USB channel
724STATUS_TYPE_IPP = 12
725
726# status-battery-check
727STATUS_BATTERY_CHECK_NONE = 0
728STATUS_BATTERY_CHECK_STD = 1 # Deskjet 450/460 (PML or dyn. counters)
729STATUS_BATTERY_CHECK_PML = 2 # Officejet H470 (PML)
730
731# status-dynamic-counters
732STATUS_DYNAMIC_COUNTERS_NONE = 0
733STATUS_DYNAMIC_COUNTERS_PCL = 1
734STATUS_DYNAMIC_COUNTERS_PML_SNMP = 2
735STATUS_DYNAMIC_COUNTERS_LIDIL_0_5_4 = 3 # Deskjet D4100
736
737# tech-types
738TECH_TYPE_NONE = 0
739TECH_TYPE_MONO_INK = 1
740TECH_TYPE_COLOR_INK = 2
741TECH_TYPE_MONO_LASER = 3
742TECH_TYPE_COLOR_LASER = 4
743TECH_TYPE_COLOR_EDGELINE = 5
744
745# support-type
746SUPPORT_TYPE_NONE = 0
747SUPPORT_TYPE_HPIJS = 1
748SUPPORT_TYPE_HPLIP = 2
749
750# fax-types
751FAX_TYPE_NOT_SUPPORTED = -1
752FAX_TYPE_NONE = 0
753FAX_TYPE_BLACK_SEND_EARLY_OPEN = 1 # newer models
754FAX_TYPE_BLACK_SEND_LATE_OPEN = 2 # older models
755FAX_TYPE_BLACK_AND_COLOR_SEND = 3 # future/OZ
756FAX_TYPE_SOAP = 4
757FAX_TYPE_MARVELL = 5
758FAX_TYPE_LEDM = 6
759FAX_TYPE_LEDMSOAP = 7
760
761# pcard-types
762PCARD_TYPE_NONE = 0
763PCARD_TYPE_MLC = 1
764PCARD_TYPE_USB_MASS_STORAGE = 2
765
766# scan-types
767SCAN_TYPE_DIGITAL_SENDER = -2
768SCAN_TYPE_NOT_SUPPORTED = -1
769SCAN_TYPE_NONE = 0
770SCAN_TYPE_SCL = 1
771SCAN_TYPE_PML = 2
772SCAN_TYPE_SOAP = 3
773SCAN_TYPE_MARVEL = 4
774SCAN_TYPE_SOAP2 = 5
775SCAN_TYPE_SCL_DUPLEX = 6
776SCAN_TYPE_LEDM = 7
777SCAN_TYPE_MARVEL2 = 8
778
779# scan-src
780SCAN_SRC_NONE = 0x0
781SCAN_SRC_FLATBED = 0x1
782SCAN_SRC_SCROLLFED = 0x2
783SCAN_SRC_CAMERA = 0x4
784
785# copy-types
786COPY_TYPE_NOT_SUPPORTED = -1
787COPY_TYPE_NONE = 0
788COPY_TYPE_DEVICE = 1 # LaserJet MFP PML
789COPY_TYPE_SCAN_TO_PRINT = 2
790COPY_TYPE_AIO_DEVICE = 3 # Inkjet AiO PML
791
792# 'top_door' (lid)
793TOP_DOOR_NOT_PRESENT = 0
794TOP_DOOR_CLOSED = 1
795TOP_DOOR_OPEN = 2
796
797# 'supply_door'
798SUPPLY_DOOR_NOT_PRESENT = 0
799SUPPLY_DOOR_CLOSED = 1
800SUPPLY_DOOR_OPEN = 2
801
802# 'media_path'
803MEDIA_PATH_NOT_PRESENT = 0 # S:00 means banner not present
804MEDIA_PATH_CUT_SHEET = 1 # S:01 means banner present/engaged
805MEDIA_PATH_BANNER = 2
806MEDIA_PATH_PHOTO = 3
807
808# 'photo_tray'(S:03 photo/hagaki)
809PHOTO_TRAY_NOT_PRESENT = 0
810PHOTO_TRAY_NOT_ENGAGED = 1
811PHOTO_TRAY_ENGAGED = 2
812
813# 'duplexer' (S:02 cleanout)
814DUPLEXER_NOT_PRESENT = 0
815DUPLEXER_DOOR_CLOSED = 1
816DUPLEXER_DOOR_OPEN = 2
817
818# 'in_tray1' & 'in_tray2'
819IN_TRAY_NOT_PRESENT = 0
820IN_TRAY_PRESENT = 1 # for !S:02, test for > IN_TRAY_NOT_PRESENT
821IN_TRAY_DEFAULT = 2 # S:02 only
822IN_TRAY_LOCKED = 3 # S:02 only
823
824# 'io-support'
825IO_SUPPORT_PARALLEL = 0x1
826IO_SUPPORT_USB = 0x2
827IO_SUPPORT_NETWORK = 0x4
828IO_SUPPORT_WIRELESS = 0x8
829IO_SUPPORT_BLUETOOTH = 0x10
830
831# User friendly model categories
832MODEL_TYPE2_UNSUPPORTED = 0
833MODEL_TYPE2_DESKJET = 1
834MODEL_TYPE2_DESKJET_AIO = 2
835MODEL_TYPE2_PHOTOSMART = 3
836MODEL_TYPE2_OFFICEJET = 4
837MODEL_TYPE2_PSC = 5
838MODEL_TYPE2_LASERJET = 6
839MODEL_TYPE2_COLOR_LASERJET = 7
840MODEL_TYPE2_BIJ = 8
841MODEL_TYPE2_EDGELINE = 9
842MODEL_TYPE2_APOLLO = 10
843MODEL_TYPE2_SCANJET = 11 # not supported
844MODEL_TYPE2_DESIGNJET = 12
845MODEL_TYPE2_OTHER = 13 # No specific "sub-brand" (e.g., 910, cp1610)
846
847MONITOR_TYPE_UNSUPPORTED = -1
848MONITOR_TYPE_NONE = 0
849MONITOR_TYPE_STD = 1
850
851# 'io-mode' and 'io-mfp-mode'
852IO_MODE_UNI = 0
853IO_MODE_RAW = 1
854#IO_MODE_NOT_USED = 2
855IO_MODE_DOT4 = 3
856IO_MODE_DOT4_PHOENIX = 4
857IO_MODE_DOT4_BRIDGE = 5
858IO_MODE_MLC_GUSHER = 6
859IO_MODE_MLC_MISER = 7
860
861# plugin
862PLUGIN_NONE = 0
863PLUGIN_REQUIRED = 1
864PLUGIN_OPTIONAL = 2
865
866
867#Plugin installation status values
868PLUGIN_FILES_CORRUPTED = '-2'
869PLUGIN_VERSION_MISMATCH = '-1'
870PLUGIN_NOT_INSTALLED = '0'
871PLUGIN_INSTALLED = '1'
872
873# plugin-reason
874PLUGIN_REASON_NONE = 0x0
875PLUGIN_REASON_PRINTING_SUPPORT = 0x1
876PLUGIN_REASON_FASTER_PRINTING = 0x2
877PLUGIN_REASON_BETTER_PRINTING_PQ = 0x4
878PLUGIN_REASON_PRINTING_FEATURES = 0x8
879PLUGIN_REASON_RESERVED_10 = 0x10
880PLUGIN_REASON_RESERVED_20 = 0x20
881PLUGIN_REASON_SCANNING_SUPPORT = 0x40
882PLUGIN_REASON_FASTER_SCANNING = 0x80
883PLUGIN_REASON_BETTER_SCANNING_IQ = 0x100
884PLUGIN_REASON_RESERVED_200 = 0x200
885PLUGIN_REASON_RESERVED_400 = 0x400
886PLUGIN_REASON_FAXING_SUPPORT = 0x800
887PLUGIN_REASON_FAX_FEATURES = 0x1000
888PLUGIN_REASON_RESERVED_2000 = 0x2000
889PLUGIN_REASON_IO_SUPPORT = 0x4000
890PLUGIN_REASON_UI_FEATURES = 0x8000
891PLUGIN_REASON_OTHER_FEATURES = 0x10000
892PLUGIN_REASON_RESERVED_20000 = 0x20000
893PLUGIN_REASON_RESERVED_40000 = 0x40000
894
895# embedded web server
896EWS_NOT_SUPPORTED = -1
897EWS_NONE = 0
898EWS_PRESENT = 1
899
900# panel check
901PANEL_CHECK_TYPE_NONE = 0
902PANEL_CHECK_TYPE_CHECK = 1
903
904# pq diag
905PQ_DIAG_TYPE_UNSUPPORTED = -1
906PQ_DIAG_TYPE_NONE = 0
907PQ_DIAG_TYPE_1 = 1
908PQ_DIAG_TYPE_2 = 2
909
910# line feed cal
911LINEFEED_CAL_TYPE_UNSUPPORTED = -1
912LINEFEED_CAL_TYPE_NONE = 0
913LINEFEED_CAL_TYPE_OJ_K550 = 1
914LINEFEED_CAL_TYPE_OJ_PRO_L7XXX = 2
915
916# power-settings
917POWER_SETTINGS_NONE = 0
918POWER_SETTINGS_EPML = 1 # DJ450/DJ460
919POWER_SETTINGS_PML = 2 # OJ H470
920
921# Paper types (for hp-toolbox paper prompts)
922PAPER_TYPE_PLAIN = 0
923PAPER_TYPE_HP_ADV_PHOTO = 1
924
925# job-storage
926JOB_STORAGE_DISABLE = 0
927JOB_STORAGE_ENABLE = 1
928
929JOB_STORAGE_TYPE_OFF = 0
930JOB_STORAGE_TYPE_PROOF_AND_HOLD = 1
931JOB_STORAGE_TYPE_PERSONAL = 2
932JOB_STORAGE_TYPE_QUICK_COPY = 3
933JOB_STORAGE_TYPE_STORE = 4
934
935JOB_STORAGE_EXISTING_JOB_REPLACE = 0
936JOB_STORAGE_EXISTING_JOB_APPEND_1_99 = 1
937
938JOB_STORAGE_HOLD_TYPE_PUBLIC = 0
939JOB_STORAGE_HOLD_TYPE_PRIVATE = 1
940
941# WIfi Config
942WIFI_CONFIG_UNSUPPORTED = -1
943WIFI_CONFIG_NONE = 0
944WIFI_CONFIG_USB_XML = 1
945WIFI_CONFIG_DEFAULT = 2
946WIFI_CONFIG_LEDM = 3
947
948# support-released
949SUPPORT_UNRELEASED = 0
950SUPPORT_RELEASED = 1
951
952#USB-Autoplugin-installation
953EVENT_AUTO_CONFIGURE = 900
954
955# Queue diagnosis codes
956QUEUES_CONFIG_ERROR = 1
957QUEUES_PAUSED = 2
958QUEUES_INCORRECT_PPD = 3
959QUEUES_USER_GROUPS_ERROR = 4
960QUEUES_MSG_SENDING = 5
961QUEUES_SMART_INSTALL_ENABLED = 6
962
963