Управление

Коннектор Phrase Strings (синхронизация заданий)

Контент автоматически переведен с английского языка с помощью Phrase Language AI.

Интеграция Phrase Strings (в интерфейсе Strings она называется «Синхронизация заданий») связывает Phrase TMS и Phrase Strings. Интеграция поддерживает синхронизацию как на уровне заданий, так и на уровне проектов.

  • Синхронизация заданий

    «Задания», созданные и запущенные в Strings со статусом «В процессе», можно импортировать в TMS для перевода, а затем отправить обратно в Strings.

    Рекомендуется для рабочих процессов с пакетной обработкой, требующих детального контроля.

  • Синхронизация на уровне проекта

    Все ключи в выбранном проекте Strings передаются в TMS без необходимости создания задания. Новые и обновлённые ключи автоматически становятся доступными для синхронизации.

    Рекомендуется для непрерывных процессов локализации.

Предварительные требования

  • Доступ к приложениям TMS и Strings.

  • Коды языков, используемые в проекте TMS, должны совпадать с кодами языковых стандартов в задании Strings.

  • Язык по умолчанию для проекта Strings должен совпадать с языком источника, определенным в проекте TMS.

Важно

Файлы Figma могут отображаться в Strings как единый обновляемый файл, но не поддерживаются в TMS. CAT-редактор TMS может отображать переведенный контент только в определенном фрейме Figma в формате SVG.

По умолчанию контент из Strings импортируется в TMS в виде файлов XLIFF 2.0. При использовании APC для параметра «Тип файла» в настройках импорта файлов шаблона проекта TMS необходимо выбрать значение XLIFF 2.0 или «Автоопределение».

Статусы перевода ключей в Strings не поддерживаются. Синхронизация заданий отправляет целевой текст, хранящийся в Strings, в TMS независимо от того, подтвержден ключ или нет. Ключи с пометкой «не подтверждено» в Strings до импорта в TMS могут быть возвращены в Strings с пометкой «подтверждено», даже если целевые переводы не изменились.

Настройка проекта Strings «Использовать резервный вариант для неподтвержденных переводов» не применяется при синхронизации заданий. При обмене данными между Strings и TMS текст резервной локали не подставляется вместо неподтвержденных переводов ни в одном направлении.

Количество сегментов, созданных в TMS после импорта задания Strings, может отличаться от исходного количества ключей в следующих случаях:

  • Ключи помечаются в Strings как исключенные. Исключенные ключи не импортируются.

  • При создании задания в TMS в настройках импорта файлов XLIFF 2.0 включена опция «Сегментировать XLIFF». В этом случае количество сегментов может быть больше, чем количество ключей в Strings.

Ключи Strings могут содержать сущности HTML. : при настройке коннектора в TMS включите опцию «Поместить HTML-контент в CDATA», чтобы в TMS сохранялись HTML-сущности, а не отображались соответствующие им символы.

Начальные и конечные пробелы в исходном тексте ключа Strings не отображаются в CAT-редакторе TMS. Эти пробелы сохраняются в файле-шаблоне и при обратной синхронизации задания со Strings снова добавляются как в исходный текст, так и в перевод. Это может повлиять на настроенные в Strings проверки соблюдения ограничения на количество символов, поскольку во время перевода пробелы не учитываются в редакторе TMS.

Используя коннектор, можно контролировать несколько проектов и файлов в службе автоматического создания проектов (APC). Каждый проект требует индивидуального мониторинга в рамках одной службы автоматического создания проектов (APC).

При обработке триггера синхронизации заданий APC создаёт в TMS по одному заданию для каждой локали Strings. Порядок импорта этих заданий не гарантируется и не может быть настроен через шаблон проекта, назначенный правилу APC. Ни на одном этапе этого процесса механизм сортировки не применяется. Чтобы применять различную обработку для каждой группы локалей, настройте отдельные правила APC, каждое из которых указывает на свой шаблон проекта.

Коннектор использует аннотации локалей заданий, чтобы связать метаданные соответствующего проекта Phrase TMS с заданиями Strings и их локалями. Конечная точка API Phrase Strings для получения списка аннотаций локалей заданий извлекает эти метаданные. Конечная точка для получения списка целевых локалей задания также включает эти метаданные, если параметр include_annotations установлен в true. Задания с аннотациями содержат такие поля, как tms_project_id и tms_in_progress, которые позволяют отслеживать статус задания Strings в связанном с ним проекте Phrase TMS.

TMS не поддерживает использование одной и той же локали в качестве исходного и целевого языка в проекте. Например, если в задании Strings используется en-US в качестве исходного и целевого языка, целевую локаль en-US нельзя импортировать в TMS, а задание в целом нельзя пометить как завершённое. Не выбирайте исходную локаль в качестве целевой при создании заданий в Strings, которые будут синхронизироваться с TMS.

Сообщения ICU и формы множественного числа CLDR

При отправке на перевод в TMS заданий Strings, содержащих сообщения ICU или формы множественного числа, включите опцию «Разбирать сообщения ICU» в настройках импорта файлов XLIFF 2.0 или в шаблонах проектов TMS.

Варианты использования

Существует ряд вариантов использования коннектора:

  • Менеджеры проектов TMS могут добавить файлы непосредственно в проекты TMS из онлайн-хранилища.

  • Настройте портал отправителя Phrase TMS, чтобы позволить отправителям добавлять файлы к запросам непосредственно из Phrase Strings.

  • Используйте службу автоматического создания проектов (APC) TMS для автоматического создания новых проектов при обнаружении изменений в дате последнего изменения для отслеживаемых файлов или папок.

    • Для синхронизации на уровне заданий укажите в APC путь к подпапке заданий проекта в качестве отслеживаемого расположения (например, All projects / [project name] / [branch] / jobs).

    • Для синхронизации на уровне проекта укажите в APC путь только к проекту и ветке, без подпапки заданий, в качестве отслеживаемого расположения (например, All projects / [project name] / [branch]). Используйте мониторинг на основе расписания вместо мониторинга на основе вебхуков, поскольку синхронизация на уровне проекта не запускает задание Strings, и событие вебхука jobs:start никогда не срабатывает.

    • При синхронизации заданий APC срабатывает при следующих обновлениях заданий:

      • Добавление новых ключей или изменения в существующих ключах

      • Изменение срока выполнения задания в Strings

      Примечание

      Повторное открытие заданий не считается обновлением для службы автоматического создания проектов (APC).

    • При синхронизации на уровне проекта APC срабатывает в следующих случаях:

      • Вновь добавленные ключи

      • Изменения существующих ключей

    • Если при настройке службы автоматического создания проектов (APC) будет выбрано «каждый раз создать новый проект», удаленное онлайн-хранилище можно будет отслеживать не только на предмет обновлений оригинала, но и обновлений перевода

      При выборе функции отслеживания обновлений перевода любые изменения, внесенные в копию перевода в онлайн-хранилище, автоматически обновят память переводов в Phrase TMS.

    • Если выбрана опция «обновления перевода, сделанные на удаленном объекте, автоматически сохраняются в памяти переводов (TM)», изменения текста ключей на языке перевода Strings автоматически обновляются в памяти переводов TMS, используемой соответствующей службой автоматического создания проектов (APC).

  • Коннектор интерфейса приложений API в TMS можно использовать для автоматизации действий, выполняемых вручную через пользовательский интерфейс. Вебхуки можно использовать для уведомления сторонних систем об определенных событиях (например, изменении статуса задания). При синхронизации на уровне заданий вебхуки могут срабатывать при событии jobs:start.

Страница синхронизации заданий

На странице синхронизации заданий можно просмотреть и настроить синхронизацию для службы автоматического создания проектов (APC), которая использует коннектор Phrase Strings. Здесь есть как синхронизации, созданные непосредственно в Strings, так и те, которые были настроены в TMS, — с соответствующей информацией.

На странице «Синхронизация заданий» пользователи Strings с ролями администратора и менеджера проекта могут : создавать новые конфигурации синхронизации заданий, редактировать существующие (в том числе менять их статус с активного на неактивный и наоборот) или удалять их.

Существующие синхронизации заданий можно редактировать или удалять, используя соответствующие параметры в меню «Дополнительно» Меню «Дополнительно». Все изменения синхронизируются между Strings и TMS. При удалении синхронизации задания в TMS удаляется соответствующая служба APC.

Страница синхронизации заданий доступна как из меню «Интеграции», так и из меню «Задания» слева.

Настройка синхронизации заданий в Strings

Примечание

Если необходимые пользовательские поля определены в TMS, настройка синхронизации задания из Strings не поддерживается.

Чтобы настроить новую синхронизацию задания между Strings и TMS с базовой конфигурацией, выполните следующие шаги в интерфейсе Strings:

  1. На странице «Интеграции» выберите «Настроить» рядом с интеграцией «Синхронизация заданий».

    Откроется страница синхронизации заданий.

  2. Нажмите «+ Создать синхронизацию».

    Откроется окно создания синхронизации заданий.

  3. Укажите название синхронизации и выберите проект(ы) Strings для подключения к TMS из выпадающего списка «Назначенные проекты Strings».

    Можно включать только проекты с одинаковыми языковыми парами.

  4. При желании выберите шаблон проекта TMS. Выбранный шаблон проекта TMS должен соответствовать набору языков, определенному в назначенном проекте (или проектах) Strings.

    Синхронизированные задания будут добавлены в проект TMS, созданный на основе выбранного шаблона.

    • Если выбрано «По умолчанию», шаблон проекта TMS автоматически создается на основе выбранных проектов Strings.

  5. Выберите тип проекта, который нужно создать в TMS.

    • Непрерывный проект

      Опция по умолчанию.

    • Новый проект

      Новый проект TMS создается каждый раз, когда в заданиях Strings обнаруживаются изменения.

  6. В разделе «Экспортировать в Strings» укажите опции экспорта строк, чтобы контролировать, как переводы из TMS экспортируются в Strings.

    • Заменить существующий перевод

      Обновляет существующие целевые переводы в Strings.

    • Отметить задание как завершенное

      Автоматически помечает задание как завершенное в Strings.

    • Подтвердить неизмененный перевод в Strings

      Ключи с пометкой «не проверено» будут автоматически подтверждены в Strings, если целевой перевод не был изменен.

  7. При необходимости откройте «Расширенные параметры», чтобы отобразить дополнительные параметры экспорта.

    • Отметить язык как завершенный

      Помечает конкретный язык как завершенный, как только переводы на нем синхронизированы.

    • Создать новые ключи и обновить существующие

      Обеспечивает создание новых ключей из TMS в Strings и обновление существующих.

    • Использовать перевод только в том случае, если оригинал совпадает с сохраненной версией

      Предотвращает перезапись переводов, если исходный текст изменился в Strings с момента экспорта.

  8. Нажмите «Сохранить».

    Новая конфигурация синхронизации добавляется в список синхронизаций заданий TMS с неактивным статусом. Используйте переключатель в столбце «Активные», чтобы включить синхронизацию заданий.

Рекомендации

Для более сложных конфигураций настройте с помощью Phrase TMS.

При использовании пользовательского сопоставления любые необходимые изменения должны применяться к коннектору в TMS.

Создание коннектора Strings в Phrase TMS не приводит к автоматическому созданию APC для автоматизированного импорта/экспорта заданий. APC необходимо настроить отдельно в TMS.

Настройки Prase TMS

В некоторых организациях коннектор Phrase Strings создается автоматически с использованием идентификатора организации на платформе Phrase. Перед созданием коннектора вручную проверьте список коннекторов на странице «Коннекторы». Автоматически созданный коннектор выполняет аутентификацию на стороне сервера с использованием учетных данных вошедшего в систему пользователя, а не вручную введенного токена доступа.

Коннектор отображает статус «Ожидание», пока после его создания выполняется начальная синхронизация, а затем его статус меняется на «Активен». Статус «Ожидание» также присваивается коннектору при любом изменении его конфигурации или сохранении страницы его настроек, даже если существенных изменений не было. Пока коннектор отображает статус «Ожидание», его нельзя использовать в качестве источника для создания заданий в Phrase TMS. Дождитесь изменения статуса на «Активен», прежде чем создавать задания с помощью этого коннектора.

  1. На странице настроек Setup_gear.png прокрутите вниз до раздела «Интеграции».

  2. Нажмите на «Коннекторы».

    Откроется страница коннекторов.

  3. Нажмите «Новый коннектор».

    Откроется страница «Создать коннектор».

  4. Установите для параметра «Тип» значение «Phrase Strings» и укажите название коннектора.

  5. Введите идентификатор учетной записи и токен доступа, полученные в Strings.

  6. Нажмите «Проверить подключение».

    • В случае успеха рядом с кнопкой «Проверить соединение» появится небольшая галочка.

  7. Выберите элементы для импорта в TMS.

    Если целевые ключи не импортируются, файл XLIFF 2.0 можно дополнительно сегментировать, выбрав параметр «Сегментировать XLIFF» в разделе «Настройки импорта файлов» для файлов XLIFF 2.0.

    • Включите или отключите дополнительные параметры импорта по мере необходимости:

      • Использовать язык оригинала проекта TMS при импорте.

        Исходный язык проекта TMS применяется независимо от языка по умолчанию в проекте Strings.

      • Создать задание в TMS для каждого языка

        Включите эту опцию, чтобы предотвращать дублирование заданий TMS для языков, для которых работа уже выполняется. Если этот параметр включен, изменения ключей, которые уже являются частью активного задания TMS, не импортируются повторно до завершения исходного задания. Рекомендуется для дополнительного контроля при работе с несколькими языками.

      • Поместить HTML-контент в CDATA

        • Опция обеспечивает заворачивание сущностей HTML в CDATA для сохранения при передаче между Strings и TMS.

        • Опция позволяет импортировать контент, сочетающий синтаксис ICU и встроенные элементы HTML.

  8. Выберите режим экспорта.

    • Включите или отключите следующие параметры экспорта по мере необходимости:

      • Перезаписать переводы

        Отключите, чтобы предотвратить обновление существующих переводов содержимым файла.

      • Создать новые ключи или обновить их

        Отключите, чтобы предотвратить создание новых ключей и обновление существующих ключей.

      • Использовать перевод только если совпадает оригинал

        Переводы, не соответствующие последней версии оригинала, не включаются в синхронизацию. Это помогает поддерживать согласованность между исходным текстом и переводами, избегая устаревших или неправильных переводов.

      • Подтвердить только если перевод не был изменен

        Ключи с пометкой «не проверено» будут автоматически проверены в Strings, если целевой перевод не был изменен. Если этот параметр включен, каждый перевод, возвращенный из TMS, помечается в Strings как проверенный, независимо от того, был ли текст отредактирован или просто возвращен без изменений. Исключаются и остаются непроверенными только те ключи, исходный текст которых изменился в Strings, пока задание было открыто.

      • Отметить язык как завершенный

        Помечает конкретный язык как завершенный, как только переводы на нем синхронизированы.

      • Отметить задание как завершенное

        Если этот параметр выбран, задание будет отмечено как выполненное только после загрузки последней локали.

  9. При необходимости выберите папку по умолчанию (это можно сделать только после сохранения).

  10. Представлено сопоставление языков, которое при необходимости можно настроить. Убедитесь, что в конфигурации коннектора каждой локали Strings соответствует только одна локаль TMS. Изменения в сопоставлении языков не отразятся на существующих заданиях.

    Список разбивает на страницы пять проектов за раз, при этом проекты сортируются в алфавитном порядке; сначала от A-Z (с прописной буквы), а затем a-z (со строчной буквы).

  11. Нажмите «Сохранить».

    Коннектор добавлен в список на странице «Коннекторы».

Поддерживаются в интеграции:

  • Шаблоны проектов TMS

  • Рабочие процессы TMS

  • Описание задания (неприменимо при использовании синхронизации на уровне проекта)

  • Срок выполнения задания (неприменимо при использовании синхронизации на уровне проекта)

    Срок, установленный в Strings, обновит предельный срок проекта в TMS. При наличии нескольких разных сроков к проекту TMS будет применен самый дальний из них.

Перенесено из Strings в TMS в качестве справочного файла проекта:

  • Описания ключей

    Перенесено из Strings и отображается как контекстное примечание на панели контекстных примечаний редакторов CAT TMS.

  • Максимальная длина символов ключа

    Перенесено из Strings и отображается на панели контекстных примечаний редакторов CAT TMS.

  • Скриншоты

    Чтобы отображать скриншоты из Strings на панели контекстного примечания редакторов TMS CAT:

    • Включите опцию «Разрешить загрузку внешнего контента в редакторе Phrase CAT» в разделе настроек проекта TMS «Доступ и безопасность».

    • Выберите расширенный формат текста на панели контекстного примечания.

  • Пользовательские метаданные поддерживаемых форматов файлов:

    • .XLSX

    • .CSV

    • .XLIFF 2.0

Отслеживание обновлений перевода в Strings при помощи службы автоматического создания проектов (APC)

Для отслеживания обновлений перевода в Strings при помощи службы автоматического создания проектов (APC) выполните следующие действия:

  1. При настройке службы автоматического создания проектов (APC) выберите «Каждый раз создавать новый проект».

    Это позволяет отслеживать онлайн-хранилище на предмет обновлений перевода, сделанных в Strings.

  2. В разделе «Автоматизация» настроек APC выберите «Обновления переводов, внесенные в удаленном хранилище, будут автоматически сохранены в памяти переводов».

Изменения, внесенные в контент перевода языка в Strings, будут автоматически сохранены в памяти переводов Phrase TMS при срабатывании службы автоматического создания проектов (APC).

Возможна перезапись обновлений памяти переводов путем изменения сегментов перевода в редакторе Phrase TMS. Эти обновления будут экспортированы обратно в Strings, когда задание Phrase TMS завершится.

Поведение при удалении ключей с использованием APC

Если удалить ключ в Strings после его включения в задание, это не повлияет на задание Phrase TMS, созданное при однократном импорте вручную. Это задание остается без изменений до тех пор, пока оно не будет повторно импортировано вручную.

Когда мониторинг APC активен, Phrase сравнивает хеш контента при каждом опросе или срабатывании вебхука и рассматривает любое изменение, включая удаление ключа, как обновление, которое инициирует повторную синхронизацию.

  • В режиме «Непрерывный проект» повторная синхронизация обновляет существующий проект или задание Phrase TMS в соответствии с текущим содержимым Strings, поэтому содержимое удалённого ключа убирается из задания.

  • В режиме «Каждый раз создавать новый проект» при повторной синхронизации создаётся новая версия задания Phrase TMS с содержимым после удаления ключа, а ранее созданные версии заданий остаются без изменений.

Синхронизация заданий — устранение неполадок

В таблице ниже описаны распространенные проблемы, с которыми могут столкнуться пользователи при использовании интеграции Strings. Она содержит возможные причины и решения для устранения неполадок.

Проблема

Причина(-ы)

Решение

Сообщение предупреждения о NMTOKEN в заданиях TMS

Имена ключей содержат нежелательные символы (например, пробелы)

Пользователи по-прежнему могут работать с контентом перевода и экспортировать его обратно в Strings, несмотря на сообщение с предупреждением.

Ключи в TMS пусты

Задание содержит ключи без текста оригинала на языке оригинала

Либо:

  • Пропустите сегменты.

  • Удалите ключи из задания Strings и повторно импортируйте оригинал из онлайн-хранилища.

Служба автоматического создания проектов (APC) не создает проекты/не обрабатывает новые задания

Несоответствие кодов языка

Убедитесь в совпадении кодов языков в Strings с кодами в проекте TMS.

Если служба автоматического создания проектов (APC) задана как непрерывный проект, любые изменения, внесенные в шаблон проекта после создания проекта, не будут применяться к существующим проектам. Следовательно, изменения должны вноситься непосредственно в непрерывные проекы.

Служба автоматического создания проектов (APC) считает задание/языковой стандарт обработанным

Если после начала задания настройки шаблона проекта/службы автоматического создания проектов (APC) изменены, то оно может считаться обработанным в истории службы автоматического создания проектов (APC). В таком случае для перехода на следующую итерацию может потребоваться обновить задание.

Либо:

  • Добавьте новый ключ к заданию или обновите существующий ключ задания

  • Измените срок выполнения задания в Strings

429 Слишком много запросов (предел интерфейса приложений API Strings)

Сократите количество APC и снизьте частоту мониторинга.

Существующий ключ в проекте Strings отсутствует в задании TMS

Конкретный ключ не был добавлен в задание Strings

Добавьте ключ в задание Strings и повторно импортируйте задание из онлайн-репозитория в TMS

Ошибка «Could not authenticate» возникает при попытке импорта/экспорта заданий.

Истекший или отозванный токен доступа для автоматически созданного коннектора «created by Phrase Strings»

Создайте новый коннектор Phrase Strings в TMS, повторно свяжите существующие APC с новым коннектором и запустите мониторинг.

Задание Strings не удается найти для импорта или повторного импорта через APC или вручную, даже если оно не отображается как завершенное.

Задание уже было импортировано в проект TMS, который позже был перемещён в корзину без завершения или окончательного удаления. Поскольку проект технически всё ещё находится в работе, задание недоступно для повторного импорта.

Прежде чем продолжить поиск причины проблемы, проверьте «Аннотации» рядом с локалью задания в Strings, чтобы выяснить, импортировалось ли оно ранее в TMS. Если связанный проект находится в корзине, восстановите его и продолжайте работу с ним, либо, если проект не нужен, отмените задания и проект или безвозвратно удалите проект через API с помощью параметра purge=true, чтобы APC больше не считала проект активной версией.

Не удаётся сохранить настройки синхронизации заданий: появляется ошибка «Locales are not supported by Phrase TMS: x», хотя в коннекторе TMS настроено пользовательское сопоставление локалей.

При сохранении синхронизация заданий проверяет целевые локали проекта Strings непосредственно по списку локалей, изначально поддерживаемых TMS. Эта проверка не учитывает пользовательские сопоставления локалей в коннекторе.

Для проекта Strings с целевой локалью, не поддерживаемой TMS изначально, используйте коннектор Strings непосредственно в TMS, а не подключение из Strings, и настройте пользовательское сопоставление языков.

Переводы не экспортируются обратно в Strings, даже если задания в TMS имеют статус «Доставлено».

В проекте или шаблоне настроена автоматизация статуса проекта, которая помечает проект (и его задания) как завершённые или доставленные сразу после предварительного перевода всех заданий, а не после их доставки. Это переводит задания в статус «Доставлено» без выполнения этапа экспорта в Strings, поэтому служба автоматизации не планирует экспорт и переводы не отправляются обратно в Strings.

В настройках автоматизации статуса проекта шаблона проекта для параметра «Помечать проект как „завершённый“, как только все задания будут» выберите «доставлены на всех этапах рабочего процесса» вместо «завершены на всех этапах рабочего процесса».

Задания, созданные вручную, экспортируйте обратно в Strings, а затем измените их статус на «Доставлено»: при экспорте вручную статус не обновляется автоматически. Как только все задания в проекте получат статус «Доставлено», проект автоматически получит статус «Завершено».

Была ли эта статья полезной?
★ ★ ★ ★ ★

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.