Интеграция Phrase Strings (называемая в интерфейсе Strings) соединяет Phrase TMS и Phrase Strings. Интеграция поддерживает синхронизацию как на уровне заданий, так и на уровне проектов.
-
Синхронизация заданий
Задания, созданные и начатые в Strings со статусом в ходе выполнения, могут быть импортированы в TMS для перевода, а после перевода отправлены обратно в Strings. Задания, отправленные из Strings в TMS, по умолчанию импортируются как файлы XLIFF 2.0.
Рекомендуется для пакетных рабочих процессов с детальным контролем.
-
Синхронизация на уровне проекта
Все ключи в выбранном проекте Strings передаются в TMS без необходимости создания задания. Вновь добавленные или обновленные ключи становятся доступными для синхронизации автоматически.
Рекомендуется для непрерывных процессов локализации.
Предварительные требования
-
Доступ к приложениям TMS и Strings.
-
Коды языков, используемые в проекте TMS, должны совпадать с кодами языковых стандартов в задании Strings.
-
Язык по умолчанию для проекта Strings должен совпадать с языком источника, определенным в проекте TMS.
Важно
Файлы Figma могут отображаться в Strings как единый «живой» файл, но не поддерживаются в TMS. CAT-редактор TMS может отображать переведенный контент только в определенном фрейме Figma в формате SVG.
Статусы перевода ключей в Strings не поддерживаются. Ключи с пометкой «не проверено» в Strings до импорта в TMS, могут быть возвращены в Strings с пометкой , если целевой перевод не был изменен.
Количество сегментов, созданных в TMS после импорта задания Strings, может отличаться от исходного количества ключей в следующих случаях:
-
Ключи помечаются в Strings как исключенные. Исключенные ключи не импортируются.
-
Опция «Сегмент XLIFF» включена в настройках импорта файлов для XLIFF 2.0 при создании задания в TMS. В этом случае количество сегментов может быть больше, чем количество ключей в 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 может быть сегментирован дальше, если Segment XLIFF выбран в для XLIFF 2.0.
-
Включите или отключите дополнительные параметры импорта по мере необходимости:
-
Исходный язык проекта TMS применяется независимо от языка по умолчанию в проекте Strings.
-
Включите эту опцию, чтобы предотвращать дублирование заданий TMS для языков, для которых работа уже выполняется. Если этот параметр включен, изменения в ключах, которые уже являются частью активного задания TMS, не будут повторно импортированы до завершения исходного задания. Рекомендуется для дополнительного контроля при работе с несколькими языками.
-
-
Опция обеспечивает заворачивание сущностей HTML в CDATA для сохранения при передаче между Strings и TMS.
-
Опция позволяет импортировать контент, сочетающий синтаксис ICU и встроенные элементы HTML.
-
-
-
-
Выберите режим экспорта.
-
Включите или отключите следующие параметры экспорта по мере необходимости:
-
Отключите, чтобы предотвратить обновление существующих переводов содержимым файла.
-
Отключите, чтобы предотвратить создание новых ключей и обновление существующих ключей.
-
Переводы, не соответствующие последней версии оригинала, не включаются в синхронизацию. Это помогает поддерживать согласованность между исходным текстом и переводами, избегая устаревших или неправильных переводов.
-
Ключи с пометкой будут автоматически проверены в Strings, если целевой перевод не был изменен. Если этот параметр включен, каждый перевод, возвращенный из TMS, помечается в Strings как , независимо от того, был ли текст отредактирован или просто возвращен без изменений. Исключаются и остаются только те ключи, исходный текст которых изменился в Strings во время выполнения задания.
-
Помечает конкретный язык как завершенный, как только переводы на нем синхронизированы.
-
Если выбрано, задание будет отмечено как выполненное только после загрузки последней локали.
-
-
-
Если указано, выберите папку по умолчанию (возможно только после сохранения).
-
Представлено , которое при необходимости можно настроить. Убедитесь, что каждый языковой стандарт Strings имеет только одну запись сопоставления с одним языковым стандартом TMS в конфигурации коннектора. Изменения в сопоставлении языков не отразятся на существующих заданиях.
Список разбивает на страницы пять проектов за раз, при этом проекты сортируются в алфавитном порядке; сначала от A-Z (с прописной буквы), а затем a-z (со строчной буквы).
-
Нажмите «Сохранить».
Коннектор добавлен в список на странице .
Удаление коннектора
Чтобы удалить коннектор:
-
На странице выберите коннектор, который нужно удалить.
-
Нажмите Удалить.
Откроется окно .
-
Введите «delete» и нажмите Удалить.
Коннектор удален, и отображается список коннекторов.
Примечание
Коннектор нельзя удалить, пока он связан с незавершенными заданиями в проекте, включая задания, находящиеся в корзине. При попытке удалить такой коннектор возвращается ошибка «Не удалось удалить коннектор».
Решение: Откройте проект, связанный с коннектором, и завершите или удалите все оставшиеся задания. Перейдите в и очистите ее, чтобы удалить все задания, которые все еще связаны с коннектором. Повторите попытку удаления коннектора.
Поддерживаются в интеграции:
-
Шаблоны проектов 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 |
|
Ошибка «Could not authenticate» появляется при попытке импорта/экспорта заданий. |
Истекший или отозванный токен доступа на автоматически созданном коннекторе «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 и вручную измените статус задания на доставлено, поскольку ручной экспорт не обновляет статус задания автоматически. Как только для всех заданий в проекте будет установлен статус доставлены, проект будет автоматически помечен как завершённый. |