Q. When a user clicks the UI to look at key history, what can we
say about how long this history has been running?
A. It’s not based
on time. The terminal agent has a fixed-size memory buffer
for each device. For keystrokes, it’s more like 'the buffer
will typically hold nn keystrokes.' The current
size is approximately 750 bytes / 50 keystrokes.
Additional notes:
To save memory
and bandwidth, not every originating event will result in a history
queue event. This is most pronounced with display devices. If a
display command by an application results in no change to the
display, that event is not recorded in the history queue.
The controller
agent also has a per-device memory buffer and this buffer may be a
different size than the terminal buffer. The controller agent
puts keystrokes into its buffer when a terminal is being
monitored. If a 2nd client comes up and wants to monitor a
terminal, the 2nd client will be given history from the controller
agent instead of the terminal agent (in order to minimize POS
loop/lan traffic). The controller agent's buffer is flushed
when there are no more clients.
Some other
current defaults for device history buff sizes:
40 2x20 display
lines
Future version
considerations:
We are likely to
end up with a couple of versions of the terminal agent: small
and normal. The small version may have smaller history
buffers than the normal version.
We may make the
terminal device history buffer sizes configurable if it seems like
default sizes can’t meet the needs of different customers.
We will likely
have an optional feature that allows keystrokes and other device
history to be saved on the controller. For example, 'save
past n days worth of device history for all terminals for these
devices.’
10 cashdrawer open commands
30 receipt lines (38 chars each)
50 vdisplay display lines (80 chars/attrs each)
Converted from CHM to HTML with chm2web Pro 2.85 (unicode) |