/telegramBot

A bot exposed in Telegram that uses IBM Watson AI and other third party services

telegramBot

This is a code repo that shares my personal telegram bot. The bot is a side project I built combining IBM's Watson AI services and other third party APIs. The integration of all services happens on a Node-RED server hosted in the IBM Cloud.
All of this is possible with a free account.

The bot's capabilities shown below can of course be used in many other use cases. So you might wonder what the bot is capable of doing? It can see, hear and understand in a way that resembles us humans. Check out the following demos...

Recognize objects in images

One of the bot's skills is to see what you see

Visual Recognition

Transcribe user input in different languages

Also, you can dictate your bot something and it will transcribe the spoken words for you. The supported languages are:
English | French | German | Spanish | Japanese | Korean | Mandarin | Arabic

Speech to Text

Translate between different languages

The bot can also assist you with translations. It will automatically detect which language the input has and translate it to the user desired output language.

Translate

Give you a weather forecast at any location

Get the latest weather updates by asking your bot for it. The location is picked from your input and then translated into coordinates by a third party. These coordinates will be used to query the Weather Company's database and return accurate results.

Weather forecast

Requirements

IBM Cloud services

The following IBM Cloud services need to be instantiated. Free/light plans are always sufficient. No need to add any payment method.

Node packages (from npm repository)

The following modules are required and can be installed directly in Node-RED (equivalent to "npm install")

  • node-red-bluemix-nodes
  • node-red-contrib-telegrambot
  • node-red-node-cf-cloudant
  • node-red-node-watson
  • node-red-contrib-media-utils

Final words

The Node-RED server in this example is hosted on the IBM cloud but it can just as well run on any local device such as a Raspberry Pi or other servers/desktops/laptops as long as they have internet access. Check the instructions.

Thanks to Node-RED and the well documented APIs it's really no rocket science. If you want to get started yourself, check out the build folder for instructions. Feel free to modify the existing project to your needs. In case you want me to integrate other skills, send me a message and I'll see what I can do.

So far not every possible user exception is caught and dealt with. Since it is just a demo, I left that out for now.