Updated 7 months ago

Find the Teams Meetings Attended by a Specific User Using PowerShell

by Praba

5 min read

No Comments

Ever wondered how much time your team members spend in Teams meetings? Or perhaps you’re tasked with analyzing an individual’s meeting activity within Teams. Look no further! In this blog, we’ll explore the methods to obtain user-specific Teams meeting reports. Here, we’ll also introduce a crafted PowerShell script that simplifies the process of exporting Teams meetings a user has attended.

How to Find Out What Teams meetings a User has Attended?

To audit the Microsoft Teams meetings attended by a specific user, you can follow the below-mentioned methods.

1. Using the Microsoft Teams Admin Center:

  • Sign into the Microsoft Teams admin center.
  • Navigate to Users–> Manage Users.
  • Choose a specific user and go to the Meetings & calls tab.

In the ‘Meeting & calls’ tab, you can find details on participants in the Teams meeting, meeting ID start time, join time, leave time, Teams meeting call quality, etc. However, the meeting details are only available for the past 7 days, hindering long-term analysis and compliance.

2. Using the Audit Logs:

  • Sign in to the Microsoft Purview portal.
  • Navigate to Audit under Solutions.
  • In the search criteria, you can filter by date range and specify the user’s name.
  • To specifically find Teams meetings, you might need to filter the results to show only events related to Teams meetings.

But one drawback of using audit logs is that they do not provide the duration of meetings attended, and attendee type.

3. Using the PowerShell:

By using Search-UnifiedAuditLog cmdlet, admins can get detailed information about Teams meetings attended by a specific user. However, the result will be returned in JSON format which requires further parsing which requires additional effort and time consuming.

To simplify this process, we have developed a script that retrieves the Teams meeting attended by a user, easing the workload for admins.

Script Highlights:

  1. The script exports user specific Teams meeting report.
  2. The script retrieves user specific Teams meeting data for 180 days, by default.
  3. Allows you to obtain audit Teams meeting attended by specific user for a custom period.
  4. The script can be executed with an MFA enabled account too.
  5. It exports audit results to CSV file format in the working directory.
  6. Automatically installs the Exchange Online module (if not installed already) upon your confirmation.
  7. The script is scheduler friendly.
  8. The script supports certificate-based authentication.

Teams Meeting Attended by a User – Sample Output

The script exports user specific Teams meeting report to CSV with the following attributes:

  • Meeting ID
  • Created by
  • Attendee
  • Attendee UPN
  • Attendee type
  • Joined time
  • Left time
  • Meeting duration

The exported report on user specific team meeting looks like the screenshot below.

Teams meeting attended by specific user

How to Execute User Specific Teams Meeting Report?

Firstly, download the script and start Windows PowerShell. To run this script, you can choose any one of the methods below.

Method 1: You can run the script with MFA and non-MFA accounts.

If the user ID is not passed when running the script, it will prompt you to enter during run time. The output file contains all the Teams meetings attended by Louis in the past 180 days.

Method 2: Execute the script with the explicit credentials for an unattended approach.

To schedule the script in the Windows Task Schedular for non-MFA accounts, you can follow the format below. If the account utilizes multi-factor authentication, you can disable MFA through the Conditional Access policy for the successful execution of the scheduled script.

Method 3: You also can run the script using certificate-based authentication, which is schedular-friendly.

Depending on your requirements, you can create a self-signed certificate. Before employing certificate-based authentication, it is crucial to register an application in Azure AD.

Method 4: Generate Microsoft Teams meetings attended by a specific user for a custom period.

By default, the script generates a report for the past 180 days. If needed, you can use the –StartDate and –EndDate parameters to retrieve meeting details for a custom period.

The above format will retrieve Teams meeting details for a specific user that occurred from May 01, 2024, to May 20, 2024.

Likewise, to track the devices used by a specific user to attend meetings over a custom period, admins can make use of the PowerShell script to export Microsoft Teams meeting device usage report.

Manage Microsoft Teams Meeting Activities with AdminDroid

Do you find it challenging to generate Teams meeting attendance report using PowerShell? Try using AdminDroid’s Microsoft Teams meeting reports now to have an overview of all your Teams meetings in your organization. It is a direct route for the treasure trove of meeting activities containing valuable information on daily meeting activities, daily meeting duration, total meetings organized, etc.

Find the AdminDroid Teams Activity Reports below:

  1. Daily meetings summary – Get a list of daily summary of Teams meetings in the organization and get to know how frequent they are.
  2. Daily team meeting activities – Admins can monitor daily meeting activities happening in the organization and analyze how your team members are leveraging Teams for their meetings.
  3. Daily team meeting duration – The report offers an insightful summary of the meeting duration attended by each user in your organization daily.
  4. Overall team meeting activities – This report provides a list of users with their various Teams meetings count, like ad-hoc meetings, one-time meetings, and recurring meetings.
  5. Overall team meeting duration – This report allows you to compare meeting duration trends over time to identify behavior patterns in your Teams meetings and optimize accordingly.

Microsoft Teams Meeting Activities

Additionally, AdminDroid pinpoints inactive users based on the last meeting activity by analyzing the user meeting history. The tool allows you to find inactive users based on their last attended meeting, last organized meeting, and last calling activity.

Inactive users based on last attended meeting

In addition to its role as a Microsoft Teams management tool, AdminDroid also provides 1800+ pre-built reports for various M365 services, including Azure AD, Security, Exchange Online, SharePoint Online, etc. This comprehensive reporting enables admins to manage and monitor the entire Microsoft 365 environment effectively!

Gain valuable insights and analyze the organization’s performance with ease by scheduling and exporting the required reports. Whether a small business or a large enterprise, AdminDroid provides the features an admin needs to manage and optimize your Microsoft Teams environment effectively!

I hope this blog will help you to find Teams meeting attended by a specific user. If you have any queries or requirements, reach us through the comment section.

Share article