The kitchen hears a ticket arrive - #837
Merged
Merged
Conversation
Owner: "whenever new KOT received one tink sound with full sound i want.
need to place in kitchen. if possible read the items. Example Table 5 new
order. Ting! one chicken briyani, one chicken tikka masala."
A printer in a kitchen is silent and a ticket is small. A cook with their
hands in a pan does not see one arrive, and the first anybody knows is a
waiter asking where the food is. A speaker says it across the room
without anybody having to look at anything.
Table 5, new order. One Chicken Biryani. One Chicken Tikka Masala.
THE TING FIRST, AND THE WORDS WAIT FOR IT rather than starting on a
timer. A speaker still ringing while it talks loses its first two words,
and the first two words are the table number - the one part nobody can
work out from the rest. A third tone, deliberately not either of the
existing two: a cook must never have to decide whether that was their
ticket or the counter's online order.
SAID WHEN THE TICKET IS CLAIMED, not after it prints. A jammed or empty
printer is exactly when a kitchen most needs to hear that a table
ordered; the silent failure this exists for is a ticket nobody knows
about. Behind the same claim that stops a ticket printing twice, so a
poll that sees the job again does not say it again.
SIX LINES, THEN HOW MANY ARE LEFT. Six courses from a table of six
arrive within seconds - kot-manager already debounces printing for that
reason. Read in full it is a minute of talking, and a kitchen that has
stopped listening does not hear the next one either. The paper still has
the detail.
NAMES AND COUNTS ONLY. Not notes, not descriptions, not prices. What
makes announcements fail is never that they said too little.
OFF BY DEFAULT AND PER MACHINE, not per shop. Only the machine at the
pass has the speaker. A shop-wide switch would make the counter talk in
front of customers, somebody would mute the counter, and on many installs
that is the same Windows volume the kitchen speaker is on. A till that
started announcing orders after an update is a support call.
English, by the owner's choice: "All english as of now."
A test caught a real mistake: bracketed text was being stripped from
names to drop decoration like "(Half)", which turned "Gobi (65)" into
"Gobi" - a different dish. The shop's name is the shop's.
Twelve tests, on the sentence and the switch, because those are the parts
that can be wrong without anybody noticing until service. The tone and
the speech engine belong to a sound card and a Windows voice, which a
test cannot stand in for honestly - this needs one try on the kitchen
machine before anybody trusts it.
Contributor
|
Merged to Try it at https://develop.posnic.io, or run it yourself: git fetch origin develop && git checkout develop
npm install && npm --prefix api install
npm run dev # then http://localhost:3000When you have tested it, say what you did and what happened, and set Reporting that something is broken is as useful as fixing it. It is |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A printer in a kitchen is silent and a ticket is small. A cook with their hands in a pan does not see one arrive, and the first anybody knows is a waiter asking where the food is.
Four judgements worth reviewing
The ting comes first, and the words wait for it to finish - not on a timer, on the sound actually ending. A speaker still ringing while it talks loses its first two words, and the first two words are the table number, the one part nobody can infer from the rest. It is a third tone: a cook must never have to work out whether that was their ticket or the counter's online order.
It fires when the ticket is claimed, not after it prints. A jammed or empty printer is exactly when a kitchen most needs to hear that a table ordered - the silent failure this exists for is a ticket nobody knows about. It sits behind the same claim that stops a ticket printing twice, so a repeated poll does not say it twice.
Six lines, then "and three more." Six courses from a table of six arrive within seconds;
kot-manageralready debounces printing for that reason. Read in full that is a minute of talking, and a kitchen that has stopped listening misses the next one too. The paper ticket still has the detail.Off by default, per machine, not per shop. Only the machine at the pass has the speaker. A shop-wide switch makes the counter talk in front of customers; somebody mutes the counter; on many installs that is the same Windows volume the kitchen speaker is on.
Names and counts only - no notes, no descriptions, no prices.
A test caught a real mistake
Bracketed text was being stripped from dish names to drop decoration like "(Half)". It turned "Gobi (65)" into "Gobi" - a different dish. What is in brackets is usually the part that tells a cook which one. The shop's name is the shop's.
Tests, and what they deliberately do not cover
They hold the sentence and the switch, because those are the parts that can be wrong without anybody noticing until service. The tone and the speech engine belong to a sound card and a Windows voice, which a test cannot honestly stand in for.
This needs one try on the kitchen machine before anybody trusts it. Turn it on there with
posnic.kitchenCall.setOn(true); it is off everywhere else and stays off across updates.