How it all started

In April 2016, Facebook launched a new feature in their messenger at Facebook Developers Conference F8, that new feature was called Chatbots. This feature was added to allow businesses to deliver automated customer, e-commerce guidance, content and interactive experience. In August 2016, an idea was pitched for one of the hackathon projects to create a Job Searching bot which would ask questions from users and give them job recommendations.

How Facebook Messenger’s chatbot work

Messenger Chatbot uses Facebook Platforms new Send/Receive API, but it can send more than texts to the user. With the API the bot can send structured messages to the user like images, link and call to action buttons. Also, the user can receive product carousel which can be swipe left and right.

Enhancements

Previously the discovery of the bot was limited to Jobstreet’s Facebook Page. After the hackathon, it was decided to work on the bot discovery. In September 2016, Facebook Messenger API added a new feature called opt-in which would work as a subscription to the bot client using Facebook Login. By using Facebook Login we get user’s Facebook ID which helps in sending message to the user. With the addition of Opt-in feature, the Job-search Bot can also be used as a notification/alert bot which can send job recommendation based on our matching and recommendation engine. So rather than using only emails to send New Job Recommendations, this bot can be used an additional acquisition channel.

Going Serverless

There are many future possibilities for the Notification/Job Alert bot, but as the project is still in beta phase we look to make the application serverless using AWS Lambda and Amazon RDS. Below is the high level architecture diagram of what we are trying to do.

Serverless Architecture Image: Going serverless using AWS features

  1. The discovery of the bot starts with Jobstreet’s job search page where we have an opt-in plugin which subscribes user to the Facebook Messenger bot.
  2. The plugin triggers an AWS Lambda function which takes user’s Facebook ID and sends Thank you text to their messenger.
  3. AWS Lambda function also saves the information into Amazon RDS (database) for future use.
  4. A scheduled event is set up in Amazon CloudWatch which sends daily alerts to the user.
  5. The alert is also an AWS Lambda function which is triggered by Amazon CloudWatch after certain interval of time e.g. 24hr.
  6. It takes the user’s Facebook ID, Info and search criteria which are stored in Amazon RDS and generates a Job recommendation feed which is sent to the user.

Conclusion

Chatbots have suddenly become the biggest thing in tech, with over 900 million users using facebook messenger every month. At SeekAsia we are using it to open new acquisition channels and get closer to customers and even provide them with Job recommendations based on their search history.