Receiving results via callback

In general, the preferred method of using V‑Blaze is not to use callbacks. However, there are times where the response from V‑Blaze needs to be routed to a system other than the originating client system. That is where callbacks come in.

V‑Blaze transcription results can be HTTP POSTed to a callback server URL instead of being returned as part of the response to the original transcription request.

Set the callback parameter to instruct the API to send results to the provided URL. For example, the following command will transcribe "sample1.wav" and POST the complete transcript to "receiver:5555/results":

curl -F callback=http://receiver:5555/results \
     -F file=@sample1.wav \
     http://vblaze_name:17171/transcribe

Refer to Sample callback server for more information about testing the callback mechanism with a simple callback server.

Guidelines for using callbacks with the V‑Blaze WebAPI

  • By default, V‑Blaze waits until the entire result is ready to be sent back to the client or callback host. If >utterance_callback is used as a parameter in the WebAPI call, then V‑Blaze will send each utterance back to the client or callback host once it is transcribed. V‑Blaze continues to do this until the entire audio call has been fully transcribed.

  • V‑Blaze does not buffer inbound file streams and can handle as many inbound audio streams as the hardware it is running on can provide resources for. What this means it that the client must deal with buffering on its side and must coordinate that requirement with how the callback server is dealing with ASR processing results.

  • response time out errors in /var/log/vociwebapi/err.log may indicate that V‑Blaze sent data to the callback server but did not receive a response from the callback server to confirm the data was received. In this case, V‑Blaze assumes the data was received.

Note: Make sure that a callback server responds back to V‑Blaze when using the callback feature. V‑Blaze does not retry if there is no response from the callback server.