We’re always looking for new challenges here at Oktana. One recent challenge that presented itself to us came from our partners, a leading investment firm. This investment firm out of California is focused on working with growth-stage companies in a wide variety of industries. They approached Oktana to help them find a solution to an efficiency problem that had been observed within their organization. The primary tool that
That’s where Oktana came in, the leading investment firm wanted a way to integrate Salesforce into their Slack experience to help save everyone at their company time and energy while they’re working. What could we do to bring these two platforms together? We started by exploring what tools might already exist within Slack that would make this integration quick and easy. This brought us to an existing Slack too known as Incoming Webhooks. With Incoming Webhooks we were about to take any new notifications from the Salesforce org about new task assignments and send them to users within the Slack instance.
This implementation was a success and users were receiving notifications now but it was immediately apparent that it wasn’t going to be a good enough solution for the firm long term. There were severe limitations to what we could do with Incoming Webhooks. While it could bring in notifications from Salesforce it wasn’t able to limit those notifications to those directly involved with the task and instead sent them indiscriminately to the entire team. Additionally, there was no way to talk back to Salesforce after you received a notification in Slack, Incoming Webhooks is a one-way street. As such, we decided that we would need to take a different approach to solve this problem.
Thankfully, our partners at the investment firm were receptive to our concerns and were open to trusting our judgment when it came to these issues so we were able to explore other options that might better suit their long term needs. With Incoming Webhooks not fitting our needs, it became clear that there was only one course of action to take at this point, building our own bespoke app to do the job. We built a small application in Node.js that could then be hosted on Heroku that would handle everything the investment firm needed and more.
First, the app would replicate the functionality of the old implementation and take any task notifications from Salesforce and send them to Slack but now it only sends notifications to those directly involved in the task. Next, the app acts as a chatbot on Slack that is able to take messages from Slack and send them back to Salesforce to update and create new tasks. Additionally, we built this app to be as lightweight and efficient as possible. At its core, the app is always listening to both sides and when it detects something relevant it translates the message and sends to over from one application to the other.
The key technologies that we want to call out from this project are:
- Incoming Webhooks
This project was about seeing a problem in how everyone at the investment firm was working and finding a way to make it better. We saw that our client needed a solution for fixing their workflow problems and we were able to properly identify the problems and the best way to solve them. This leading investment firm was a great partner to work with and was very flexible as we developed new solutions to their problems. Now, they don’t have to move between Salesforce and Slack every time they want to update tasks and we were able to face a new challenge head-on and solve it in a creative way.