At Cloudforce, we pride ourselves on being the leading force in the Microsoft cloud. This is thanks both to the immense talent we cultivate to build our teams and to our insistence on being on the cutting edge of what technology has to offer. Most recently, Artificial Intelligence, or AI, has dominated the technology conversation, and we have taken it upon ourselves to leverage this technology in tangible ways throughout our office.
Recently, we launched an internal Hackathon (read all about our Hackathon in a blog post here) where we competed to create an interactive guest sign-in experience for visitors in our office. Using Envoy’s guest management platform, Vestaboard’s smart display, and Azure’s OpenAI service, we developed a process to wow and inspire our guests the moment they enter our space.
From a high level, the process works like this: guests sign into our guest management platform, Envoy, by entering their name, email address, the host they are visiting, their favorite color, and the purpose of their visit. When they submit the form, it triggers a webhook from Envoy to an Azure Function App hosted in our Microsoft Entra ID tenant. This Function App reaches out to an instance of Azure OpenAI deployed in our tenant to generate a unique, AI-powered greeting for our guests. While this is happening in the background, the Function App publishes the name of the guest, their host, and the wireless network password on the Vestaboard through its API endpoint. This process can be seen here:
You might be thinking that displaying the guest wireless password on the Vestaboard for all to see may be insecure; however, to keep this system both convenient and secure, we leverage a separate process in our Function App to rotate the guest wireless password every morning.
Guests are greeted with this message within seconds of signing in at our front desk. The Vestaboard produces an audible sound as it cycles through all possibilities until each character of the message is found, similar to the nostalgic sound of train station boards listing scheduled arrivals and departures. The click-clack of the spinning characters draws guests’ attention and immediately pulls them in. Meanwhile, the Function App on the backend is working with OpenAI to generate a pleasant, unique greeting curated to the purpose of the guest’s visit that day. For instance, interview candidates will be greeted with an encouraging message wishing them luck in their interview.
The first message is displayed for approximately 60 seconds, enough time to wow our visitors and allow them to enter the randomly generated wireless guest network password in their devices. After the 60 second wait, the OpenAI message that was created is sent to the Vestaboard:
To further integrate the Vestaboard into our office, we worked to create a Teams bot that is capable of both alerting the host that their guest is here, as well as allowing them to send their own custom message to the Vestaboard at any time:
Some other commands we have integrated include the ability to display the guest wireless password, as well as some custom templates we have created to show off some of the color options the Vestaboard offers:
Since we don’t have visitors every day, we have a separate function within our Azure Function App that runs on a schedule to determine the last time a message was sent to the board, and if it’s been long enough without a change, it will post a randomly selected image we created previously from a bank of options. These range from highlights about Cloudforce, employee birthdays, our values, and upcoming events:
For those that like seeing the technical details, here is a diagram representing the resources in our Azure tenant that make this possible.
Here we can see the flow from the various components within Azure. Each day at 6 AM, the Azure Function App rotates our Cisco Meraki guest network password with an API call. This is configured to remain consistent with the available characters that the Vestaboard can display. We also have the secondary function running on a schedule to check the board for messages and post one of our predefined ones if the board hasn’t changed within a certain period of time. The primary function runs on a trigger based on guest sign-ins at our front desk. In the diagram, you can see how content is sent from the Envoy sign-in process to the Function App, which then passes a prompt containing the sign-in data to the Azure OpenAI service, which generates a unique completion. Once the completion has been created (with a bit of error-handling in the Function App to make sure it will work on the Vestaboard), the Function App sends the final message to the Vestaboard to display.
This culminates to provide a unique and memorable experience for all Cloudforce visitors that offers a small but tangible look at how easily AI can be implemented into an existing process. As AI continues to evolve, clients are eager to learn how they can incorporate it into their own organizations. Cloudforce is dedicated to remaining at the forefront of technology and adapting to new solutions as they emerge. To learn how OpenAI and other Azure solutions can help drive innovation at your organization, reach out to us on LinkedIn!