Data flow

High-level architecture

267

Voice-Calls flow

  1. Customer makes a phone call to telephone-exchange (Voice integrator)
  2. Speech is being sent to ASR system to turn it into text transcription.
  3. Text transcription is being sent to SentiOne Automate (gateway โ†’ admin โ†’ dialogs)
  4. Within SentiOne Automate, the transcription is being analysed by NLU system (modules: intentizer, name-service, duckling, sentiduck, keywords, nlu-facade, nlu-pipeline, ner-pl, tagger-pl, pcre, greetings_detector)
  5. Based on recognized intent and entities the dialog module decides what should be the response according to the FLOW of the bot.
  6. The response is being sent to Voice Integrator system and the pair of (Customer message, Bot Response) is being saved in SentiOne Listen & React (gateway โ†’ bot integration โ†’ refinery โ†’ slim-uploader โ†’ ElasticSearch - Communication between these components is realised with message passing system called RabbitMQ)
  7. The text response is being synthetized and turned to speech by TTS application
  8. Response is being played back to the customer on a phone line (Voice integrator)

Data flow diagram

Representation of this behaviour is presented on following data-flow diagram

Sequence diagram

Another representation of this behavior is presented on following sequence diagram

Text conversations flow

  1. Customer sends a message on one of the supported platforms (facebook, whatsapp, twitter, skype, custom webchat)
  2. Message is being delivered to dedicated bot handler application (skype-bot, facebook-bot, twitter-bot, whatsapp-bot etc.) using webhooks technology
  3. Text is being sent to SentiOne Automate (gateway โ†’ admin โ†’ dialogs)
  4. Within SentiOne Automate, the message is being analysed by NLU system (modules: intentizer, name-service, duckling, sentiduck, keywords, nlu-facade, nlu-pipeline, ner-pl, tagger-pl, pcre, greetings_detector)
  5. Based on recognized intent and entities the dialog module decides what should be the response according to the FLOW of the bot.
  6. The response is being sent to bot handler application and the pair of (Customer message, Bot Response) is being saved in SentiOne Listen & React (gateway โ†’ bot integration โ†’ refinery โ†’ slim-uploader โ†’ ElasticSearch - Communication between these components is realised with message passing system called RabbitMQ)
  7. Bot handler application sends response to the customer using API of particular source (Messenger API, Twitter API, Twilio etc.)

Conversation communication diagram

Channels connector communication diagram

NLU training communication diagram


Whatโ€™s Next