Я работаю над процессом импорта пользователей и почти добрался до конца. Curl возвращает сообщение о том, что приглашение отправлено, но письмо не пришло, и, насколько я могу судить, приглашение не было зафиксировано в базе данных.
“success”:true,“active”:false,“message”:“\u003cp\u003eВы почти закончили! Мы отправили письмо с активацией на \u003cb\u003emnolan@tssi.com\u003c/b\u003e. Пожалуйста, следуйте инструкциям в письме для активации вашей учётной записи.\u003c/p\u003e\u003cp\u003eЕсли письмо не пришло, проверьте папку со спамом.\u003c/p\u003e”}
Кроме того, я думал, что установка active=true предотвратит отправку письма с подтверждением.
Я не думаю, что вам нужен параметр staged=true. Это то, что я бы попробовал следующим.\n\nВ какой-то момент вам пришлось создать пользователя в одном шаге и активировать его в другом.\n\nВозможно, стоит сделать шаг назад и подробнее рассказать о том, что вы пытаетесь сделать. Хотите ли вы импортировать группу пользователей один раз (тогда лучше подойдет скрипт импорта) или делать это постоянно (тогда лучше подойдет DiscourseConnect).
Проблема решена: мне пришлось убедиться, что заголовки правильно отформатированы с использованием двоеточия вместо знака равенства.
Я попытался изучить скрипт импорта mbox, но, похоже, в нём отсутствует множество функций, как отмечено в этом сообщении:
В любом случае, я хотел поэкспериментировать с созданием идентификаторов пользователей (Mailman их не использует), поскольку я импортирую архивы за 20 лет, и многие из этих пользователей больше не активны или используют другие адреса электронной почты. В базе данных сейчас около 700 пользователей из старой системы, но добавление 100 000 сообщений может вызвать другие проблемы.
Я убрал поле staged=true, так как оно всё равно не работало.
Мне потребовался один вечер, чтобы написать инструменты на PHP, которые распарсили все архивы Mailman pipermail и создали набор идентификаторов пользователей; это оказалось не так уж сложно.