Skip to content
Free shipping on orders over $2,000.

Acceptance tests

Twenty-seven pass/fail tests that define integrated, plus the seven measurements to take on your own hardware before you deploy to a customer.

6 min read

Ship against these. Each is pass or fail, each maps to a failure we expect, and together they are what integrated means. Run the whole every-mode block plus the block for the mode you are deploying.

Every mode

#TestPass criterion
1Boot with valid provisioningHeartbeat within 30 s; your server records the device as online
2Boot with a missing property_idDevice refuses to run and shows a fault. It does not guess
3Unknown MACStops cleanly. No retry loop
4Blocked device (403)Stops cleanly. No retry loop
5Server unreachable at bootBacks off to the 60 s cap. Does not hammer
6Bad TLS certificateRefuses to connect and files a TLS_FAIL incident
7Kill Wi-Fi mid-operationReconnects with backoff
8Reboot the access point with ten or more devices attachedReconnects spread over time — no simultaneous burst
9Remote REBOOT commandAcknowledged, executed, result reported
10OTA to a new version and backProgress reported, checksum verified, rollback reported honestly
11Ten-minute soakNo resets; sample-rate drift measured and recorded

Mode A — push-to-talk streaming

#TestPass criterion
12Keyed transmissionValid udp-v1 packets; your server logs a session; a transcript appears
13device_session changes on rebootA new session key server-side, not a continuation of the last one
14Button releasedTransmission stops. Zero packets while unkeyed
15Identity fieldsproperty_id present on every packet; the transcript lands on the right site

Mode B — request and response

#TestPass criterion
16Framed postStart and end markers present; 200 ok
17Echo round tripThe returned WAV is clean: no clipping, correct rate, intelligible
18Notification poll204 when empty; audio played when 200
19Release mid-utteranceThe server still transcribes what it received

Mode C — full-duplex agent

#TestPass criterion
20Connect, handshake, greetready received; agent audio plays within 3 s of the press
21Complete a two-item transaction with a modifierCorrect records server-side
22Mic muteZero uplink frames while the speaker is active. Count them server-side
23Button interruptAudio stops within 200 ms of the press. Measure and record
24Long reply over ten seconds of speechNo overrun, no reset; record the buffer high-water mark
25Idle five minutes mid-sessionThe connection survives via ping and pong
26Print a ticketPrints once, acknowledged, does not reprint
27Print with the printer unpluggedThe ticket returns to the queue after the claim timeout

Measurements to take on your own hardware

These cannot be determined from documentation, they vary by form factor and room, and they are what a sizing conversation is built on. Record them once, per deployment shape.

  1. 1Playback buffer high-water mark under a long reply.
  2. 2Button press to audio actually stopping — the barge-in that matters.
  3. 3Speaker ring-out time. This sets your real tail_ms.
  4. 4True sample rate over a ten-minute soak.
  5. 5Mic-mute engage and release latency.
  6. 6Time from button press to the first uplink audio frame.
  7. 7Sustained bandwidth per device during normal operation.

Something wrong or missing on this page? Tell us.