🔔 Don't miss out! Join the Open edX® Conference 2024! 🚀
🔔 Don't miss out! Join the Open edX® Conference 2024! 🚀 Whether you're an educator or an edtech contributor, transform education with us ✨ Learn more 👉
Telegram Bot as an Interface to Open edX platform

Telegram Bot as an Interface to Open edX® platform

We had a Hackathon in January, 2015. One of the tasks of it was creating a Telegram bot, able to login to Open edX. Our Raccoon-bot was like Frankenstein - sewn together, barely alive (and rather undead). However, we got the basics and decided it was high time to create our fully-functional Raccoon University Telegram Bot, able to connect to Open edX through Telegram. Here is the story of this epic quest.

Table of Contents
Raccoon Tech Guru, Raccoon Gang

The tech-savvy raccoon leading the way through the digital wilderness of Open edX.

Telegram Bot as an Interface to Open edX® platform

What is a Raccoon Telegram Bot for Open edX platform?

Bots are mainstream nowadays, as all main messengers (Skype, Viber, Telegram, Facebook messenger, etc.) either have the bots already, or consider adding this functionality in the nearest future. We chose to work with Telegram bot SDK, as it was the most polished and functional software at the moment. Aside from simply creating a bot for Telegram (which was of little use to us, for obvious reasons), this SDK provides the following features:

  • Ability to write commands for your bot in such form – /message/
  • Ability to create custom keyboards (greatly improving UX)

However, once the Hackathon was over and we tried to implement the developed code, we came to a conclusion that one bot was not enough – we needed an army of bots! What for, you may ask?

  • Our bot works directly with edX API, thus greatly increasing its possibilities.
  • Students of Raccoon University can connect their Telegram accounts to their Open edX accounts, thus enabling bot functionality (for example, they can receive news from their edX courses admins with push-messages, delivered via Telegram bot)

If the student is not logged into their edX account and simply logs into their Telegram account, they still can interact with the bot – at least for getting the list of the currently available free Open edX courses.

How is it possible? During the first launch our edX bot connects to Open edX and makes a list of all courses available, by building the vector matrix based on their descriptions. The bot takes all the words from the descriptions, cuts off all suffixes and endings to get only the sensitive roots. Then it makes a list, where the most often rated words are the ones that are met only once or twice throughout all descriptions – namely, the keywords for each description. These form the longest vectors and all the variety of vectors forms the sphere of interests.

When the bot is first contacted by a student, he asks a student about their preferences by choosing 5 random vectors in such an order that these vectors divide the sphere into equal sectors. The user then chooses the most appropriate vector and with the next questions we build their matrix of interests around that vector. This, in turn, is reached by analyzing the student’s answers – if the student likes the bot’s choice and approves it, the keywords close to this vector gain importance and their vectors become longer.


The same works vice versa, so once you refuse to take a biology course, for example, you will never ever receive notifications about new biology courses. Instead, if you chose to enroll for computer science courses, for example, all the following course suggestions will come from this sphere. This way the preference matrix is built, the bot is self-educated and becomes able to offer more and more sophisticated and relevant choices, so around 80% of new course suggestions will be interesting for the  student.

The other uses are the possibility to enroll for a course directly from the bot dialogue and the ability to receive new push-notifications from the courses you have enrolled in.

Where Does Raccoon Unibot Fit?

All education options can be divided into purely offline learning, purely online learning and blended learning, where some part of material is learned online and some part (i.e., tests) should be completed offline, in the classroom. Open edX falls on the sector of purely online learning and is majorly divided into full-time courses, lasting 4 to 6 weeks, where some lectures are coupled with homeworks, practical tasks and exams; and micro courses, that can be even several hours long. Such courses allow students to learn exactly what they need and save time on learning all the topics they do not require.

The rest of our bots fit between the full-time and micro courses. They allow accomplishing the following tasks:

  • Providing preview of the course content, if the student is enrolled to the course and linked to our bot on Telegram. The student must request the preview, as the bot cannot start the conversation on its own. Such previews help the students estimate if they want to complete the course.
  • Completing certain course parts via the bot, not via Open edX API (yes, you can complete the tests and homeworks via the bot)
  • And you can go even further…

Interested to know more? Keep an eye out for our next article on Telegram bot for Open edX configuration, where we will tell you how to setup this bot and get it into your courses!

Back to Blog

Rate this article!

Average 0 / 5. Ratings: 0

No ratings yet. Be the first to rate.

Follow us on social media
Recommended Articles:
  • 2787 17/Oct/2016
  • 2630 27/Sep/2016
  • 3679 19/Aug/2016
Table of Contents
Schedule a Demo Schedule a Demo
Great 👍

We sent the document to the email you provided.
P.S.Check your email and mark our emails as important so you don't lose them in your Promotions folder”

Get access to our FREE eBook
"Mastering mLearning"

    By clicking the ‘Download’ button, you agree to the Raccoon Gang Terms of Use and Privacy Policy.

    Great 👍

    We sent the document to the email you provided.
    P.S. Check your email and mark our emails as important so you don't lose them in your “Promotions folder”

      By clicking the “Send message”“Book a call” Button I confirm, that I have read and agree to the Privacy Policy