Локализация приложения

При локализации приложения Microsoft Teams учитывайте следующие факторы.

  1. Локализация описания в AppSource.
  2. Локализация строк в манифесте приложения.
  3. Обработка отправленного пользователями локализованного текста.

Локализация описания в AppSource

Если вы публикуете приложение в Microsoft Teams Store, предоставьте метаданные (описания, снимки экрана, имя) на языках, на которые должно быть указано ваше приложение, и явно укажите эти языки на странице описания Marketplace в Центре партнеров. Дополнительные сведения см. в статье Локализованные шрифты Microsoft AppSource. Для поддержки локализованных описаний в Магазине Teams можно добавить в список дополнительные языки. Сведения о языке по умолчанию, которые вы предоставляете в Центре партнеров для описания, отображаются в Описание веб-сайта AppSource для вашего приложения. В настоящее время языком по умолчанию является английский.

Настройка локализации

Чтобы настроить дополнительный язык для приложения, в Центре партнеров выберите английский и дополнительный язык приложения. В следующем примере в качестве дополнительного языка используется французский.

  1. Добавление английского языка
    • Введите имя приложения.
    • Введите краткое описание приложения на английском языке.
    • Введите длинное описание приложения на английском языке.
    • В длинном описании введите: This app is available in French.
    • Загрузите изображения пользовательского интерфейса приложения (на английском языке).
  2. Добавление французского языка
    • Введите имя приложения.
    • Введите краткое описание приложения на французском языке.
    • Введите длинное описание приложения на французском языке.
    • Загрузите изображения пользовательского интерфейса приложения (на французском языке).

Изображения, которые вы загружаете на английском языке, используются в AppSource.

Локализация строк в манифесте приложения

Чтобы локализовать приложение, используйте схему приложения Microsoft Teams v1.5 и более поздние версии. Это можно сделать, задав для атрибута $schema в файле manifest.json значение https://developer.microsoft.com/json-schemas/teams/v1.5/MicrosoftTeams.schema.json или выше и обновив свойство manifestVersion до версии $schema (в данном случае 1.5).

Добавьте свойство localizationInfo с языком по умолчанию, поддерживаемым приложением. Язык по умолчанию используется в качестве окончательного резервного языка, если параметры клиента пользователя не соответствуют ни одному из дополнительных языков.

Примечание.

Версия манифеста должна быть одинаковой для файлов manifest.json и localization.json.

Пример изменения manifest.json

Следующий manifest.json помогает добавить свойство localizationInfo с языком по умолчанию, поддерживаемым приложением вместе с additionalLanguages:

{
  "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.5/MicrosoftTeams.schema.json",
  "manifestVersion": "1.5",
  "localizationInfo": {
  "defaultLanguageTag": "en",
  "additionalLanguages": [
   {
    "languageTag": "es-mx",
    "file": "es-mx.json"
   }
  ]
 }
  ...
}

Пример изменения JSON локализации

Ниже приводится пример JSON локализации:

{
  "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.5/MicrosoftTeams.Localization.schema.json",
  "manifestVersion": "1.5",
  "name.short": "Localización",
  "name.full": "Aplicación de localización",
  ...
}

Вы можете предоставить дополнительные JSON-файлы с переводами всех строк с интерфейсом пользователя в манифесте. Эти файлы должны соответствовать схеме JSON файла локализации и их необходимо добавить в свойство localizationInfo манифеста. Каждый файл сопоставляется с тегом языка, который используется ведущим приложением Microsoft 365, например Teams или Outlook, для выбора соответствующих строк. Тег языка имеет вид <language>-<region>, но вы можете опустить часть <region> для всех регионов, которые поддерживают нужный язык.

Ведущее приложение Microsoft 365 применяет строки в следующем порядке: строки языка по умолчанию,> строки только языка пользователя,> язык пользователя и строки региона пользователя.

Например, вы предоставляете язык fr по умолчанию (французский, все регионы), а дополнительные языковые файлы для en (английский, все регионы) и en-gb (английский, Великобритания), язык пользователя имеет значение en-gb. В зависимости от выбора языка происходят следующие изменения.

  1. Ведущее приложение Microsoft 365 принимает fr строки и перезаписывает их строками en .
  2. Перезапишите en строки строками en-gb .

Если для пользовательского языка задано значение en-ca, в зависимости от выбранного языка происходят следующие изменения:

  1. Ведущее приложение Microsoft 365 принимает fr строки и перезаписывает их строками en .
  2. Так как локализация en не en-ca предоставляется, используются локализации.

Если для языка пользователя задано значение es-es, ведущее приложение Microsoft 365 принимает fr строки. Ведущее приложение Microsoft 365 не переопределяет строки с помощью языковых файлов, так как не es предоставляется перевод.es-es

Таким образом, в манифесте должны быть переведены только языки верхнего уровня. Например, вместо en используйте en-us. Переопределения уровня региона необходимо предоставлять только для нескольких строк, которые в них нужны.

Пример изменения manifest.json

В следующем примере показано изменение manifest.json.

{
  ...
  "localizationInfo": {
    "defaultLanguageTag": "en",
    "additionalLanguages": [
      {
        "languageTag": "en-gb",
        "file": "en-gb.json"
      },
      {
        "languageTag": "fr",
        "file": "fr.json"
      },
      {
        "languageTag": "pl",
        "file": "pl.json"
      }
    ]
  }
  ...
}

Пример файла JSON локализации

В следующем примере показано изменение localization.json.

{
  "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.8/MicrosoftTeams.Localization.schema.json",
  "name.short": "Le App",
  "name.full": "App pour Microsoft Teams",
  "description.short": "Créez d'excellentes applications pour Microsoft Teams avec App.",
  "description.full": "Créez de nouvelles applications Microsoft Teams, concevez et prévisualisez des cartes bot, et explorez la documentation avec App.",
  "staticTabs[0].name": "Editeur de manifest",
  "staticTabs[1].name": "Editeur de cartes",
  "staticTabs[2].name": "Bibliothèque de contrôles",
  "bots[0].commandLists[0].commands[0].title": "chercher",
  "bots[0].commandLists[0].commands[0].description": "Rechercher la documentation Teams pertinente"
}

Обработка отправленного пользователями локализованного текста

Если вы предоставляете локализованные версии приложения, пользователи отвечают на том же языке. Так как Teams не переводит отправки пользователей на язык по умолчанию, приложение должно обрабатывать локализованные языковые ответы. Например, если у вас есть локализованный commandList, то ответами бота будет локализованный текст команды, а не язык по умолчанию. Ваше приложение должно отвечать соответствующим образом.

Пример кода

Название примера Описание .NET Node.js
Локализация приложений Локализация приложений Teams с помощью бота и вкладки. Просмотр Просмотр

Следующий этап

См. также