Teams移动端isNotificationOnly: true不生效,需修改manifest.json吗?
Teams移动端isNotificationOnly配置不生效问题排查
问题描述
已配置Teams Bot将isNotificationOnly设为true以禁用用户发送消息,该配置在PC端Teams正常生效,但移动端仍允许用户发送消息,询问是否需要对manifest.json进行额外修改。
当前Bot配置片段:
"bots": [ { "botId": "11111111-1111-1111-1111-111111111111", "scopes": [ "personal", "groupchat" ], "supportsFiles": false, "isNotificationOnly": true } ]
项目环境:
<TargetFramework>net6.0</TargetFramework>
完整manifest.json:
{ "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.11/MicrosoftTeams.schema.json", "manifestVersion": "1.11", "version": "1.1.0", "id": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", "packageName": "com.XXXX.teams.XXXXX.framework.XXXX", "developer": { "name": "XXXX", "websiteUrl": "https://XXXXX.com", "privacyUrl": "https://XXXXX.com/company/legal/privacy-policy", "termsOfUseUrl": "https://XXXXX.com/company/legal/privacy-policy" }, "icons": { "color": "color.png", "outline": "outline.png" }, "name": { "short": "XXXXX Bot ", "full": "XXXXX Bot" }, "description": { "short": "Provide interactive automation between end user and Neurons Bots.", "full": "The XXXX bot for Microsoft Teams provides interactive capabilities between the end user and Ivanti Neurons Bots. Administrators now can solicit real-time responses from their users during the execution of a Bots workflow and use that input to deliver a more tailored experience to their end user." }, "accentColor": "#FF1515", "bots": [ { "botId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx", "scopes": [ "personal", "groupchat" ], "supportsFiles": false, "isNotificationOnly": true } ], "permissions": [ "identity", "messageTeamMembers" ], "validDomains": [ "token.botframework.com" ], "configurableProperties": [ "name", "shortDescription", "longDescription", "smallImageUrl", "largeImageUrl", "accentColor", "developerUrl", "privacyUrl", "termsOfUseUrl" ] }
预期效果(PC端):
当前移动端效果:
解决建议
升级manifest版本
当前使用的manifest版本为v1.11,虽然isNotificationOnly从v1.8开始支持,但移动端对旧版本manifest的适配可能存在滞后。建议将manifest升级到最新稳定版本(如v1.16),同步更新schema链接为对应版本的地址,重新打包发布应用。更新Teams移动端版本
旧版本Teams移动端可能未完全支持isNotificationOnly配置,需引导用户将Teams App更新到应用商店中的最新版本后再测试效果。清除缓存并重部署应用
移动端可能缓存了旧的应用配置,修改manifest后需重新打包成.zip文件,上传到Teams管理中心完成更新;同时让用户清除Teams App缓存或重新安装应用,确保加载最新配置。代码层拦截兜底
如果上述配置调整后仍未生效,可在Bot代码中添加消息拦截逻辑,当收到用户发送的消息时直接返回提示信息,示例C#代码:protected override async Task OnMessageActivityAsync(ITurnContext<IMessageActivity> turnContext, CancellationToken cancellationToken) { await turnContext.SendActivityAsync(MessageFactory.Text("此Bot仅用于推送通知,无法接收您的消息"), cancellationToken); }
内容的提问来源于stack exchange,提问作者Vivek Nuna
相关产品推荐
相关产品推荐

