Вы выгружаете адресную книгу у одного провайдера и импортируете контакты у другого. Кажется, задача решена, пока не проверите результат. Имена на месте, основной email тоже. А второй телефон, почтовый адрес, прежняя должность и заметка, которую вы написали в 2021 году о том, кто вас познакомил, исчезли. Причём никто об этом не предупредил.
Причиной может быть как формат файла, так и возможности импортёра. CSV не перенесёт сведения, для которых нет распознаваемого столбца. Но и более богатый формат не поможет, если принимающая система читает лишь часть его полей.
Разберёмся, что умеют разные форматы, как проверить перенос адресной книги и что делать с возможными дубликатами.
Контакт не сводится к строке таблицы
В обычной таблице каждой ячейке соответствует одно значение. У контакта могут быть:
- Несколько email с пометками: рабочий, домашний, старый адрес с пересылкой.
- Несколько телефонных номеров с собственными пометками.
- Почтовые адреса, состоящие из отдельных частей, а не одной строки.
- Организация и должность, которые меняются со временем.
- Заметки произвольной длины, в том числе с запятыми и переносами строк.
- Фотография.
- Принадлежность к группам: один контакт может входить сразу в несколько.
Чтобы уложить это в таблицу, нужно либо оставить только первое повторяющееся значение, либо придумать столбцы вроде email_2 и email_3. Инструменты делают это по-разному. При переносе CSV теряются поля, для которых экспортёр и импортёр используют несовместимые соглашения.
Потеря может остаться незаметной. Для импортёра операция успешна, если он прочитал все знакомые столбцы. Нераспознанные столбцы при этом могут просто не попасть в результат.
vCard и CSV при импорте контактов
| vCard (.vcf) | CSV | |
|---|---|---|
| Несколько email и телефонов | Формат поддерживает значения с пометками; файловый импорт здесь выбирает по одному | Нужны согласованные столбцы; текущий импорт также выбирает по одному значению |
| Структурированные почтовые адреса | Формат поддерживает; при файловом импорте адрес сводится к строке | Обычно адрес хранится одной строкой |
| Фотографии | Формат позволяет хранить фото, но текущий файловый импорт их не переносит | Текущий импорт фотографий не поддерживает |
| Заметки с запятыми и переносами строк | Поддерживаются при правильном экранировании | Поддерживаются при правильных кавычках; ошибки могут сдвинуть столбцы |
| Группы | Возможность зависит от версии и приложения; файловый импорт здесь не переносит состав групп | Состав групп текущим файловым импортом не переносится |
| Редактирование в таблице | Не предназначен для обычного табличного редактора | Да |
| Сравнение изменений в текстовом виде | Возможно, но зависит от представления полей | Возможно; порядок строк и кавычки могут усложнять сравнение |
vCard, одна из версий которого описана в RFC 6350, широко используется для обмена контактами. Формат умеет представлять повторяющиеся поля и сложные адреса. Но конкретные версии Google Контактов, Outlook, Контактов Apple и мобильных приложений могут поддерживать разные варианты экспорта. Наличие поля в файле ещё не означает, что импортёр его сохранит.
Для сохранения исходной адресной книги обычно полезно иметь выгрузку vCard. При массовом импорте сначала проверьте поддержку нужных полей на нескольких контактах. CSV удобен для правки в таблице или когда его требует принимающая система; не рассчитывайте на полный перенос только благодаря расширению файла.
Когда для импорта удобнее CSV
CSV удобен, когда данные нужно обработать: убрать дубликаты из нескольких списков, исправить регистр, заполнить столбец компании или исключить тех, с кем вы не связывались с 2019 года. Табличный редактор часто подходит для этого лучше интерфейса адресной книги.
Для CSV нужна строка заголовков. Регистр не учитывается, но написание заголовка важно: не все варианты из примеров ниже распознаются одинаково.
| Столбец | Поле контакта | Обязателен |
|---|---|---|
email или email_address | Основной email; второе название распознаётся по поиску подходящего заголовка | Да, нужен корректный email |
name либо first_name + last_name | Имя контакта; для отдельных имени и фамилии замените подчёркивания пробелами | Нет |
company или organization | Компания | Нет |
job_title или title | Должность; первый вариант определяется по совпадению части заголовка | Нет |
phone | Телефонный номер | Нет |
address | Почтовый адрес одной строкой | Нет |
birthday или birth_date | Дата в формате YYYY-MM-DD; второй заголовок замените на первый или на слова с пробелом | Нет |
notes | Заметки | Нет |
Неизвестные столбцы игнорируются. Пустые значения не затирают существующие поля при обновлении. Строки без корректного email пропускаются, а структурная ошибка файла или превышение лимита могут отменить всю операцию. Поэтому большой файл сначала стоит проверить на небольшой выборке.
Есть ещё две опасности табличных редакторов. Телефоны с начальным + или нулями могут превратиться в числа и потерять эти символы. Задайте текстовый формат до загрузки или ввода данных: после преобразования сохранение не вернёт потерянные цифры. Значения, начинающиеся с =, + или -, редактор может интерпретировать как формулы. Открывайте такие файлы осторожно, особенно если источник вам неизвестен.
Если ваш инструмент предлагает предварительный просмотр, проверьте количество записей, несколько примеров и сообщения о валидации. Текущий импорт контактов в веб-почте загружает файл сразу и сообщает число обработанных и пропущенных записей после операции, а не показывает предварительный просмотр. Поэтому заранее сохраните резервную выгрузку и проверьте небольшой файл.
Импорт в существующую адресную книгу
Сложнее всего переносить контакты не в пустую книгу, а туда, где часть записей уже есть.
Некоторые инструменты полностью заменяют найденный контакт входящей записью. Внешне всё выглядит правильно, но данные могут исчезнуть: в CSV было лишь несколько столбцов, а в существующей карточке ещё хранились мобильный номер, почтовый адрес и многолетние заметки. После замены остаются только поля файла.
Здесь импорт обновляет непустые поддерживаемые поля у контакта с совпадающим email, а отсутствующие и пустые значения оставляет без изменения. Можно добавить компанию, сохранив другие поля. Но исходная карточка, полученная по CardDAV, при этом не переписывается: веб-почта и клиент CardDAV могут временно видеть разные сведения. Это нужно проверить отдельно.
Проверяйте поведение обновления у любого инструмента. Возможность восстановления зависит от резервной копии и истории изменений; без них потерянные поля бывает невозможно вернуть.
Проблема дубликатов
В адресной книге постепенно появляются дубликаты, а импорт может добавить новые. Один человек может использовать anna@acme.com, a.smith@acme.com и anna.smith@gmail.com. Все адреса настоящие, но система не обязана знать, что они принадлежат одной Анне.
Автоматическое сопоставление не всегда может установить, кто есть кто. Совпадение имени недостаточно: у разных людей бывают одинаковые имена. Email даёт понятный ключ для обновления, но тоже не доказывает личность, поскольку адрес может быть общим или передан другому сотруднику. Прежде чем объединять записи, проверьте владельца.
После импорта отсортируйте контакты по имени и просмотрите возможные совпадения. На больших списках это может занять больше времени, чем кажется. Ручная проверка адресов, телефонов и контекста помогает принять обоснованное решение, но не превращает любое совпадение в доказательство.
Лучше уменьшать число расхождений заранее. Контакт, созданный из входящего письма, использует адрес отправителя, а при ручном вводе легко ошибиться. Единый способ добавления помогает, но всё равно проверяйте, кто прислал письмо и какой адрес нужно сохранить.
Синхронизация вместо импорта
Импорт создаёт разовую копию. Если нужно постоянно согласовывать адресную книгу телефона и веб-почты, используйте синхронизацию по CardDAV.
CardDAV позволяет клиентам читать и изменять адресную книгу на сервере, примерно как IMAP работает с почтой. Добавленный на телефоне контакт появляется после успешной синхронизации. Это не обязательно происходит мгновенно: влияют сеть, фоновая работа приложения и интервал обновления.
Контакты Apple на macOS и iOS поддерживают CardDAV. На Android часто используют DAVx⁵, а Thunderbird имеет собственную поддержку. Для Outlook обычно нужен сторонний модуль; совместимость зависит от версии и выбранного клиента.
Руководства по настройке: Apple на macOS, iPhone и iPad, Android с DAVx⁵, Thunderbird.
Синхронизация снижает риск долгого расхождения отдельных копий на телефоне и компьютере. Но конфликты, удаления и ошибки настройки всё ещё возможны. Не считайте синхронизацию заменой резервной выгрузке.
Порядок переноса адресной книги
- Сохраните vCard у прежнего провайдера, если он поддерживает такую выгрузку. Проверьте возможности вашей версии Google Контактов, Outlook или Контактов Apple. При необходимости используйте CSV, сохранив исходные данные отдельно.
- Откройте файл и проверьте содержимое. vCard представляет собой текст. Найдите сложный контакт и убедитесь, что нужные сведения действительно попали в файл.
- При необходимости обработайте данные в таблице, но учитывайте ограничения формата и импортёра. Оригинальную полную выгрузку оставьте отдельно.
- Проверьте импорт на небольшой выборке. Если инструмент имеет предварительный просмотр, изучите его. В текущей веб-почте сверяйте результат после загрузки файла, заранее сохранив резервную копию.
- Выборочно проверьте результат. Откройте тот же сложный контакт и сравните его с исходником, включая отображение в подключённых клиентах.
- Просмотрите возможные дубликаты вручную, отсортировав записи по имени и сверив другие сведения.
- Настройте CardDAV на устройствах, чтобы уменьшить потребность в повторных выгрузках. Убедитесь, что синхронизация работает в обе стороны.
- Сохраните исходный файл в защищённом месте на время проверки переноса. Он содержит персональные данные, поэтому ограничьте доступ и определите срок хранения.
Контакты можно импортировать и через API; для сервера MCP проверьте доступные инструменты и их поля. Состав групп файловый импорт не переносит. В REST API им управляют отдельными операциями, что удобно при сборке адресной книги из CRM.
Частые вопросы
Какой формат выбрать для импорта контактов?
Сохраните полную исходную выгрузку, по возможности vCard, и проверьте импортёр на нескольких записях. vCard умеет хранить сложные поля, но текущий файловый импорт читает лишь часть сведений и не переносит фото или группы. CSV удобен для табличной правки, если правильно сопоставить заголовки.
Импорт перезапишет существующие контакты?
Непустые поддерживаемые поля обновляют контакт с совпадающим email, а пустые и отсутствующие поля его не очищают. Но исходная карточка CardDAV сохраняется отдельно и не переписывается этим импортом. Проверьте данные и в веб-почте, и в синхронизированном клиенте.
Почему телефонные номера перенеслись неправильно?
Табличный редактор мог принять их за числа и убрать начальный + или нули. Задавайте текстовый формат до обработки данных. Если символы уже потеряны, вернитесь к исходной выгрузке. vCard помогает избежать табличного преобразования, но не расширяет возможности импортёра.
Можно импортировать контакт без email?
Сам формат vCard допускает такие контакты, но текущий файловый импорт и для CSV, и для vCard требует корректный email и пропускает записи без него. Возможности отдельного клиента CardDAV не следует путать с возможностями загрузки файла.
Как перенести контакты на телефон?
Для постоянной работы настройте CardDAV в совместимом приложении. Клиенты будут синхронизировать серверную адресную книгу. Проверьте учётную запись, направление синхронизации и результат; задержки и конфликты всё ещё возможны.
Удаляются ли дубликаты при импорте?
Импорт обновляет записи с совпадающим email, а не определяет личность человека. Общий или переданный другому сотруднику адрес требует внимания. Совпадения имён автоматически не объединяются. После большого импорта просмотрите возможные дубликаты вручную.
Можно снова выгрузить контакты?
Да, в CSV или vCard. Сохраняются поля, которые поддерживает текущий экспорт, а не обязательно все сведения исходной карточки CardDAV. Перед массовыми изменениями сохраните подходящую резервную выгрузку и проверьте её содержимое.
Что происходит с группами контактов?
Возможности vCard зависят от версии и приложения, но текущий файловый импорт не восстанавливает состав групп ни из vCard, ни из CSV. В REST API группы и участников можно настроить отдельными операциями. Для MCP проверьте поддержку соответствующих инструментов.