Automate Daily Meeting Posts in Microsoft Teams Using Power Automate

Automate Daily Meeting Posts in Microsoft Teams Using Power Automate

Managing daily meetings can be a challenge, but automation makes it easier. In this guide, you’ll learn how to set up a Power Automate flow that retrieves your daily meetings, formats the details, and posts them in Microsoft Teams every weekday morning. Let’s dive in!

What Does This Automation Do?

This flow will:

  1. Retrieve all your meetings for the day.
  2. Convert meeting times to IST (India Standard Time).
  3. Sort meetings by their start time.
  4. Post a personalized message in Microsoft Teams, including:The day and date.A detailed list of meetings, including their organizer and participants.

Step-by-Step Setup

Step 1: Create a Scheduled Flow

  1. Log in to Power Automate.
  2. Click Create > Scheduled cloud flow.
  3. Name your flow: Post Meetings to Teams.
  4. Set the flow to run daily at 6:00 AM IST:Frequency: Day.

Time Zone: (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi.

Start Time: Set to 12:30 AM UTC (which is 6:00 AM IST).

Step 2: Retrieve Calendar Events

  1. After the Recurrence step, add the Get Calendar View of Events (V3) action.
  2. Configure it as follows:

Start Time: Use below expression

utcNow()        

End Time: Use below expression

addHours(startOfDay(utcNow()), 24)        

This pulls all meetings from 6:00 AM IST to the end of the day.

Step 3: Sort Meetings by Start Time

  1. Add a Compose action below the Get Calendar View of Events (V3) action.
  2. Use below expression to sort meetings by start time

sort(body('Get_calendar_view_of_events_(V3)')?['value'], 'start')        

3. Rename the action to Sort Meetings.

Step 4: Parse the Sorted Data

  1. Add a Parse JSON action below the Sort Meetings action.
  2. Configure it:

Content: Use the outputs from the Sort Meetings action.

Schema: Use this example schema:

{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "subject": { "type": "string" },
      "start": { "type": "string" },
      "end": { "type": "string" }
    }
  }
}
        

Step 5: Initialize a String Variable

  1. Add an Initialize Variable action.
  2. Configure it:

Name: MeetingDetails.

Type: String.

Value: Leave it blank.

Step 6: Loop Through Sorted Meetings

  1. Add an Apply to Each action.
  2. Set its output to the Body from the Parse JSON action.
  3. Inside the loop, add an Append to String Variable action:

Name: Select MeetingDetails.

Value: Use this expression:

concat(
  '- ', items('Apply_to_each')?['subject'], ' (',
  convertTimeZone(items('Apply_to_each')?['start'], 'UTC', 'India Standard Time', 'hh:mm tt'), ' - ',
  convertTimeZone(items('Apply_to_each')?['end'], 'UTC', 'India Standard Time', 'hh:mm tt'), ')<br>'
)        

Step 7: Post the Message in Teams

  1. Add the Post a Message in a Chat or Channel action.
  2. Configure it:
  3. Post as: Flow bot.
  4. Post in: Chat with a bot.
  5. Recipient: Enter your name or email.
  6. Message:

Here are your meetings for @{formatDateTime(utcNow(), 'dddd, dd MMMM yyyy')}<br>
@{variables('MeetingDetails')}        

Final Touches

  1. Save your flow to ensure all configurations are applied.
  2. Test it manually to confirm the output in Microsoft Teams.
  3. Adjust any steps if needed.

What to Expect

Once the flow is active, it will automatically post a message in Microsoft Teams every weekday morning, summarizing your daily meetings. Here’s an example:

Here are your meetings for Monday, 30 December 2024:

-Morning Standup (9:00 AM - 9:30 AM)

-Project Kickoff (11:00 AM - 12:00 PM)

-Team Lunch (1:00 PM - 2:00 PM)

要查看或添加评论,请登录

Ajay Ghosh的更多文章

社区洞察

其他会员也浏览了