Setup - Teams Phone Agent Appointment tools

Note

Teams Phone Agent is currently only available to customers in the Frontier Public Preview program.

Need help configuring Teams Phone Agent? Book a session with us: Teams Phone Agent Frontier Public Preview Support Sessions

Help shape the product by filling out our feedback form or by sending us an email

This article is for IT pros and Teams administrators who want to create Appointment tools for use with Teams Phone Agent.

Planning and licensing review

Planning

Licensing

Known issues

None.

What's new in Teams Phone Agent (last six months)

Steps to create an Appointment tool with Microsoft Bookings for Teams Phone Agent

Create a shared booking page in Microsoft Bookings and copy the booking page link.

This Teams Phone Agent configuration option is currently only available through PowerShell and requires that you set up the entire Teams Phone Agent in PowerShell. This configuration option will be available in Teams admin center shortly.


Expand to see PowerShell example

Microsoft Teams PowerShell module 7.9.1-preview or later is required.

Note

The example below assume that the individual components that are required to create a Teams Phone Agent call flow have already been created through PowerShell. Only the New-CsMainlineAttendantAppointmentBookingFlow portion is shown below.

Example 1

Create a new appointment booking call flow with Microsoft Bookings

New-CsMainlineAttendantAppointmentBookingFlow -Name "<NAME>" -Description "<DESCRIPTION>" -AppointmentBookingPlatform "MicrosoftBookings" -BookingLink <BOOKING LINK>

Booking link example: https://outlook.office.com/book/ContosoRetail@BLANK.onmicrosoft.com/?ismsaljsauthenabled

Steps to create a custom Appointment tool for Teams Phone Agent

  1. In the Teams admin center, expand Voice, select Templates and resources, select Tools, and then select Add.

    Screenshot showing Tools being selected on the Templates and resources page.

  2. Enter a Name and Description for the tool.

  3. Select Appointment as the tool type.

    Screenshot showing the tool type available when creating a new tool.

  4. Select the Caller authentication method. This controls how the caller is verified.

    • SMS - a code is sent via SMS.
    • Email - a code is sent via email.
    • User Details - the caller is requested to provide their details on the call.
  5. Select the API authentication type. This controls how Teams Phone Agent authenticates with the booking system endpoints.

    • Basic (Static) - no authentication is used.
    • API Key (Static)
    • Bearer Token (Static)
    • Bearer Token (Dynamic)
  6. Configure the required call flows.

    Call flows are the independent steps required to authenticate callers for access to the booking system, retrieve available time slots, and book, retrieve, update, and delete appointments.

    Based on the Caller authentication method, the following call flows are required.

    System authentication

    SMS / Email User details
    Generate auth token Generate auth token

    This call flow is only required if the API authentication type is set to Bearer Token (Dynamic).

    Caller authentication

    SMS / Email User details
    Initiate caller authentication
    Authenticate caller Authenticate caller

    The Initiate caller authentication step requests that the booking system send an email or SMS to the caller. The message should contain a one-time numeric code that the caller provides to Teams Phone Agent.

    Book appointment

    SMS / Email User details
    Get available appointment time slots Get available appointment time slots
    Book appointment Book appointment

    Manage appointments

    SMS / Email User details
    Get upcoming appointments Get upcoming appointments
    Update appointment Update appointment
    Delete appointment Delete appointment
  7. Select Save to save your changes.

The Appointment tool is now ready to be added to Teams Phone Agent.

PowerShell

For instructions on creating an Appointment tool using PowerShell, see Set up Teams Phone Agent with PowerShell.