Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this can be kept. according to m365 agents toolkit the test tools still do not support application-hosted media bots and the name should be changed from bot framework emulator to "M365 Agent playground"

Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@ Application-hosted media bots must be directly accessible on the internet. These
* The service hosting an application-hosted media bot must also configure each VM instance with a public-facing port, which maps to the specific instance.
* For an Azure Cloud Service, this requires an instance input endpoint. For more information, see [enable communication for role instances in Azure](/azure/cloud-services/cloud-services-enable-communication-role-instances).
* For a VM Scale Set, a NAT rule on the load balancer must be configured. For more information, see [virtual networks and virtual machines in Azure](/azure/virtual-machines/windows/network-overview).
* Bot Framework Emulator doesn't support application-hosted media bots.

The next section provides details on scalability and performance considerations of application-hosted media bots.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ ms.date: 03/11/2025

# Add Power Virtual Agents chatbot

Power Virtual Agents is a no-code, guided graphical interface solution that empowers every member of your team to create rich, conversational chatbots that easily integrate with the Teams platform. All content authored in Power Virtual Agents renders naturally in Teams. Power Virtual Agents bots engage with users in the Teams native chat canvas. The IT administrators, business analysts, domain specialists, and skilled app developers can design, develop, and publish intelligent virtual agents for Teams without having to setup a development environment. They can create a web service, or directly register with the Bot Framework.
Power Virtual Agents is a no-code, guided graphical interface solution that empowers every member of your team to create rich, conversational chatbots that easily integrate with the Teams platform. All content authored in Power Virtual Agents renders naturally in Teams. Power Virtual Agents bots engage with users in the Teams native chat canvas. The IT administrators, business analysts, domain specialists, and skilled app developers can design, develop, and publish intelligent virtual agents for Teams without having to set up a development environment. They can create a web service, or directly register with the Azure portal.

This document guides you on how to make your chatbot available in Teams through the Power Virtual Agents portal and add your bot to Teams using Developer Portal.

Expand Down Expand Up @@ -90,7 +90,7 @@ If [uploading custom apps is enabled](/microsoftteams/admin-settings) in your Te

1. **Start a chat**

The set up process for adding your Power Virtual Agents chat bot to Teams is complete. You can now start a conversation with your bot in a personal chat.
The setup process for adding your Power Virtual Agents chat bot to Teams is complete. You can now start a conversation with your bot in a personal chat.

## See also

Expand Down
14 changes: 14 additions & 0 deletions msteams-platform/bots/how-to/bot-messages-ai-generated-content.md
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will likely need to rewrite this section. Here is a snip from Teams AI Library docs on AI Generated labels:

When sending messages using AI, Teams recommends including an indicator that the message was generated by AI. This can be done by calling the .AddAIGenerated() method on outgoing messages. This will help users understand that the message was generated by AI, and not by a human and can help with trust and transparency.

Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ An AI label on your bot message indicates that it’s generated by AI. While AI-

If you're using **Teams AI library** to build your bot, AI label is automatically enabled for all AI-powered bot messages in the `ai` module within the `PredictedSayCommand` action. For more information, see [AIEntity interface](https://github.com/microsoft/teams-ai/blob/main/js/packages/teams-ai/src/actions/SayCommand.ts#L67).

<!--
If you're using **Microsoft Bot Framework SDK** to build your bot, include `additionalType` under the `entities` array of the `message` entity object. The following code snippet shows how to enable the AI label in a bot message:

```javascript
Expand All @@ -107,15 +108,18 @@ await context.sendActivity({
| Property | Type | Required | Description |
|--|--|--|--|
| `additionalType` | Array | Yes | Enables AI label in the bot message.<br>Allowed value: `AIGeneratedContent` |
-->

After you add an AI label, your bot's message shows an **AI generated** label next to the bot's name. When you hover over the AI label, a disclaimer appears stating, **AI-generated content may be incorrect.**. The AI label and disclaimer can't be customized for AI-powered bots.

<!--
### Error handling

| Error code | Description |
| --- | --- |
| 400 | Multiple root message entities found under `entities` array. |
| 400 | Error parsing message entity from `entities` array. |
-->

## Citations

Expand Down Expand Up @@ -165,6 +169,7 @@ Citations in your bot's messages can include the following:

If you're using **Teams AI library** to build your bot, citations are added to an AI-powered bot message automatically through `PredictedSayCommand` action. You can also modify the `PredictedSayCommand` action to add citations to your bot message. For more information, see [ClientCitation interface](https://github.com/microsoft/teams-ai/blob/main/js/packages/teams-ai/src/actions/SayCommand.ts#L42).

<!--
If you're using **Bot Framework SDK** to build your bot, include `citation` under the `entities` array. Following is an example code snippet:

# [JavaScript](#tab/js)
Expand Down Expand Up @@ -289,9 +294,11 @@ async def on_message(context: TurnContext, state: TurnState):
| `citation.appearance.image` | Object | | Information about the citation's icon. |
| `citation.appearance.image.@type` | String | ✔️ | The object of the citation icon. Must be `ImageObject`. |
| `citation.appearance.image.name` | String | ✔️ | The name of the predefined icon. It renders the citation icon in the details of the citation reference.<br>Allowed values: `Microsoft Word`, `Microsoft Excel`, `Microsoft PowerPoint`, `Microsoft OneNote`, `Microsoft SharePoint`, `Microsoft Visio`, `Microsoft Loop`, `Microsoft Whiteboard`, `Source Code`, `Sketch`, `Adobe Illustrator`, `Adobe Photoshop`, `Adobe InDesign`, `Adobe Flash`, `Image`, `GIF`, `Video`, `Sound`, `ZIP`, `Text`, `PDF` |
-->

After you enable citations, the bot message includes in-text citations and references. The in-text citations display the reference details when users hover over the citation.

<!--
### Error handling

| Error code | Description |
Expand All @@ -301,6 +308,7 @@ After you enable citations, the bot message includes in-text citations and refer
| 400 | Bot message with more than 20 citations. |
| 400 | The `appearance` object is empty. |
| 400 | Error while parsing citation entity with ID: X. |
-->

## Feedback buttons

Expand Down Expand Up @@ -348,6 +356,7 @@ export const app = new Application<ApplicationTurnState>({
For more information, see the [const app variable](https://github.com/microsoft/teams-ai/blob/main/js/samples/04.ai-apps/h.datasource-azureOpenAI/src/app.ts#L65).

After you enable feedback buttons, all `SAY` commands from the bot have `feedbackLoopEnabled` in the `channelData` object automatically set to `true`.
<!--

To enable feedback buttons in a bot built using **Bot Framework SDK**, define a `feedbackLoop` object under the `channelData` object of your bot message.

Expand Down Expand Up @@ -383,6 +392,7 @@ If you set `feedbackLoop.type` to `default`, the default feedback form appears w
```

You must respond to this invoke call with a dialog (referred to as task modules in TeamsJS v1.x), the same way you would respond to a `task/fetch` invoke. For more information regarding invoking dialogs in bots, see [use dialogs with bots](../../task-modules-and-cards/task-modules/task-modules-bots.md).
-->

### Handle feedback

Expand All @@ -395,6 +405,7 @@ app.feedbackLoop(async (_context: TurnContext, _state: TurnState, feedbackLoopDa
```

For more information, see the [asynchronous callback function](https://github.com/microsoft/teams-ai/blob/main/js/samples/04.ai-apps/h.datasource-azureOpenAI/src/app.ts#L111).
<!--

For a bot built using **Bot Framework SDK**, you must have an `onInvokeActivity` handler to process the feedback. Ensure that you return a status code `200` with an empty JSON object as a response.

Expand Down Expand Up @@ -443,6 +454,7 @@ If a user uninstalls your bot and still has access to the bot chat, Teams remove
| Error code | Description |
| --- | --- |
| 400 | `message/submitAction` invoke response isn't empty. |
-->

## Sensitivity label

Expand All @@ -464,6 +476,7 @@ Bot responses might contain confidential information or be accessible only to ce
### Add sensitivity label

For bots built using **Teams AI library**, sensitivity label can be added through `PredictedSayCommand` action. For more information, see [SensitivityUsageInfo interface](https://github.com/microsoft/teams-ai/blob/main/js/packages/teams-ai/src/types/AIEntity.ts#L46).
<!--

For bots built using **Bot Framework SDK**, add a sensitivity label to your bot message by modifying the message to include `usageInfo` in the `entities` object.

Expand Down Expand Up @@ -547,6 +560,7 @@ After you add the sensitivity label, your bot message displays a shield icon. Us
| 400 | Error parsing message entity from `entities` array. |
| 400 | Citation level `usageInfo.@id` value doesn't match the message level `usageInfo.@id` in at least one instance. |
| 400 | There are multiple citation-level `usageInfo` properties with the same `@id`, but their `name` and `description` properties are different. |
-->

## Modify `PredictedSayCommand`

Expand Down
3 changes: 1 addition & 2 deletions msteams-platform/bots/how-to/bots-filesv4.md
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's confirm with engineering this is accurate. I'm not sure the snips will still make sense after the name change

Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ ms.owner: angovil

> [!IMPORTANT]
>
> * This article is based on the v4 Bot Framework SDK.
> * Bots don't support sending and receiving files in Government Community Cloud High (GCC High), Department of Defense (DoD), and Teams operated by 21Vianet environments.

There are two ways to send files to and receive files from a bot:
Expand Down Expand Up @@ -453,7 +452,7 @@ The following code sample demonstrates how to obtain file consent and upload fil

|**Sample name** | **Description** | **.NET** | **Node.js** | **Python**| **Manifest**|
|----------------|-----------------|--------------|----------------|-----------|-----------|
| File upload | This bot sample for Teams demonstrates file upload capabilities using Bot Framework v4, enabling users to upload files and view inline images within chats. | [View](https://github.com/OfficeDev/Microsoft-Teams-Samples/tree/main/samples/bot-file-upload/csharp) | [View](https://github.com/OfficeDev/Microsoft-Teams-Samples/tree/main/samples/bot-file-upload/nodejs) | [View](https://github.com/OfficeDev/Microsoft-Teams-Samples/tree/main/samples/bot-file-upload/python) | [View](https://github.com/OfficeDev/Microsoft-Teams-Samples/tree/main/samples/bot-file-upload/csharp/demo-manifest/bot-file-upload.zip)
| File upload | This bot sample for Teams demonstrates file upload capabilities using Teams AI library, enabling users to upload files and view inline images within chats. | [View](https://github.com/OfficeDev/Microsoft-Teams-Samples/tree/main/samples/bot-file-upload/csharp) | [View](https://github.com/OfficeDev/Microsoft-Teams-Samples/tree/main/samples/bot-file-upload/nodejs) | [View](https://github.com/OfficeDev/Microsoft-Teams-Samples/tree/main/samples/bot-file-upload/python) | [View](https://github.com/OfficeDev/Microsoft-Teams-Samples/tree/main/samples/bot-file-upload/csharp/demo-manifest/bot-file-upload.zip)

## Next step

Expand Down