Pigeon Agents Development Demo Dialog Login - DatasmithSA/Pigeon-Voice-Training GitHub Wiki

The Voice Application starts off with the login process in order to authenticate the operator on the device.

/images/demo/Pigeon-Voice-Demo-Login.png

Yellow nodes in the flow chart indicate sub-processes. Blue nodes indicate prompts that the device speaks out to operator. Red links between nodes indicates an operator's response. Transparent nodes indicate background software logic that happens without interaction from the user.

  • Turn Device on: the operator turns the device on if it is currently off.
  • Load Operator: the operator uses the menu options on the device (outside of the Voice Application) to select their operator profile. The operator profile will be downloaded from Voice Console to the device.
  • Noise Sample: before starting the Voice Application the device requires the operator to perform a noise sample. Throughout the noise sample, the operator is prompted by the device to keep quite for a few seconds and then speak 0, 1 and 2. The purpose of the noise sample is for the device to compare the operator's voice to the background noise in their current environment and negate the two, thereby increasing the voice recognition quality by preventing background noises to be accepted as voice inputs.
  • Welcome: the device welcomes the operator (loaded on the device) and prompts the operator for their password e.g. "Welcome John say password".
  • Call LutLoginAgent: the device then performs a LUT request to the PigeonVoiceAgent named LutLoginAgent. With each LUT/ODR request to the server, the device always sends the device's serial number as well as the operator ID of the currently loaded operator on the device. Therefore the only additional input parameter required for the LutLoginAgent will be the password that the operator has just spoken. N.B. keep in mind that requests to LUT agents are blocking calls, meaning that the device waits for a response from the server before continuing to the next state.
  • Check Result Code: the Pigeon LutLoginAgent will respond with a Result Code and Result Message.
    • If the result code is 0, it indicates a success (correct operator ID and password), in which case the Voice Application continues to the next process, which is the Get Picking Data (Assignment) process.
    • Any other result code indicates a failure, in which case the device speaks out the Result Message received from the agent (e.g. "Invalid username or password.") and requires the operator to say "ready" to continue.