HP 5100tn Printer Job Language - Technical Reference Manual - Page 208

Handling Unexpected, Printer Responses

Page 208 highlights

The application should always send a PJL ECHO command to resynchronize with the printer status readback responses (i.e. get rid of any old responses). However, if the printer's response data buffer is full and the printer is discarding all future responses, then the host will receive a PJL unsolicited "printer to host data buffer overflow" message, but not the PJL ECHO response. Applications must be designed to handle situations where the printer's response data buffer overflows and the printer does not provide the expected response, but instead provides a PJL unsolicited "printer to host data buffer overflow" message. The application should resend all unanswered queries whenever the application receives a PJL unsolicited "printer to host data buffer overflow" message. Handling Unexpected Printer Responses Printer sharing devices, like the external printer sharing box or the MIO card inserted into the printer as shown in Figure 10-1, do not have sufficient information to allow the printer sharing device to properly route printer status readback responses to the host computer (the one running the application that queried the printer). In particular, unsolicited PJL status is difficult for the printer sharing device to properly route since the unsolicited status response may be received by the printer sharing box hours after sending the data from the host computer to the printer that enabled unsolicited status. Manufacturers of printer sharing devices can choose from the following options to solve this printer-to-host data routing problem. 1. A printer sharing device that is a uni-directional device and does not support printer-to-host data transfer. Applications need to be designed to work with uni-directional printer sharing devices. 2. A printer sharing device that examines the data received from the printer and only forwards solicited responses to the host computer. A printer sharing device can track which of its I/O interfaces is currently sending data to the printer, and thus 10-28 Programming Tips

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309

The application should always send a PJL ECHO command
to resynchronize with the printer status readback responses
(i.e. get rid of any old responses). However, if the printer’s
response data buffer is full and the printer is discarding all
future responses, then the host will receive a PJL
unsolicited “printer to host data buffer overflow” message,
but not the PJL ECHO response. Applications must be
designed to handle situations where the printer’s response
data buffer overflows and the printer does not provide the
expected response, but instead provides a PJL unsolicited
“printer to host data buffer overflow” message. The
application should resend all unanswered queries whenever
the application receives a PJL unsolicited “printer to host
data buffer overflow” message.
Handling Unexpected
Printer Responses
Printer sharing devices, like the external printer sharing
box or the MIO card inserted into the printer as shown in
Figure 10-1, do not have sufficient information to allow the
printer sharing device to properly route printer status
readback responses to the host computer (the one running
the application that queried the printer). In particular,
unsolicited PJL status is difficult for the printer sharing
device to properly route since the unsolicited status
response may be received by the printer sharing box hours
after sending the data from the host computer to the
printer that enabled unsolicited status.
Manufacturers of printer sharing devices can choose from
the following options to solve this printer-to-host data
routing problem.
1. A printer sharing device that is a uni-directional device
and does not support printer-to-host data transfer. Appli-
cations need to be designed to work with uni-directional
printer sharing devices.
2. A printer sharing device that examines the data received
from the printer and only forwards solicited responses to
the host computer.
A printer sharing device can track which of its I/O inter-
faces is currently sending data to the printer, and thus
10-28
Programming Tips