Импорт контактов

Контакты можно импортировать через пользовательский интерфейс из файла CSV. Вы можете импортировать из браузера или в фоновом режиме с помощью задания cron.

Рекомендуется фоновый импорт.

Требования к файлу импорта

  • CSV-файл должен быть в кодировке UTF8. Другие кодировки могут вызвать проблемы при импорте. О том, как экспортировать электронную таблицу в UTF8, читайте в документации вашей программы для работы с электронными таблицами. Google Sheets кодирует в UTF8 автоматически, Libre/Open Office позволяет выбрать кодировку перед экспортом.
  • Для булевых значений типа doNotEmail или пользовательского булевого поля используйте значения true, 1, on или yes как значение TRUE. Все остальное будет считаться ложным.
  • Для значений даты/времени используйте нотацию ISO8601, т.е. ГГГГ-ММ-ДД чч:мм:сс.
    • Пример: 2019-01-02 19:08:42. . . Другие форматы тоже могут работать, но они могут быть проблематичными.

Советы

  • Используйте строку заголовка, названия столбцов которой совпадают с названиями [пользовательских полей] [пользовательских полей] Mautic Contact. Таким образом Mautic автоматически подберет для вас сопоставление. Например, если вы назовете колонку имени как firstname, это поле будет автоматически сопоставлено с [{contactfield=firstname}][переменные].

  • Если ваш CSV содержит тысячи контактов или больше, разделите такой CSV на несколько меньших CSV-файлов, чтобы избежать проблем с памятью и низкой скорости импорта.

Совет

Если вы используете систему Linux, ознакомьтесь с командой GNU parallel. (sudo apt install parallel)

cat big_contact_list.csv | parallel --header : --pipe -N 1000 'cat > split_list_part{#}.csv'

Это создаст файлы:

split_list_part1.csv ...split_list_part9.csv, split_list_part10.csv ...

Типы импорта

Браузерный импорт

Большие CSV-файлы необходимо импортировать партиями, чтобы избежать ограничения памяти сервера (PHP) и времени выполнения. При импорте в браузере, ваш браузер управляет пакетами. Когда одна партия завершается, javascript начинает новую. Это означает, что окно браузера должно оставаться открытым и подключенным к Интернету все это время.

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

Фоновый импорт

Задания фонового импорта (команда CLI, запускаемая вручную или через задание cron) имеют преимущество в виде доброжелательных временных ограничений. Фоновый импорт CSV не перезапускается каждую партию (по умолчанию 1 партия = 100 строк) - сохраняется последняя импортированная строка, и следующая партия продолжается с этого момента. Фоновый импорт всегда будет быстрее и надежнее, чем импорт через браузер.

Предупреждение фоновый импорт требует периодического выполнения команды php /path/to/mautic/app/console mautic:import. Добавьте ее в задания cron.

Успешный результат выполнения фонового задания может выглядеть следующим образом:

$ app/console mautic:import
 48/48 [============================] 100%
Обработано 48 строк, создано 0 элементов, обновлено 48 элементов, проигнорировано 0 элементов за 4.78 с

Если в очереди нет ожидающего импорта, то сообщений не будет (или используйте --quiet).

Автоматическая настройка типа импорта

В настройках Global Mautic Configuration / Contact есть опция, позволяющая определить оптимальный предел между импортом через браузер и фоновым импортом. Если вы введете 500, это означает, что если импортируемый CSV файл содержит менее 500 строк, он будет импортирован в браузер. Если в нем более 500 строк, он будет поставлен в очередь на импорт в фоновом режиме. Значение по умолчанию - 0 (ноль), что означает, что будет показано две кнопки импорта вместо одной, и вам придется решать, какой вариант импорта использовать при каждом импорте.

Параллельный импорт

Импорт может занять несколько минут. Возможно, что один импорт будет продолжаться, когда другой будет запущен. Для предотвращения исчерпания ресурсов сервера существует настраиваемая опция parallel_import_limit. По умолчанию одновременно будет выполняться только 1 импорт. Этот параметр можно изменить, добавив его в файл app/config/local.php.

Список заданий импорта

Список импорта можно найти, если перейти в область Контакты, открыть меню действий над таблицей контактов и выбрать пункт Импортировать историю.

import history

Совет

Прямой URL - https://example.com/s/contacts/import/1.

В таблице будет показана

  • основную статистику обо всех импортах
  • их текущий статус
  • имена исходных CSV-файлов
  • кто создал импорт
  • когда он был создан
  • когда фоновое задание (Система) в последний раз обновляло статистику.

Существует также тумблер, который позволит вам останавливать и запускать Queued или In Process импорты.\ Этот тип переключателя используется во всем пользовательском интерфейсе Mautic для публикации и неопубликования элементов.

Статус задания импорта

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

  • В очереди - Импорт был создан и поставлен в очередь на фоновую обработку. На этом этапе импорт ожидает, пока фоновое задание начнет импорт.
  • В процессе - фоновое задание начало импорт, но еще не завершило его. Вы можете видеть прогресс в списке импорта.
  • Импортировано - Импорт был успешно обработан.
  • Не удалось - Импорт не удался по какой-то причине. Наиболее распространенной причиной может быть то, что загруженный CSV-файл был удален или у Mautic нет разрешения на его чтение. Или импорт не выполнялся более 2 часов.
  • Остановлен - Импорт был остановлен пользователем, когда он находился в состоянии Завершен или В процессе.
  • Вручную - Пользователь выбрал импорт в браузере "вручную". Это аналогично состоянию В процессе.
  • Отложено - Фоновое задание хотело начать импорт, но процесс импорта не мог начаться. Поэтому он отложен на потом. Причина, по которой это может произойти, - превышение лимита параллельного импорта. Импорт начнется как можно скорее.

Детали задания импорта

При нажатии на имя файла открывается страница детализации задания импорта.

В основной области содержимого отображается информация о строках, которые были проигнорированы по какой-либо причине (если таковые имеются). Таблица подскажет вам, какая строка в CSV-файле была проигнорирована и по какой причине, чтобы вы могли исправить эти строки и [начать импорт] (#how-to-start-an-import) снова.

Есть две диаграммы:

  1. Круговая диаграмма показывает соотношение между созданными, обновленными и неудачными строками.
  2. Линейный график показывает, сколько контактов было добавлено в минуту.

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

Запуск и остановка импорта

Как начать импорт

  1. Перейдите в раздел Контакты.
  2. В правом верхнем углу над таблицей контактов откройте подменю действий и выберите пункт Импорт.

    Совет

    Прямой URL-адрес - https://example.com/s/contacts/import/new.

  3. Выберите CSV-файл с контактами, которые вы хотите импортировать.
  4. Настройте параметры CSV, если в файле используется нестандартный разделитель или кодировка и т. д.
  5. Загрузите CSV-файл.
  6. Должна появиться страница сопоставления полей. Первый набор опций позволит вам выбрать владельца, сегмент и теги для глобального назначения всем импортированным контактам. Второй набор опций позволяет сопоставить столбцы из CSV-файла с [пользовательскими полями] [пользовательскими полями] Mautic Contact. Третий набор опций позволяет сопоставить столбцы из CSV-файла со специальными атрибутами контактов, такими как Дата создания и т.д.
  7. Когда сопоставление полей будет готово, нажмите на одну из кнопок Импорт (описано выше).

Как остановить фоновый импорт

  1. Перейдите в раздел Контакты.
  2. В правом верхнем углу над таблицей контактов откройте подменю действий и выберите пункт Импорт истории .
  3. Опубликуйте задание импорта, которое вы хотите остановить. Импорт изменит статус на Stopped. Он завершит импорт текущей партии и затем остановится.
  4. Чтобы начать импорт снова, просто опубликуйте его, и фоновое задание продолжится со следующего выполнения задания cron.

import publish

Когда фоновое задание завершится, либо успешно, либо неудачно, вы получите уведомление об этом в области уведомлений Mautic.

окно уведомления

FAQ

В: Мой импорт завершается с задержкой. Что я могу с этим сделать? О: Либо используйте фоновое задание для импорта, либо измените лимит партии на меньшее число, чем 100.

В: Если я импортирую значения Do Not Contact, это сохраняется как отказ или отписка? О: Это сохраняется как ручная отписка. Это то же самое, как если бы контакт был помечен как Не связываться на странице Контакты.

Do Not Contact