Open siddharth-vaghasia opened 1 year ago
CC - @kunj-sangani @dharati1910 @santoshsarnobat
Awesome idea! Looking forward to seeing it in action 🚀
This is a great idea a lot of people facing this issue. To give you some ideas, you can check out my event concierge project, that tries to realize the same in Power Automate. I also created a flow chart on how it might work to give you some pointers.
Thanks for sharing @svrooij - yes, I was doing something similar for while by sending one notification to one of my primary accounts, like sending a notification to teams from Power Automate that a new email arrives so that I can go and check :)...we have made very good progress in terms of implementation, facing some issues with Authentication/Authorization to from Deamon process to make graph calls.....but conceptually we should be able to figure it out....
Hi @waldekmastykarz - we have a working demo version hosted at https://syncmatem365.azurewebsites.net/ also repo URL - https://github.com/siddharth-vaghasia/SyncMateM365
Please let us know your feedback :)
Awesome idea! Looking forward to seeing it in action 🚀
Brilliant! Will check it out! Thank you for sharing it with us!
Hey @siddharth-vaghasia, would you mind recording a short video walkthrough of your hack? Any format will work. It's not required for the hackathon but it would help us showcase your work both internally at Microsoft and publicly in the community. 😊
Hi @waldekmastykarz - here is video https://www.youtube.com/watch?v=_3WvpfGqX54
Project name
SyncMateM365
Description
Below is an idea of the gist we are working on :) we have yet not committed anything to the repo.
Problem Statement -
As technical consultant who uses M365 Outlook, we face the challenge of managing multiple accounts for different clients or businesses across various tenants. Synchronizing my calendars across these accounts can be quite a task, making it difficult to keep track of my availability. To put it in Bruce Wayne's shoes, with multiple M365 accounts under different email addresses, this task can be quite daunting. Consider Batman has the following M365 accounts.
Bruce@wayneenterprises.com
Batman@thedarknight.com
Batman@justiceleague.com
Batman@dccomics.com
Bruce@IamBatman.com
Imagine that Superman has sent a meeting request to Batman@justiceleague.com for a specific day and time (9-10 AM), requesting his help in saving Superman's mother from Lex Luthor. As a result, Batman's time in the Justice League calendar is blocked off, and other members such as Flash or Wonder Woman will see him as unavailable during that slot and choose another time for any upcoming meetings.
However, the directors at Wayne Enterprises wouldn't be aware of Batman's ongoing mission to save Martha and could potentially send a meeting request for the same day and time (9-10 AM) to Bruce@Wayneenterprises.com. This is because the slot would appear as available for that email account, even though Batman is already committed to the Justice League's mission. This would be the same for other tenants as well like thedarknight.com, dccomics.com, IamBatman.com
Well, it seems like Batman's schedule is as busy as his crime-fighting nights. Despite his heroic efforts, he'll have to decline the invitation and propose a new time that works for him. I mean, he has to juggle between all his Outlook accounts to find an available slot and let's face it, Batman doesn't have time for that. He's got more important things to do, like perfecting his Batarang throws and maintaining his chiseled abs.
The Solution
This is where the app shines and solves the problem. By signing into the app once with all of your multiple accounts, it will automatically subscribe to your calendar events for each added account. This allows the app to book your calendar time when an event is added, updated, or canceled in any one of your accounts. Here are the details of the app:
The app provides the ability to sign in to multiple Microsoft 365 Outlook accounts, allowing you to view a single calendar view across all your added accounts.
The calendar view includes legends to show events and meetings with distinct color codes, making it easier to differentiate between them. You can also remove any added account whenever you need to.
When an event is booked on one of your calendars, the app will mask the event in all other accounts with specific text, such as "Booked for another meeting." This ensures that cross-tenant data is not shared. Additionally, the app will create a placeholder meeting to prevent others from booking your time during the same slot across tenants.
To get change notifications, the app uses Graph API. It subscribes to changes on Microsoft Graph resources (specifically, on me/events) to ensure that all calendar events are up to date and accurately represented in the app.
Technical details
Below are high-level technical notes.
Future Releases
This can be extended to the below Changes types also
Repo URL
https://github.com/siddharth-vaghasia/SyncMateM365
Team members
siddharth-vaghasia, kunj-sangani, dharati1910, santoshsarnobat