What it does
It's a workflow automations app that can do just about anything that Freshchat offers with its Webhook and APIs. A sample set of worksflows it can do:
- Assign to first responder
- Send first response
- Send response on agent assignment
- Send response on group assignment
- Send response on resolution
- Reopen on agent engagement on a resolved conversation
- Auto respond based on user message ... and a limitless number of possibilities.
How I built it
It's a serverless app that processes a set of rules that are configurable in the Marketplace Apps settings page. While the settings page is built using Ember, the serverless component is built using nodejs. We split the job of building the app into 3, each of us handling independently testable modules. But for that, we needed to have a solid contract, and that is what took the longest time to agree upon. In the end, the Frontend was completely handled by Imthihas. And the nodejs code was split between Ajay and myself (Arun).
Challenges I ran into
We had to figure out how to load an Ember app in the custom iparams page. It was a challenge to build the complex UI that allowed a multitude of customizations in a short duration of just a few hours. It was a challenge all the way to figure out the hidden/buggy capabilities of Markeplace APIs and Freshchat APIs.
Accomplishments that I'm proud of
Super proud of my teammates for having stuck together and stayed up all night to see it working. In the process, we got help from a bunch of folks and offered help to a few.
What I learned
Nothing is impossible.
What's next for Amma - The mother of all apps
Conditions are currently limited to messaging events and can be extended to time and user events Actions are limited to sending a message (extended to sending quick replies- actions), private notes.