Workplace Efficiency Calculator | Free Workplace AssessmentGet Your Score Now
WorkInSync Logo
AIPricing
Blog Cover
Workplace Technology

Powering Microsoft Teams Bot Using Dialogflow

AT

Annesha Thakur

Senior Content Writer
2 min read

Transform Your Workplace With Technology Today

Key Takeaways

  • WorkInSync integrated desk booking and workspace tools into Microsoft Teams to streamline hybrid employee workflows.

  • Instead of command-based bots, the goal was a natural language experience for seamless employee interactions.

  • Microsoft LUIS was bypassed since WorkInSync had already trained conversation flows using Google Dialogflow.

  • Teams bot uses Azure Bot Framework with Java backend and Bot Framework SDK for smooth integration.

  • Dialogflow handles intent detection and fulfillment, enabling actions like seat booking directly within Teams.

  • Microsoft Graph API helps resolve user mentions (e.g., “Where is John sitting?”) into WorkInSync context.

WorkinSync is an emerging leader in Flexible workspace management. Given our “Employee First” approach of building products, we wanted to make features such as desk booking available to employees in a smooth workflow, regardless of their location. Microsoft Teams emerged as the central communication tool for remote and hybrid teams for many enterprise clients. So we worked hard on developing a top-quality WorkinSync app for Teams.

Bonus Tip: 5 Features for Hybrid Workplace Tools 

A Teams bot is one of the key capabilities we want to leverage to give a Teams user a unique experience. We didn’t want to restrict ourselves to a simple command-based menu for our bot since users expect a basic natural language understanding from ‘bots.’ 

The default option to power the NLU layer was to go with Microsoft LUIS. However, we had already done the hard work of training a bot for our Google Assistant App. It would make more sense to reuse the same agent for the Microsoft Teams App as we wouldn’t have to create, train, test, and maintain our conversation flows on two different platforms. 

This is how the tech team at MoveinSync went about building the bot. 

[Disclaimer: This is just a preview to illustrate the plumbing and not the actual application code]

The backend service for our Teams App is written entirely in java. The bot exposed to Microsoft Teams is created using the Azure bot framework. We are using the Bot Framework SDK for Java from Microsoft.

Let’s take an example of a user sending a command such as “Book a seat for me for 9 am tomorrow”. Once the command lands on our backend, we use the Google “Dialogflow client library” for intent detection, as shown below.

Space management

In turn, the intent detection also calls our fulfillment webhook (originally written for the Google Assistant app). So the actual call for ‘Seat booking’ to the internal booking service happens via the Dialogflow fulfillment endpoint. 

This is how the final interaction looks like for the end-user.

meeting room booking software

We can also pass additional metadata to the Dialogflow intent detection API, such as the logged-in user’s context ( shown in the example above), or indicate that the request is from ‘Teams backend’ if separate handling is required. 

Another popular employee query to our Teams bot is “Where is John doe sitting?”, using the ‘@’ to mention the user. 

In this case, we find out the users mentioned before we pass the command to Dialogflow. We use a ‘Microsoft Graphs’ API call to find more details about the user and map the user to the corresponding WorkInSync internal user.

 

Profile photo of Annesha Thakur

Annesha Thakur

Annesha, a skilled content writer, crafts compelling narratives that enhance brand communication and engagement. With a keen eye for detail and a passion for storytelling, she brings creativity and clarity to her work, making complex ideas accessible and impactful.
Curated by the Editorial Team

Latest Blogs

The Future of Facility Management: What Your Job Might Look Like in 2030
March 9, 2021

The Future of Facility Management: What Your Job Might Look Like in 2030

Aarushi Maheshwari
|

3 Min Read

Corporate Lingos That Gen Zs Use (and What They Actually Mean)
March 9, 2021

Corporate Lingos That Gen Zs Use (and What They Actually Mean)

Deesha
|

2 Min Read

How Is Employee Experience Changing in 2022?
March 9, 2021

How Is Employee Experience Changing in 2022?

Annesha Thakur
|

4 Min Read

WorkInSync
hello@workinsync.io
+1 (415) 737-9898
Product
Desk Booking
Meeting Rooms Booking
Visitor management
Parking management
Luum Alternative
Industries
Technology
Banking & Financial Services
Professional Services
Manufacturing
Pharma & Healthcare
Retail
GCC
Company
About us
Contact us
Pricing
Solution
Hybrid Workplace
Space Management
Enterprise Ready Platform
Workplace Analytics
Workplace Experience
Resources

Blog

Tech Blog
Case Studies
Reports and Whitepapers
Events
Glossary
Integrations

AI for Workplace

Luum Alternative

Social Links
ISO 27001
ISO 27701
GDPR
SOC 2
G2
Download Our App
Download from Google Play
Download from the App Store

copyright emojiMoveInSync 2026, All rights reserved

Terms and Conditions
Privacy Policy
End User License Agreement
Manage Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
View preferences
  • {title}
  • {title}
  • {title}