Yesterday we had a power outage at our college, we surely thought there must have been a way to get this info beforehand. Similarly, being a non Delhite, there are things I don't know about this city. So, we thought - There must be a better, simpler and more natural way to get around this smart city.

What it does

It's a chatbot built upon the robust Facebook Messenger Platform, which helps facilitate announcements, emergencies by the authorities, a convenient Complaint System and more importantly services to make it easier for a visitor to get the hang of the city.

How we built it

Being cross-platform and conversational in nature, chatbots provided us with a natural solution to this problem. We used ExpressJS to serve as the backend for the incoming and outgoing API calls between the Messenger platform and other 3rd party APIs like '' and 'Yandex'. We also built a webapp for authorities to push important messages to residents of a locality and also get the complaints - making it more interactive than ever before.

Challenges we ran into

We tried using Google's Translate and Places APIs but were being hindered, so we switched to Yandex for the translation. We also spent considerable time dealing with intents and making sure the reply was always based on context.

Accomplishments that we're proud of

Being our first foray into the field of chatbots, we learnt a lot. We used, which we loved using! Other than that, we were able to push messages to residents using the web-app. On a side note, we learnt how git works, finally.

What we learned

We learnt how to Promises work in JavaScript, other than that we worked with, which is fun. Two of us had never used JavaScript before, so we learnt the basics of the language.

What's next for Cody CIty

We plan implement a polling feature or community based plebiscites. Moreover, pushing information about ongoing events and scaling it to users. We also plan on using a livechat feature as a premium model to personalize your trip to the city with expert tourist guides. The platform is extensible, and so we can build better and robust features.

Share this project: