Questions about App Validation and Bots Policy for a Notification-Only Bot in Microsoft Teams

石川 敦己 235 Reputation points
2025-01-23T05:41:06.3266667+00:00

Hello, I have a question regarding the app validation process and bot policies for notification-only bots in Microsoft Teams.

I am currently developing a Teams bot to notify users of updates in our web application. This bot is intended to be published in the Teams Store in the future. The main requirements of this bot are as follows:

  • Notification-Only: No interactive communication with users.
  • 1-on-1 Chat: Notifications are sent in a 1-on-1 chat format because the information depends on user permissions.

I created a Teams app manifest that meets these requirements. However, during the app validation process, the following error was encountered:

The bot is not responding 

Upon reviewing the skipped test cases, it appears that the error occurred because the bot does not respond to three specific commands: Hi, Hello, and Help.

Indeed, I have not implemented these commands because the bot I am developing is designed solely for notifications and does not require interaction with users. To ensure this, I have set isNotificationOnly to true in the manifest to disable interactive functionality.

Additionally, considering development costs and resource efficiency, I have decided not to implement endpoints using frameworks like Express or Restify. Instead, my bot sends proactive messages directly to the Bot Framework REST API, which I have successfully tested.

Given these circumstances, I would greatly appreciate any guidance on whether it is possible to avoid implementing the aforementioned commands.

To reiterate, implementing these commands would not align with the purpose of our bot and would increase development costs, operational burdens, and maintenance requirements, which we believe should be avoided.

If implementing these commands is mandatory, I would be grateful if you could share any references or examples for deploying the bot using AWS Lambda instead of Azure.

Additionally, I hope for potential future changes to this policy.

Thank you very much for your support and understanding.

Below is my Teams app manifest. Sensitive information has been replaced with hoge.

{
  "$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.19/MicrosoftTeams.schema.json",
  "version": "1.0.0",
  "manifestVersion": "1.19",
  "id": "hoge",
  "name": {
    "short": "hoge",
    "full": ""
  },
  "developer": {
    "name": "hoge",
    "mpnId": "hoge",
    "websiteUrl": "hoge",
    "privacyUrl": "hoge",
    "termsOfUseUrl": "hoge"
  },
  "description": {
    "short": "hoge",
    "full": "hoge"
  },
  "icons": {
    "outline": "outline.png",
    "color": "color.png"
  },
  "accentColor": "#FFFFFF",
  "staticTabs": [
    {
      "entityId": "conversations",
      "scopes": [
        "personal"
      ]
    },
    {
      "entityId": "about",
      "scopes": [
        "personal"
      ]
    }
  ],
  "bots": [
    {
      "botId": "hoge",
      "scopes": [
        "personal"
      ],
      "isNotificationOnly": true,
      "supportsCalling": false,
      "supportsVideo": false,
      "supportsFiles": false
    }
  ],
  "validDomains": []
}

I am facing the same issue as the users in the following threads:

If this is a bug on Microsoft's side, I sincerely hope it will be resolved promptly.

Microsoft Teams
Microsoft Teams
A Microsoft customizable chat-based workspace.
10,850 questions
Microsoft Teams Development
Microsoft Teams Development
Microsoft Teams: A Microsoft customizable chat-based workspace.Development: The process of researching, productizing, and refining new or existing technologies.
3,552 questions
{count} votes

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.