Microsoft Ignite 2022: Microsoft Teams Announcements Part 2

As we continue with the Microsoft Teams Announcements from Ignite 2022, we can see from Microsoft Teams Announcements Part 1 the many new features affecting, which I term loosely, physical spaces. The reason why I term it this way is that we saw how new features and enhancements affected Meetings, Rooms and Devices, Microsoft Places, and the new offering of Microsoft Teams Premium. This article focuses on the new features and enhancements surrounding audio connections.

The very heart of Microsoft Teams is Chat and Collaboration, which are seeing many new features and enhancements, including:

  1. New Channel Experience: with a new layout available for all channel types, including shared channels, users will see the most recent posts at the top, easily catch up on conversations, pop-out posts to return to them later, and contribute to the discussions. There are new post types, important posts can be pinned for quick reference, and in the info pane, channel information such as shared files, channel members, and more, can be found. Channel headers can be customized with corporate branding or users can upload an image to reflect the personality of the team.
  2. Expanded Reactions: expanded reactions will allow Teams members to express themselves with over 800 emojis. Expanded Reactions are also available in Outlook.
  3. Suggested Replies in Group Chat: leveraging machine learning, replies are generated and suggested as a response in group chats. Reply by clicking on the suggestion to save time.
  4. Recommended People When Creating a New Message: leveraging AI, Teams chat will recommend colleagues based on previous collaborations to assist in initiating new conversations.
  5. Add People to a Group Chat with @mention: without having to navigate to the add-dialogue, new participants can be added to the chat with @mention while controlling how much of the history of the chat can be viewed by the new participant.
  6. Mention @everyone: with @everyone, a message can be sent to everyone in the group at the same time along with a notification.
  7. Delete Chat: without impacting participants in the same chat conversation, you can easily organize or remove chat conversations.
  8. Schedule Send: by right-clicking on the “send” button, the message can be scheduled for delivery similar to Outlook’s delivery delay. Viva Insights will suggest a schedule send suggestion should you be sending the message outside of the recipient’s work hours.
  9. Video Clip: participants can express themselves by recording and then sharing the clip by sending it to chat participants. Recipients can view a video clip and reply with one of their own.
  10. Work Hours and Location: by setting up a daily work location, colleagues will be able to see where you are working from, whether remote or onsite and can easily schedule in-person meetings. Any revisions in Teams or Outlook will automatically update in both apps.
  11. Loop Components in More Places: currently available in Teams Chat, loop components (pieces of content that stay synced across shared places) will be an integral part of Word for web, Outlook for Windows, and Whiteboard.

    Under the Insert menu in Word for web documents, add a new loop component such as a checklist, poll, or task list, thereby looping in the right people into the conversation within the context of the draft document, blog post, or white paper.

    A loop component can be copied and pasted into Whiteboard (for web, Teams, and desktop), bringing the conversation to where the project team is meeting and brainstorming. Teams chat conversations can be carried over to Outlook for the web, ensuring Teams chat members are in sync no matter which app they prefer.
  12. Sensitivity Labels and DLP in M365 Docs Coming to Loop Components in Teams Chat: set at the administrative level, sensitivity labels can flag content as Public or Confidential, and a watermark can be included to clearly communicate the sensitivity of the data. Data Loss Prevention (DLP) continually monitors and evaluates Loop components for flagged information and will automatically notify the user if they are working with sensitive data or content.

New features, enhancements, and additions surrounding the Phone and Contact Centre provide Microsoft Teams another method of communication for collaboration and these include:

  1. Teams Mobile Phone: previously known as “Operator Connect Mobile”, administrators through the Teams Admin Centre can assign one SIM-enabled number to a Teams Phone which can serve as the desk phone, Teams number, and mobile number. The benefits of a Teams Mobile Phone include the integration of Teams with the user’s native dialer, unified business communications, shared technological support and guaranteed call quality, and streamlined telecom policy management for mobile.
  2. CRM Browser Pop-Out­: with CRM integration, when a call queue agent answers a call, that customer record will automatically open. Specific users can be assigned this capability by Administrators whereby the metadata from an incoming call triggers a web page URL in the browser-based experience of the CRM provider.
  3. Management of Busy-On-Busy Settings: available in 2023, users will be able to manage their settings and set their preferences on how calls are routed when they are on a current call.
  4. Detailed Call History: a rich and comprehensive call history including access to call recording and transcriptions, how calls arrived, if calls were transferred, if calls were forwarded, and how calls were controlled once received.
  5. Federated Group Calling: video, screen sharing, and group Team calls can be made with federated colleagues without any PSTN usage charges.
  6. Teams Home Devices UI Updates and Performance Improvements: with the updated IP phone client, desk phone users will now have call hold, call transfer, and mute call.
  7. Digital Enhanced Cordless Telecommunications (DECT) Devices Integration with SIP Gateway: the integrated DECT devices with SIP gateway will allow frontline workers to communicate with their colleagues by using the Teams calling functionality on their DECT device.
  8. SIP Gateway Analog Telephones Support: on select analog phone models, the analog telephone adaptor (ATA) will support analog endpoint phones requiring PBX, such as elevator phones.
  9. SIP Gateway Overhead Paging Devices Support: Teams calling functionality will be available on ringers, speakers, and pagers in early 2023.
  10. Branch Office Survivability v2: in the event of an internet outage, Survivable Branch Appliance capabilities will allow users to use chat or call history plus use the dial pad in offline mode to dial outbound PSTN calls and, if the user is connected to the same network and SBA, and if the recipient has an associated phone number, VoIP calls will be routed to PSTN.

Collaboration in Microsoft Teams is being further enhanced with Collaborative Apps, including:

  1. Teams Live Share Canvas: this new package allows Teams members to use shared pens, laser pointers, highlighters, and cursors in Teams Live Share experiences with minimal code changes.
  2. Adaptive Card-Based Loop Components: still in the development stage, Adaptive Card-Based Loop Components will assist users to take action in the flow of their work.
  3. 1P & 3P Apps: independent software vendors (ISV) are continually developing collaborative apps to enhance collaboration within Microsoft Teams. These vendors include 3M where handwritten or drawn Post-It® Notes are surfaced and digitized, SAP, iHeartRadio will be the first music app in Teams where members can listen to music whilst working and share their favourite tunes, Brainstorm, Workplace from Meta which allows streaming from Teams meetings into Workplace groups, Workday, Zendesk, Survey Monkey, Thrive Global, ServiceNow, Priority Matrix, and Zoho.  

And finally, Microsoft Teams for Frontline Workers is seeing many new features and rollouts including:

  1. Viva Connections Pre-Configuration in F-SKUs: the pre-configured Viva Connections Dashboard will be pinned at the top for F-SKU users. By being pinned at the top, the simplified home site will provide the most relevant Dashboard cards, such as Shifts, Approvals, Tasks, and Top News where they are easily accessible for frontline workers.
  2. Team Shifts Connector for UKG Dimensions: the co-engineered Shifts connector provides real-time, bi-directional, and a single seamless interface for simplified scheduling and time management. Frontline workers will have the capability to view and accept open shifts, clock in and out, request time off, and much more.
  3. Walkie-Talkie Push-to-Talk on Honeywell Devices: with Walkie-Talkie Push-to-Talk (PTT) devices, the need to carry bulky and separate radios is a thing of the past. Partnered with Honeywell, these purpose-built and durable devices serve the distribution, transportation and logistics, healthcare, and retail environments and operate on cellular and Wi-Fi networks to deliver 24/7 coverage.
  4. Audience Targeting in Outlook: coming soon to Outlook, the frontline workforce can be segmented by location, job code, and department. With this capability, operational and corporate communications will reach their intended audiences.
  5. Approval APIs: leveraging flows, organizations can set up the Approvals app within the workflow of their users who will no longer need to go to the app to find, create, and respond to approval requests.

With the many new corporate and industry collaborations, features, enhancements, and premium offerings, Microsoft Teams strives purposefully forward with the goals of inclusivity, flexibility, and collaborative teamwork. Acknowledging the hybrid work environment and external customer bases, data and content are kept secure with sensitivity labels, watermarking, and automatic notifications when content is flagged as sensitive. Managing time, organizing daily tasks, and knowing when one is on shift is made easier for frontline workers with the updated Viva Connections Dashboard. Overall, Microsoft Teams is evolving to not only support Teams members with collaboration, but it is also providing the tools to be organized, secure, and efficient with daily, weekly, and monthly tasks.

Microsoft Ignite 2022: Microsoft Teams Announcements Part 1

If you thought Microsoft Teams has been an amazing app for team collaboration, then hang onto your seat because the announcements at Ignite 2022 for Microsoft Teams will blow your socks off! There are many new and exciting features coming with upgrades to many current ones that were announced for Meetings, Microsoft Teams Premium, Rooms and Devices, Microsoft Places, Chat and Collaboration, Phone and Contact Centre, Collaborative Apps, and Frontline Workers.

One of the most exciting new features for Microsoft Teams are mesh avatars. What are they? To enhance connection in our hybrid work environment, supporting collaboration in a virtual world, and making it feel like it is in person, mesh avatars provide users a metaverse experience with the ability to attend Microsoft Teams meetings without turning on the camera. Sound exciting? It definitely is! And, we will go into more detail in our article Microsoft Teams Mesh Avatars.

Mesh avatars are only one of the many features focused on the Meetings aspect of Microsoft Teams. Other enhancements and new features for Microsoft Teams meetings include:

  1. Excel Live: in a shared meeting window and in the meeting itself, attendees will be able to edit and interact with an Excel file without leaving the meeting screen or opening a separate file, and Excel does not even have to be running on your device. How cool is that?
  2. Collaborative Annotations in Teams Meetings: attendees will be able to type, draw and react directly to shared content during a Teams meeting by leveraging Whiteboard with its canvas and rich toolset.
  3. Cameo in PPT Live: a new PowerPoint Live experience that integrates your Microsoft Teams camera feed into your presentation. It is customizable and with PowerPoint Cameo, you can choose where and how you want to appear on your PowerPoint slides. Design recommendations are offered to maximize optimal viewing conditions.
  4. Together Mode Innovations: Assign Seats and Select Together Mode for Everyone: with Together mode, attendees in virtual Microsoft Teams meetings can feel more like they are meeting in the same room. Attendees can be assigned seats by meeting organizers and presenters, and in these seats, organizers and presenters can meet the attendees in the Together mode view, and by selecting the Together mode for everyone, every attendee and participant in the Teams meeting will have the same view.
  5. Microsoft Polls Innovations: engage your attendees so they become active participants in the meeting with Microsoft Polls. Keep the meeting momentum going from voting on decisions to ranking suggestions to voting on their favourite breakfast item.

A new SKU add-on is Microsoft Teams Premium, and greater detail is provided in our article Microsoft Ignite 2022 Microsoft Teams: Teams Premium, which provides better and enhanced meetings through:

  1. Meeting Guides: preset meeting options provide the organizer with the ability to easily set up meetings based on discussion topics and the audience.
  2. Custom Meeting Branding, Organizational Backgrounds at the Org level, Custom Together Mode Scenes: infuse and embody corporate branding in online meetings.
  3. Advanced Meeting Protection, Including Watermarking, E2E Encryptions, and Sensitivity Labels: sensitive content and discussions are safeguarded with E2E encryption, watermarking, sensitivity labels, and providing controls on who can record to protect information.
  4. Intelligent Recap: reduce meeting fatigue with the provision of personalized highlights that will help the user discover the most relevant and important information from meetings, including AI-generated tasks, auto-generated chapters, personalized timeline markers, and intelligent transcript search.
  5. Live Translation for Captions: break down language barriers and create an all-inclusive meeting environment with live translation and captioning of 40 spoken languages for attendees so they can participate and interact live during their meetings.
  6. Advanced Virtual Appointments: personalize the customer experience and drive operational excellence while conducting business-to-customer (B2C) engagements with the simplified queue view, virtual appointment app, custom waiting room, SMS reminders, mobile browser join, and analytics at the department-organizational level.
  7. Advanced Webinars: engage and deepen the connection with internal and external audiences during webinars with hosting capabilities including registration waitlist, manual approvals, automated email reminders, virtual green room, and managing what attendees can see.

To enhance the feeling of togetherness and provide lifelike engagement for remote participants, Microsoft Teams announced new devices and features related to Room and Devices. These include:

  1. Center-of-the-Room Intelligent Camera Form Factor: by being placed in the centre of the room, this 360˚ panoramic camera delivers multiple streams of videos. Each person in the room will appear in their video frame making it easy for each attendee to see each person. Remote attendees will be able to identify the speaker in the room with AI active speaker tracking and with face recognition, it will make it even easier to identify who is speaking.
  2. Cisco: releasing their first wave of devices for Microsoft Teams in 2023 as they become a Microsoft Teams Rooms Certified Devices partner.
  3. Signature Microsoft Teams Rooms: facing the display, in-room participants will see remote attendees across the table, at eye level, and appearing life-size. Background noise is suppressed with AI noise suppression while spatial audio will deliver clear and natural voices from remote attendees.
  4. IntelliFrame: whether in-room or remote, all attendees will have their own enhanced frame in the video gallery.
  5. Teams Displays: large 24” displays will have dual purposes of being used as standalone devices for Teams collaboration or they can be connected to the PC and used as a second monitor.
  6. Microsoft Presenter+: with a push of a button, this accessory empowers users to control meetings, present, and participate in meetings including focusing audience attention on key content, advancing slides, muting/unmuting voices, and raising their hands.
  7. Teams Video Enhancements: Video On/Off on Temas Peripherals, 2nd Video Stream with Content Camera from Logitech: physical content from your Teams meeting and calls can be seamlessly shared with all participants by tilting the camera. Ideal for virtual classrooms and hybrid work environments.
  8. Native Bluetooth for Microsoft Teams on the Surface Headphones 2+: skip the dongle with these Bluetooth headphones and effortlessly connect to collaborate during Teams meetings with a push of a button.

With the majority of corporations implementing a hybrid work environment, the use of space within a building and how it is used requires effective, productive, and intuitive planning. With Microsoft Places, coordinating who is in-room or remote, or both become more easily organized. Microsoft Places provides the technology and tools to maximize time, whether it is meeting colleagues in person by knowing when they will be on-site, booking a common space to work, or improving conference room usage. With Microsoft Places, maximizing space utilization, occupancy, and fluidity is simplified and provides managers with insights to help optimize the usage of these spaces.

So far, in this article, we have seen the many new features and upgrades to features in Microsoft Teams that surround how and where Teams members interact, whether remotely or in person. From Meetings, Rooms and Devices, and Microsoft Places, along with the new Microsoft Teams Premium, we proceed to Chat and Collaboration, Phone and Contact Centre, Collaborative Apps, and Frontline Workers in our next installment, Microsoft Teams Announcements Part 2.

Microsoft Ignite 2022: Microsoft Teams Premium

This year at Microsoft Ignite 2022, Microsoft announced its offering of a new SKU add-on for Microsoft Teams that rolls all the add-ons and costly multiple-point products into one package. The Microsoft Teams Premium package provides a better way to meet in our various work environments. Teams Premium redefines how meetings are organized and conducted, how meetings are presented with specialized devices, where teams members can meet whether in-person, virtual, or in a hybrid environment, how team members can chat and collaborate, how team members can easily access the contact information through the contact center while using a Teams mobile phone, how collaboration is improved with collaborative apps, and how frontline workers benefit from F-SKUs.

Microsoft Teams Premium: Meetings

Meeting Guides

With Meeting Guides, organizers can easily create, schedule, and track meetings with preset options, thereby saving time by negating the need to drill down through menus of options to customize for each meeting. Examples of preset meeting options, which can be customized and itemized by IT, include brainstorming meetings, client calls, and help desk calls. With preset meeting guides, leaders and managers have confidence that company policies and best practices are being followed.

Custom Meeting Branding

Company branding has now reached across and is available in Teams Premium. Customized branding includes company logos and colours that can be infused into the Teams lobby and the background of the meeting. These custom backgrounds are managed by IT at the organizational level, ensuring that corporate branding policies are adhered to. Custom scenes can be created for the Together mode with Teams Premium.

Advanced Meeting Protection

For presenters and attendees in meetings, it is not unusual to share content and knowledge, but many times the content, data, and knowledge may contain business-sensitive information which should not be freely shared during the conversation or screen-shared. With Teams Premium, there are new meeting options to help secure the data and screen grabs with watermarks as well as the capability to limit who can record the meeting.

For customers who require the most advanced security requirements, Microsoft Purview Information Protection sensitivity labels will automatically apply to relevant meeting options. By choosing the sensitivity label, protection is automatically applied across M365. Existing labels can be edited by compliance admins in the Security and Compliance Centre to enforce the meeting options that need to be applied to sensitivity labels when they are used for a meeting.

Intelligent Recap

With limited hours in a day, attending every meeting we are invited to is next to impossible. What do we do then? With Teams Premium, we can focus on what matters with AI-powered meetings. With the power of AI, intelligent recap acts like a virtual assistant who has attended the meetings on your behalf and will suggest relevant action items. With AI-generated tasks that are suggested during and after the meeting, action items will not be missed.

After a meeting, Intelligent Recap will automatically generate chapters for you to navigate with ease through recordings and help you understand the meeting content that was discussed. These automatically generated chapters will include insights (personalized timeline markers) such as when you left a meeting early, when your name was mentioned, or when there was a screen share.

Searching through transcripts is much more fluid and easier with AI assistance as speakers from the transcript are suggested, and these names are based on who you work most closely with.

Live Translation for Captions

In Microsoft Teams, captioning is available for meetings conducted in English, but with Teams Premium, not only are English captions available, but live translation captioning driven by AI overcomes the language barrier. With the ability to translate 40 spoken languages, live translation for captions provides your audience with immediate translation from English to their native language so they can participate and engage in real-time with other team members.

Advanced Virtual Appointments

Advanced Virtual Appointments in Teams Premium provides you the ability to manage the end-to-end experience for your customer’s appointment. Geared towards business-to-customer (B2C) engagement, Advanced Virtual Appointments help organizations drive operational excellence by providing a customized customer experience with:

  1. Virtual Appointments App and Simplified Queue View: with one app, schedule, manage, and track insights for appointments. Client status can easily be tracked and with one view of on-demand and scheduled appointments, they can easily be serviced.
  2. Custom Waiting Room: external attendees will experience a branded, first-class experience from the very start of joining the meeting.
  3. Department- and Organizational-Level Analytics: business insights with usage trends can be tracked, including key metrics like wait times and no-shows.
  4. SMS Reminders and Mobile Browser Join: without the need to download Teams, customers will receive a text reminder to join their virtual appointment, thereby decreasing the number of no-shows.

Microsoft Teams Premium: Advanced Webinars

Microsoft Teams Premium: Advanced Webinars

Taking the basic webinar functionalities in Microsoft Teams to a new level, Advanced Webinars will entice, engage, and communicate with your internal and external audience of up to 1,000 attendees.

  1. Registration Waitlist and Manual Approvals: by keeping the webinar registration open even after event capacity has been reached, additional people can register and be placed automatically on the waitlist. As spots come open, these registrants will automatically move to the pending approval state where the organizer can review each registrant’s information and manually approve or reject the registrant. To assist in planning and managing the event, the registration start and end times can be customized.
  2. Automated Reminder Emails: build anticipation and excitement by sending automated reminder emails to each approved registered attendee. Each email will have a custom-branded header, details of the webinar, and the link to join the event.
  3. Virtual Green Room: in a dedicated virtual green room that is a separate space from attendees, the host and other presenters can socialize, connect, review content before the event starts, monitor Q&A and chat, and manage attendee settings. On the other side of the virtual green room, attendees will be greeted with a welcome screen and have the opportunity to engage with presenters and each other through the use of chat and Q&A.
  4. Manage What Attendees See: keep the attendees focused and engaged by managing and curating what they see, such as the presenter, participants that are brought onto the screen, and shared content.

With Teams Premium, the capabilities of Microsoft Teams are elevated to a level of collaboration, communication, workflow, and streamlined process that have not been dreamt of before. Teams Premium brings many new ways to collaborate, share knowledge, and engage the audience in a world of virtual, in-person, internal, and external team members.

Microsoft Ignite 2022 – Microsoft Teams Mesh Avatar

At this year’s Ignite 2022, Microsoft announced an exciting new feature to Microsoft Teams, launching it fully into the metaverse world. Microsoft Teams Mesh Avatar will provide team members the ability to join team meetings as their avatars without turning on their cameras, create multiple versions of their avatars that reflect the different types of meetings they are attending, and express themselves with ease through a wide range of gestures and reactions.

Create Your Mesh Avatar

Microsoft Teams Mesh Avatars can be accessed and created in two different ways. These two ways are from:

  1. The Teams Home Screen:
    a. Select the three dots located above the Store icon on the left sidebar
    b. Launch the Search Bar
    c. Type in “Mesh Avatars” in the Search Bar
    d. Select the corresponding app; and
  2. Within the Teams Meeting:
    a. Select the three dots located in the top left bar and left of the Camera icon
    b. Choose “Effects and Avatars” in the right-hand column
    c. Select “Open Avatars App” at the top of Your Avatar section.

This is how simple and quick a Mesh Avatar can be created. Once created, the Mesh Avatar can be customized as one or several versions of the user.

Customizing Your Mesh Avatar

With the hybrid work environment, and the projection of generations to come working in a metaverse, inclusivity and social connection are requirements to encourage, develop, build, and sustain community, collaboration, and team relationships.

Customizing a Mesh Avatar is just as simple as creating one. Simply choose “Customize” from within the Mesh Avatar builder to begin the process. With hundreds of options to choose from under the categories of Figure, Hair, Makeup, and Wardrobe as indicated on the tabs, a team member can customize their avatar to represent themselves while reflecting their personality and personal statements.  

Joining a Teams Meeting as Your Mesh Avatar

Sometimes, we just don’t want to turn the camera on when we join a Teams meeting. Currently, we can upload a selfie or it remains as a blank outline of a portrait but either way, both are static versions of ourselves.

Now, with Mesh Avatar, team members can join a meeting without having to turn on their cameras by attending as their Mesh Avatar. To join a Teams meeting with your Mesh Avatar from within a meeting:

  1. Select the three dots located in the top bar to the left of the Camera icon
  2. Select “Effects and Avatars” from the drop-down menu
  3. Select “Avatars” in the right-hand column
  4. Choose the avatar that you want to use to represent you during this meeting
  5. Select “Avatar Backgrounds”
  6. Choose the avatar background that you would like to use in your meeting.

The Mesh Avatar that you have chosen will now appear in the meeting with the chosen avatar background without you having to turn on your camera.

React with Your Mesh Avatar

Just like you would react as if you were in person during a Teams Meeting, your Mesh Avatar can engage with team members through reactions, displaying a mood, and changing the camera angle to provide a different perspective. Microsoft Teams meetings can be fun, engaging, and personal with Mesh Avatars.

Another step towards working in a hybrid metaverse that engages team members, customizable Microsoft Teams Mesh Avatars provide team members the opportunity to present themselves sans camera while reflecting their personalities, uniqueness, attitudes, and individualities. Engaging, collaborating, discussing, and problem-solving in the metaverse world has never been more futuristic, entertaining, and convivial than it is with Teams Mesh Avatar.

Microsoft Teams Rooms Pro

In 2020, Microsoft announced Microsoft Teams Rooms to the MS Teams platform to support corporations and users adapting to the hybrid environment that was and continues to be, affected by the global pandemic. Microsoft Teams Rooms was developed to close the difference in the gap between onsite and remote staff meetings in a virtual space. Two years later, the work environment has morphed, demanding sophisticated, realistic, integrated, and interactive capabilities for meeting in the combined spaces of face-to-face and virtual. Microsoft Teams has kept the pace, but more importantly, focused and elevated these experiences for users in combination with ease of use and management. Understanding that users are both onsite and remote, Microsoft has met this challenge through an innovative approach by rethinking and designing Microsoft Teams Rooms. Unlike previous licensing, Teams Rooms licensing is based on the number of devices rather than users. Changing from the previous licensing format, the new Microsoft Teams Rooms licensing offers two forms – the Basic and the Pro. Notably, there are some major differences in the offerings between the plans.

What is a Microsoft Teams Room?

Microsoft Teams Room is a virtual space for staff to meet regardless of their location at the time of the meeting. Microsoft Teams Room facilitates attendees to meet virtually, even if they are on-site in their own office or a board room, offsite in their home or cottage, or a combination of both on-site and off-site. This hybrid meeting environment has challenges, including creating an environment whereby attendees interact as if face-to-face, ease of use, realism, and on-the-fly meetings. Microsoft Teams Rooms eliminates the barriers that exist between places, people, and spaces. It is a splace (space and place) for attendees and participants to inclusively meet, engage, create, collaborate, and be together regardless of their physical location.

What is Microsoft Teams Room Basic Plan?

Previously, Microsoft Teams Room was available in the Basic and Premium Plans. With the introduction of Pro, the former Premium plan is no longer available.

Microsoft Teams Room Basic is just that. The Basic plan will provide small businesses the ability to create hybrid meeting spaces through scheduling, sharing wireless content, and joining meetings. However, if your small business requires assistance in managing core and hybrid meeting features, then the Pro plan is the one that will meet these needs.

Teams Room Basic is included with all certified Teams Rooms devices at no extra charge if purchased before September 1, 2022. For licensing, 25 Basic licenses, or rooms, can be applied by the customer to their tenant.

What is Microsoft Teams Room Pro Plan?

The new Teams Room Pro Plan focuses on ease of usability, security, flexibility, inclusivity, and management while providing a simplified purchasing process for customers. Teams Room Pro offers one license that includes the existing Teams Room features, innovative advancements in hybrid meeting experiences, and the Teams Rooms managed service platform.

Some features are currently available in Teams Room Pro while others will be rolled out in the future. These features include:

  1. Intelligent Video and Audio for Certified Microsoft Teams Devices: Advanced camera capabilities will use AI to capture and automatically frame the active speaker, creating a feeling of being in the room even though the attendee is remote. Video layout options include front row while audio will be high quality with noise suppression and full optimization of bandwidth for smooth streaming;
  2. Increased Engagement: Engaging with ease encourages attendees to participate, especially those who are remote. Interactions like content sharing, raising a hand, and providing live reactions are some of the most popular and well-known features that continue to be accessible for participants. To ensure conversations that happen alongside the meeting are not missed, chat bubbles appear in the classic video grid layout to alert in-room participants;
  3. Powerful Collaboration: With Microsoft Whiteboard, Microsoft Surface Hub 2S, and intelligent capturing of an analog whiteboard, every attendee will have the real-time capabilities to collaborate. Adding a touch display enables multi-user capabilities for sharing the whiteboard while the addition of a content camera provides an augmented and intelligent whiteboard view in Teams meetings;
  4. Management and Security: With hybrid meeting environments, trustworthy, operational, and strongly effective security is mandatory and not an option. Teams Room Pro not only provides essential enterprise-grade security and management but also provides device analytics, access control, remote configuration, and IT service management integration (ITSM). The Teams Rooms managed service platform provides AI-driven operations that detect problems, provide solutions at scale, and provide automatic updates.

Microsoft Teams Rooms Pro: Teams Rooms Managed Services, IT Service Management (ITSM) Integration

In the previous Teams Rooms Premium plan, Microsoft provided a paid service for 24/7 monitoring and management of the room operating system and software with the permission to perform remote action to address any issues or deficiencies. With the new Teams Rooms Pro plan, Microsoft will no longer provide this paid service but instead will enlist partner remediation. Beginning October 1, 2022, all incidences will remediate automatically or route to either the designated management partner of the customer or the customer’s IT department, negating the need for Microsoft engineers to be the intermediary.

Preparing for the Transition to Microsoft Teams Rooms Basic and Pro

The deadlines for the transitions are coming up quickly, and as administrators, these deadlines are outlined in Microsoft’s documentation under “Important” notes.

One detail to be noted is that “legacy licenses” will not automatically transition to the new licenses. When a legacy or older license expires, an organization will have to switch to Basic or Pro, which can be done through the Microsoft 365 Admin Centre Portal. Alternately, licensing for the Teams Rooms Pro plan can be purchased from sales channel partners of Microsoft.

An important detail regarding user licenses used with Teams Rooms devices, as noted in Microsoft’s documentation, will no longer be supported effective July 1, 2023. User licenses will need to be replaced by a Teams Rooms Basic or Teams Rooms Pro license as Teams Rooms licensing is based on the number of rooms, not the number of users. It was also made clear that meeting devices that have a user license will be blocked from signing in until a Teams Rooms license is assigned.

Once again, Microsoft has focused on the Microsoft Teams collaborating app with changes and enhancements that continue to support interactive, real-time, engaging, and collaborative meetings in Microsoft Teams Rooms. Whether it is the Basic or Pro license, organizations will be able to schedule, join, and share content with the Basic license to fully immersed, innovative, collaborative participation with high-definition audio, visual enhancements, multi-user whiteboarding, side-chat bubbles, and live reactions with the Pro license. Whichever plan is implemented, Microsoft Teams Rooms continue to provide an excellent solution as a key method of hosting and delivering meetings regardless of participant location. Seamless and easy to use, Microsoft Teams Rooms transcends barriers and brings together participants who are onsite, remote, or a combination of both into one space as if they are face-to-face for real-time collaboration.

Microsoft Ignite October 2022: Part 2: Security and Compliance Across SharePoint, OneDrive, and Teams

In continuation from our first article, Part 1: Security and Compliance Across SharePoint, OneDrive, and Teams, we will continue to examine the announcements from Ignite 2022 of how Microsoft is offering new measures of cybersecurity as it resolves to meet the high Zero Trust standard of cybersecurity. Cybersecurity has been highlighted with the hybrid work environment with many organizations being prey to hackers, and in some situations, being held hostage to pay fines and ransoms. These situations can cause severe loss of income to the bankruptcy of an organization.

Not to be taken lightly, Microsoft has introduced six new security and management capabilities to help counter these cyberattacks. As announced at Ignite 2022, these counter measures include:

  1. Advanced access policies for secure collaboration
  2. Security controls to safeguard content
  3. Comprehensive compliance
  4. Migration enhancement
  5. Advanced sites lifecycle management
  6. Organization lifecycle management.

In our previous article, we examined Advanced Assess Policies for Secure Collaboration, and in this article, we will review the remaining new announcements for security and management.

Security Controls to Safeguard Content

User-Defined Permissions (UDP) Support for Office Files in SharePoint, OneDrive, and Teams: Private Preview

Expanding and innovating with Sensitivity Labels, User Defined Permissions, Office files will be protected with labels containing User Defined Permissions (UDP). Admins will be able to apply sensitivity labels that are associated with admin-defined permissions, such as who can view and co-author files in SharePoint, OneDrive, and Teams.

Protected PDFs Support in SharePoint, OneDrive, and Teams: Private Preview

By bringing the security controls that power Office files to protected PDF files, sensitivity labels can now be viewed in the Document Library’s sensitivity column when labeled and encrypted PDF files are uploaded to SharePoint, OneDrive, and Teams.  Compliance and security admins, by using their established DLP or eDiscovery policies, can govern these protected PDFs.

Default Sensitivity Labels for SharePoint Document Libraries: Public View

The default sensitivity label for SharePoint Document Libraries can be set through the Library Settings in the information panel. Once the appropriate sensitivity label has been assigned, all documents in that library will be labeled automatically. These documents can be newly created ones or ones that are being modified. The concept of labeling with rich sensitivity labels that have been applied with Office files, SharePoint Sites, Teams, and Microsoft 365 groups can now be applied to new and uploaded documents in SharePoint Document Libraries.

Programmatic Way to Assign Sensitivity Label to a File in SharePoint, OneDrive, and Teams: Private Preview

A premium capability, a programmatic endpoint in the Microsoft Graph Beta will allow users and applications to allow the labeling of files.

Anti-Malware Scan on File Download: General Availability

Advancing towards Zero Trust, the third layer of protection is added in addition to the asynchronous antimalware scanning in SharePoint and OneDrive with anti-malware scanning during downloading of unscanned files through the browser or in Teams.

Forensic Malware Identification and Extraction: General Availability

Through the use of the simple SharePoint PowerShell cmdlet, administrators will not need to elevate their access to the SharePoint or OneDrive site where malware and infected content is present. They will be able to determine what type of malware is present in a file that is marked infected and extracts the infected file from the site in order to perform further analysis, circumventing the existing challenge of how to gain access to infected files without needing to gain access to all the files in the source site.

Comprehensive Compliance

Information Barriers (IB) 2.0: IB Modes and Multi-Segment Support: General Availability

The needs of users can be tailored with the capability provided through the Information Barriers (IB) modes while maintaining corporate information barriers. With five IB modes (Owner-moderated, Open, Explicit, Implicit, and Mixed), there is flexibility and customizability to support site/team owners to bring in incompatible segments users to the site/team to participate in multiple regulatory projects to successfully complete projects while meeting mandatory regulatory needs.

Migration Enhancements

Migration Manager

With Migration Manager, Bulk download reports, Migration filters, and Estimated time to migrate are new features added to simplify the migration of content from file shares, Dropbox, Google Drive, Egnyte, and Box.

Bulk-Download Detailed Reports

When performing cloud migrations, gone is the time-intensive download of detailed reports that are chosen one by one. Instead, this can now be done with one click by selecting tasks in the scans and migrations tab.

Migration Filters

Content can be curated in M365 by filtering the files and folders containing invalid characters, excluding by folder names and file extensions, and by date of creation and modification. There is an option to replace invalid characters with valid characters.

Estimated Time to Migrate

An estimate of time to complete the migration project and the task level is provided based on scans, file sizes, and other factors.

SharePoint Migration Tool (SPMT) Improvements

Scanning and migration from On-prem Server are streamlined within one tool while the navigation page flow is intuitive for managing migration jobs and creating migration-by scenarios.

Advanced Sites Lifecycle Management

SharePoint Data Access Governance (DAG) Insights V1: General Availability

The lifecycle of a site starts at the time of its creation and evolves to the active state when content and collaboration occur with users. During this active state is when oversharing or accidental sharing occurs. With DAG, administrators can discover the top 100 and the top 10,000 sites of millions of sites that an organization may have and that requires the closest monitoring/validating/tailoring for share and access policies for these sites.

Sites Lifecycle Policies – Inactive Sites: Preview

With Sites Lifecyle Policies, administrators can create tailored inactive site policies that target specific SharePoint sites, Teams created sites, Public labeled sites, or sites with information segment of Research. These policies will trigger an alert to the respective site owner, providing them the option to delete, keep or exercise other actions on these inactive sites.

Site History and Recent Admin Actions: Preview

The Site History capability in the SharePoint Admin centre addresses the inability of SharePoint admins to troubleshoot inaccessible team sites, know the lifecycle state of a site, manage the lifecycle, and know the activities carried out by site owners. The Site History will provide a history of all changes made to site properties by all site owners and admins in the admin actions panel and will show the latest site changes such as site URL, site name, storage limit, and share settings. Admins will also be able to export 30 days of changes.

Organization Lifecyle Management

SharePoint Tenant Rename: General Availability

For tenants with less than 10k sites, SharePoint Tenant Rename allows SharePoint admins to rename the tenant’s SharePoint URL should the organization need to rebrand due to a merge or expansion across satellite locations.

OneDrive Cross-Tenant User Data Migration: General Availability

With OneDrive Cross-Tenant User Data Migration, admins can move users’ OneDrive and mailboxes across two tenants by implementing a simple set of SharePoint PowerShell cmdlets. Sharing links to old URLs will continue to work even though the URL of OneDrive has changed. Why would admins need to migrate users across two tenants? Situations arise when companies expand through mergers and acquisitions, which are part of an organization’s lifecycle. When mergers and acquisitions occur with a common footprint in Microsoft 365, OneDrive Cross-Tenant User Data Migration makes easy work of moving users from one tenant to the next while retaining content integrity and security.

Microsoft Ignite 2022 has had some exciting announcements, including its stance on Zero Trust concerning cybersecurity and the many ways it is addressing and proactively implementing to achieve this standard. From sensitivity labels to access policies, from site lifecycle management to secured migration tools, Microsoft is providing organizations, admins, and their users several layers, methodologies, and processes to retain control of content at the organization, admins, and user levels. Cybersecurity with Zero Trust is the new standard and Microsoft is working adamantly towards this high bar of security.

Microsoft Ignite October 2022 Part 1: Security and Compliance Across SharePoint, OneDrive, and Teams

Around the world, we hear how corporations fall prey to cyber predators. Cybersecurity has never been more important than now with the hybrid conditions for work. The challenge has been to ensure the cybersecurity of data and content for staff who work remotely on their systems and Wi-Fi network in conjunction with staff who work on-site. With so many possibilities of threat entries, cybersecurity has reached Zero Trust as the standard and norm. Microsoft is committed to enabling its customers to diligently, smoothly, and easily as possible manage content, people, and context across SharePoint, OneDrive, and Teams.

Microsoft announced at Ignite today, six new security and management capabilities including:

  1. Advanced access policies for secure collaboration
  2. Security controls to safeguard content
  3. Comprehensive compliance
  4. Migration enhancement
  5. Advanced sites lifecycle management
  6. Organization lifecycle management

In this article, we will review Advanced Access Policies for Secure Collaboration and we will review the remaining in the next article, Part 2: Security and Compliance Across SharePoint, OneDrive, and Teams.

Advanced Access Policies for Secure Collaboration

Advanced access policies for secure collaboration are currently available as either private preview, general availability, or premium feature and span across SharePoint sites, OneDrive, and Teams.

Restricted Access Control (RAC) Policy for SharePoint Sites: Private Preview

Unauthorized access to content can occur when content is overshared by users. Users commonly share content with good intent, but they are unknowingly and mistakenly, sharing with a broad audience, resulting in unauthorized access to content by the broader audience. Oversharing has always been an issue, but with hybrid work environments, this has bubbled to the surface with an expansion of oversharing and unauthorized access to content.

With the RAC Policy for SharePoint Sites, administrators can now restrict access to SharePoint Sites, instantly restricting access to content to a confined set of users, regardless of how widespread the content has been shared or where inheritance was broken at the content level.

This advanced policy, RAC Policy v1 (Private Preview), allows administrators to restrict Microsoft 365 Groups-connected sites to having the same membership as the parent Microsoft 365 Group, even if the site or content was shared outside of that group membership. Microsoft announced that this policy will be extended to all SharePoint Site templates by configuring the RAC policy with a security group.

Restricted Access Control (RAC) Policy for OneDrive in Your Organization: General Availability

Announced at Ignite this week, the Restricted Access Control Policy for OneDrive is generally available. Similar to oversharing of SharePoint sites with external users, OneDrive content is also overshared.

By creating security groups in Azure Active Directory that contains all the organization’s employees and then configuring the Limit OneDrive Access to those groups in the SharePoint Admin centre, only those groups granted access will now have access. By restricting access to all OneDrives in your organization to a determined set of users such as only employees, your organization’s content is secure from being accessed by externals who should not have access in the first place.

Conditional Access Policies for SharePoint Sites, OneDrives, and Teams: General Availability

There is flexibility with the Conditional Access Policies for SharePoint Sites, OneDrives, and Teams by allowing admins to determine whether the content is classified as business strategic or general training content. Both types of content will require different levels of security whereby classified business strategic content is accessible only when certain conditions are met, and general training content should be easily accessible. The conditional access requirements should match the security posture of these sites.

This can be achieved by utilizing SharePoint Online PowerShell to set the appropriate access policy for a site. This will dictate the conditions that are required to access the specified site. For example, a site containing business strategic information can have the condition of multi-factor authentication (MFA) to be met in order for a user to access this site. Additionally, these policies can be associated with sensitivity labels, if deployed, by labeling the teams or sites appropriately. The key benefit of this policy is that it allows the admin to have users go through additional credentialing only when they are accessing critical sites or teams that contain business strategic content.

Access policies are just one of the methods that are being applied for cybersecurity by Microsoft. As Microsoft moves closer to Zero Trust, increasing security controls, safeguards, malicious malware protection, and lifecycle management are all integral parts of this advancement. In our next installment, Part 2: Security and Compliance Across SharePoint, OneDrive, and Teams, we will examine these closer in detail.

Adaptive Cards with Microsoft Teams – JSON Templates Part 8

In a continuation of my earlier article, Adaptive Cards with Microsoft Teams with Examples, we continue with the details of how to create these Adaptive Cards authored with JSON templates. The templates can be used as-is, edited to suit your organization’s needs, or used as a launching point to customize your templates.

Samples and Templates of Adaptive Cards for Microsoft Teams

This is exciting as these select samples and templates are created and offered for Microsoft Teams to show what you can create. These can be copied, edited, and tweaked to create any possible scenario. There are limitless scenarios to design and create.

In this series, Adaptive Cards with Microsoft Teams – JSON Templates Part 8, includes templates for Flight Itinerary, Flight Update, and Flight Status.

Flight Itinerary

Data JSON:

{
  "Segments": [
    {
      "Id": 1,
      "OriginStation": 11235,
      "DestinationStation": 13554,
      "DepartureDateTime": "2017-05-30T19:25:00Z",
      "ArrivalDateTime": "2017-05-30T20:55:00Z",
      "Carrier": 881,
      "OperatingCarrier": 881,
      "Duration": 90,
      "FlightNumber": "1463",
      "JourneyMode": "Flight",
      "Directionality": "Outbound"
    },
    {
      "Id": 2,
      "OriginStation": 13554,
      "DestinationStation": 11235,
      "DepartureDateTime": "2017-06-02T19:25:00Z",
      "ArrivalDateTime": "2017-06-02T20:55:00Z",
      "Carrier": 881,
      "OperatingCarrier": 881,
      "Duration": 90,
      "FlightNumber": "1463",
      "JourneyMode": "Flight",
      "Directionality": "Inbound"
    }
  ],
  "BookingOptions": [
    {
      "BookingItems": [
        {
          "AgentID": 4499211,
          "Status": "Current",
          "Price": 4032.54,
          "Deeplink": "https://partners.api.skyscanner.net/apiservices/deeplink/v2?_cje=jzj5DawL5[...]",
          "SegmentIds": [
            1,
            2
          ]
        }
      ]
    }
  ],
    "Places": [
    {
      "Id": 13554,
      "ParentId": 4698,
      "Code": "SFO",
      "Type": "Airport",
      "Name": "San Francisco"
    },
    {
      "Id": 13558,
      "ParentId": 5796,
      "Code": "AMS",
      "Type": "Airport",
      "Name": "Amsterdam"
    }
  ],
  "Carriers": [
    {
      "Id": 881,
      "Code": "BA",
      "Name": "British Airways",
      "ImageUrl": "https://s1.apideeplink.com/images/airlines/BA.png"
    }
  ],
  "Query": {
    "Country": "GB",
    "Currency": "GBP",
    "Locale": "en-gb",
    "Adults": 3,
    "Children": 0,
    "Infants": 0,
    "OriginPlace": "2343",
    "DestinationPlace": "13554",
    "OutboundDate": "2017-05-30",
    "InboundDate": "2017-06-02",
    "LocationSchema": "Default",
    "CabinClass": "Economy",
    "GroupPricing": false
  }
 }

Template JSON: 

{
  "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
  "version": "1.0",
  "type": "AdaptiveCard",
  "speak": "Your flight is confirmed for you and 3 other passengers from San Francisco to Amsterdam on Friday, October 10 8:30 AM",
  "body": [
    {
      "type": "TextBlock",
      "text": "Passengers",
      "weight": "Bolder",
      "wrap": true
    },
    {
      "type": "TextBlock",
      "text": "Sarah Hum",
      "separator": true,
      "wrap": true
    },
    {
      "type": "TextBlock",
      "text": "Jeremy Goldberg",
      "spacing": "None",
      "wrap": true
    },
    {
      "type": "TextBlock",
      "text": "Evan Litvak",
      "spacing": "None",
      "wrap": true
    },
    {
      "type": "TextBlock",
      "text": "2 Stops",
      "weight": "Bolder",
      "spacing": "Medium",
      "wrap": true
    },
    {
      "type": "TextBlock",
      "text": "{{DATE(${string(Segments[0].DepartureDateTime)}, SHORT)}} {{TIME(${string(Segments[0].DepartureDateTime)})}}",
      "weight": "Bolder",
      "spacing": "None",
      "wrap": true
    },
    {
      "type": "ColumnSet",
      "separator": true,
      "columns": [
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "$when": "${Segments[0].OriginStation == 11235}",
              "text": "${Places[0].Name}",
              "isSubtle": true,
              "wrap": true
            },
            {
              "type": "TextBlock",
              "$when": "${Segments[0].OriginStation == 13554}",
              "text": "${Places[1].Name}",
              "isSubtle": true,
              "wrap": true
            }
          ]
        },
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "$when": "${Segments[0].DestinationStation == 11235}",
              "text": "${Places[0].Name}",
              "horizontalAlignment": "Right",
              "isSubtle": true,
              "wrap": true
            },
            {
              "type": "TextBlock",
              "$when": "${Segments[0].DestinationStation == 13554}",
              "text": "${Places[1].Name}",
              "horizontalAlignment": "Right",
              "isSubtle": true,
              "wrap": true
            }
          ]
        }
      ]
    },
    {
      "type": "ColumnSet",
      "spacing": "none",
      "columns": [
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "size": "ExtraLarge",
              "color": "Accent",
              "$when": "${Segments[0].OriginStation == 11235}",
              "text": "${Places[0].Code}",
              "spacing": "None",
              "wrap": true
            },
            {
              "type": "TextBlock",
              "size": "ExtraLarge",
              "color": "Accent",
              "$when": "${Segments[0].OriginStation == 13554}",
              "text": "${Places[1].Code}",
              "spacing": "None",
              "wrap": true
            }
          ]
        },
        {
          "type": "Column",
          "width": "auto",
          "items": [
            {
              "type": "Image",
              "url": "https://adaptivecards.io/content/airplane.png",
              "size": "Small",
              "spacing": "None"
            }
          ]
        },
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "size": "ExtraLarge",
              "color": "Accent",
              "$when": "${Segments[0].DestinationStation == 11235}",
              "text": "${Places[0].Code}",
              "horizontalAlignment": "Right",
              "spacing": "None",
              "wrap": true
            },
            {
              "type": "TextBlock",
              "size": "ExtraLarge",
              "color": "Accent",
              "$when": "${Segments[0].DestinationStation == 13554}",
              "text": "${Places[1].Code}",
              "horizontalAlignment": "Right",
              "spacing": "None",
              "wrap": true
            }
          ]
        }
      ]
    },
    {
      "type": "TextBlock",
      "text": "Non-Stop",
      "weight": "Bolder",
      "spacing": "Medium",
      "wrap": true
    },
    {
      "type": "TextBlock",
      "text": "{{DATE(${string(Segments[1].ArrivalDateTime)}, SHORT)}} {{TIME(${string(Segments[1].ArrivalDateTime)})}}",
      "weight": "Bolder",
      "spacing": "None",
      "wrap": true
    },
    {
      "type": "ColumnSet",
      "separator": true,
      "columns": [
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "$when": "${Segments[1].OriginStation == 11235}",
              "text": "${Places[0].Name}",
              "isSubtle": true,
              "wrap": true
            },
            {
              "type": "TextBlock",
              "$when": "${Segments[1].OriginStation == 13554}",
              "text": "${Places[1].Name}",
              "isSubtle": true,
              "wrap": true
            }
          ]
        },
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "$when": "${Segments[1].DestinationStation == 11235}",
              "text": "${Places[0].Name}",
              "horizontalAlignment": "Right",
              "isSubtle": true,
              "wrap": true
            },
            {
              "type": "TextBlock",
              "$when": "${Segments[1].DestinationStation == 13554}",
              "text": "${Places[1].Name}",
              "horizontalAlignment": "Right",
              "isSubtle": true,
              "wrap": true
            }
          ]
        }
      ]
    },
    {
      "type": "ColumnSet",
      "spacing": "none",
      "columns": [
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "size": "ExtraLarge",
              "color": "Accent",
              "$when": "${Segments[1].OriginStation == 11235}",
              "text": "${Places[0].Code}",
              "spacing": "None",
              "wrap": true
            },
            {
              "type": "TextBlock",
              "size": "ExtraLarge",
              "color": "Accent",
              "$when": "${Segments[1].OriginStation == 13554}",
              "text": "${Places[1].Code}",
              "spacing": "None",
              "wrap": true
            }
          ]
        },
        {
          "type": "Column",
          "width": "auto",
          "items": [
            {
              "type": "Image",
              "url": "https://adaptivecards.io/content/airplane.png",
              "size": "Small",
              "spacing": "None"
            }
          ]
        },
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "size": "ExtraLarge",
              "color": "Accent",
              "$when": "${Segments[1].DestinationStation == 11235}",
              "text": "${Places[0].Code}",
              "horizontalAlignment": "Right",
              "spacing": "None",
              "wrap": true
            },
            {
              "type": "TextBlock",
              "size": "ExtraLarge",
              "color": "Accent",
              "$when": "${Segments[1].DestinationStation == 13554}",
              "text": "${Places[1].Code}",
              "horizontalAlignment": "Right",
              "spacing": "None",
              "wrap": true
            }
          ]
        }
      ]
    },
    {
      "type": "ColumnSet",
      "spacing": "Medium",
      "columns": [
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "text": "Total",
              "size": "Medium",
              "isSubtle": true,
              "wrap": true
            }
          ]
        },
        {
          "type": "Column",
          "width": 1,
          "items": [
            {
              "type": "TextBlock",
              "horizontalAlignment": "Right",
              "text": "$${formatNumber(BookingOptions[0].BookingItems[0].Price, 2)}",
              "size": "Medium",
              "weight": "Bolder",
              "wrap": true
            }
          ]
        }
      ]
    }
  ]
}

Flight Update

{
  "@context": "http://schema.org",
  "@type": "FlightReservation",
  "reservationId": "RXJ34P",
  "reservationStatus": "http://schema.org/ReservationConfirmed",
  "passengerPriorityStatus": "Fast Track",
  "passengerSequenceNumber": "ABC123",
  "securityScreening": "TSA PreCheck",
  "underName": {
    "@type": "Person",
    "name": "Sarah Hum"
  },
  "reservationFor": {
    "@type": "Flight",
    "flightNumber": "KL605",
    "provider": {
    "@type": "Airline",
    "name": "KLM",
    "iataCode": "KL",
    "boardingPolicy": "http://schema.org/ZoneBoardingPolicy"
    },
    "seller": {
    "@type": "Airline",
    "name": "KLM",
    "iataCode": "KL"
    },
    "departureAirport": {
    "@type": "Airport",
    "name": "Amsterdam Airport",
    "iataCode": "AMS"
    },
    "departureTime": "2017-03-04T09:20:00-01:00",
    "arrivalAirport": {
    "@type": "Airport",
    "name": "San Francisco Airport",
    "iataCode": "SFO"
    },
    "arrivalTime": "2017-03-05T08:20:00+04:00"
  }
  }

Template JSON: 

{
    "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
    "type": "AdaptiveCard",
    "version": "1.0",
    "speak": "Flight KL0605 to San Fransisco has been delayed.It will not leave until 10:10 AM.",
    "body": [
        {
            "type": "ColumnSet",
            "columns": [
                {
                    "type": "Column",
                    "width": "auto",
                    "items": [
                        {
                            "type": "Image",
                            "size": "Small",
                            "url": "https://adaptivecards.io/content/airplane.png"
                        }
                    ]
                },
                {
                    "type": "Column",
                    "width": "stretch",
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "Flight Status",
                            "horizontalAlignment": "Right",
                            "isSubtle": true,
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "DELAYED",
                            "horizontalAlignment": "Right",
                            "spacing": "None",
                            "size": "Large",
                            "color": "Attention",
                            "wrap": true
                        }
                    ]
                }
            ]
        },
        {
            "type": "ColumnSet",
            "separator": true,
            "spacing": "Medium",
            "columns": [
                {
                    "type": "Column",
                    "width": "stretch",
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "Passengers",
                            "isSubtle": true,
                            "weight": "Bolder",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "${underName.name}",
                            "spacing": "Small",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "Jeremy Goldberg",
                            "spacing": "Small",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "Evan Litvak",
                            "spacing": "Small",
                            "wrap": true
                        }
                    ]
                },
                {
                    "type": "Column",
                    "width": "auto",
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "Seat",
                            "horizontalAlignment": "Right",
                            "isSubtle": true,
                            "weight": "Bolder",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "14A",
                            "horizontalAlignment": "Right",
                            "spacing": "Small",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "14B",
                            "horizontalAlignment": "Right",
                            "spacing": "Small",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "14C",
                            "horizontalAlignment": "Right",
                            "spacing": "Small",
                            "wrap": true
                        }
                    ]
                }
            ]
        },
        {
            "type": "ColumnSet",
            "spacing": "Medium",
            "separator": true,
            "columns": [
                {
                    "type": "Column",
                    "width": 1,
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "Flight",
                            "isSubtle": true,
                            "weight": "Bolder",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "${reservationFor.flightNumber}",
                            "spacing": "Small",
                            "wrap": true
                        }
                    ]
                },
                {
                    "type": "Column",
                    "width": 1,
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "Departs",
                            "isSubtle": true,
                            "horizontalAlignment": "Center",
                            "weight": "Bolder",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "{{TIME(${string(reservationFor.departureTime)})}}",
                            "color": "Attention",
                            "weight": "Bolder",
                            "horizontalAlignment": "Center",
                            "spacing": "Small",
                            "wrap": true
                        }
                    ]
                },
                {
                    "type": "Column",
                    "width": 1,
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "Arrives",
                            "isSubtle": true,
                            "horizontalAlignment": "Right",
                            "weight": "Bolder",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "{{TIME(${string(reservationFor.arrivalTime)})}}",
                            "color": "Attention",
                            "horizontalAlignment": "Right",
                            "weight": "Bolder",
                            "spacing": "Small",
                            "wrap": true
                        }
                    ]
                }
            ]
        },
        {
            "type": "ColumnSet",
            "spacing": "Medium",
            "separator": true,
            "columns": [
                {
                    "type": "Column",
                    "width": 1,
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "${reservationFor.departureAirport.name}",
                            "isSubtle": true,
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "${reservationFor.departureAirport.iataCode}",
                            "size": "ExtraLarge",
                            "color": "Accent",
                            "spacing": "None",
                            "wrap": true
                        }
                    ]
                },
                {
                    "type": "Column",
                    "width": "auto",
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": " ",
                            "wrap": true
                        },
                        {
                            "type": "Image",
                            "url": "https://adaptivecards.io/content/airplane.png",
                            "size": "Small"
                        }
                    ]
                },
                {
                    "type": "Column",
                    "width": 1,
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "${reservationFor.arrivalAirport.name}",
                            "isSubtle": true,
                            "horizontalAlignment": "Right",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "text": "${reservationFor.arrivalAirport.iataCode}",
                            "horizontalAlignment": "Right",
                            "size": "ExtraLarge",
                            "color": "Accent",
                            "spacing": "None",
                            "wrap": true
                        }
                    ]
                }
            ]
        }
    ]
}

Flight Details

Data JSON:

{
        "@context": "http://schema.org",
        "@type": "FlightReservation",
        "reservationId": "RXJ34P",
        "reservationStatus": "http://schema.org/ReservationConfirmed",
        "passengerPriorityStatus": "Fast Track",
        "passengerSequenceNumber": "ABC123",
        "securityScreening": "TSA PreCheck",
        "underName": {
          "@type": "Person",
          "name": "Eva Green"
        },
        "reservationFor": {
          "@type": "Flight",
          "flightNumber": "UA110",
          "provider": {
                "@type": "Airline",
                "name": "Continental",
                "iataCode": "CO",
                "boardingPolicy": "http://schema.org/ZoneBoardingPolicy"
          },
          "seller": {
                "@type": "Airline",
                "name": "United",
                "iataCode": "UA"
          },
          "departureAirport": {
                "@type": "Airport",
                "name": "San Francisco Airport",
                "city": "San Francisco",
                "iataCode": "SFO"
          },
          "departureTime": "2017-03-04T20:15:00-08:00",
          "arrivalAirport": {
                "@type": "Airport",
                "name": "John F. Kennedy International Airport",
                "city": "New York",
                "iataCode": "JFK"
          },
          "arrivalTime": "2017-03-05T06:30:00-05:00"
        }
  }

Template JSON: 

{
    "type": "AdaptiveCard",
    "body": [
        {
            "type": "ColumnSet",
            "columns": [
                {
                    "type": "Column",
                    "items": [
                        {
                            "type": "Container",
                            "backgroundImage": "https://messagecardplayground.azurewebsites.net/assets/TxP_Background.png",
                            "items": [
                                {
                                    "type": "Image",
                                    "horizontalAlignment": "center",
                                    "url": "https://messagecardplayground.azurewebsites.net/assets/TxP_Flight.png",
                                    "altText": "Departing airplane"
                                }
                            ],
                            "bleed": true
                        },
                        {
                            "type": "Container",
                            "spacing": "none",
                            "style": "emphasis",
                            "items": [
                                {
                                    "type": "TextBlock",
                                    "size": "extraLarge",
                                    "weight": "lighter",
                                    "color": "Accent",
                                    "text": "Flight to ${reservationFor.arrivalAirport.iataCode}",
                                    "wrap": true
                                },
                                {
                                    "type": "TextBlock",
                                    "spacing": "small",
                                    "text": "${reservationFor.provider.name}  Air Lines flight ${reservationFor.flightNumber} ",
                                    "wrap": true
                                },
                                {
                                    "type": "TextBlock",
                                    "spacing": "none",
                                    "text": "Confirmation code: ${reservationId}",
                                    "wrap": true
                                },
                                {
                                    "type": "TextBlock",
                                    "spacing": "none",
                                    "text": "4 hours 15 minutes",
                                    "wrap": true
                                }
                            ],
                            "bleed": true,
                            "height": "stretch"
                        }
                    ],
                    "width": 45,
                    "height": "stretch"
                },
                {
                    "type": "Column",
                    "items": [
                        {
                            "type": "Container",
                            "height": "stretch",
                            "items": [
                                {
                                    "type": "ColumnSet",
                                    "columns": [
                                        {
                                            "type": "Column",
                                            "items": [
                                                {
                                                    "type": "TextBlock",
                                                    "size": "extraLarge",
                                                    "weight": "lighter",
                                                    "text": "${reservationFor.departureAirport.iataCode}",
                                                    "wrap": true
                                                }
                                            ],
                                            "width": "auto"
                                        },
                                        {
                                            "type": "Column",
                                            "verticalContentAlignment": "center",
                                            "items": [
                                                {
                                                    "type": "Image",
                                                    "url": "https://messagecardplayground.azurewebsites.net/assets/graydot2x2.png",
                                                    "width": "10000px",
                                                    "height": "2px"
                                                }
                                            ],
                                            "width": "stretch"
                                        },
                                        {
                                            "type": "Column",
                                            "spacing": "small",
                                            "verticalContentAlignment": "center",
                                            "items": [
                                                {
                                                    "type": "Image",
                                                    "url": "https://messagecardplayground.azurewebsites.net/assets/smallairplane.png",
                                                    "height": "16px"
                                                }
                                            ],
                                            "width": "auto"
                                        },
                                        {
                                            "type": "Column",
                                            "items": [
                                                {
                                                    "type": "TextBlock",
                                                    "horizontalAlignment": "right",
                                                    "size": "extraLarge",
                                                    "weight": "lighter",
                                                    "text": "${reservationFor.arrivalAirport.iataCode}",
                                                    "wrap": true
                                                }
                                            ],
                                            "width": "auto"
                                        }
                                    ]
                                },
                                {
                                    "type": "ColumnSet",
                                    "columns": [
                                        {
                                            "type": "Column",
                                            "items": [
                                                {
                                                    "type": "RichTextBlock",
                                                    "inlines": [
                                                        {
                                                            "type": "TextRun",
                                                            "size": "medium",
                                                            "text": "{{TIME(${string(reservationFor.departureTime)})}}\\n",
                                                            "wrap": true
                                                        },
                                                        {
                                                            "type": "TextRun",
                                                            "text": "{{DATE(${string(reservationFor.departureTime)}, SHORT)}}\\n",
                                                            "isSubtle": true,
                                                            "wrap": true
                                                        },
                                                        {
                                                            "type": "TextRun",
                                                            "text": "${reservationFor.departureAirport.city}",
                                                            "isSubtle": true,
                                                            "wrap": true
                                                        }
                                                    ]
                                                }
                                            ],
                                            "width": 1
                                        },
                                        {
                                            "type": "Column",
                                            "items": [
                                                {
                                                    "type": "RichTextBlock",
                                                    "horizontalAlignment": "right",
                                                    "inlines": [
                                                        {
                                                            "type": "TextRun",
                                                            "size": "medium",
                                                            "text": "{{TIME(${string(reservationFor.arrivalTime)})}}\\n",
                                                            "wrap": true
                                                        },
                                                        {
                                                            "type": "TextRun",
                                                            "text": "{{DATE(${string(reservationFor.arrivalTime)}, SHORT)}}\\n",
                                                            "isSubtle": true,
                                                            "wrap": true
                                                        },
                                                        {
                                                            "type": "TextRun",
                                                            "text": "${reservationFor.arrivalAirport.city}",
                                                            "isSubtle": true,
                                                            "wrap": true
                                                        }
                                                    ]
                                                }
                                            ],
                                            "width": 1
                                        }
                                    ]
                                },
                                {
                                    "type": "ActionSet",
                                    "separator": true,
                                    "actions": [
                                        {
                                            "type": "Action.Submit",
                                            "title": "Check in",
                                            "style": "positive"
                                        },
                                        {
                                            "type": "Action.Submit",
                                            "title": "View"
                                        }
                                    ],
                                    "spacing": "medium"
                                }
                            ]
                        }
                    ],
                    "width": 55
                }
            ],
            "height": "stretch"
        }
    ],
    "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
    "version": "1.0"
}


25.	 Simple Fallback  

Data JSON:

{
    "fallback": {
        "message":"No graph support. Guess we'll just use this textblock instead."
    }
}

Template JSON: 

{
    "type": "AdaptiveCard",
    "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
    "version": "1.2",
    "body": [
        {
            "type": "TextBlock",
            "text": "Fallback test:",
            "wrap": true
        },
        {
            "type": "Steve Holt!",
            "egg": "her?",
            "fallback": "drop"
        },
        {
            "type": "Graph",
            "someProperty": "foo",
            "fallback": {
                "type": "TextBlock",
                "text": "${fallback.message}",
                "wrap": true
            }
        }
    ]
}

JSON Scripts and Templates: Microsoft.com

Adaptive Cards with Microsoft Teams – JSON Templates Part 7

In a continuation of my earlier article, Adaptive Cards with Microsoft Teams with Examples, we continue with the details of how to create these Adaptive Cards authored with JSON templates. The templates can be used as-is, edited to suit your organization’s needs, or used as a launching point to customize your templates.

Samples and Templates of Adaptive Cards for Microsoft Teams

This is exciting as these select samples and templates are created and offered for Microsoft Teams to show what you can create. These can be copied, edited, and tweaked to create any possible scenario. There are limitless scenarios to design and create.

Adaptive Cards with Microsoft Teams – JSON Templates Part 7 includes templates for Sporting Event, Stock Update, and Agenda.

Sporting Event

Data JSON:

{
  "id": 401117857,
  "season": 2019,
  "week": 1,
  "season_type": "regular",
  "start_date": "2019-08-31T19:30:00Z",
  "neutral_site": false,
  "conference_game": false,
  "attendance": null,
  "venue_id": 3852,
  "venue": "Navy-Marine Corps Memorial Stadium",
  "home_team": "Navy",
  "home_conference": "American Athletic",
  "home_points": 45,
  "home_line_scores": [
    10,
    14,
    14,
    7
  ],
  "away_team": "Holy Cross",
  "away_conference": null,
  "away_points": 7,
  "away_line_scores": [
    0,
    7,
    0,
    0
  ]
}

Template JSON: 

{
    "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
    "type": "AdaptiveCard",
    "version": "1.0",
    "speak": "The Seattle Seahawks beat the Carolina Panthers 40-7",
    "body": [
        {
            "type": "Container",
            "items": [
                {
                    "type": "ColumnSet",
                    "columns": [
                        {
                            "type": "Column",
                            "width": "auto",
                            "items": [
                                {
                                    "type": "Image",
                                    "url": "https://adaptivecards.io/content/cats/3.png",
                                    "size": "Medium"
                                },
                                {
                                    "type": "TextBlock",
                                    "text": "SHADES",
                                    "horizontalAlignment": "Center",
                                    "weight": "Bolder",
                                    "wrap": true
                                }
                            ]
                        },
                        {
                            "type": "Column",
                            "width": "stretch",
                            "separator": true,
                            "spacing": "Medium",
                            "items": [
                                {
                                    "type": "TextBlock",
                                    "text": "{{DATE(${string(start_date)}, SHORT)}}",
                                    "horizontalAlignment": "Center",
                                    "wrap": true
                                },
                                {
                                    "type": "TextBlock",
                                    "text": "Final",
                                    "spacing": "None",
                                    "horizontalAlignment": "Center",
                                    "wrap": true
                                },
                                {
                                    "type": "TextBlock",
                                    "text": "${home_points} - ${away_points}",
                                    "size": "ExtraLarge",
                                    "horizontalAlignment": "Center",
                                    "wrap": true
                                }
                            ]
                        },
                        {
                            "type": "Column",
                            "width": "auto",
                            "separator": true,
                            "spacing": "Medium",
                            "items": [
                                {
                                    "type": "Image",
                                    "url": "https://adaptivecards.io/content/cats/2.png",
                                    "size": "Medium",
                                    "horizontalAlignment": "Center"
                                },
                                {
                                    "type": "TextBlock",
                                    "text": "SKINS",
                                    "horizontalAlignment": "Center",
                                    "weight": "Bolder",
                                    "wrap": true
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ]
}

Stock Update

Data JSON:

{
  "symbol": "MSFT",
  "companyName": "Microsoft Corporation",
  "primaryExchange": "Nasdaq Global Select",
  "sector": "Technology",
  "calculationPrice": "close",
  "open": 127.42,
  "openTime": 1556890200,
  "close": 128.9,
  "closeTime": 1556913600,
  "high": 129.43,
  "low": 127.25,
  "latestPrice": 128.9,
  "latestSource": "Close",
  "latestTime": "May 3, 2019",
  "latestUpdate": 1556913600,
  "latestVolume": 24835154,
  "iexRealtimePrice": null,
  "iexRealtimeSize": null,
  "iexLastUpdated": null,
  "delayedPrice": 128.9,
  "delayedPriceTime": 1556913600,
  "extendedPrice": 129.04,
  "extendedChange": 0.14,
  "extendedChangePercent": 0.00109,
  "extendedPriceTime": 1556917190,
  "previousClose": 126.21,
  "change": 2.69,
  "changePercent": 0.02131,
  "iexMarketPercent": null,
  "iexVolume": null,
  "avgTotalVolume": 22183270,
  "iexBidPrice": null,
  "iexBidSize": null,
  "iexAskPrice": null,
  "iexAskSize": null,
  "marketCap": 987737229888,
  "peRatio": 30.84,
  "week52High": 131.37,
  "week52Low": 93.96,
  "ytdChange": 0.30147812013916003
}

Template JSON: 

{
    "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
    "type": "AdaptiveCard",
    "version": "1.2",
    "body": [
        {
            "type": "Container",
            "items": [
                {
                    "type": "TextBlock",
                    "text": "${companyName}",
                    "size": "Medium",
                    "wrap": true
                },
                {
                    "type": "TextBlock",
                    "text": "${primaryExchange}: ${symbol}",
                    "isSubtle": true,
                    "spacing": "None",
                    "wrap": true
                },
                {
                    "type": "TextBlock",
                    "text": "{{DATE(${formatEpoch(latestUpdate, 'yyyy-MM-ddTHH:mm:ssZ')}, SHORT)}} {{TIME(${formatEpoch(latestUpdate, 'yyyy-MM-ddTHH:mm:ssZ')})}}",
                    "wrap": true
                }
            ]
        },
        {
            "type": "Container",
            "spacing": "None",
            "items": [
                {
                    "type": "ColumnSet",
                    "columns": [
                        {
                            "type": "Column",
                            "width": "stretch",
                            "items": [
                                {
                                    "type": "TextBlock",
                                    "text": "${formatNumber(latestPrice, 2)} ",
                                    "size": "ExtraLarge",
                                    "wrap": true
                                },
                                {
                                    "type": "TextBlock",
                                    "text": "${if(change >= 0, '▲', '▼')} ${formatNumber(change,2)} USD (${formatNumber(changePercent * 100, 2)}%)",
                                    "color": "${if(change >= 0, 'good', 'attention')}",
                                    "spacing": "None",
                                    "wrap": true
                                }
                            ]
                        },
                        {
                            "type": "Column",
                            "width": "auto",
                            "items": [
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Open",
                                            "value": "${open} "
                                        },
                                        {
                                            "title": "High",
                                            "value": "${high} "
                                        },
                                        {
                                            "title": "Low",
                                            "value": "${low} "
                                        }
                                    ]
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ]
}

Agenda

Data JSON:

{
        "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Events/$entity",
        "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGI2TG93AAA=')",
        "@odata.etag": "W/\"nfZyf7VcrEKLNoU37KWlkQAAA0x48w==\"",
        "Id": "AAMkAGI2TG93AAA=",
        "ChangeKey": "nfZyf7VcrEKLNoU37KWlkQAAA0x48w==",
        "Categories": [],
        "CreatedDateTime": "2014-10-19T23:13:47.3959685Z",
        "LastModifiedDateTime": "2014-10-19T23:13:47.6772234Z",
        "Subject": "Contoso Campaign Status Meeting",
        "BodyPreview": "Setting up some time to review the budget and planning on the Contoso Project",
        "Body": {
            "ContentType": "HTML",
            "Content": "\r\n\r\n\r\n\r\n\r\nSetting up some time to review the budget and planning on the Contoso Project\r\n\r\n\r\n"
        },
        "Importance": "Normal",
        "HasAttachments": false,
        "Start": {
            "DateTime": "2014-10-13T21:00:00",
            "TimeZone": "Pacific Standard Time"
        },
        "End": {
            "DateTime": "2014-10-13T22:00:00",
            "TimeZone": "Pacific Standard Time"
        },        
        "Location": {
            "DisplayName": "Conf Room Bravern-2/9050",
            "Address": null
        },
        "ShowAs": "Busy",
        "IsAllDay": false,
        "IsCancelled": false,
        "IsOrganizer": true,
        "ResponseRequested": true,
        "Type": "SeriesMaster",
        "SeriesMasterId": null,
        "Attendees": [
            {
                "EmailAddress": {
                    "Address": "[email protected]",
                    "Name": "Janet Schorr"
                },
                "Status": {
                    "Response": "None",
                    "Time": "0001-01-01T00:00:00Z"
                },
                "Type": "Required"
            },
            {
                "EmailAddress": {
                    "Address": "[email protected]",
                    "Name": "Pavel Bansky"
                },
                "Status": {
                    "Response": "None",
                    "Time": "0001-01-01T00:00:00Z"
                },
                "Type": "Required"
            }
        ],
        "Recurrence": {
            "Pattern": {
                "Type": "Weekly",
                "Interval": 1,
                "Month": 0,
                "Index": "First",
                "FirstDayOfWeek": "Sunday",
                "DayOfMonth": 0,
                "DaysOfWeek": [
                    "Monday"
                ]
            },
            "RecurrenceTimeZone": "Pacific Standard Time",
            "Range": {
                "Type": "NoEnd",
                "StartDate": "2014-10-13",
                "EndDate": "2014-11-13",
                "NumberOfOccurrences": 0
            }
        },
        "OriginalEndTimeZone": "Pacific Standard Time",
        "OriginalStartTimeZone": "Pacific Standard Time",
        "Organizer": {
            "EmailAddress": {
                "Address": "[email protected]",
                "Name": "Alex D"
            },
        "OnlineMeetingUrl": null
        }
    }

Template JSON: 

{
    "type": "AdaptiveCard",
    "body": [
        {
            "type": "ColumnSet",
            "horizontalAlignment": "Center",
            "columns": [
                {
                    "type": "Column",
                    "items": [
                        {
                            "type": "ColumnSet",
                            "horizontalAlignment": "Center",
                            "columns": [
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "Image",
                                            "url": "https://messagecardplayground.azurewebsites.net/assets/LocationGreen_A.png"
                                        }
                                    ],
                                    "width": "auto"
                                },
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "TextBlock",
                                            "text": "**Redmond**",
                                            "wrap": true
                                        },
                                        {
                                            "type": "TextBlock",
                                            "spacing": "None",
                                            "text": "8a - 12:30p",
                                            "wrap": true
                                        }
                                    ],
                                    "width": "auto"
                                }
                            ]
                        }
                    ],
                    "width": 1
                },
                {
                    "type": "Column",
                    "spacing": "Large",
                    "separator": true,
                    "items": [
                        {
                            "type": "ColumnSet",
                            "horizontalAlignment": "Center",
                            "columns": [
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "Image",
                                            "url": "https://messagecardplayground.azurewebsites.net/assets/LocationBlue_B.png"
                                        }
                                    ],
                                    "width": "auto"
                                },
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "TextBlock",
                                            "text": "**Bellevue**",
                                            "wrap": true
                                        },
                                        {
                                            "type": "TextBlock",
                                            "spacing": "None",
                                            "text": "12:30p - 3p",
                                            "wrap": true
                                        }
                                    ],
                                    "width": "auto"
                                }
                            ]
                        }
                    ],
                    "width": 1
                },
                {
                    "type": "Column",
                    "spacing": "Large",
                    "separator": true,
                    "items": [
                        {
                            "type": "ColumnSet",
                            "horizontalAlignment": "Center",
                            "columns": [
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "Image",
                                            "url": "https://messagecardplayground.azurewebsites.net/assets/LocationRed_C.png"
                                        }
                                    ],
                                    "width": "auto"
                                },
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "TextBlock",
                                            "text": "**Seattle**",
                                            "wrap": true
                                        },
                                        {
                                            "type": "TextBlock",
                                            "spacing": "None",
                                            "text": "8p",
                                            "wrap": true
                                        }
                                    ],
                                    "width": "auto"
                                }
                            ]
                        }
                    ],
                    "width": 1
                }
            ]
        },
        {
            "type": "ColumnSet",
            "columns": [
                {
                    "type": "Column",
                    "items": [
                        {
                            "type": "ColumnSet",
                            "columns": [
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "Image",
                                            "horizontalAlignment": "Left",
                                            "url": "https://messagecardplayground.azurewebsites.net/assets/Conflict.png"
                                        }
                                    ],
                                    "width": "auto"
                                },
                                {
                                    "type": "Column",
                                    "spacing": "None",
                                    "items": [
                                        {
                                            "type": "TextBlock",
                                            "text": "2:00 PM",
                                            "wrap": true
                                        }
                                    ],
                                    "width": "stretch"
                                }
                            ]
                        },
                        {
                            "type": "TextBlock",
                            "spacing": "None",
                            "text": "1hr",
                            "isSubtle": true,
                            "wrap": true
                        }
                    ],
                    "width": "110px"
                },
                {
                    "type": "Column",
                    "backgroundImage": {
                        "url": "https://messagecardplayground.azurewebsites.net/assets/SmallVerticalLineGray.png",
                        "fillMode": "RepeatVertically",
                        "horizontalAlignment": "Center"
                    },
                    "items": [
                        {
                            "type": "Image",
                            "horizontalAlignment": "Center",
                            "url": "https://messagecardplayground.azurewebsites.net/assets/CircleGreen_coffee.png"
                        }
                    ],
                    "width": "auto",
                    "spacing": "None"
                },
                {
                    "type": "Column",
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "**${Subject}**",
                            "wrap": true
                        },
                        {
                            "type": "ColumnSet",
                            "spacing": "None",
                            "columns": [
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "Image",
                                            "url": "https://messagecardplayground.azurewebsites.net/assets/location_gray.png"
                                        }
                                    ],
                                    "width": "auto"
                                },
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "TextBlock",
                                            "text": "${Location.DisplayName}",
                                            "wrap": true
                                        }
                                    ],
                                    "width": "stretch"
                                }
                            ]
                        },
                        {
                            "type": "ImageSet",
                            "spacing": "Small",
                            "imageSize": "Small",
                            "images": [
                                {
                                    "type": "Image",
                                    "url": "https://messagecardplayground.azurewebsites.net/assets/person_w1.png",
                                    "size": "Small"
                                },
                                {
                                    "type": "Image",
                                    "url": "https://messagecardplayground.azurewebsites.net/assets/person_m1.png",
                                    "size": "Small"
                                },
                                {
                                    "type": "Image",
                                    "url": "https://messagecardplayground.azurewebsites.net/assets/person_w2.png",
                                    "size": "Small"
                                }
                            ]
                        },
                        {
                            "type": "ColumnSet",
                            "spacing": "Small",
                            "columns": [
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "Image",
                                            "url": "https://messagecardplayground.azurewebsites.net/assets/power_point.png"
                                        }
                                    ],
                                    "width": "auto"
                                },
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "TextBlock",
                                            "text": "**Contoso Brand Guidelines** shared by **Susan Metters**",
                                            "wrap": true
                                        }
                                    ],
                                    "width": "stretch"
                                }
                            ]
                        }
                    ],
                    "width": 40
                }
            ]
        },
        {
            "type": "ColumnSet",
            "spacing": "None",
            "columns": [
                {
                    "type": "Column",
                    "width": "110px"
                },
                {
                    "type": "Column",
                    "backgroundImage": {
                        "url": "https://messagecardplayground.azurewebsites.net/assets/SmallVerticalLineGray.png",
                        "fillMode": "RepeatVertically",
                        "horizontalAlignment": "Center"
                    },
                    "items": [
                        {
                            "type": "Image",
                            "horizontalAlignment": "Center",
                            "url": "https://messagecardplayground.azurewebsites.net/assets/Gray_Dot.png"
                        }
                    ],
                    "width": "auto",
                    "spacing": "None"
                },
                {
                    "type": "Column",
                    "items": [
                        {
                            "type": "ColumnSet",
                            "columns": [
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "Image",
                                            "url": "https://messagecardplayground.azurewebsites.net/assets/car.png"
                                        }
                                    ],
                                    "width": "auto"
                                },
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "TextBlock",
                                            "text": "about 45 minutes",
                                            "isSubtle": true,
                                            "wrap": true
                                        }
                                    ],
                                    "width": "stretch"
                                }
                            ]
                        }
                    ],
                    "width": 40
                }
            ]
        },
        {
            "type": "ColumnSet",
            "spacing": "None",
            "columns": [
                {
                    "type": "Column",
                    "items": [
                        {
                            "type": "TextBlock",
                            "spacing": "None",
                            "text": "8:00 PM",
                            "wrap": true
                        },
                        {
                            "type": "TextBlock",
                            "spacing": "None",
                            "text": "1hr",
                            "isSubtle": true,
                            "wrap": true
                        }
                    ],
                    "width": "110px"
                },
                {
                    "type": "Column",
                    "backgroundImage": {
                        "url": "https://messagecardplayground.azurewebsites.net/assets/SmallVerticalLineGray.png",
                        "fillMode": "RepeatVertically",
                        "horizontalAlignment": "Center"
                    },
                    "items": [
                        {
                            "type": "Image",
                            "horizontalAlignment": "Center",
                            "url": "https://messagecardplayground.azurewebsites.net/assets/CircleBlue_flight.png"
                        }
                    ],
                    "width": "auto",
                    "spacing": "None"
                },
                {
                    "type": "Column",
                    "items": [
                        {
                            "type": "TextBlock",
                            "text": "**Alaska Airlines AS1021 flight to Chicago**",
                            "wrap": true
                        },
                        {
                            "type": "ColumnSet",
                            "spacing": "None",
                            "columns": [
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "Image",
                                            "url": "https://messagecardplayground.azurewebsites.net/assets/location_gray.png"
                                        }
                                    ],
                                    "width": "auto"
                                },
                                {
                                    "type": "Column",
                                    "items": [
                                        {
                                            "type": "TextBlock",
                                            "text": "Seattle Tacoma International Airport (17801 International Blvd, Seattle, WA, United States)",
                                            "wrap": true
                                        }
                                    ],
                                    "width": "stretch"
                                }
                            ]
                        },
                        {
                            "type": "Image",
                            "url": "https://messagecardplayground.azurewebsites.net/assets/SeaTacMap.png",
                            "size": "Stretch"
                        }
                    ],
                    "width": 40
                }
            ]
        }
    ],
    "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
    "version": "1.0"
}

JSON Scripts and Templates: Microsoft.com