Интеграция 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 необходимо выбрать значение или .
Статусы перевода ключей в Strings не поддерживаются. Синхронизация заданий отправляет в TMS целевой текст, хранящийся в Strings, независимо от того, проверен ключ или нет. Ключи, помеченные в Strings как до импорта в TMS, могут быть возвращены в Strings как , даже если перевод на целевой язык не изменился.
Настройка проекта Strings не применяется при синхронизации заданий. При передаче данных между Strings и TMS в любом направлении текст резервной локали не подставляется вместо непроверенных переводов.
Количество сегментов, созданных в TMS после импорта задания Strings, может отличаться от исходного количества ключей в следующих случаях:
-
Ключи помечаются в Strings как исключенные. Исключенные ключи не импортируются.
-
При создании задания в TMS в настройках импорта файлов XLIFF 2.0 должен быть включён параметр — «Сегментировать XLIFF». В этом случае количество сегментов может быть больше, чем количество ключей в Strings.
Ключи Strings могут содержать сущности HTML. При настройке коннектора в TMS () включите опцию , чтобы сохранить HTML-сущности вместо отображения соответствующих символов в TMS.
Начальные и конечные пробелы в исходном тексте ключа 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 или формы множественного числа, включите параметр в настройках импорта файлов 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.
-
Если выбрана опция , изменения текста ключей на языке перевода Strings автоматически обновляются в памяти переводов TMS, используемой соответствующей службой автоматического создания проектов (APC).
-
-
Коннектор интерфейса приложений API в TMS можно использовать для автоматизации действий, выполняемых вручную через пользовательский интерфейс. Вебхуки можно использовать для уведомления сторонних систем об определенных событиях (например, изменении статуса задания). При синхронизации на уровне заданий вебхуки могут срабатывать при событии
jobs:start.
На странице можно просмотреть и настроить синхронизацию для службы автоматического создания проектов (APC), которая использует коннектор Phrase Strings. Здесь есть как синхронизации, созданные непосредственно в Strings, так и те, которые были настроены в TMS, — с соответствующей информацией.
На странице администраторы и менеджеры проектов в Strings могут создавать новые синхронизации заданий, изменять существующие (в том числе переводить их в активное или неактивное состояние) и удалять их.
Существующие синхронизации заданий можно редактировать или удалять, используя соответствующие параметры в меню . Все изменения синхронизируются между Strings и TMS. При удалении синхронизации задания в TMS удаляется соответствующая служба APC.
Страница доступна как из меню , так и из меню слева.
Примечание
Если необходимые пользовательские поля определены в TMS, настройка синхронизации задания из Strings не поддерживается.
Чтобы настроить новую синхронизацию задания между Strings и TMS с базовой конфигурацией, выполните следующие шаги в интерфейсе Strings:
-
На странице выберите «Настроить» рядом с интеграцией .
Откроется страница .
-
Нажмите «+ Создать синхронизацию».
Откроется окно .
-
Укажите и выберите проект(ы) Strings для подключения к TMS из выпадающего списка .
Можно включать только проекты с одинаковыми языковыми парами.
-
При желании выберите . Выбранный шаблон проекта TMS должен соответствовать набору языков, определенному в назначенном проекте (или проектах) Strings.
Синхронизированные задания будут добавлены в проект TMS, созданный на основе выбранного шаблона.
-
Если выбрано , шаблон проекта TMS автоматически создается на основе выбранных проектов Strings.
-
-
Выберите проекта, который нужно создать в TMS.
-
Опция по умолчанию.
-
Новый проект TMS создается каждый раз, когда в заданиях Strings обнаруживаются изменения.
-
-
В разделе укажите опции экспорта строк, чтобы контролировать, как переводы из TMS экспортируются в Strings.
-
Обновляет существующие целевые переводы в Strings.
-
Автоматически помечает задание как завершенное в Strings.
-
Ключи с пометкой «не проверено» будут автоматически подтверждены в Strings, если целевой перевод не был изменен.
-
-
При необходимости откройте «Расширенные параметры», чтобы отобразить дополнительные параметры экспорта.
-
Помечает конкретный язык как завершенный, как только переводы на нем синхронизированы.
-
Обеспечивает создание новых ключей из TMS в Strings и обновление существующих.
-
Предотвращает перезапись переводов, если исходный текст изменился в Strings с момента экспорта.
-
-
Нажмите «Сохранить».
Новая конфигурация синхронизации добавляется в список с неактивным статусом. Используйте переключатель в столбце , чтобы включить синхронизацию заданий.
Рекомендации
Для более сложных конфигураций настройте с помощью Phrase TMS.
При использовании пользовательского сопоставления любые необходимые изменения должны применяться к коннектору в TMS.
Создание коннектора Strings в Phrase TMS не приводит к автоматическому созданию APC для автоматизированного импорта/экспорта заданий. APC необходимо настроить отдельно в TMS.
В некоторых организациях коннектор Phrase Strings создается автоматически с использованием идентификатора организации в платформе Phrase. Перед созданием коннектора вручную проверьте список коннекторов на странице . Автоматически созданный коннектор выполняет аутентификацию на стороне сервера с использованием идентификатора вошедшего в систему пользователя, а не вручную введенного токена доступа.
После создания коннектор отображает статус , пока выполняется начальная синхронизация, а затем его статус меняется на . Состояние также активируется при внесении любых изменений в конфигурацию коннектора или при сохранении страницы настроек коннектора, даже если существенные изменения не вносились. Пока коннектор отображает статус , его нельзя использовать в качестве источника для создания заданий в Phrase TMS. Дождитесь изменения статуса на , прежде чем создавать задания с помощью этого коннектора.
-
На странице «Настройки»
прокрутите вниз до раздела .
-
Нажмите на «Коннекторы».
Откроется страница .
-
Нажмите «Новый коннектор».
Откроется страница .
-
В поле «Тип» выберите и укажите название коннектора.
-
Введите идентификатор учетной записи и токен доступа, полученные в Strings.
-
Нажмите «Проверить подключение».
-
Если подключение установлено успешно, рядом с кнопкой появится небольшая галочка.
-
-
Выберите элементы для импорта в TMS.
Если целевые ключи не импортируются, файл XLIFF 2.0 можно дополнительно сегментировать, выбрав параметр «Сегментировать XLIFF» в разделе для файлов XLIFF 2.0.
-
Включите или отключите дополнительные параметры импорта по мере необходимости:
-
Исходный язык проекта TMS применяется независимо от языка по умолчанию в проекте Strings.
-
Включите эту опцию, чтобы предотвращать дублирование заданий TMS для языков, для которых работа уже выполняется. Если этот параметр включен, изменения ключей, которые уже являются частью активного задания TMS, не импортируются повторно до завершения исходного задания. Рекомендуется для дополнительного контроля при работе с несколькими языками.
-
-
Опция обеспечивает заворачивание сущностей HTML в CDATA для сохранения при передаче между Strings и TMS.
-
Опция позволяет импортировать контент, сочетающий синтаксис ICU и встроенные элементы HTML.
-
-
-
-
Выберите режим экспорта.
-
Включите или отключите следующие параметры экспорта по мере необходимости:
-
Отключите, чтобы предотвратить обновление существующих переводов содержимым файла.
-
Отключите, чтобы предотвратить создание новых ключей и обновление существующих ключей.
-
Переводы, не соответствующие последней версии оригинала, не включаются в синхронизацию. Это помогает поддерживать согласованность между исходным текстом и переводами, избегая устаревших или неправильных переводов.
-
Ключи с пометкой будут автоматически проверены в Strings, если целевой перевод не был изменен. Если этот параметр включен, каждый перевод, возвращенный из TMS, помечается в Strings как , независимо от того, был ли текст отредактирован или просто возвращен без изменений. Исключаются и остаются только те ключи, исходный текст которых изменился в Strings, пока задание было открыто.
-
Помечает конкретный язык как завершенный, как только переводы на нем синхронизированы.
-
При выборе этого параметра задание будет отмечено как выполненное только после загрузки последней локали.
-
-
-
При необходимости выберите папку по умолчанию (это можно сделать только после сохранения).
-
Представлено , которое при необходимости можно настроить. Убедитесь, что в настройках коннектора каждой локали Strings соответствует только одна локаль TMS. Изменения в сопоставлении языков не отразятся на существующих заданиях.
Список разбивает на страницы пять проектов за раз, при этом проекты сортируются в алфавитном порядке; сначала от A-Z (с прописной буквы), а затем a-z (со строчной буквы).
-
Нажмите «Сохранить».
Коннектор добавлен в список на странице .
Поддерживаются в интеграции:
-
Шаблоны проектов TMS
-
Рабочие процессы TMS
-
Описание задания (неприменимо при использовании синхронизации на уровне проекта)
-
Срок выполнения задания (неприменимо при использовании синхронизации на уровне проекта)
Срок, установленный в Strings, обновит предельный срок проекта в TMS. При наличии нескольких разных сроков к проекту TMS будет применен самый дальний из них.
Перенесено из Strings в TMS в качестве справочного файла проекта:
-
Имена ключей
Перенесено из Strings и отображается как контекстный ключ на панели контекстных примечаний редакторов CAT TMS.
-
Описания ключей
Перенесено из Strings и отображается как контекстное примечание на панели контекстных примечаний редакторов CAT TMS.
-
Максимальная длина символов ключа
Перенесено из Strings и отображается на панели контекстных примечаний редакторов CAT TMS.
-
Скриншоты
Чтобы отображать скриншоты из Strings на панели редакторов TMS CAT:
-
Включите опцию в разделе настроек проекта TMS «Доступ и безопасность».
-
Выберите текста на панели .
-
-
Пользовательские метаданные поддерживаемых форматов файлов:
-
.XLSX
-
.CSV
-
.XLIFF 2.0
-
Отслеживание обновлений перевода в Strings при помощи службы автоматического создания проектов (APC)
Для отслеживания обновлений перевода в Strings при помощи службы автоматического создания проектов (APC) выполните следующие действия:
-
При настройке службы автоматического создания проектов (APC) выберите .
Это позволяет отслеживать онлайн-хранилище на предмет обновлений перевода, сделанных в Strings.
-
В разделе настроек APC выберите .
Изменения, внесенные в контент перевода языка в Strings, будут автоматически сохранены в памяти переводов Phrase TMS при срабатывании службы автоматического создания проектов (APC).
Возможна перезапись обновлений памяти переводов путем изменения сегментов перевода в редакторе Phrase TMS. Эти обновления будут экспортированы обратно в Strings, когда задание Phrase TMS завершится.
Поведение при удалении ключей при использовании APC
Удаление ключа в Strings после того, как он был включен в задание, не влияет на задание Phrase TMS, созданное посредством разового ручного импорта. Это задание остается без изменений до тех пор, пока его не импортируют повторно вручную.
Когда мониторинг APC активен, Phrase сравнивает хеш контента при каждом опросе или срабатывании вебхука и рассматривает любое изменение, включая удаление ключа, как обновление, которое инициирует повторную синхронизацию.
-
В режиме повторная синхронизация обновляет существующий проект или задание Phrase TMS в соответствии с текущим содержимым Strings, поэтому содержимое удалённого ключа исключается из задания.
-
В режиме при повторной синхронизации создаётся новая версия задания Phrase TMS с учётом удаления ключа, а ранее созданные версии заданий остаются без изменений.
В таблице ниже описаны распространенные проблемы, с которыми могут столкнуться пользователи при использовании интеграции Strings. Она содержит возможные причины и решения для устранения неполадок.
|
Проблема |
Причина(-ы) |
Решение |
|---|---|---|
|
Сообщение предупреждения о |
Имена ключей содержат нежелательные символы (например, пробелы) |
Пользователи по-прежнему могут работать с контентом перевода и экспортировать его обратно в Strings, несмотря на сообщение с предупреждением. |
|
Ключи в TMS пусты |
Задание содержит ключи без текста оригинала на языке оригинала |
Либо:
|
|
Служба автоматического создания проектов (APC) не создает проекты/не обрабатывает новые задания |
Несоответствие кодов языка |
Убедитесь в совпадении кодов языков в Strings с кодами в проекте TMS. Если служба автоматического создания проектов (APC) задана как непрерывный проект, любые изменения, внесенные в шаблон проекта после создания проекта, не будут применяться к существующим проектам. Следовательно, изменения должны вноситься непосредственно в непрерывные проекы. |
|
Служба автоматического создания проектов (APC) считает задание/языковой стандарт обработанным |
Если после начала задания настройки шаблона проекта/службы автоматического создания проектов (APC) изменены, то оно может считаться обработанным в истории службы автоматического создания проектов (APC). В таком случае для перехода на следующую итерацию может потребоваться обновить задание. Либо:
|
|
|
|
Сократите количество APC и снизьте частоту мониторинга. |
|
|
Существующий ключ в проекте Strings отсутствует в задании TMS |
Конкретный ключ не был добавлен в задание Strings |
Добавьте ключ в задание Strings и повторно импортируйте задание из онлайн-репозитория в TMS |
|
Ошибка «Не удалось пройти аутентификацию» появляется при попытке импорта/экспорта заданий. |
Истёкший или отозванный токен доступа для автоматически созданного коннектора «created by Phrase Strings» |
Создайте новый коннектор Phrase Strings в TMS, повторно привяжите к нему существующие APC и запустите мониторинг. |
|
Задание Strings не удается найти для импорта или повторного импорта через APC или вручную, хотя оно не отображается как завершенное. |
Задание уже было импортировано в проект TMS, который позже был перемещен в корзину, но не был ни завершен, ни окончательно удален. Поскольку проект технически всё ещё находится в работе, задание остаётся недоступным для повторного импорта. |
Прежде чем продолжить поиск причины проблемы, проверьте рядом с локалью задания в Strings, чтобы выяснить, импортировалось ли оно ранее в TMS. Если связанный проект находится в корзине, восстановите его и продолжайте работу напрямую, либо, если проект не нужен, отмените задания и проект, или окончательно удалите проект через API с помощью параметра |
|
Не удаётся сохранить настройки синхронизации заданий: появляется ошибка « |
При сохранении синхронизация заданий проверяет целевые локали проекта Strings по списку локалей, изначально поддерживаемых TMS. Эта проверка не учитывает пользовательские сопоставления локалей коннектора. |
Если целевая локаль проекта Strings изначально не поддерживается TMS, используйте коннектор Strings непосредственно в TMS, а не в Strings, и настройте пользовательское сопоставление языков. |
|
Переводы не экспортируются обратно в Strings, хотя задания в TMS имеют статус «Доставлено». |
В проекте или шаблоне настроена автоматизация статуса проекта, которая помечает проект (и его задания) как завершённые или доставленные сразу после предварительного перевода всех заданий, а не после их доставки. Это переводит задания в статус «доставлено» без выполнения этапа экспорта в Strings, поэтому служба автоматизации никогда не планирует экспорт, и переводы не отправляются обратно в Strings. |
В настройках автоматизации статуса проекта шаблона проекта для параметра вместо . Для заданий, созданных вручную, экспортируйте задание обратно в Strings и вручную измените его статус на «Доставлено», поскольку при ручном экспорте статус задания не обновляется автоматически. Когда все задания в проекте получат статус «Доставлено», проекту автоматически будет присвоен статус «Завершён». |