microsoftgraph / microsoft-graph-comms-samples

Microsoft Graph Communications Samples
MIT License
210 stars 235 forks source link

Has anyone got documentation on running the Teams Recording Bot from amendments to building and testing? #650

Open jelpsIT opened 1 year ago

jelpsIT commented 1 year ago

Hey,

Trying to implement a compliance teams bot that just enables recording and transcription automatically when joining a call.

Anyone got any guides or documentation for a novice in Azure and C#?

Any help would be really appreciated

Best wishes, J

InDieTasten commented 1 year ago

For clarity, do you want to create convenience recordings or compliance recordings?

jelpsIT commented 1 year ago

Hi mate,

I want to create a bot that 1. joins any meeting that is live / active. 2. Displays a banner about compliance "Calls are recorded blah blah", 3. turns on auto recording options in teams along with the transcribe function automatically and then leaves the meeting.

Does that make sense?

InDieTasten commented 1 year ago

Hey @jelpsIT ,

I understand what you are trying to do. My question was regarding the reason you want to do it?

If you need the recordings for compliance purposes, your bot instance itself needs to subscribe to the audio and video sockets to record that data. The recordings that are generated using the "Record & Transcribe" feature in the Teams client are called "Convenience Recording", and do not cover what legislation usually requires. Any user in the meeting can stop the recording, for example. Compliance Policies usually also check the "RequiredDuringCall" option, which will disconnect users under policy, when the bot call leg who is supposed to observe the participant leaves the call. The record & transcribe feature can only be used by real humans using the Teams client. The person clicking the button becomes owner of the recording and will share it depending on tenant settings to the participants of the meeting.

I think I understand you try to make a shortcut by offloading the recording and storage step to the in-built convenience recording bot from Microsoft, but sadly this won't work.

jelpsIT commented 1 year ago

Hi mate,

Thank you for that clarification.

At the moment we are getting our users to enable recording, which then goes to their onedrive and they then push this to a sharepoint folder. I understand the issues that could arise from that, so ideally I want to create something like this: https://github.com/shawnlien/CustomComplianceRecordingBot/blob/main/Wiki/DeploymentGuide.md

So apologies for misunderstanding, It would be a ComplianceBot, do you know if there is a way for a bot to auto force / trigger the scheduled of the call from our org to enable it via MS graph?

Is that possible?

Essentially, I've setup compliance tags and have setup settings, but the bot deployment and testing is what I am struggling with.

I know the fundamentals of C# from College and Computer Science degree but in terms of MS API's and using Azure deployments I am very new. I have a good understanding of most of it but I'm trying to apply it as simply as possible to essentially just allow a bot to manage users calls so they are auto recorded rather than building a bot that provides a recording (via audio and video sockets) If that makes sense?

If it's not possible then at least I know.

But this looks like something that would be perfect: https://github.com/shawnlien/CustomComplianceRecordingBot/blob/main/Wiki/DeploymentGuide.md as it pushes the recordings to Sharepoint?

Let me know your thoughts and constraints on this?

Appreciate your advice.

InDieTasten commented 1 year ago

The documentation in this repo should be clear enough to get a test environment up and running. I recommend the AKS sample as it is built on AKS and will be far more modern. The classic cloud app (extended support) platform is really old and it's becoming increasingly hard to find relevant resources. Apart from legacy systems, nobody uses these anymore. All you have to do is implement the Sharepoint part.

I usually try to offer solutions via GitHub issues, but if you continue to have problems that are too general to be answered effectively via GitHub issues, then I can also offer consulting. I've been developing and operating globally distributed production-grade compliance bots for over 2 years + 2 years with local-media bots in general. My details are in my profile.