Virtual coffee chats powered by FME Server
Like many other organizations over the past few months, Safe has pivoted to an entirely work-from-home environment. We’ve made this decision to ensure the health and welfare of our staff, their families, our customers and the community at large during the global pandemic.
Our transition to remote work has proven to be a fairly seamless process for our staff, who we warmly refer to as Safers. We had success with our IT infrastructure and provided the necessary equipment to help Safers create the best ergonomic situations they could at home. However, as the weeks went by, an important part of our culture needed some extra care and attention.
We Missed Connecting With Each Other
Our team is a highly collaborative group of smart and friendly individuals who expressed how much they missed the lunchroom banter, coffee station chats, and hallway run-ins with their colleagues. We pondered how we could foster a sense of human connection and community in a simple low-barrier-to-participate way. So, in typical Safer fashion, we used FME to solve it!
What do you get when you mix physical and social distancing, a desire for employee connection, virtual video conferencing tools, and the secret ingredient of FME? The solution to our human connection woes – a new, FME Server powered application called the Virtual Coffee Chat Bot!
The idea behind the bot stemmed from conversations with our newest, virtual hires. We wanted to help them build and foster relationships with colleagues that they have never met before or those who they rarely get an opportunity to interact with day-to-day.
So We Created a Coffee Chat Bot
Here’s how it works:
The coffee bot is simply constructed, using only 2 workspaces and 2 schedules on FME Server.
The first workspace connects to the Slack API through a series of HTTPCallers (FME’s way of making HTTP requests – perfect for interacting with APIs). This allows the ‘Coffee Bot’ to send a chat to the channel asking if anyone wants to meet for a coffee. Safers can sign up for a coffee break by reacting with the coffee emoji, which the Coffee Bot will always react with first to get things started (another Slack API call).
This all happens at 9.30am, and we give Safers until 3.30pm to sign up. To avoid running a job (workspace) with a six-hour delay, another workspace is scheduled for the afternoon.
Craig, Jovita and Mandy enjoying their afternoon coffee break!
The second workspace has the task of seeing who has signed up for coffee and sorting them into random groups of three. This workspace uses several HTTPCallers to interact with the Slack API, returning all of the Safers who reacted with a coffee emoji and getting their email address (important for the calendar invites later on!).
The workspace assigns everyone to random groups of 3, or as close to 3 as possible depending on how many Safers sign up.
This is done by working out how many groups of three there will be (the moduleGroups attribute inside the AttributeManager), and using three transformers to group Safers together: a RandomNumberGenerator, Sorter and ModuloCounter. The Aggregator is used to create one feature for each group of three (concatenating and comma delimiting email addresses) for use with the Google Calendar API. As the calendar invites are always sent out for the next day, some DateTime transformer magic handles that.
Once the calendar invites have been sent the Slack API is used once more, where the Coffee Bot informs everyone that the invites have been sent.
The workspaces are scheduled on FME Server to run every Monday and Wednesday at 9am and 3.30pm.
Three weeks into implementation, we regularly see three or four groups of Safers participating each time and the feedback has been positive. Our staff have really enjoyed having the opportunity to take a scheduled break in the day and get some virtual interaction with colleagues that they otherwise may not meet with on a daily basis!
You Can Try It For Yourself
If you’d like to have a go at building your own Coffee App (or similar) you can request a free trial or free home use license. If you already have FME Desktop and would like to see how you can start to automate your workflows (schedules being one way) we offer an FME Server trial license or $250 credit for FME Cloud.
Need Support? Please Reach Out
COVID-19 is affecting us all, and we don’t want software licensing to prevent solutions from being found or communities from being protected. If you would like to explore our free FME licenses for your pandemic response efforts, please reach out to us at safe.com/covid-19.
Our local Provincial Health Officer, Dr. Bonnie Henry, is known for saying in her daily briefings, “Be calm, be kind, and be safe.” We hope you’re staying safe, and finding innovative ways to connect with colleagues, friends, and family to support each other during this challenging time.