SlideShare a Scribd company logo
1 of 91
Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines
Build with us
Millions of people use Office 365 every day. Building for our platform puts your app at the
center of all the action.
Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines
BUILD ON TEAMS
Getting started Framework Components ResourcesBuild on Teams
Teams is about collaboration
So make your app about collaboration.
Collab in Channels
Interacting in front of or with a group of people increases your app’s visibility and enhances
discoverability. To meet this mark the content should be actionable and not simply informational
Sharing
Message extensions allow sharing and interaction in 1:1, Group chat, Teams, and from the
Commandbox. Link Furling just makes that better in the future.
Proactive in channel
Help with discovery. Maximize usage with actionable messages
User Customizable
When users get your data the way they want it is satisfying. Customizing notifications is always a
great start.
Teams is the hub. Bring content to the user in the right place and at the right time. If they need
to hunt for your app after they’ve started using it, you’ve already lost.
1:1 Apps create a hole
that users can't get out of…
DON’T BE AN APPHOLE
Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines
SCENARIOS FIRST
Getting started Framework Components ResourcesScenarios first
A bot is not a scenario…
Jamming a scenario into a feature usually confuses users.
Who is your hero?
Who are they? What do they do? Name names. How do they feel now? How will they feel when you
are successful?
Tell the story first, ignore solutions at this stage
We are all in the business of thinking about solutions. Don’t do that yet. Tell the story of the user
journey like a children’s book first. Feelings matter here.
Elevator pitch – in one breath
Keep it Simple. You need this to sell the concept to your colleagues anyway!
”Make it easy to turn incoming requests into tasks and visually manage workflow”
Use this one-liner to keep yourself on track and manage scope creep as well as shipping an MLP.
Minimum Lovable Product.
?
Getting started Framework Components ResourcesScenarios first
Decision Criteria
How often will
it be used?
What ROI does it
provide for the team?
Does it solve a real
problem ?
Getting started Framework Components ResourcesScenarios first
Quickly outline your flow in front of your users
Highlight status changes and events you can either automate, push as notification, or use as a manual input
Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines
DESIGN TOOLS
Getting started Framework Components ResourcesDesign tools
The most important tools are…
Fast and don’t put a barrier between you and your discussion with the user.
Fast and interactive
Use a whiteboard, post-its, and markers. Detail the flow first then draw boxes and get some content
in them. Be fast and loose. Make mistakes. That’s what an eraser is for.
Your users
You are not the user. Even if you are building this for yourself get another person who is not your
friend to help you figure out the flow, and then the actual content.
Questions not answers
Be a 3 year old and ask “Why” until you have reduced the concept past a technology or a tool. Get to
the most generic understanding of the flow. Even if you think you know the answer. Ask the question.
You well be surprised how a small nuance can change everything
Boxes and words
For each major interaction ask other people what the words are that go in the box. What is the most
important order of things
Getting started Framework Components ResourcesDesign tools
You can draw a box
…and doing it in front of your users is a fast prototype.
Fail here or in code, your choice
The more code you write the less happy you will be to change it.
Getting it right here is very cheap, and the feedback loop is fast.
This is agile.
Document the key beats
Sure you need to handle some error cases, but cover the golden
path first, make sure your flow is appealing and you are bringing
the right elements to your users at the right time.
Backtrack and cover the rest
What does setup look like, how do you handle errors or conflicts,
secondary scenarios.
Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines
YOU GET ONLY
ONE FIRST DATE
Getting started Framework Components ResourcesYou only get one first date
First impressions matter
Even if your date looks great on paper, if they want to eat your brains there will be no second date.
Build an MLP not an MVP
As tempting as it may be to ship something there is very little forgiveness from users. They tend to
hold a grudge. Ship a minimum LOVABLE product and remember you are not the judge. Bring in
some users before sending your app into the world.
Great documentation goes a long way
Tell users what your app does in the long and short description fields of your app, not how
awesome you or your company is. This is a swipe left or swipe right moment or you.
Find a designer to do your icon
Everyone knows someone who is a designer or wants to be one. You should specialize in code,
don’t try and throw something together in paint. Also run the icon choices past your users before
locking in. This is cheap if you have to hire someone.
Find a writer
Consistent style, good grammar, and correct spelling go a long way to instill confidence.
Misspelled words, bad grammar, and Google translate make you look like a Twitter troll bot.
Getting started Framework Components ResourcesYou only get one first date
Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines
Getting started
Here’s everything you need to showcase your brand in Microsoft Teams.
Getting started Framework Components ResourcesThe basics
This area hosts Activity, Chats, Teams,
Meetings, Files, and Apps. If someone uses
your app every day, this is where they will
pin it.
Immersive experience
Work gets done in the canvas. Conversations
happen here. When you build a tab for an
app or a channel, they’ll show up here too.
Tabs and conversations
Get a bird’s-eye view of your work across
different teams and channels. Have one-on-
one conversations with bots, scan and
organize your tasks, or search your recently
viewed files.
Personal apps
Getting started Framework Components ResourcesThe basics
Each app uses this area differently, but in
general, it allows users to navigate to specific
content like a one-on-one chat with
someone, a channel in a team, or a list of
upcoming meetings.
Instant notifications
When users open a document, this is the view
they will get. To keep things focused, we’ve
moved the conversation to a narrow right
pane. Keep that size in mind if your service
inserts custom cards into chat.
Stage View
To keep Microsoft Teams easy to use on
mobile, we’ve streamlined the functionality.
Bots and connector cards will be available in
this view and we’ve made sure that if you are
using a standard card type, it will render
perfectly in our mobile experiences.
Mobile
Getting started Framework Components Resources
Bots are conversational apps that perform a
narrow or specific set of tasks. They give you
an opportunity to communicate with users,
respond to their questions, and proactively
notify them about changes. They’re a great
way to reach out.
Bot framework
The basics
Message extensions allow you to share
rich cards in a conversation. A card can hold
instructions to complete a complex task or a
simple GIF. These extensions are one of the
best ways to create shareable content and
serve information quickly.
Messaging extensions
Cards are actionable snippets of content that
you can add to a conversation through a bot,
a connector, or app. Using text, graphics, and
buttons, cards allow you to communicate with
an audience.
Customizable cards
Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines
Framework
A short tour to help you understand how the Teams platform works for your app.
Getting started Framework Components ResourcesTabs
Content and conversations,
all at once
Tabs are canvases that you can use to share content,
hold conversations, and host third-party services, all
within a team’s organic workflow. When you build a tab
in Microsoft Teams, it puts your web app front and
center where it’s easily accessible from key
conversations.
Getting started Framework Components ResourcesTabs
Guidelines
A good tab should display the following characteristics:
Focused functionality
Tabs work best when they’re built to address a specific need. Focus on a
small set of tasks or a subset of data that’s relevant to the channel the tab
is in.
Reduced chrome
Avoid creating multiple panels in a tab, adding layers of navigation, or
requiring users to scroll both vertically and horizontally in one tab. In other
words, try not to have tabs in your tab.
Integration
Find ways to notify users about tab activity by posting cards to a
conversation, for example.
Getting started Framework Components ResourcesTabs
Conversational
Find a way to facilitate conversation around a tab. This ensures that
conversations center on the content, data, or process at hand.
Streamlined access
Make sure you’re granting access to the right people at the right time.
Keeping your sign-in process simple will avoid creating barriers to
contribution and collaboration.
Personality
Your tab canvas presents a good opportunity to brand your experience.
Incorporate your own logos, colors, and layouts to communicate
personality.
Your logo is an important part of your identity and a connection with your
users. So be sure to include it.
• Place your logo in the left or right corner or along the bottom edge
• Keep your logo small and unobtrusive
Getting started Framework Components ResourcesTabs
Tab layouts
Single Canvas
This is one large area where work gets done. OneNote and Wiki follow
this pattern. If you have an app that doesn’t separate content into
smaller components this would be a good fit.
Column
Columns are great for workflows that move an item from one column to
another to indicate a new status. Consider supporting drag and drop for
those scenarios. We recommend using dialogs or inline expansion for
detail views.
Getting started Framework Components ResourcesTabs
Tab layouts
List
Lists are great for sorting and filtering large quantities of data and are
great at keeping the most important things at the top. It is helpful to use
sortable columns. Actions can be added to each list item under the
ellipsis menu.
Grid
Grids are useful for showing elements which are highly visual. It helps to
include a filter or search control at the top.
Getting started Framework Components ResourcesTabs
PRO TIP Please work with our visual style so your service feels like a part of Teams.
Avoid creating multiple panels in a tab, adding layers of navigation, or requiring users to scroll both vertically and horizontally in one tab.
Best Practices
Always include a default state
Include a default state to make tabs easy to set up even if your tab is configurable.
Deep linking
Whenever possible, cards and bots should deep link to richer data in a hosted tab. For example, a card may show a summary of bug data, but
clicking it can shows the entire bug in a tab.
Naming
In many cases, the name of your app may make a great tab name. But consider naming your tabs according to the functionality they provide.
Getting started Framework Components ResourcesBots
Start talking
Bots are conversational apps that perform a
narrow or specific set of tasks. They give you an
opportunity to communicate with users, respond
to their questions, and proactively notify them
about changes. They’re a great way to reach out.
Getting started Framework Components ResourcesBots
Guidelines
What does it do?
The value proposition
Explaining with a clear example what your bot does at the very beginning
will give users a reason to engage, and the right words to use. Welcome
messages should tell users the value of the bot, and how to interact with it
for the main scenarios.
Tours
We love to see tours offered at the very beginning. This is a great
opportunity to use a carousel and walk users through scenarios you offer.
Listen for ”tour”, “help”, and “what do you do” to resurface this content
Unauthenticated queries
Before forcing users to sign in, how can you help them understand the
value of your service?
This bot will help you submit time away from work, and
keep track of paid holidays. You can ask about “upcoming
holidays” or submit “time off”. Take a tour to see all the
things the bot can do and how to use its tabs.
Getting started Framework Components ResourcesBots
Guidelines
A good bot should display the following characteristics:
Avatars
Bot avatars in Teams are shaped like hexagons so people can quickly tell
that they’re talking to a bot instead of a person. You’ll submit your avatar
as a square and we’ll crop it for you. When it comes to avatars, we
recommend making yours legible from 2 feet away and using a higher
contrast.
Buttons
We support up to six buttons per card. Be concise when writing button
text, and keep in mind that most buttons should only address the task at
hand.
Cards and graphics
Graphics are a good way to tell a story, but not all bot conversations
require graphics, so use them for maximum impact.
Getting started Framework Components ResourcesBots
Fail with excellence
Respond to users and failing gracefully, like this:
Your bot should also be able to respond to things like 'Hi', 'Help', and
'Thanks' while taking common misspellings and colloquialisms into account.
Your bot should be able to handle the following types of queries and inputs:
• Recognized questions
These are the ”best case scenario” questions you’d anticipate from users
• Recognized non-questions
Queries about unsupported functionality, random pieces of information,
or when someone wants to curse at your bot.
• Unrecognized questions
Unintelligible inputs (i.e., gibberish).
Getting started Framework Components ResourcesBots
Use LUIS and train to succeed
## SMS
- text
- text please
- send text
- txt pls
- txt please
- sms
- sms pls
- sms please
- msg
- msg pls
- msg please
- mssg
- mssg pls
- mssg please
- message
- message pls
- message
please
- imessage
- imessage pls
- imessage
please
- im
- im pls
- im please
- dm
- dm pls
- dm please
You are not the user
Age, vertical, and local jargon make a difference
Getting started Framework Components ResourcesBots
Personality matters
Getting started Framework Components ResourcesBots
Leave the user in control. Provide notification
settings that include frequency and priority.
How often should you use your bot
to reach out to a user?
When a state has changed
For example, if an assignment is marked as complete, when a bug changes,
when new social media is available, or when a poll has been completed.
When the timing is right
Your bot can act like a daily digest, sending a notification to the user or
channel at a specific frequency.
Avoid creating “notification blindness” from too many notifications that are
not critical for the user.
Bundle notifications, tune them to signals that are important and provide
individual users and teams a way to customize how often bots interject
themselves into a conversation
Getting started Framework Components ResourcesBots
Using tabs
Tabs make your bot much more functional. With tabs, you get the following:
A place to host standing queries
In one-on-one conversations, tabs can house user-specific information and
lists. They’re also a good place to maintain bot responses to frequently-
asked questions (so users don’t need to keep asking).
A place to finish a conversation
You can link to a tab from a card. If your bot provides an answer that
requires a few more steps, it can link to a tab to complete the task or flow.
A place to provide some help
Add a tab that educates users about how to communicate with your bot.
You can provide some context for what it does or FAQs.
Getting started Framework Components ResourcesBots
Best Practices
Bots aren’t assistants
Unlike agents (like Cortana), bots act as specialists.
Discourage chit chat
Unless your bot is for conversation, find ways to redirect chit chat towards task completion.
Introduce some personality
Keep your bot personality consistent with the voice of your product. Think of your bot as speaking for your company.
Maintain tone
Determine whether you want your tone to be friendly and light, “just the facts”, or super quirky.
PRO TIP When writing your bot script, ask yourself: “Will my company be embarrassed if a response is screen captured and shared?”
Getting started Framework Components Resources
Encourage easy task flow
Bots
PRO TIP Embedding parts of your site in a tab will help someone maintain the context of a conversation as they use your service. It removes the
need to launch your service in a browser and switch back and forth between apps.
Best Practices
Support multi-turn interactions while still allowing for fully formed questions. Anticipating the next step will help users get through task flows much easier.
If a user takes several steps to complete a task, allow your bot to take them through each step, but finish by having it suggest a quicker path. For example, if a
user has taken several conversational turns to set a meeting (by first specifying a meeting, then identifying with whom, then stating the time, then stating the
day), finish the conversation with the following suggestion: “Next time, try asking if you can ‘schedule a meeting with Bob at 1:00 tomorrow”.
Getting started Framework Components ResourcesMessage extensions
Share your content in a
channel or chat
Message extensions allow you to share rich cards in a
conversation. A card can hold instructions to complete a
complex task or a simple GIF. Microsoft Teams comes equipped
with several message extensions already. If you look below the
compose box, you’ll see a “GIF” icon. That’s a message
extension! These extensions are one of the best ways to create
shareable content and serve information quickly.
Getting started Framework Components ResourcesMessage extensions
Guidelines
A good message extension should display the following characteristics:
Single parameters are easier
Message extensions can hold up to five parameters, but we recommend
limiting yourself to a single parameter as often as possible.
Include a default query
Even before your user types anything you can show a list of results.
Whatever entity of yours the user has interacted with last is likely
something they want to share. Track an MRU list in your web pages as well
as what is used in teams and show it to the user when you load the
control.
Card file size
If your card content is relatively large consider that it will impact
performance on this list. Each result is actually a complete card so multiply
your card size by the number of results returned.
Getting started Framework Components Resources
Users can select an entity from your
message extension…
…and add it to their message
Message extensions
Now the conversation is about an item in your service and
users can use the card to check out the details.
Getting started Framework Components ResourcesMessage extensions
PRO TIP Try not to include optional parameters in your message extension. People tend to feel obligated to fill out every parameter before they
execute a search.
Keep it simple
A message extension should be light-weight and fast or it will lose its utility. If your search requirements are very complex or multiple parameters are
necessary even in the simplest case, it’s OK to include them.
Best Practices
Optimize your search results
A snappy message extension will return an easily digestible list of search results. We recommend including an image and no more than two lines of
text.
Optimize your cards
Each message extension produces in a card. Since it’s the last thing your user will see, make sure your cards are useful, good-looking, and easy to
share.
Getting started Framework Components ResourcesCards
Create a lightweight,
adaptable card
Cards are actionable snippets of content that you can add
to a conversation through a bot, a connector, or app.
Using text, graphics, and buttons, cards allow you to
communicate with an audience.
Our card framework eliminates the burden of designing a
fully functional UX. We developed several standard card
types and each one fits within our supported platforms.
Getting started Framework Components ResourcesCards
Guidelines
Think of a card as a response to a user question or a setting. A card can respond to a direct question (like, “How many open bugs do I
have?”) or to a condition (like, “Send a list of my open bugs at 9 am every day”). A card should include any of the following elements:
Envelope text
Best used for chat messages. For example, if you want a bot to say: “Here’s
what I found!” or “Time for your 1:00 news digest”, that message is best
displayed in envelope text.
Envelope text is a great way to inject a little personality into your service—
just remember to keep it relatively short.
Title
Your title will always be the largest text in your card. It also serves as your
“hook”, so try to keep the title short, memorable, and easy to scan.
Subtitle
Best used for attribution, taglines, or as a secondary directive. This
component appears just below your title.
1
2
3
Getting started Framework Components ResourcesCards
Text
Best used for plain text in the body of your card. Your max length depends
on the card type you’ve selected.
Buttons
Best used to open web pages, tabs, or additional chat content. Make sure
to keep your button text short and to the point.
You can include up to 6 buttons per card, but we’d recommend following a
‘less is more’ philosophy here.
Tap region
This is the clickable region of your card. Most users will want to click on
images automatically, so try and craft your text so they know where they
should tap or click.
5
6
7
Image
Images scale to fit their container. Hero cards have a max width of 420px,
thumbnails have a max width of 100px, and list views only allow for 32px in
desktop mode.
4
Getting started Framework Components ResourcesCards
Types of cards
Some cards are best used to present standalone or individual pieces of content. We designed the following hero, thumbnail, and sign on cards for that
purpose.
Hero
Our largest card. Best used for articles, long descriptions, or scenarios
where your image is telling most of the story.
Thumbnail
Short and sweet. These cards are ideal for short answers, or if you want to
return several cards at once so the user can choose from a bunch of
options. We think these are a great way to deep link to another tab or a
web service.
Getting started Framework Components ResourcesCards
Types of cards
Some cards are best used to present standalone or individual pieces of content. We designed the following hero, thumbnail, and sign on cards for that
purpose.
Connector Card
From the Office connector framework
Adaptive cards
For more extensive layout control and the ability to handle forms inline
Getting started Framework Components ResourcesCards
Types of cards
Some cards are best used to present standalone or individual pieces of content. We designed the following hero, thumbnail, and sign on cards for that
purpose.
Sign in
Some services require users to sign in independently of our authentication.
In that event, you would present a sign-in card before the user can
connect to your service.
Getting started Framework Components ResourcesCards
Card collections
We also have standard card types that are best used when you want to present several pieces of content at once or in quick succession. For that
purpose, we have a carousel, a digest, a list, and what we call a ‘bubble merge’.
Carousel
Best used for articles, shopping, and browsing through cards.
Digest
Best used for news, digests, and whenever you want the user to view
multiple cards at once. We recommend using thumbnail cards for digests.
Getting started Framework Components ResourcesCards
Card collections
We also have standard card types that are best used when you want to present several pieces of content at once or in quick succession. For that
purpose, we have a carousel, a digest, a list, and what we call a ‘bubble merge’.
Lists
Lists are a great way to present a scannable set of objects in a “pick one of
these” scenario. Lists are best used for items that don’t need a lot of
explanation.
Bubble merge
Some interesting effects can be achieved by sending one hero and several
thumbnails in quick succession. We recommend this approach when you
want to serve a main result but include a few more related items.
Getting started Framework Components ResourcesCards
PRO TIP There’s no need to include every element in each card you create. Let your content dictate your elements.
Best Practices
Keep the noise down
It’s easy to send multiple cards into a conversation, but once cards scroll out of view, they become less useful. Try to limit yourself to the essentials. This is
especially true in a channel where users have less tolerance for what they perceive as “noise”.
Test on mobile
Mobile environments are space- and bandwidth-constrained, so be cautious about including oversized images and large data sets in lists and carousels. Also,
title widths and text lengths will truncate on mobile, so that’s another thing to keep an eye on.
Check your graphics
Graphics are going to scale, so be sure to preview them on all platforms.
Avoid including text in a graphic
Anything that needs to be read by a user should be included in a text field. Once an image is dynamically scaled, any text you add to a graphic may become
unintelligible.
Getting started Framework Components ResourcesTask modules
When a card isn’t enough
Task modules let you open a dialog. When you need
to do a little form entry, a lookup, or keep an
interaction out of a channel, pop open a dialog.
Getting started Framework Components ResourcesTask modules
Instead of multi-turn experiences
Conversational bots asking questions for all the required fields in a “Make a
meeting” flow is tedious. Pop up a task module with a form to fill out
instead of asking lots of questions in a chat
When there is validation or lookup
Adaptive cards are great but when you need validation, or form elements
that appear based on a previous selection like “Year, make, model” chained
fields you need to use a task module to keep an open channel to your
service.
When you need more room
Task Modules can be displayed in a variety of sizes. When you need a little
more room to make your point or get things done.
A quick 1:1 experience in context
Showing an app tour in a channel is handy. Doing it without bothering
everyone else is a snap if you host yours in a task module.
Guidelines
Task modules provide an immersive experience to get a specific task done
Getting started Framework Components ResourcesTask modules
Task modules come in two flavors
For a simple form interaction host an adaptive card. For more complex interactions like search or looking up a user you can host your UI in an iframe.
Task modules can be opened from cards or tabs.
Adaptive card forms
We’ll strip the card border and make it feel like a native dialog. Mobile
views will be responsive and pick up themes automatically.
Iframe
For lookups or validation, host your own. Make sure to check your work on
themes and on mobile and use our theme aware script in the page.
Getting started Framework Components ResourcesTask modules
PRO TIP Every good dialog has a call to action. Tell the user what you want them to do in the title.
Best Practices
In a channel
Use task modules to have a 1:1 interaction with a user. Task modules keep you from cluttering the channel with unnecessary bot responses and avoids
redirecting the user to a 1:1 chat and losing context.
Test on mobile
While adaptive cards hosted in a task module render well on mobile, if you choose to create custom HTML it will need to use our CSS to handle theme
changes and responsive to handle the difference between desktop and mobile screen real estate.
Short interactions
You can easily create multi-step wizards but holding a user in a task module can be problematic as incoming messages encourage users to exit. Pop out to a
web page instead of a task module if your task is really involved or time consuming.
Errors
Keep errors inline. Don’t pop a dialog on top of a dialog.
Getting started Framework Components ResourcesMessage actions
Users can send a message to
your app
The starting place is a conversation. Let users send text to
your app and you can use it to create new things, add to
existing entities
Getting started Framework Components ResourcesMessage actions
Send clear text directly
Users can add message text to an entity on your service is easily. For
instance adding a message to a notes field on a
Run incoming text through NLP
Natural language processing can help extract entities in text and provide
meaning or more precise actions based on the incoming text
Describe the action concisely
Your icon will show up in the menu accompanied by your task name. Take
time to label the action in short easy to understand terms.
Guidelines
Use message text as a starting place for rich actions
NLP
Service
Getting started Framework Components ResourcesMessage Actions
Select, send, manipulate
Send text to your app
The message text gets sent to your action from the overflow menu. You
can expand the selection to surrounding messages using the graph.
Take advantage of a task module for custom interactions
Once you have the text and have processed it, invoke a task module to
allow further interactions or just to confirm the acton.
Getting started Framework Components ResourcesMessage actions
PRO TIP Start with the basics. Sending conversations with timestamps to your entities with no extra processing can be valuable.
Best Practices
Simple action names
Keep the name short, a couple of words at most.
Use a task module
Allow some control over the action by exposing it in a task module or just open it to confirm that the action was completed
Try using Natural Language Processing
NLP can help your service listen for keywords or synonyms to your entities.
Try using graph queries too
Once you are manipulating text sent by users you can take advantage of MS Graph to get more context. There are additional permissions required to do so
and you’ll need to inform the user.
Getting started Framework Components ResourcesActivity Feed
Initiate quick, easy
communication
Your notifications appear in someone’s activity feed
right next to all the other notifications about their new
@mentions, likes, and replies. There are many ways to
use the activity feed to communicate information about
your service or about a user’s content. Here are some
ideas about the kind of notifications you can send to
someone’s activity feed, depending on what your
service does.
Getting started Framework Components ResourcesActivity Feed
Notifications
The activity feed is a great way to communicate with your audience. You can use it to tell people about recent updates or send important notifications.
For example, if your app focuses on task management, you can send a notification to someone’s activity feed whenever they receive a new task.
Notifications in the activity feed will show up on someone’s desktop app and their mobile app, which helps draw attention to important information.
Task list
A single notification that is part of a larger, ongoing list. For example, if
your app deals with task management, you can publish a notification to
someone’s activity feed whenever they receive a new task or when
someone else updates an existing task.
Updates
A single notification that lets a user know that something has been
updated or edited. For example, if your services helps people manage their
files, you can allow a user to “follow” a file to receive notifications
whenever the file is modified.
Getting started Framework Components ResourcesActivity Feed
Notifications
The activity feed is a great way to communicate with your audience. You can use it to tell people about recent updates or send important notifications.
For example, if your app focuses on task management, you can send a notification to someone’s activity feed whenever they receive a new task.
Notifications in the activity feed will show up on someone’s desktop app and their mobile app, which helps draw attention to important information.
Reminder Service
A notification that alerts someone about an important date (a due date or
a meeting, for example). If your app is a time-sensitive reminder service,
consider using the activity feed as your primary way of sharing those
reminders.
Sender – Usually the name of your app.
Avatar – Your app’s avatar or icon.
Timestamp – An indication of when your notification was sent
Subject – This is included for notifications about chats.
Message Preview – A short preview of the message content.
Getting started Framework Components ResourcesActivity Feed
PRO TIP Be careful about how often you send notifications. People can mute notifications in Teams, and they’ll be more likely to do so if your
service seems ‘noisy’.
Best Practices
Keep it short
Make sure to keep things concise because longer messages get truncated.
Bundle your notifications
If your service regularly sends a lot of simultaneous notifications, try grouping them into a single notification. For example: “30 tasks were assigned
to you”.
Getting started Framework Components ResourcesPersonal Apps
Bringing it all together
A personal app can bring your entities from all
the channels in Teams into a unified view for the
user. They combine all the framework elements
we’ve talked about into one place for the user to
get things done .
Getting started Framework Components ResourcesPersonal Apps
Guidelines
A great personal app can have the following elements.
Conversation – A 1:1 interaction between the user and your bot
My Tasks – This can be a purely personal view or an
aggregation of the user’s tasks in multiple channels
Recent – Don’t just focus on assignment or creation data, what
has the user been looking at recently
All tasks – Create an area to show all the containers or usage of
your product that the user has access to
Help – a good app has help content. While we all try to make
our services so good our customers won’t need help, there is
always something that can use explanation.
Getting started Framework Components ResourcesExamples
Things you can start building right now
Have a conversation about
work items
A tab with a list of work items it is
easy to talk about what to do next
and make sure everyone is working
on the same project
Find and share a class
activity
Use a message extension to find
and share a class activity with a
great summary and instructions for
your students
Notify users about changes
in tasks
Message specific people or call
attention to entire channel
about changes in assignments
or status of tasks
View all different team
tasks in one place
Personal apps create one place
to see all the different things a
person needs to do regardless
of which team has created the
work
Getting started Framework Components ResourcesExamples
Look up a place to eat, just
for yourself, or share it too
Access your service from
anywhere without missing a
beat.
Convert a chat to a sales
opportunity
Use the power of the graph and let
users send chats to your app to get
things done
Create a team, add
members, and a message
Onboard users on your project
the easy way.
Things you can start building right now
eam
one place
things a
gardless
ated the
Have a conversation about work items
Tabs
When your app needs a large
area to present information to
users a tab is a great place to
show a list of work items or a
dashboard
Have a conversation about work items
Tabs
When your app needs a large
area to present information to
users a tab is a great place to
show a list of work items or a
dashboard
Chat in context
Users can chat about your page,
interact with it and draw people’s
attention to important
information all in one place
Have a conversation about work items
Tabs
When your app needs a large
area to present information to
users a tab is a great place to
show a list of work items or a
dashboard
Chat in context
Users can chat about your page,
interact with it and draw people’s
attention to important
information all in one place
Post tab threads
Conversations within the tab will
be posted in the team’s channel
and promote your tab
Share a sales report
Message extensions
Search for or show recently
viewed reports.
Share a sales report
Message extensions
Search for or show recently
viewed reports.
Compose with card
Add comments and @mention
the people who need to see the
information.
Share a sales report
Message extensions
Search for or show recently
viewed reports.
Compose with card
Add comments and @mention
the people who need to see the
information.
Share to team
Now everyone can see the
summary, open a link to your
content or take immediate action
right from the chat.
Submit a social media post for approval
Social media dashboard
A great view of my company’s
social media engagement and
how we are trending
Submit a social media post for approval
Social media dashboard
A great view of my company’s
social media engagement and
how we are trending
Submit a post for approval
Approval workflows get routed
to the right team for quick review
and automated posting to your
corporate social media accounts
Submit a social media post for approval
Social media dashboard
A great view of my company’s
social media engagement and
how we are trending
Submit a post for approval
Approval workflows get routed
to the right team for quick review
and automated posting to your
corporate social media accounts
Notify the right team
Approvals are easier when no
one person is a bottleneck. Route
requests that are actionable
without leaving your working
environment. Approve from your
desktop or on the go.
Customize approval notifications
Start a workflow from a bot
or a tab
Use a Task Modal or an adaptive
card to trigger your workflow.
Customize approval notifications
Start a workflow from a bot
or a tab
Use a Task Modal or an adaptive
card to trigger your workflow
Bundle notifications
When your flow is less time
sensitive your app can send a
digest of notifications instead of
interrupting your users with
every request.
Customize approval notifications
Start a workflow from a bot
or a tab
Use a Task Modal or an adaptive
card to trigger your workflow
Bundle notifications
When your flow is less time
sensitive your app can send a
digest of notifications instead of
interrupting your users with
every request
Let your users have control
A customized app is an app with
user investment. The task modal
on the left can be easily built by
hosting an adaptive card
Your “task” hub
The Development channel
has some tasks for Daniella
This is a project with specific
goals and work items.
Your “task” hub
The Development channel
has some tasks for Daniella
This is a project with specific
goals and work items
The Marketing channel is in
another team
But Daniella has things she needs
to do here too.
Your “task” hub
The Development channel
has some tasks for Daniella
This is a project with specific
goals and work items
The Marketing channel is in
another team
But Daniella has things she needs
to do here too.
Personal apps can create a
unified view
Daniella will likely start her day
here, and it’s a great place to see
all the work she has to do in one
place… with handy links to take
her to the channels where she
needs to collaborate
Find a restaurant
Find a restaurant without
losing your place
@mentioning your app in the
command box gives users global
access to your app, while they
are anywhere in teams.
Find a restaurant
Find a restaurant without
losing your place
@mentioning your app in the
command box gives users global
access to your app, while they
are anywhere in teams.
Search with one or more
parameters
You can make your app
incredibly powerful with single
parameter or multi parameter
queries, and even default queries
you save for everyone or per
user.
Find a restaurant
Find a restaurant without
losing your place
@mentioning your app in the
command box gives users global
access to your app, while they
are anywhere in teams.
Search with one or more
parameters
You can make your app
incredibly powerful with single
parameter or multi parameter
queries, and even default queries
you save for everyone or per
user.
Share
Users can get the information
they need and get back to work
or share your card with others.
Convert chat to a sales opportunity
Message actions
Your users can send chats to your
service and include time, sender
information, text and if you use
graph chats above and below the
selection for additional context.
Convert chat to a sales opportunity
Message actions
Your users can send chats to your
service and include time, sender
information, text and if you use
graph chats above and below the
selection for additional context.
Tasks where the
conversation is happening
Create one or more actions that
appear in our context menus.
Convert chat to a sales opportunity
Message actions
Your users can send chats to your
service and include time, sender
information, text and if you use
graph chats above and below the
selection for additional context.
Tasks where the
conversation is happening
Create one or more actions that
appear in our context menus.
Confirm with a task module
Keeping the user in control but
using natural language
processing to extract the words
you need to get the job done
quickly and intelligently.
Onboard a team
Kicking off a new project
can be easier
Using Teams templates and your
app you can automate the
onboarding process.
Onboard a team
Kicking off a new project
can be easier
Using Teams templates and your
app you can automate the
onboarding process.
Simplify known workflows
Select users who will be team
owners vs team members to
comply with access and role
limitations, pick documents in
your service or on SharePoint to
add to the mix. Add a welcome
message.
Onboard a team
Kicking off a new project
can be easier
Using Teams templates and your
app you can automate the
onboarding process.
Simplify known workflows
Select users who will be team
owners vs team members to
comply with access and role
limitations, pick documents in
your service or on SharePoint to
add to the mix. Add a welcome
message.
Bot notification
In the new team we start the
project knowing what we are
doing and where everything is.
Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines
Thanks!
Microsoft Teams wants to hear your feedback!
If you would like to participate in future
Microsoft Teams research, please sign up
using the link below.
Your privacy is important to us, and we will
never share your information.
URL: https://aka.ms/MSTeamsResearch
Appendix
Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines
Let’s Build one
Getting started Framework Components ResourcesProblem Statement
Michael is always getting
asked to do things in chats.
Managing all these requests is taking up a lot of
time, it’s frustrating not to be able to share
priorities with people requesting work.
It’s not just what he’s working on its where your
stuff in his priorities.
MB Hey dude, I need a logo. Can you bang one out
and send it to me by lunch?

More Related Content

What's hot

Deploy Microsoft Teams with Success
Deploy Microsoft Teams with SuccessDeploy Microsoft Teams with Success
Deploy Microsoft Teams with SuccessSerge Tremblay
 
What is Microsoft Teams?
What is Microsoft Teams?What is Microsoft Teams?
What is Microsoft Teams?Deepika Gandhi
 
Learn More About Microsoft Teams
Learn More About Microsoft Teams Learn More About Microsoft Teams
Learn More About Microsoft Teams Dock 365
 
Enabling Remote Work With Microsoft Teams, Virtual Desktop, Office Apps and S...
Enabling Remote Work With Microsoft Teams, Virtual Desktop, Office Apps and S...Enabling Remote Work With Microsoft Teams, Virtual Desktop, Office Apps and S...
Enabling Remote Work With Microsoft Teams, Virtual Desktop, Office Apps and S...David J Rosenthal
 
Microsoft Teams - Transform Workplace Collaboration
Microsoft Teams - Transform Workplace CollaborationMicrosoft Teams - Transform Workplace Collaboration
Microsoft Teams - Transform Workplace CollaborationDavid J Rosenthal
 
Presentation on Microsoft Teams
Presentation on Microsoft Teams Presentation on Microsoft Teams
Presentation on Microsoft Teams SoHo Dragon
 
Microsoft Teams Slide (GA version) (17 pages)
Microsoft Teams Slide (GA version) (17 pages)Microsoft Teams Slide (GA version) (17 pages)
Microsoft Teams Slide (GA version) (17 pages)Daniel Chang
 
Microsoft Teams is Here!
Microsoft Teams is Here!Microsoft Teams is Here!
Microsoft Teams is Here!Dux Raymond Sy
 
SPSMilano - Microsoft Teams
SPSMilano - Microsoft TeamsSPSMilano - Microsoft Teams
SPSMilano - Microsoft TeamsThorbjørn Værp
 
Microsoft Teams for Education Webinars - IT Pro introduction
Microsoft Teams for Education Webinars - IT Pro introductionMicrosoft Teams for Education Webinars - IT Pro introduction
Microsoft Teams for Education Webinars - IT Pro introductionDominic Williamson
 
Microsoft Teams More Than Just Chat
Microsoft Teams More Than Just ChatMicrosoft Teams More Than Just Chat
Microsoft Teams More Than Just ChatM Allmond
 
Increase productivity with Microsoft Teams
Increase productivity with Microsoft TeamsIncrease productivity with Microsoft Teams
Increase productivity with Microsoft TeamsSoHo Dragon
 
Microsoft Teams Governance and Automation
Microsoft Teams Governance and AutomationMicrosoft Teams Governance and Automation
Microsoft Teams Governance and AutomationJoel Oleson
 
Teams meetings, calling customer pitch deck | Netinx Solutions
Teams meetings, calling customer pitch deck | Netinx SolutionsTeams meetings, calling customer pitch deck | Netinx Solutions
Teams meetings, calling customer pitch deck | Netinx SolutionsRashminPopat2
 
Microsoft Teams - A Collaboration Story
Microsoft Teams - A Collaboration StoryMicrosoft Teams - A Collaboration Story
Microsoft Teams - A Collaboration StoryMuditha Chathuranga
 
The Integration of Microsoft Teams and Skype for Business
The Integration of Microsoft Teams and Skype for BusinessThe Integration of Microsoft Teams and Skype for Business
The Integration of Microsoft Teams and Skype for BusinessChristian Buckley
 

What's hot (20)

Deploy Microsoft Teams with Success
Deploy Microsoft Teams with SuccessDeploy Microsoft Teams with Success
Deploy Microsoft Teams with Success
 
What is Microsoft Teams?
What is Microsoft Teams?What is Microsoft Teams?
What is Microsoft Teams?
 
[Webinar] Understanding Microsoft Teams: What You Need to Know
[Webinar] Understanding Microsoft Teams: What You Need to Know[Webinar] Understanding Microsoft Teams: What You Need to Know
[Webinar] Understanding Microsoft Teams: What You Need to Know
 
Learn More About Microsoft Teams
Learn More About Microsoft Teams Learn More About Microsoft Teams
Learn More About Microsoft Teams
 
Enabling Remote Work With Microsoft Teams, Virtual Desktop, Office Apps and S...
Enabling Remote Work With Microsoft Teams, Virtual Desktop, Office Apps and S...Enabling Remote Work With Microsoft Teams, Virtual Desktop, Office Apps and S...
Enabling Remote Work With Microsoft Teams, Virtual Desktop, Office Apps and S...
 
Microsoft Teams Extensibility
Microsoft Teams ExtensibilityMicrosoft Teams Extensibility
Microsoft Teams Extensibility
 
Microsoft Teams - Transform Workplace Collaboration
Microsoft Teams - Transform Workplace CollaborationMicrosoft Teams - Transform Workplace Collaboration
Microsoft Teams - Transform Workplace Collaboration
 
Presentation on Microsoft Teams
Presentation on Microsoft Teams Presentation on Microsoft Teams
Presentation on Microsoft Teams
 
Overview of microsoft teams
Overview of microsoft teamsOverview of microsoft teams
Overview of microsoft teams
 
Microsoft Teams Slide (GA version) (17 pages)
Microsoft Teams Slide (GA version) (17 pages)Microsoft Teams Slide (GA version) (17 pages)
Microsoft Teams Slide (GA version) (17 pages)
 
Microsoft Teams is Here!
Microsoft Teams is Here!Microsoft Teams is Here!
Microsoft Teams is Here!
 
SPSMilano - Microsoft Teams
SPSMilano - Microsoft TeamsSPSMilano - Microsoft Teams
SPSMilano - Microsoft Teams
 
Microsoft Teams for Education Webinars - IT Pro introduction
Microsoft Teams for Education Webinars - IT Pro introductionMicrosoft Teams for Education Webinars - IT Pro introduction
Microsoft Teams for Education Webinars - IT Pro introduction
 
Microsoft Teams More Than Just Chat
Microsoft Teams More Than Just ChatMicrosoft Teams More Than Just Chat
Microsoft Teams More Than Just Chat
 
Increase productivity with Microsoft Teams
Increase productivity with Microsoft TeamsIncrease productivity with Microsoft Teams
Increase productivity with Microsoft Teams
 
Microsoft Teams Governance and Automation
Microsoft Teams Governance and AutomationMicrosoft Teams Governance and Automation
Microsoft Teams Governance and Automation
 
Teams meetings, calling customer pitch deck | Netinx Solutions
Teams meetings, calling customer pitch deck | Netinx SolutionsTeams meetings, calling customer pitch deck | Netinx Solutions
Teams meetings, calling customer pitch deck | Netinx Solutions
 
Microsoft Teams
Microsoft TeamsMicrosoft Teams
Microsoft Teams
 
Microsoft Teams - A Collaboration Story
Microsoft Teams - A Collaboration StoryMicrosoft Teams - A Collaboration Story
Microsoft Teams - A Collaboration Story
 
The Integration of Microsoft Teams and Skype for Business
The Integration of Microsoft Teams and Skype for BusinessThe Integration of Microsoft Teams and Skype for Business
The Integration of Microsoft Teams and Skype for Business
 

Similar to Microsoft Teams community call-September 2019

Build an app from scratch using teams app studio for ms teams
Build an app from scratch using teams app studio for ms teamsBuild an app from scratch using teams app studio for ms teams
Build an app from scratch using teams app studio for ms teamsJenkins NS
 
Ms teams webinar-getting started with microsoft teams development
Ms teams webinar-getting started with microsoft teams developmentMs teams webinar-getting started with microsoft teams development
Ms teams webinar-getting started with microsoft teams developmentJenkins NS
 
A holistic guide to annotated wireframes for app development
A holistic guide to annotated wireframes for app developmentA holistic guide to annotated wireframes for app development
A holistic guide to annotated wireframes for app developmentConcetto Labs
 
Uxpin web ui design patterns 2014
Uxpin web ui design patterns 2014Uxpin web ui design patterns 2014
Uxpin web ui design patterns 2014MoodLabs
 
Leveraging start up technology for your library and the power of the slack ap...
Leveraging start up technology for your library and the power of the slack ap...Leveraging start up technology for your library and the power of the slack ap...
Leveraging start up technology for your library and the power of the slack ap...Brian Pichman
 
SPC Adriatics 2016 - Creating a Great User Experience in SharePoint
SPC Adriatics 2016 - Creating a Great User Experience in SharePointSPC Adriatics 2016 - Creating a Great User Experience in SharePoint
SPC Adriatics 2016 - Creating a Great User Experience in SharePointMarc D Anderson
 
Creating a Great User Experience in SharePoint
Creating a Great User Experience in SharePointCreating a Great User Experience in SharePoint
Creating a Great User Experience in SharePointSPC Adriatics
 
World Usability Day 2014 - UX Toolbelt for Developers
World Usability Day 2014 - UX Toolbelt for DevelopersWorld Usability Day 2014 - UX Toolbelt for Developers
World Usability Day 2014 - UX Toolbelt for DevelopersSarah Dutkiewicz
 
Software engineering
Software engineeringSoftware engineering
Software engineeringsweetysweety8
 
Reading UK Community group TrailheaDX presentation
Reading UK Community group TrailheaDX presentationReading UK Community group TrailheaDX presentation
Reading UK Community group TrailheaDX presentationAntonina Romanova
 
Agile Prototyping Best Practices
Agile Prototyping Best PracticesAgile Prototyping Best Practices
Agile Prototyping Best Practicesuxpin
 
User-Centered Website Design
User-Centered Website DesignUser-Centered Website Design
User-Centered Website DesignBrent Bice
 
Construction Communication – Getting the Most Out of FieldChat on Your Next P...
Construction Communication – Getting the Most Out of FieldChat on Your Next P...Construction Communication – Getting the Most Out of FieldChat on Your Next P...
Construction Communication – Getting the Most Out of FieldChat on Your Next P...Geoffrey Gualano
 
How to create a popular productivity app in 2022
How to create a popular productivity app in 2022 How to create a popular productivity app in 2022
How to create a popular productivity app in 2022 Shakuro
 
Web UI Design Patterns 2014
Web UI Design Patterns 2014Web UI Design Patterns 2014
Web UI Design Patterns 2014Lewis Lin 🦊
 
Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Chad Udell
 
10 Best Project Management Software Tools for Small Teams.pdf
10 Best Project Management Software Tools for Small Teams.pdf10 Best Project Management Software Tools for Small Teams.pdf
10 Best Project Management Software Tools for Small Teams.pdfPMO Global Institute
 
10 Best Project Management Software Tools for Small Teams.pdf
10 Best Project Management Software Tools for Small Teams.pdf10 Best Project Management Software Tools for Small Teams.pdf
10 Best Project Management Software Tools for Small Teams.pdfPMO Global Institute
 

Similar to Microsoft Teams community call-September 2019 (20)

Build an app from scratch using teams app studio for ms teams
Build an app from scratch using teams app studio for ms teamsBuild an app from scratch using teams app studio for ms teams
Build an app from scratch using teams app studio for ms teams
 
Ms teams webinar-getting started with microsoft teams development
Ms teams webinar-getting started with microsoft teams developmentMs teams webinar-getting started with microsoft teams development
Ms teams webinar-getting started with microsoft teams development
 
A holistic guide to annotated wireframes for app development
A holistic guide to annotated wireframes for app developmentA holistic guide to annotated wireframes for app development
A holistic guide to annotated wireframes for app development
 
Uxpin web ui design patterns 2014
Uxpin web ui design patterns 2014Uxpin web ui design patterns 2014
Uxpin web ui design patterns 2014
 
Collaborative communication tools .pptx
Collaborative communication tools .pptxCollaborative communication tools .pptx
Collaborative communication tools .pptx
 
Leveraging start up technology for your library and the power of the slack ap...
Leveraging start up technology for your library and the power of the slack ap...Leveraging start up technology for your library and the power of the slack ap...
Leveraging start up technology for your library and the power of the slack ap...
 
SPC Adriatics 2016 - Creating a Great User Experience in SharePoint
SPC Adriatics 2016 - Creating a Great User Experience in SharePointSPC Adriatics 2016 - Creating a Great User Experience in SharePoint
SPC Adriatics 2016 - Creating a Great User Experience in SharePoint
 
Creating a Great User Experience in SharePoint
Creating a Great User Experience in SharePointCreating a Great User Experience in SharePoint
Creating a Great User Experience in SharePoint
 
World Usability Day 2014 - UX Toolbelt for Developers
World Usability Day 2014 - UX Toolbelt for DevelopersWorld Usability Day 2014 - UX Toolbelt for Developers
World Usability Day 2014 - UX Toolbelt for Developers
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Reading UK Community group TrailheaDX presentation
Reading UK Community group TrailheaDX presentationReading UK Community group TrailheaDX presentation
Reading UK Community group TrailheaDX presentation
 
Agile Prototyping Best Practices
Agile Prototyping Best PracticesAgile Prototyping Best Practices
Agile Prototyping Best Practices
 
User-Centered Website Design
User-Centered Website DesignUser-Centered Website Design
User-Centered Website Design
 
Construction Communication – Getting the Most Out of FieldChat on Your Next P...
Construction Communication – Getting the Most Out of FieldChat on Your Next P...Construction Communication – Getting the Most Out of FieldChat on Your Next P...
Construction Communication – Getting the Most Out of FieldChat on Your Next P...
 
How to create a popular productivity app in 2022
How to create a popular productivity app in 2022 How to create a popular productivity app in 2022
How to create a popular productivity app in 2022
 
Web UI Design Patterns 2014
Web UI Design Patterns 2014Web UI Design Patterns 2014
Web UI Design Patterns 2014
 
list script and flowchart
list script and flowchartlist script and flowchart
list script and flowchart
 
Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2
 
10 Best Project Management Software Tools for Small Teams.pdf
10 Best Project Management Software Tools for Small Teams.pdf10 Best Project Management Software Tools for Small Teams.pdf
10 Best Project Management Software Tools for Small Teams.pdf
 
10 Best Project Management Software Tools for Small Teams.pdf
10 Best Project Management Software Tools for Small Teams.pdf10 Best Project Management Software Tools for Small Teams.pdf
10 Best Project Management Software Tools for Small Teams.pdf
 

More from Microsoft 365 Developer

Change Notifications in Azure Event Hubs-April 2021
Change Notifications in Azure Event Hubs-April 2021Change Notifications in Azure Event Hubs-April 2021
Change Notifications in Azure Event Hubs-April 2021Microsoft 365 Developer
 
Microsoft Teams community call-August 2020
Microsoft Teams community call-August 2020Microsoft Teams community call-August 2020
Microsoft Teams community call-August 2020Microsoft 365 Developer
 
Decentralized Identities-July 2020 community call
Decentralized Identities-July 2020 community callDecentralized Identities-July 2020 community call
Decentralized Identities-July 2020 community callMicrosoft 365 Developer
 
Implement Authorization in your Apps with Microsoft identity platform-June 2020
Implement Authorization in your Apps with Microsoft identity platform-June 2020Implement Authorization in your Apps with Microsoft identity platform-June 2020
Implement Authorization in your Apps with Microsoft identity platform-June 2020Microsoft 365 Developer
 
Microsoft identity platform community call-May 2020
Microsoft identity platform community call-May 2020Microsoft identity platform community call-May 2020
Microsoft identity platform community call-May 2020Microsoft 365 Developer
 
Health team collaboration pitch deck partner
Health team collaboration pitch deck partnerHealth team collaboration pitch deck partner
Health team collaboration pitch deck partnerMicrosoft 365 Developer
 
Teams healthcare partner webinar ansuman partner
Teams healthcare partner webinar   ansuman partnerTeams healthcare partner webinar   ansuman partner
Teams healthcare partner webinar ansuman partnerMicrosoft 365 Developer
 
Teams healthcare partner webinar virtual visits partner
Teams healthcare partner webinar   virtual visits partnerTeams healthcare partner webinar   virtual visits partner
Teams healthcare partner webinar virtual visits partnerMicrosoft 365 Developer
 
Teams healthcare partner webinar srini partner
Teams healthcare partner webinar   srini partnerTeams healthcare partner webinar   srini partner
Teams healthcare partner webinar srini partnerMicrosoft 365 Developer
 
Teams healthcare partner webinar paul partner
Teams healthcare partner webinar   paul  partnerTeams healthcare partner webinar   paul  partner
Teams healthcare partner webinar paul partnerMicrosoft 365 Developer
 
Teams healthcare partner webinar keren partner
Teams healthcare partner webinar   keren partnerTeams healthcare partner webinar   keren partner
Teams healthcare partner webinar keren partnerMicrosoft 365 Developer
 
Teams healthcare partner webinar daniel partner
Teams healthcare partner webinar   daniel partnerTeams healthcare partner webinar   daniel partner
Teams healthcare partner webinar daniel partnerMicrosoft 365 Developer
 
Teams healthcare partner webinar andrew partner
Teams healthcare partner webinar   andrew partnerTeams healthcare partner webinar   andrew partner
Teams healthcare partner webinar andrew partnerMicrosoft 365 Developer
 
Security and compliance for healthcare pitch deck partner
Security and compliance for healthcare pitch deck partnerSecurity and compliance for healthcare pitch deck partner
Security and compliance for healthcare pitch deck partnerMicrosoft 365 Developer
 
Community call: Develop multi tenant apps with the Microsoft identity platform
Community call: Develop multi tenant apps with the Microsoft identity platformCommunity call: Develop multi tenant apps with the Microsoft identity platform
Community call: Develop multi tenant apps with the Microsoft identity platformMicrosoft 365 Developer
 

More from Microsoft 365 Developer (20)

Change Notifications in Azure Event Hubs-April 2021
Change Notifications in Azure Event Hubs-April 2021Change Notifications in Azure Event Hubs-April 2021
Change Notifications in Azure Event Hubs-April 2021
 
Power Apps community call - August 2020
Power Apps community call - August 2020Power Apps community call - August 2020
Power Apps community call - August 2020
 
Microsoft Teams community call-August 2020
Microsoft Teams community call-August 2020Microsoft Teams community call-August 2020
Microsoft Teams community call-August 2020
 
Decentralized Identities-July 2020 community call
Decentralized Identities-July 2020 community callDecentralized Identities-July 2020 community call
Decentralized Identities-July 2020 community call
 
Implement Authorization in your Apps with Microsoft identity platform-June 2020
Implement Authorization in your Apps with Microsoft identity platform-June 2020Implement Authorization in your Apps with Microsoft identity platform-June 2020
Implement Authorization in your Apps with Microsoft identity platform-June 2020
 
Power Apps community call-June 2020
Power Apps community call-June 2020Power Apps community call-June 2020
Power Apps community call-June 2020
 
Office Add-ins community call-June 2020
Office Add-ins community call-June 2020Office Add-ins community call-June 2020
Office Add-ins community call-June 2020
 
Microsoft identity platform community call-May 2020
Microsoft identity platform community call-May 2020Microsoft identity platform community call-May 2020
Microsoft identity platform community call-May 2020
 
Power Apps community call - May 2020
Power Apps community call - May 2020Power Apps community call - May 2020
Power Apps community call - May 2020
 
Health team collaboration pitch deck partner
Health team collaboration pitch deck partnerHealth team collaboration pitch deck partner
Health team collaboration pitch deck partner
 
Teams healthcare partner webinar ansuman partner
Teams healthcare partner webinar   ansuman partnerTeams healthcare partner webinar   ansuman partner
Teams healthcare partner webinar ansuman partner
 
Teams healthcare partner webinar virtual visits partner
Teams healthcare partner webinar   virtual visits partnerTeams healthcare partner webinar   virtual visits partner
Teams healthcare partner webinar virtual visits partner
 
Teams healthcare partner webinar srini partner
Teams healthcare partner webinar   srini partnerTeams healthcare partner webinar   srini partner
Teams healthcare partner webinar srini partner
 
Teams healthcare partner webinar paul partner
Teams healthcare partner webinar   paul  partnerTeams healthcare partner webinar   paul  partner
Teams healthcare partner webinar paul partner
 
Teams healthcare partner webinar keren partner
Teams healthcare partner webinar   keren partnerTeams healthcare partner webinar   keren partner
Teams healthcare partner webinar keren partner
 
Teams healthcare partner webinar daniel partner
Teams healthcare partner webinar   daniel partnerTeams healthcare partner webinar   daniel partner
Teams healthcare partner webinar daniel partner
 
Teams healthcare partner webinar andrew partner
Teams healthcare partner webinar   andrew partnerTeams healthcare partner webinar   andrew partner
Teams healthcare partner webinar andrew partner
 
Security and compliance for healthcare pitch deck partner
Security and compliance for healthcare pitch deck partnerSecurity and compliance for healthcare pitch deck partner
Security and compliance for healthcare pitch deck partner
 
Power Apps community call_April 2020
Power Apps community call_April 2020Power Apps community call_April 2020
Power Apps community call_April 2020
 
Community call: Develop multi tenant apps with the Microsoft identity platform
Community call: Develop multi tenant apps with the Microsoft identity platformCommunity call: Develop multi tenant apps with the Microsoft identity platform
Community call: Develop multi tenant apps with the Microsoft identity platform
 

Recently uploaded

WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxMarkSteadman7
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightSafe Software
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...caitlingebhard1
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformWSO2
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governanceWSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceIES VE
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaWSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 

Recently uploaded (20)

WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational Performance
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 

Microsoft Teams community call-September 2019

  • 1. Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines Build with us Millions of people use Office 365 every day. Building for our platform puts your app at the center of all the action.
  • 2. Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines BUILD ON TEAMS
  • 3. Getting started Framework Components ResourcesBuild on Teams Teams is about collaboration So make your app about collaboration. Collab in Channels Interacting in front of or with a group of people increases your app’s visibility and enhances discoverability. To meet this mark the content should be actionable and not simply informational Sharing Message extensions allow sharing and interaction in 1:1, Group chat, Teams, and from the Commandbox. Link Furling just makes that better in the future. Proactive in channel Help with discovery. Maximize usage with actionable messages User Customizable When users get your data the way they want it is satisfying. Customizing notifications is always a great start. Teams is the hub. Bring content to the user in the right place and at the right time. If they need to hunt for your app after they’ve started using it, you’ve already lost. 1:1 Apps create a hole that users can't get out of… DON’T BE AN APPHOLE
  • 4. Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines SCENARIOS FIRST
  • 5. Getting started Framework Components ResourcesScenarios first A bot is not a scenario… Jamming a scenario into a feature usually confuses users. Who is your hero? Who are they? What do they do? Name names. How do they feel now? How will they feel when you are successful? Tell the story first, ignore solutions at this stage We are all in the business of thinking about solutions. Don’t do that yet. Tell the story of the user journey like a children’s book first. Feelings matter here. Elevator pitch – in one breath Keep it Simple. You need this to sell the concept to your colleagues anyway! ”Make it easy to turn incoming requests into tasks and visually manage workflow” Use this one-liner to keep yourself on track and manage scope creep as well as shipping an MLP. Minimum Lovable Product. ?
  • 6. Getting started Framework Components ResourcesScenarios first Decision Criteria How often will it be used? What ROI does it provide for the team? Does it solve a real problem ?
  • 7. Getting started Framework Components ResourcesScenarios first Quickly outline your flow in front of your users Highlight status changes and events you can either automate, push as notification, or use as a manual input
  • 8. Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines DESIGN TOOLS
  • 9. Getting started Framework Components ResourcesDesign tools The most important tools are… Fast and don’t put a barrier between you and your discussion with the user. Fast and interactive Use a whiteboard, post-its, and markers. Detail the flow first then draw boxes and get some content in them. Be fast and loose. Make mistakes. That’s what an eraser is for. Your users You are not the user. Even if you are building this for yourself get another person who is not your friend to help you figure out the flow, and then the actual content. Questions not answers Be a 3 year old and ask “Why” until you have reduced the concept past a technology or a tool. Get to the most generic understanding of the flow. Even if you think you know the answer. Ask the question. You well be surprised how a small nuance can change everything Boxes and words For each major interaction ask other people what the words are that go in the box. What is the most important order of things
  • 10. Getting started Framework Components ResourcesDesign tools You can draw a box …and doing it in front of your users is a fast prototype. Fail here or in code, your choice The more code you write the less happy you will be to change it. Getting it right here is very cheap, and the feedback loop is fast. This is agile. Document the key beats Sure you need to handle some error cases, but cover the golden path first, make sure your flow is appealing and you are bringing the right elements to your users at the right time. Backtrack and cover the rest What does setup look like, how do you handle errors or conflicts, secondary scenarios.
  • 11. Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines YOU GET ONLY ONE FIRST DATE
  • 12. Getting started Framework Components ResourcesYou only get one first date First impressions matter Even if your date looks great on paper, if they want to eat your brains there will be no second date. Build an MLP not an MVP As tempting as it may be to ship something there is very little forgiveness from users. They tend to hold a grudge. Ship a minimum LOVABLE product and remember you are not the judge. Bring in some users before sending your app into the world. Great documentation goes a long way Tell users what your app does in the long and short description fields of your app, not how awesome you or your company is. This is a swipe left or swipe right moment or you. Find a designer to do your icon Everyone knows someone who is a designer or wants to be one. You should specialize in code, don’t try and throw something together in paint. Also run the icon choices past your users before locking in. This is cheap if you have to hire someone. Find a writer Consistent style, good grammar, and correct spelling go a long way to instill confidence. Misspelled words, bad grammar, and Google translate make you look like a Twitter troll bot.
  • 13. Getting started Framework Components ResourcesYou only get one first date
  • 14. Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines Getting started Here’s everything you need to showcase your brand in Microsoft Teams.
  • 15. Getting started Framework Components ResourcesThe basics This area hosts Activity, Chats, Teams, Meetings, Files, and Apps. If someone uses your app every day, this is where they will pin it. Immersive experience Work gets done in the canvas. Conversations happen here. When you build a tab for an app or a channel, they’ll show up here too. Tabs and conversations Get a bird’s-eye view of your work across different teams and channels. Have one-on- one conversations with bots, scan and organize your tasks, or search your recently viewed files. Personal apps
  • 16. Getting started Framework Components ResourcesThe basics Each app uses this area differently, but in general, it allows users to navigate to specific content like a one-on-one chat with someone, a channel in a team, or a list of upcoming meetings. Instant notifications When users open a document, this is the view they will get. To keep things focused, we’ve moved the conversation to a narrow right pane. Keep that size in mind if your service inserts custom cards into chat. Stage View To keep Microsoft Teams easy to use on mobile, we’ve streamlined the functionality. Bots and connector cards will be available in this view and we’ve made sure that if you are using a standard card type, it will render perfectly in our mobile experiences. Mobile
  • 17. Getting started Framework Components Resources Bots are conversational apps that perform a narrow or specific set of tasks. They give you an opportunity to communicate with users, respond to their questions, and proactively notify them about changes. They’re a great way to reach out. Bot framework The basics Message extensions allow you to share rich cards in a conversation. A card can hold instructions to complete a complex task or a simple GIF. These extensions are one of the best ways to create shareable content and serve information quickly. Messaging extensions Cards are actionable snippets of content that you can add to a conversation through a bot, a connector, or app. Using text, graphics, and buttons, cards allow you to communicate with an audience. Customizable cards
  • 18. Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines Framework A short tour to help you understand how the Teams platform works for your app.
  • 19. Getting started Framework Components ResourcesTabs Content and conversations, all at once Tabs are canvases that you can use to share content, hold conversations, and host third-party services, all within a team’s organic workflow. When you build a tab in Microsoft Teams, it puts your web app front and center where it’s easily accessible from key conversations.
  • 20. Getting started Framework Components ResourcesTabs Guidelines A good tab should display the following characteristics: Focused functionality Tabs work best when they’re built to address a specific need. Focus on a small set of tasks or a subset of data that’s relevant to the channel the tab is in. Reduced chrome Avoid creating multiple panels in a tab, adding layers of navigation, or requiring users to scroll both vertically and horizontally in one tab. In other words, try not to have tabs in your tab. Integration Find ways to notify users about tab activity by posting cards to a conversation, for example.
  • 21. Getting started Framework Components ResourcesTabs Conversational Find a way to facilitate conversation around a tab. This ensures that conversations center on the content, data, or process at hand. Streamlined access Make sure you’re granting access to the right people at the right time. Keeping your sign-in process simple will avoid creating barriers to contribution and collaboration. Personality Your tab canvas presents a good opportunity to brand your experience. Incorporate your own logos, colors, and layouts to communicate personality. Your logo is an important part of your identity and a connection with your users. So be sure to include it. • Place your logo in the left or right corner or along the bottom edge • Keep your logo small and unobtrusive
  • 22. Getting started Framework Components ResourcesTabs Tab layouts Single Canvas This is one large area where work gets done. OneNote and Wiki follow this pattern. If you have an app that doesn’t separate content into smaller components this would be a good fit. Column Columns are great for workflows that move an item from one column to another to indicate a new status. Consider supporting drag and drop for those scenarios. We recommend using dialogs or inline expansion for detail views.
  • 23. Getting started Framework Components ResourcesTabs Tab layouts List Lists are great for sorting and filtering large quantities of data and are great at keeping the most important things at the top. It is helpful to use sortable columns. Actions can be added to each list item under the ellipsis menu. Grid Grids are useful for showing elements which are highly visual. It helps to include a filter or search control at the top.
  • 24. Getting started Framework Components ResourcesTabs PRO TIP Please work with our visual style so your service feels like a part of Teams. Avoid creating multiple panels in a tab, adding layers of navigation, or requiring users to scroll both vertically and horizontally in one tab. Best Practices Always include a default state Include a default state to make tabs easy to set up even if your tab is configurable. Deep linking Whenever possible, cards and bots should deep link to richer data in a hosted tab. For example, a card may show a summary of bug data, but clicking it can shows the entire bug in a tab. Naming In many cases, the name of your app may make a great tab name. But consider naming your tabs according to the functionality they provide.
  • 25. Getting started Framework Components ResourcesBots Start talking Bots are conversational apps that perform a narrow or specific set of tasks. They give you an opportunity to communicate with users, respond to their questions, and proactively notify them about changes. They’re a great way to reach out.
  • 26. Getting started Framework Components ResourcesBots Guidelines What does it do? The value proposition Explaining with a clear example what your bot does at the very beginning will give users a reason to engage, and the right words to use. Welcome messages should tell users the value of the bot, and how to interact with it for the main scenarios. Tours We love to see tours offered at the very beginning. This is a great opportunity to use a carousel and walk users through scenarios you offer. Listen for ”tour”, “help”, and “what do you do” to resurface this content Unauthenticated queries Before forcing users to sign in, how can you help them understand the value of your service? This bot will help you submit time away from work, and keep track of paid holidays. You can ask about “upcoming holidays” or submit “time off”. Take a tour to see all the things the bot can do and how to use its tabs.
  • 27. Getting started Framework Components ResourcesBots Guidelines A good bot should display the following characteristics: Avatars Bot avatars in Teams are shaped like hexagons so people can quickly tell that they’re talking to a bot instead of a person. You’ll submit your avatar as a square and we’ll crop it for you. When it comes to avatars, we recommend making yours legible from 2 feet away and using a higher contrast. Buttons We support up to six buttons per card. Be concise when writing button text, and keep in mind that most buttons should only address the task at hand. Cards and graphics Graphics are a good way to tell a story, but not all bot conversations require graphics, so use them for maximum impact.
  • 28. Getting started Framework Components ResourcesBots Fail with excellence Respond to users and failing gracefully, like this: Your bot should also be able to respond to things like 'Hi', 'Help', and 'Thanks' while taking common misspellings and colloquialisms into account. Your bot should be able to handle the following types of queries and inputs: • Recognized questions These are the ”best case scenario” questions you’d anticipate from users • Recognized non-questions Queries about unsupported functionality, random pieces of information, or when someone wants to curse at your bot. • Unrecognized questions Unintelligible inputs (i.e., gibberish).
  • 29. Getting started Framework Components ResourcesBots Use LUIS and train to succeed ## SMS - text - text please - send text - txt pls - txt please - sms - sms pls - sms please - msg - msg pls - msg please - mssg - mssg pls - mssg please - message - message pls - message please - imessage - imessage pls - imessage please - im - im pls - im please - dm - dm pls - dm please You are not the user Age, vertical, and local jargon make a difference
  • 30. Getting started Framework Components ResourcesBots Personality matters
  • 31. Getting started Framework Components ResourcesBots Leave the user in control. Provide notification settings that include frequency and priority. How often should you use your bot to reach out to a user? When a state has changed For example, if an assignment is marked as complete, when a bug changes, when new social media is available, or when a poll has been completed. When the timing is right Your bot can act like a daily digest, sending a notification to the user or channel at a specific frequency. Avoid creating “notification blindness” from too many notifications that are not critical for the user. Bundle notifications, tune them to signals that are important and provide individual users and teams a way to customize how often bots interject themselves into a conversation
  • 32. Getting started Framework Components ResourcesBots Using tabs Tabs make your bot much more functional. With tabs, you get the following: A place to host standing queries In one-on-one conversations, tabs can house user-specific information and lists. They’re also a good place to maintain bot responses to frequently- asked questions (so users don’t need to keep asking). A place to finish a conversation You can link to a tab from a card. If your bot provides an answer that requires a few more steps, it can link to a tab to complete the task or flow. A place to provide some help Add a tab that educates users about how to communicate with your bot. You can provide some context for what it does or FAQs.
  • 33. Getting started Framework Components ResourcesBots Best Practices Bots aren’t assistants Unlike agents (like Cortana), bots act as specialists. Discourage chit chat Unless your bot is for conversation, find ways to redirect chit chat towards task completion. Introduce some personality Keep your bot personality consistent with the voice of your product. Think of your bot as speaking for your company. Maintain tone Determine whether you want your tone to be friendly and light, “just the facts”, or super quirky. PRO TIP When writing your bot script, ask yourself: “Will my company be embarrassed if a response is screen captured and shared?”
  • 34. Getting started Framework Components Resources Encourage easy task flow Bots PRO TIP Embedding parts of your site in a tab will help someone maintain the context of a conversation as they use your service. It removes the need to launch your service in a browser and switch back and forth between apps. Best Practices Support multi-turn interactions while still allowing for fully formed questions. Anticipating the next step will help users get through task flows much easier. If a user takes several steps to complete a task, allow your bot to take them through each step, but finish by having it suggest a quicker path. For example, if a user has taken several conversational turns to set a meeting (by first specifying a meeting, then identifying with whom, then stating the time, then stating the day), finish the conversation with the following suggestion: “Next time, try asking if you can ‘schedule a meeting with Bob at 1:00 tomorrow”.
  • 35. Getting started Framework Components ResourcesMessage extensions Share your content in a channel or chat Message extensions allow you to share rich cards in a conversation. A card can hold instructions to complete a complex task or a simple GIF. Microsoft Teams comes equipped with several message extensions already. If you look below the compose box, you’ll see a “GIF” icon. That’s a message extension! These extensions are one of the best ways to create shareable content and serve information quickly.
  • 36. Getting started Framework Components ResourcesMessage extensions Guidelines A good message extension should display the following characteristics: Single parameters are easier Message extensions can hold up to five parameters, but we recommend limiting yourself to a single parameter as often as possible. Include a default query Even before your user types anything you can show a list of results. Whatever entity of yours the user has interacted with last is likely something they want to share. Track an MRU list in your web pages as well as what is used in teams and show it to the user when you load the control. Card file size If your card content is relatively large consider that it will impact performance on this list. Each result is actually a complete card so multiply your card size by the number of results returned.
  • 37. Getting started Framework Components Resources Users can select an entity from your message extension… …and add it to their message Message extensions Now the conversation is about an item in your service and users can use the card to check out the details.
  • 38. Getting started Framework Components ResourcesMessage extensions PRO TIP Try not to include optional parameters in your message extension. People tend to feel obligated to fill out every parameter before they execute a search. Keep it simple A message extension should be light-weight and fast or it will lose its utility. If your search requirements are very complex or multiple parameters are necessary even in the simplest case, it’s OK to include them. Best Practices Optimize your search results A snappy message extension will return an easily digestible list of search results. We recommend including an image and no more than two lines of text. Optimize your cards Each message extension produces in a card. Since it’s the last thing your user will see, make sure your cards are useful, good-looking, and easy to share.
  • 39. Getting started Framework Components ResourcesCards Create a lightweight, adaptable card Cards are actionable snippets of content that you can add to a conversation through a bot, a connector, or app. Using text, graphics, and buttons, cards allow you to communicate with an audience. Our card framework eliminates the burden of designing a fully functional UX. We developed several standard card types and each one fits within our supported platforms.
  • 40. Getting started Framework Components ResourcesCards Guidelines Think of a card as a response to a user question or a setting. A card can respond to a direct question (like, “How many open bugs do I have?”) or to a condition (like, “Send a list of my open bugs at 9 am every day”). A card should include any of the following elements: Envelope text Best used for chat messages. For example, if you want a bot to say: “Here’s what I found!” or “Time for your 1:00 news digest”, that message is best displayed in envelope text. Envelope text is a great way to inject a little personality into your service— just remember to keep it relatively short. Title Your title will always be the largest text in your card. It also serves as your “hook”, so try to keep the title short, memorable, and easy to scan. Subtitle Best used for attribution, taglines, or as a secondary directive. This component appears just below your title. 1 2 3
  • 41. Getting started Framework Components ResourcesCards Text Best used for plain text in the body of your card. Your max length depends on the card type you’ve selected. Buttons Best used to open web pages, tabs, or additional chat content. Make sure to keep your button text short and to the point. You can include up to 6 buttons per card, but we’d recommend following a ‘less is more’ philosophy here. Tap region This is the clickable region of your card. Most users will want to click on images automatically, so try and craft your text so they know where they should tap or click. 5 6 7 Image Images scale to fit their container. Hero cards have a max width of 420px, thumbnails have a max width of 100px, and list views only allow for 32px in desktop mode. 4
  • 42. Getting started Framework Components ResourcesCards Types of cards Some cards are best used to present standalone or individual pieces of content. We designed the following hero, thumbnail, and sign on cards for that purpose. Hero Our largest card. Best used for articles, long descriptions, or scenarios where your image is telling most of the story. Thumbnail Short and sweet. These cards are ideal for short answers, or if you want to return several cards at once so the user can choose from a bunch of options. We think these are a great way to deep link to another tab or a web service.
  • 43. Getting started Framework Components ResourcesCards Types of cards Some cards are best used to present standalone or individual pieces of content. We designed the following hero, thumbnail, and sign on cards for that purpose. Connector Card From the Office connector framework Adaptive cards For more extensive layout control and the ability to handle forms inline
  • 44. Getting started Framework Components ResourcesCards Types of cards Some cards are best used to present standalone or individual pieces of content. We designed the following hero, thumbnail, and sign on cards for that purpose. Sign in Some services require users to sign in independently of our authentication. In that event, you would present a sign-in card before the user can connect to your service.
  • 45. Getting started Framework Components ResourcesCards Card collections We also have standard card types that are best used when you want to present several pieces of content at once or in quick succession. For that purpose, we have a carousel, a digest, a list, and what we call a ‘bubble merge’. Carousel Best used for articles, shopping, and browsing through cards. Digest Best used for news, digests, and whenever you want the user to view multiple cards at once. We recommend using thumbnail cards for digests.
  • 46. Getting started Framework Components ResourcesCards Card collections We also have standard card types that are best used when you want to present several pieces of content at once or in quick succession. For that purpose, we have a carousel, a digest, a list, and what we call a ‘bubble merge’. Lists Lists are a great way to present a scannable set of objects in a “pick one of these” scenario. Lists are best used for items that don’t need a lot of explanation. Bubble merge Some interesting effects can be achieved by sending one hero and several thumbnails in quick succession. We recommend this approach when you want to serve a main result but include a few more related items.
  • 47. Getting started Framework Components ResourcesCards PRO TIP There’s no need to include every element in each card you create. Let your content dictate your elements. Best Practices Keep the noise down It’s easy to send multiple cards into a conversation, but once cards scroll out of view, they become less useful. Try to limit yourself to the essentials. This is especially true in a channel where users have less tolerance for what they perceive as “noise”. Test on mobile Mobile environments are space- and bandwidth-constrained, so be cautious about including oversized images and large data sets in lists and carousels. Also, title widths and text lengths will truncate on mobile, so that’s another thing to keep an eye on. Check your graphics Graphics are going to scale, so be sure to preview them on all platforms. Avoid including text in a graphic Anything that needs to be read by a user should be included in a text field. Once an image is dynamically scaled, any text you add to a graphic may become unintelligible.
  • 48. Getting started Framework Components ResourcesTask modules When a card isn’t enough Task modules let you open a dialog. When you need to do a little form entry, a lookup, or keep an interaction out of a channel, pop open a dialog.
  • 49. Getting started Framework Components ResourcesTask modules Instead of multi-turn experiences Conversational bots asking questions for all the required fields in a “Make a meeting” flow is tedious. Pop up a task module with a form to fill out instead of asking lots of questions in a chat When there is validation or lookup Adaptive cards are great but when you need validation, or form elements that appear based on a previous selection like “Year, make, model” chained fields you need to use a task module to keep an open channel to your service. When you need more room Task Modules can be displayed in a variety of sizes. When you need a little more room to make your point or get things done. A quick 1:1 experience in context Showing an app tour in a channel is handy. Doing it without bothering everyone else is a snap if you host yours in a task module. Guidelines Task modules provide an immersive experience to get a specific task done
  • 50. Getting started Framework Components ResourcesTask modules Task modules come in two flavors For a simple form interaction host an adaptive card. For more complex interactions like search or looking up a user you can host your UI in an iframe. Task modules can be opened from cards or tabs. Adaptive card forms We’ll strip the card border and make it feel like a native dialog. Mobile views will be responsive and pick up themes automatically. Iframe For lookups or validation, host your own. Make sure to check your work on themes and on mobile and use our theme aware script in the page.
  • 51. Getting started Framework Components ResourcesTask modules PRO TIP Every good dialog has a call to action. Tell the user what you want them to do in the title. Best Practices In a channel Use task modules to have a 1:1 interaction with a user. Task modules keep you from cluttering the channel with unnecessary bot responses and avoids redirecting the user to a 1:1 chat and losing context. Test on mobile While adaptive cards hosted in a task module render well on mobile, if you choose to create custom HTML it will need to use our CSS to handle theme changes and responsive to handle the difference between desktop and mobile screen real estate. Short interactions You can easily create multi-step wizards but holding a user in a task module can be problematic as incoming messages encourage users to exit. Pop out to a web page instead of a task module if your task is really involved or time consuming. Errors Keep errors inline. Don’t pop a dialog on top of a dialog.
  • 52. Getting started Framework Components ResourcesMessage actions Users can send a message to your app The starting place is a conversation. Let users send text to your app and you can use it to create new things, add to existing entities
  • 53. Getting started Framework Components ResourcesMessage actions Send clear text directly Users can add message text to an entity on your service is easily. For instance adding a message to a notes field on a Run incoming text through NLP Natural language processing can help extract entities in text and provide meaning or more precise actions based on the incoming text Describe the action concisely Your icon will show up in the menu accompanied by your task name. Take time to label the action in short easy to understand terms. Guidelines Use message text as a starting place for rich actions NLP Service
  • 54. Getting started Framework Components ResourcesMessage Actions Select, send, manipulate Send text to your app The message text gets sent to your action from the overflow menu. You can expand the selection to surrounding messages using the graph. Take advantage of a task module for custom interactions Once you have the text and have processed it, invoke a task module to allow further interactions or just to confirm the acton.
  • 55. Getting started Framework Components ResourcesMessage actions PRO TIP Start with the basics. Sending conversations with timestamps to your entities with no extra processing can be valuable. Best Practices Simple action names Keep the name short, a couple of words at most. Use a task module Allow some control over the action by exposing it in a task module or just open it to confirm that the action was completed Try using Natural Language Processing NLP can help your service listen for keywords or synonyms to your entities. Try using graph queries too Once you are manipulating text sent by users you can take advantage of MS Graph to get more context. There are additional permissions required to do so and you’ll need to inform the user.
  • 56. Getting started Framework Components ResourcesActivity Feed Initiate quick, easy communication Your notifications appear in someone’s activity feed right next to all the other notifications about their new @mentions, likes, and replies. There are many ways to use the activity feed to communicate information about your service or about a user’s content. Here are some ideas about the kind of notifications you can send to someone’s activity feed, depending on what your service does.
  • 57. Getting started Framework Components ResourcesActivity Feed Notifications The activity feed is a great way to communicate with your audience. You can use it to tell people about recent updates or send important notifications. For example, if your app focuses on task management, you can send a notification to someone’s activity feed whenever they receive a new task. Notifications in the activity feed will show up on someone’s desktop app and their mobile app, which helps draw attention to important information. Task list A single notification that is part of a larger, ongoing list. For example, if your app deals with task management, you can publish a notification to someone’s activity feed whenever they receive a new task or when someone else updates an existing task. Updates A single notification that lets a user know that something has been updated or edited. For example, if your services helps people manage their files, you can allow a user to “follow” a file to receive notifications whenever the file is modified.
  • 58. Getting started Framework Components ResourcesActivity Feed Notifications The activity feed is a great way to communicate with your audience. You can use it to tell people about recent updates or send important notifications. For example, if your app focuses on task management, you can send a notification to someone’s activity feed whenever they receive a new task. Notifications in the activity feed will show up on someone’s desktop app and their mobile app, which helps draw attention to important information. Reminder Service A notification that alerts someone about an important date (a due date or a meeting, for example). If your app is a time-sensitive reminder service, consider using the activity feed as your primary way of sharing those reminders. Sender – Usually the name of your app. Avatar – Your app’s avatar or icon. Timestamp – An indication of when your notification was sent Subject – This is included for notifications about chats. Message Preview – A short preview of the message content.
  • 59. Getting started Framework Components ResourcesActivity Feed PRO TIP Be careful about how often you send notifications. People can mute notifications in Teams, and they’ll be more likely to do so if your service seems ‘noisy’. Best Practices Keep it short Make sure to keep things concise because longer messages get truncated. Bundle your notifications If your service regularly sends a lot of simultaneous notifications, try grouping them into a single notification. For example: “30 tasks were assigned to you”.
  • 60. Getting started Framework Components ResourcesPersonal Apps Bringing it all together A personal app can bring your entities from all the channels in Teams into a unified view for the user. They combine all the framework elements we’ve talked about into one place for the user to get things done .
  • 61. Getting started Framework Components ResourcesPersonal Apps Guidelines A great personal app can have the following elements. Conversation – A 1:1 interaction between the user and your bot My Tasks – This can be a purely personal view or an aggregation of the user’s tasks in multiple channels Recent – Don’t just focus on assignment or creation data, what has the user been looking at recently All tasks – Create an area to show all the containers or usage of your product that the user has access to Help – a good app has help content. While we all try to make our services so good our customers won’t need help, there is always something that can use explanation.
  • 62. Getting started Framework Components ResourcesExamples Things you can start building right now Have a conversation about work items A tab with a list of work items it is easy to talk about what to do next and make sure everyone is working on the same project Find and share a class activity Use a message extension to find and share a class activity with a great summary and instructions for your students Notify users about changes in tasks Message specific people or call attention to entire channel about changes in assignments or status of tasks View all different team tasks in one place Personal apps create one place to see all the different things a person needs to do regardless of which team has created the work
  • 63. Getting started Framework Components ResourcesExamples Look up a place to eat, just for yourself, or share it too Access your service from anywhere without missing a beat. Convert a chat to a sales opportunity Use the power of the graph and let users send chats to your app to get things done Create a team, add members, and a message Onboard users on your project the easy way. Things you can start building right now eam one place things a gardless ated the
  • 64. Have a conversation about work items Tabs When your app needs a large area to present information to users a tab is a great place to show a list of work items or a dashboard
  • 65. Have a conversation about work items Tabs When your app needs a large area to present information to users a tab is a great place to show a list of work items or a dashboard Chat in context Users can chat about your page, interact with it and draw people’s attention to important information all in one place
  • 66. Have a conversation about work items Tabs When your app needs a large area to present information to users a tab is a great place to show a list of work items or a dashboard Chat in context Users can chat about your page, interact with it and draw people’s attention to important information all in one place Post tab threads Conversations within the tab will be posted in the team’s channel and promote your tab
  • 67. Share a sales report Message extensions Search for or show recently viewed reports.
  • 68. Share a sales report Message extensions Search for or show recently viewed reports. Compose with card Add comments and @mention the people who need to see the information.
  • 69. Share a sales report Message extensions Search for or show recently viewed reports. Compose with card Add comments and @mention the people who need to see the information. Share to team Now everyone can see the summary, open a link to your content or take immediate action right from the chat.
  • 70. Submit a social media post for approval Social media dashboard A great view of my company’s social media engagement and how we are trending
  • 71. Submit a social media post for approval Social media dashboard A great view of my company’s social media engagement and how we are trending Submit a post for approval Approval workflows get routed to the right team for quick review and automated posting to your corporate social media accounts
  • 72. Submit a social media post for approval Social media dashboard A great view of my company’s social media engagement and how we are trending Submit a post for approval Approval workflows get routed to the right team for quick review and automated posting to your corporate social media accounts Notify the right team Approvals are easier when no one person is a bottleneck. Route requests that are actionable without leaving your working environment. Approve from your desktop or on the go.
  • 73. Customize approval notifications Start a workflow from a bot or a tab Use a Task Modal or an adaptive card to trigger your workflow.
  • 74. Customize approval notifications Start a workflow from a bot or a tab Use a Task Modal or an adaptive card to trigger your workflow Bundle notifications When your flow is less time sensitive your app can send a digest of notifications instead of interrupting your users with every request.
  • 75. Customize approval notifications Start a workflow from a bot or a tab Use a Task Modal or an adaptive card to trigger your workflow Bundle notifications When your flow is less time sensitive your app can send a digest of notifications instead of interrupting your users with every request Let your users have control A customized app is an app with user investment. The task modal on the left can be easily built by hosting an adaptive card
  • 76. Your “task” hub The Development channel has some tasks for Daniella This is a project with specific goals and work items.
  • 77. Your “task” hub The Development channel has some tasks for Daniella This is a project with specific goals and work items The Marketing channel is in another team But Daniella has things she needs to do here too.
  • 78. Your “task” hub The Development channel has some tasks for Daniella This is a project with specific goals and work items The Marketing channel is in another team But Daniella has things she needs to do here too. Personal apps can create a unified view Daniella will likely start her day here, and it’s a great place to see all the work she has to do in one place… with handy links to take her to the channels where she needs to collaborate
  • 79. Find a restaurant Find a restaurant without losing your place @mentioning your app in the command box gives users global access to your app, while they are anywhere in teams.
  • 80. Find a restaurant Find a restaurant without losing your place @mentioning your app in the command box gives users global access to your app, while they are anywhere in teams. Search with one or more parameters You can make your app incredibly powerful with single parameter or multi parameter queries, and even default queries you save for everyone or per user.
  • 81. Find a restaurant Find a restaurant without losing your place @mentioning your app in the command box gives users global access to your app, while they are anywhere in teams. Search with one or more parameters You can make your app incredibly powerful with single parameter or multi parameter queries, and even default queries you save for everyone or per user. Share Users can get the information they need and get back to work or share your card with others.
  • 82. Convert chat to a sales opportunity Message actions Your users can send chats to your service and include time, sender information, text and if you use graph chats above and below the selection for additional context.
  • 83. Convert chat to a sales opportunity Message actions Your users can send chats to your service and include time, sender information, text and if you use graph chats above and below the selection for additional context. Tasks where the conversation is happening Create one or more actions that appear in our context menus.
  • 84. Convert chat to a sales opportunity Message actions Your users can send chats to your service and include time, sender information, text and if you use graph chats above and below the selection for additional context. Tasks where the conversation is happening Create one or more actions that appear in our context menus. Confirm with a task module Keeping the user in control but using natural language processing to extract the words you need to get the job done quickly and intelligently.
  • 85. Onboard a team Kicking off a new project can be easier Using Teams templates and your app you can automate the onboarding process.
  • 86. Onboard a team Kicking off a new project can be easier Using Teams templates and your app you can automate the onboarding process. Simplify known workflows Select users who will be team owners vs team members to comply with access and role limitations, pick documents in your service or on SharePoint to add to the mix. Add a welcome message.
  • 87. Onboard a team Kicking off a new project can be easier Using Teams templates and your app you can automate the onboarding process. Simplify known workflows Select users who will be team owners vs team members to comply with access and role limitations, pick documents in your service or on SharePoint to add to the mix. Add a welcome message. Bot notification In the new team we start the project knowing what we are doing and where everything is.
  • 88. Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines Thanks! Microsoft Teams wants to hear your feedback! If you would like to participate in future Microsoft Teams research, please sign up using the link below. Your privacy is important to us, and we will never share your information. URL: https://aka.ms/MSTeamsResearch
  • 90. Getting started Framework Components ResourcesMicrosoft Teams | Design Guidelines Let’s Build one
  • 91. Getting started Framework Components ResourcesProblem Statement Michael is always getting asked to do things in chats. Managing all these requests is taking up a lot of time, it’s frustrating not to be able to share priorities with people requesting work. It’s not just what he’s working on its where your stuff in his priorities. MB Hey dude, I need a logo. Can you bang one out and send it to me by lunch?

Editor's Notes

  1. Tabs are the quickest way for you to start developing for Teams. Your content goes right into the channel where people are talking about it. As you’ll see later Tabs are a great building block in a well rounded solution offering.
  2. One of the big differetiators between a bot for Teams and one for slack is that a bot can bring along the context of tabs. Use bots for summary answers to questions and proactive suggestions based on heuristics within your service. Deep linking answers to a Tab can let you focus on task completion rather than multiturn interactions within a conversation.
  3. One of the most important aspects of with a good bot is handling multiple ways of understanding user intent. Don’t just rely on a Thesaurus for synonyms get different kinds of people to submit questions for the kind of responses you support.
  4. One of the most important aspects of with a good bot is handling multiple ways of understanding user intent. Don’t just rely on a Thesaurus for synonyms get different kinds of people to submit questions for the kind of responses you support.
  5. Think of your bot as a specific persona. How would it respond to different scenarios. Stating your persona internally will help everyone write responses in a cohesive way.
  6. Bots and connectors can send the connector card, and when you need a simple form UI use an actionable card. For more complex dialogs have your card deep link to your tab.
  7. When you use a sign in card we’ll store the token locally so you wont need to show it again.
  8. Your app can send notifications when it needs to. Notifications can deep link to a card or to a tab.
  9. Tabs are the quickest way for you to start developing for Teams. Your content goes right into the channel where people are talking about it. As you’ll see later Tabs are a great building block in a well rounded solution offering.
  10. Tabs are the quickest way for you to start developing for Teams. Your content goes right into the channel where people are talking about it. As you’ll see later Tabs are a great building block in a well rounded solution offering.
  11. Tabs are the quickest way for you to start developing for Teams. Your content goes right into the channel where people are talking about it. As you’ll see later Tabs are a great building block in a well rounded solution offering.
  12. Would suggest: “We’re on your team” (or even, “We’re on the same team”) Style guide is to use contractions when possible and it’s also odd to have it in the header but not the subhead