Inspiration

In the movie Desperados, the drunk protagonist sends an angry email to her ex-date who doesn’t respond to her texts, only to find out later that he couldn’t respond due to a car accident. The protagonist painfully attempts to retrieve her already-delivered-email in the rest of the movie only to fail at the end. The movie inspired us to spearhead our project TellAngel: a telegram bot which motivates the users to spread words of kindness and reconsider words of hatred in the digital space. The name TellAngel is a portmanteau word with double meanings: 1. Telegram + angel (Telegram angel that oversees and regulates our digital communication) 2. Tell + angel (Reminder for the users to talk kindly to others as if they were speaking to the angels).

What it does

Once a user adds TellAngel to their telegram, TellAngel can be added to any chats of their wish. Through the sentiment analysis, TellAngel can detect the sentimental polarity of any message (in the spectrum from positive to negative). When a positive message is delivered, TellAngel will privately message “keep it up! Treat others the way you want to be treated”. As for the negative messages, TellAngel will say “Any fool can criticise, condemn and complain and most fools do. - Benjamin Franklin”. TellAngel will encourage you to spread words of kindness and discourage you from succumbing to your anger, impulsiveness and whims. Moreover, TellAngel tracks your progress in your emotional journey through a “kindness score”. Upon being added to the group chat, TellAngel assigns a kindness score of 0 to each member of the group. This score either increases or decreases according to the sentimental polarity of the message one sends. This system will encourage users to more actively spread words of kindness, considering our psychological tendency to detest losing something (e.g., seeing the kindness score initially assigned to 0 going downwards towards a negative value). It will allow us to monitor whether we are on the right track of spreading kind words through checking the kindness score and TellAngel’s private message to us after sending a message will also motivate us to be more kind and pause before sending hate-texts.

How we built it

Visual studio code, python programming language and telegram bot were primarily used to build TellAngel. The outline of how we built it is as follows: 1. Created the base structure of the code for a telegram bot with the help of online resources 2. Imported specific libraries from telegram.ext which allowed us to use certain attributes to enable our telegram bot. 3. Imported Textblob to retrieve sentiment analysis functions which can detect and classify sentiment polarity of the input messages 4. Programmed TellAngel to privately message the user according to the detected sentiment of the input message and the user_id with the help of API documentation. 5. We’ve created an additional data set to keep the “kindness score” and programmed such that the score - initially assigned to 0 - will increase and decrease according to the sentiment polarity of the input message. Every change in the “kindness score” will be privately notified to the user.

Challenges we ran into

Finding an appropriate code editor was the most time consuming challenge we’ve faced. For many hours, we have struggled to debug our code on Pycharm, only to later realise that the problem did not lie within our code, but with Pycharm. When we ran the code on visual studio, the code functioned well.

Accomplishments that we're proud of

While we initially intended to create the most entertaining project, we were also able to navigate our project in a way that tackles one of the biggest social problems today: hate-speech, especially online. We live in a society where texting has become our main mode of communication. While texting enhances the speed and distance of our communication, the lack of face-to-face interaction also leads us to lash out our anger more easily and harshly as we fail to consider the other’s emotions. Our project TellAngel is a step towards creating a more friendly and respectful digital space.

What we learned

Not only did we acquire the skill to code a telegram bot, but we also learnt a lesson that things are always harder than they seem. When initialising our project plan for TellAngel, we naively expected a smooth linear progress. However, the problems we faced, whether it was deciding the optimal code editor to use or having to understand the entire API documentation to figure out how to make the bot privately message the user, definitely taught us that the process of innovation is not linear but iterative. We discovered that not only creativity but perseverance also is highly essential to innovation.

What's next for TellAngel

TellAngel has a great opportunity to grow, as it has the potential to be applied to any other chatting software, social media or emails. Not only do we need a programme such as Grammarly to keep our grammar in check, but we also need TellAngel to keep our emotions in check.

However, a big limitation is that the users can manipulate the “kindness score” system. They can just spam kind messages to increase their score causing the score to falsely reflect one’s “kindness status”. We have to find a way for TellAngel to differentiate genuine texts from the fake ones, allowing the programme to be more sophisticated and accurate. If this problem is solved, TellAngel has the potential to be monetised as well. We can create a reward system like “acclaim 5% voucher for the “kindness score” of 100”.

Built With

Share this project:

Updates