Skip to content

Building a multichannel bot with Tock

Notion of connector

A Tock connector allows you to integrate a bot into an external communication channel (text or voice). Aside from the test connector type (used internally by the Tock Studio interface), connectors are associated with channels external to the Tock platform.

The whole point of Tock connectors lies in the ability to develop conversational assistants independently of the channel(s) used to talk to it. It is thus possible to create a bot for a channel, then make it multichannel later by adding connectors.

The Web connector has the particularity of exposing a generic API to interact with a Tock bot. As a result, it allows even more integrations on the "frontend" side, using this API as a gateway.

This page actually lists:

  • The connectors provided with the Tock distribution:

logo messenger

Logo slack

Logo Google assistant

logo google home

Logo Alexa

logo Rocket rachat

logo whatsapp

logo teams

logo BusinessChat Logo

logo twitter

logo google chat

logo web

logo test

logo React

logo flutter

logo Sharepoint

logo android

Logo Google assistant

logo google home

logo teams

logo ios

logo BusinessChat Logo

Logo Alexa

Logo voxygen

Logo nuance

Connectors provided with Tock

Tock provides many connectors for different types of channels (see below). New connectors are regularly added to the platform, depending on project needs but also on the schedule for opening public channels to bots.

Examples: arrival of Google Home in France in 2017, Alexa in 2018, opening of WhatsApp APIs then Business Chat in 2019, etc.

To learn more about the referenced bots using this or that connector in production, do not hesitate to consult the page Tock showcase.

Messenger

logo BusinessChat Logo

  • Channel : Facebook Messenger
  • Type : text (+ voice via voice message upload )
  • Status : Tock connector used in production since 2016

The guide Connect your bot to Messenger explains how to integrate a bot Tock with a Facebook page / [Messenger] (https://www.messenger.com/).

To learn more about this connector, you can also go to the folder connector-messenger on GitHub, where you will find the sources and the README of the connector.

Slack

logo slack

  • Channel : Slack
  • Type : text
  • Status : Tock connector used outside production

The guide Connect your bot to Slack explains how to integrate a bot Tock with a Slack channel.

To learn more about this connector, you can also go to the folder connector-slack on GitHub, where you will find the sources and the README of the connector.

Google Assistant / Home

Logo Google assistant

logo google home

To learn more about this connector, see its sources and its README in the folder connector-ga on GitHub.

Alexa / Echo

Logo Alexa

  • Channel : Amazon Alexa / Amazon Echo
  • Type : voice
  • Status: Tock connector used in production since 2018

Important note: in the case of Alexa, the NLP model is necessarily built and hosted at Amazon.

Only the conversational framework part of Tock can be used.

To learn more about this connector, see its sources and its README in the connector-alexa folder on GitHub.

# Rocket.Chat

logo BusinessChat Logo

  • Channel : Rocket.Chat
  • Type : text
  • Status : to be specified

To learn more about this connector, see its sources and its README in the folder connector-rocketchat on GitHub.

WhatsApp

logo whatsapp

To learn more about this connector, see its sources and its README in the folder connector-whatsapp on GitHub.

Teams

logo teams

  • Channel : Microsoft Teams
  • Type : text + voice
  • Status : Tock connector used in production since 2019

To learn more about this connector, see its sources and its README in the folder connector-teams on GitHub.

Business Chat

logo BusinessChat Logo

To learn more about this connector, see its sources and its README in the folder connector-businesschat on GitHub.

Twitter

logo twitter

  • Channel : Twitter (private messages)
  • Type : text
  • Status : Tock connector used in production since 2019

To learn more about this connector, see its sources and its README in the folder connector-twitter on GitHub.

Allo-Media

logo BusinessChat Logo

  • Channel : Allo-Media (telephony)
  • Type : voice
  • Status : Tock connector used in production since 2020

This connector was developed for the AlloCovid bot. For more information, see the AlloMediaConnector class with the bot sources on GitHub.

Google Chat

logo BusinessChat Logo

  • Channel : Google Chat (formerly Google Hangouts)
  • Type : text
  • Status : Tock connector used outside of production

To learn more about this connector, see its sources and README in the connector-google-chat folder on GitHub.

Web generic

logo BusinessChat Logo

This generic connector allows you to integrate a Tock bot into any website or application: portal, web or mobile application, REST client, etc.

The connector exposes a REST API to the bot, easily integrated from any web or mobile application, or programming language.

Several kits and components based on the Web connector are already available to integrate Tock bots into different sites and applications, such as websites with React, native mobile applications with Flutter or even intranets SharePoint.

  • Channel : Web (generic for all sites & web applications)
  • Type : text
  • Status : Tock connector used in production since 2020

To learn more about this connector, see its sources and its README in the folder connector-web on GitHub. It contains examples and documentation in Swagger format of the REST API.

Test (generic)

logo test

This connector is internal to Tock, it is used to communicate with a bot directly in the Tock Studio interface (Test > Test the bot view) by emulating other connectors.

Integrations via the Web connector

The Web connector exposes a generic API to interact with a Tock bot. As a result, it allows even more integrations on the "frontend" side, using this API as a gateway.

React

logo React

This React component integrates a Tock bot and renders it graphically in a web application. The web application communicates with the bot via a Web connector.

  • Integration : React (JavaScript / JSX)
  • Type : Web applications
  • Status : Used in production since 2020

For more information, see the sources and the README in the repository tock-react-kit on GitHub.

Flutter (beta)

logo flutter

This Flutter component integrates a Tock bot and provides its graphical rendering in a mobile or web application. The app communicates with the bot via a web connector.

  • Integration: Flutter (Dart)
  • Type: Native mobile and web apps
  • Status: Beta, in development

For more information, see the sources and the README in the tock-flutter-kit repository on GitHub.

SharePoint (beta)

logo Sharepoint

This WebPart component allows you to integrate a Tock bot into a SharePoint site. It embeds the tock-react-kit to communicate with the bot via a Web connector and manage the graphic rendering of the bot in the SharePoint page.

For more information, see the sources and the README in the tock-sharepoint repository on GitHub.

Voice technologies

Tock bots process sentences in text format by default (chatbots). However, voice technologies can be integrated into the bot's "terminals" in order to obtain voice conversations (voicebots and callbots):

  • Translation of voice into text (Speech-To-Text) upstream of the processing by the bot (ie. before the NLU step)
  • Translation of text into voice (Text-To-Speech) downstream of the processing by the bot (ie. voice synthesis of the bot's response)

Some connectors provided with Tock allow a bot to be integrated into an external channel managing the STT and TTS voice aspects.

In addition, other voice technologies have been integrated into Tock in recent years. They are mentioned for information purposes, even when no ready-to-use connector is provided.

Google / Android

Google's Speech-To-Text and Text-To-Speech functions are used through the Google Assistant / Home connector, also by the voice functions of the Microsoft Teams app for Android compatible with the Teams connector, as well as within the Android platform in particular for native mobile developments.

logo android

Logo Google assistant

logo google home

logo teams

Apple / iOS

Apple's Speech-To-Text and Text-To-Speech features are used through the Business Chat connector, as well as within iOS for native mobile developments.

logo ios

logo BusinessChat Logo

  • Technology : STT & TTS Apple / iOS
  • Status : used with Tock in production (via Business Chat connector and natively iOS for integrated on-app bots)

Amazon / Alexa

Alexa (Amazon) Speech-To-Text and Text-To-Speech functions are used through the Alexa connector / Echo.

logo alexa

  • Technology: STT & TTS Amazon / Alexa
  • Status: used with Tock in production (via Alexa connector)

Allo-Media & Voxygen

The company Allo-Media offers an AI platform based on phone calls.

Voxygen offers speech synthesis services.

On the occasion of the development of the AlloCovid bot, an Allo-Media connector was developed to integrate the bot (Tock) with the Allo-Media services: Speech-To-Text and Text-To-Speech with Voxygen.

logo BusinessChat Logo

Logo voxygen

  • Technology: Allo-Media & Voxygen
  • Status: used with Tock in production (via Allo-Media connector)

Nuance

Nuance offers speech recognition & AI solutions.

For voice command experiments in 2016, Nuance had been integrated with Tock for its Speech-To-Text functions.

Although this integration has not been maintained since, it worked after a few days of implementation.

Logo nuance

  • Technology: Nuance
  • Status: used with Tock in 2016

Connector architecture & data governance

With a view to governance of conversational models and data, the Tock connector architecture has several advantages:

  • The model is built in Tock, it is not shared via connectors
  • The choice of a bot's connectors allows you to control the propagation (or not) of conversations

For example, for a bot internal to a company, you can choose to use only connectors

to its own channels (website, etc.) or internal to the company (enterprise applications, professional space on

an Android phone, etc.).

  • Even if a bot is connected to several external channels/partners, only the Tock platform has all the conversations on all these channels.

Developing your own connector

It is possible to create your own Tock connector, for example to interface a Tock bot with a channel specific to the organization (often a specific website or mobile application), or when a general public channel opens to conversational bots and the Tock connector does not yet exist.

The Bot Framework section of the Tock developer manual gives instructions for implementing your own connector.

Chat with Tock
×