【问题标题】:Microsoft Teams App localisation does not work anymoreMicrosoft Teams 应用本地化不再起作用
【发布时间】:2020-08-04 13:03:29
【问题描述】:

我们正在尝试构建一个支持英语 (en-us) 和德语 (de-de) 的多语言聊天机器人。直到 2020 年 6 月中旬左右,我们一直在 Microsoft Teams 上使用它,没有任何问题。此后,我们注意到本地化不再正常工作。我们还注意到,这与 Teams 推出 manifest version 1.7 的时间差不多。观察到以下情况:

  • 如果 Teams 管理员在其 MS Teams 客户端语言为 en-us 时上传应用程序,则所有自定义应用程序都会忽略“de-de”本地化信息,并且所有信息以及命令都仅以英语显示,即使如果用户的客户端语言是德语。

  • 如果管理员在上传应用程序时使用的是 de-de 语言,则会发生完全相反的情况。来自机器人的所有信息都将使用德语,而默认语言(英语)将被忽略。

作为示例,我将分享此屏幕截图。

在这里,您可以看到虽然客户端语言是德语,但建议命令以英语显示。事实上,机器人名称和描述也是英文的。事实上,我们观察到 Microsoft 的官方清单 template 也表现出相同的行为。

这是我们的清单文件: manifest.json

{
  "$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.7/MicrosoftTeams.schema.json",
  "manifestVersion": "1.7",
  "version": "1.0.0",
  "id": "00000000-0000-0000-0000-00000000000",
  "packageName": "com.sample.sample.sample.dev.bot3",
  "developer": {
    "name": "Sample Inc.",
    "websiteUrl": "https:/sample.z6.web.core.windows.net",
    "privacyUrl": "https://sample.z6.web.core.windows.net/privacy.html",
    "termsOfUseUrl": "https://sample.z6.web.core.windows.net/tou.html"
  },
  "localizationInfo": {
    "defaultLanguageTag": "en-us",
    "additionalLanguages": [
      {
        "languageTag": "de-de",
        "file": "de-de.json"
      }
    ]
  },
  "icons": {
    "color": "color.png",
    "outline": "outline.png"
  },
  "name": {
    "short": "Manifest Test EN",
    "full": "Manifest Test EN Bot"
  },
  "description": {
    "short": "Manifest Test EN",
    "full": "Manifest Test EN Bot"
  },
  "accentColor": "#40497E",
  "bots": [
    {
      "botId": "00000000-0000-0000-0000-00000000000",
      "scopes": [
        "personal"
      ],
      "supportsFiles": true,
      "isNotificationOnly": false,
      "commandLists": [
        {
          "scopes": [
            "personal"
          ],
          "commands": [
            {
              "title": "Personal Command 1",
              "description": "Description of Personal Command 1"
            },
            {
              "title": "Personal Command N",
              "description": "Description of Personal Command N"
            }
          ]
        }
      ]
    }
  ],
  "staticTabs": [
  ],
  "permissions": [
    "identity",
    "messageTeamMembers"
  ],
  "validDomains": [
    "sample.z6.web.core.windows.net",
    "token.botframework.com"
  ]
}

本地化文件 de-de.json

{
    "$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.7/MicrosoftTeams.Localization.schema.json",
    "name.short": "Manifest Test DE",
    "name.full": "Manifest Test DE Bot",
    "description.short": "Manifest Test DE",
    "description.full": "Manifest Test DE Bot",
    "bots[0].commandLists[0].commands[0].title": "Persönlicher Befehl 1",
    "bots[0].commandLists[0].commands[0].description": "Beschreibung des persönlichen Befehls 1",
    "bots[0].commandLists[0].commands[1].title": "Beschreibung des persönlichen Befehls N",
    "bots[0].commandLists[0].commands[1].description": "Das ist DE1"
}

【问题讨论】:

    标签: localization botframework manifest microsoft-teams


    【解决方案1】:

    我们在这里遇到了同样的问题,只是我们能够确定向用户显示应用程序的语言是安装应用程序时使用的语言。

    因此,在您的情况下,当您的 Teams 语言设置为德语时,该应用程序已正确安装,如果您现在切换到另一种语言,该应用程序仍将使用德语。我们已经对多个应用程序、多个用户和多个租户进行了尝试。使用的语言始终是安装应用程序的客户端的语言,而不是当前用户使用的语言。

    因此,例如,当使用德语客户端安装应用程序时,将为该用户和为其安装该应用程序的租户的所有其他用户以德语配置该应用程序。如果安装应用程序的用户将语言(fe:英语)切换到另一种支持的语言,则该语言将保持为德语(即使客户端重新启动)。其他用户也是如此,例如,如果用户在安装时使用英语应用程序,那么该应用程序也将为该用户使用德语而不是英语,因为它是由默认使用德语的用户安装的语言。

    【讨论】:

    • 您好,Arne,感谢您分享您的意见。我们正在观察相同的行为。然而,这真的很奇怪,因为我们的用户在过去一年中一直在多语言模式下使用该机器人,并且它运行时没有任何问题。自 6 月以来,我们才注意到这个问题。
    【解决方案2】:

    您能否尝试将清单中的版本更新为 1.2?

    这是更新版本后的结果

    【讨论】:

    • 感谢您的回答。我尝试了您建议的解决方案,但不幸的是,它不起作用。我将版本更改为1.2,本地化问题仍然存在。当我将语言切换为德语时,我的机器人元数据和建议仍然是英语。
    • 根据manifest schemaversion字段仅指bot/app版本
    • 您好 Nikitha,是的,我们已经多次卸载并重新安装了这些应用程序。另一个观察结果是,这个问题会影响我们所有的机器人,而不仅仅是最近更新/上传的机器人。我们还尝试过注销/登录、卸载/重新安装 Teams 以及手动删除 Mac 上的 Teams 缓存,但不幸的是,这些似乎都不起作用。我们甚至升级到了架构版本 1.7,但这也没有用。
    • Nikitha 也请查看我对此主题的回复。您可能会发现这是当前 MS Teams 应用程序的一个错误。
    • 我们可以重现我们这边的问题引发了一个错误。
    猜你喜欢
    • 2020-02-27
    • 2020-04-06
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多