1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

Переписки -> Покинуть переписку

Тема в разделе "Основные вопросы по XenForo", создана пользователем Бboris, 04.09.2011.

Загрузка
  1. Бboris

    Бboris Тролль

    Регистрация:
    20.08.11
    Сообщения:
    205
    Симпатии:
    33
    Вопрос:
    Иван начал переписку с Ольгой.
    Оба написали по 20 сообщений и перестали переписываться.
    На кнопку "Покинуть переписку" - ни кто из них не нажимал.

    Вы сами часто нажимали на кнопку "Покинуть переписку" :)

    Получается, что вся переписка будет храниться в БД вечно?
    А если пользователей 10000? И каждый "не будет нажимать" ==> БД превратится в помойку?

    Разъясните пожалуйста данный момент! Стою на перепутье, то ли брать Xenforo, то ли что то иное!
     
  2. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    А чего разъяснять собственно? Думаю как удаляется переписка уже и так в курсе? Если нет, то читаем:
    Как удалить личную переписку?

    И собственно в чем отличие от других движков? Возьмем, например, vB. Там тоже мало кто удаляет ЛС из входящих. Но вроде никого не заботит проблема растущей помойки личных сообщений.

    Выход там точно такой же - чистить базу ручками раз в определенный период. Да вот только не всех пользователей это может устроить.

    Чего нет в XF, а есть в vB - это ограничение на количество ЛС. Но из-за отличия принципа личных переписок от сообщений такое ограничение в XF наверно и невозможно.

    Как вариант, написать в правилах, что, допустим, раз в год, все личные переписки будут удалены. Ну и перед удалением за неделю стоит напоминать, что грядет очистка.
     
  3. Бboris

    Бboris Тролль

    Регистрация:
    20.08.11
    Сообщения:
    205
    Симпатии:
    33
    По ссылке Как удалить личную переписку?, как раз и говорится, что если покинули.
    Это означает => если нажали на кнопку Покинуть переписку?

    Но дело в том, что кнопку Покинуть переписку пользователи не нажимают!
    Думаю, что и на вашем форуме этой кнопкой почти не пользуются :).
    В результате "не покидания переписки", БД будет пухнуть?

    Может как то возможно автоматизировать очистку "заброшенных переписок"?
    Если переписка не продолжалась более 30 дней ==> автоматически удалилась из БД?
    Это как то можно сделать?
     
  4. Pepelac

    Pepelac Продам луц в бутылках

    Регистрация:
    28.09.10
    Сообщения:
    1 794
    Симпатии:
    1 361
    БД гораздо быстрее будет пухнуть от новых сообщений, которые в свою очередь будут раздувать индекс поиска. На фоне этого, распуханием базы от личных переписок можно пренебречь.

    Реализовать автоматическое удаление можно, но для этого надо писать свой адд-он. Кстати, а что вы будете делать с пользователями, которым некоторые переписки дороги как память, а вы им это все грохнете?
     
  5. Бboris

    Бboris Тролль

    Регистрация:
    20.08.11
    Сообщения:
    205
    Симпатии:
    33
    Установить максимальное время хранения переписок 90 дней.
    Если перепиской не пользовались > 90 дней (129600 сек.) => удаляем и никого не извещаем :)

    Если же это плагин, то настройки такие:

    1.Срок хранения неиспользуемых переписок - [129600] сек.
    2.Оповещать пользователей при удалении переписки - [Да/Нет]
    3.Оповещать заблокированных при удалении переписки - [Да/Нет]
    4.За какой срок оповещать о удалении переписки - [7] дней

    Текст письма о удалении переписки:
    Код:
    Уважаемый {$user} бла...бла..бла ваша переписка начатая {$user_date_perepiska},
    будет автоматически удалена ...бла..бла .. такого то числа {$date} ...
    пойдите почитайте пока не удалили окончательно!
    
    Данный функционал позволит не только очищать БД, но и напоминать пользователям, что форум жив и здоров :thumbsup:

    Отсутствие такого функционала у конкурентов не повод не применять его в Xenforo.
    По сути такой функционал должен быть по дефолту!

    У кого есть возможность "предложить" это разработчикам на официальном форуме? Может отпишите это предложение им?
     
  6. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Некорректный функционал. Ведь не разных форумах переписка может продолжаться даже не месяцами, а годами!
    Так что имеет смысл ограничивать именно размер/количество, а не срок. В принципе никто не мешает сделать некий плагин, в котором будут по крону подсчитываться размеры переписок. При превышении некоторого размера можно блокировать создание новых переписок. Это просто мысли вслух.
     
  7. Бboris

    Бboris Тролль

    Регистрация:
    20.08.11
    Сообщения:
    205
    Симпатии:
    33
    Конструктивный диалог, предполагает не только критику, но и альтернативу.
    Ждем :)
     
  8. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Я вот и предоставил альтернативу. Т.е. в ТЗ для разработчика адд-она можно указать вместо срока размер переписки или количество сообщений. Также можно продумать логику для совместного ограничения со сроками.

    P.S. Я разрабатывать такой плагин не буду. Мне он точно не нужен :) Как минимум, в ближайшее время. Так как размер личных переписок слишком мал по сравнению с другими сообщениями.
     
  9. Бboris

    Бboris Тролль

    Регистрация:
    20.08.11
    Сообщения:
    205
    Симпатии:
    33
    Ничего самостоятельно разрабатывать не надо!
    Нужно максимально продумать алгоритм и предложить разработчикам его интегрировать в будущие версии :)
     
  10. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    Я и не утверждал обратного. Само собой почти никто не пользуется.
    Но и в других движках также как правило никто не удаляет свои ЛС.
    Это как раз и не проблема, ибо 90 дней нужно отсчитывать от даты последнего сообщения в переписке ;)
     
  11. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Да. Это решает проблему. Но все же лучше вообще какой-нибудь "отстойник" делать для этого. Чтобы там еще мариновались с пол-годика. Если не обратятся по поводу восстановления, вот тогда точно можно сносить нафиг.
     
  12. Бboris

    Бboris Тролль

    Регистрация:
    20.08.11
    Сообщения:
    205
    Симпатии:
    33
    Вчера знакомый отписал в поддержку xenforo по этому поводу.
    Посмотрим что они скажут :)
     
  13. Flanker

    Flanker Местный

    Регистрация:
    19.05.11
    Сообщения:
    155
    Симпатии:
    27
    Версия XF:
    1.2.2
    А на vBulletin, IPB как-то по-другому? Везде сообщения хранятся в БД. Причём лимиты каждый админ ставит по своему усмотрению: кто-то 50, кто-то 100. И мало кто удаляет ЛС, пока ящик полностью не забьётся. Некоторые админы чистят раз в какой-то промежуток времени (но не всех пользователей это устраивает...), а некоторые забивают.

    Другое дело, что в vBulletin и IPB можно ограничить количество личных сообщений, а на XenForo нет?
    Тогда нужна реализация как в vBulletin, IPB (максимальное количество ЛС) или функция
     
  14. Бboris

    Бboris Тролль

    Регистрация:
    20.08.11
    Сообщения:
    205
    Симпатии:
    33
    Ответ саппорта Xenforo:

    Thank you for your message.
    Your suggestion may be of interest to some users and could well be developed as an add on. You are welcome to gauge demand and develop the add on although the add on forum requires that members are license holder in order to post or download add ons.
    Please let me know if you have any further queries.
    Regards
    Ashley

    Видимо не хотят они заморачиваться :)
     
  15. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Они считают это тем функционалом, который можно реализовать в плагине. В принципе, ничего странного.
     
  16. Бboris

    Бboris Тролль

    Регистрация:
    20.08.11
    Сообщения:
    205
    Симпатии:
    33
    В плагинах можно реализовать все !
    И на кой черт тогда платить разработчику, если потом еще плагины покупать?

    Xenforo начинает напоминать "евро-ремонт" в исполнении бригады узбеков :D
     
  17. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    Потому что у них свой план реализации новых фич, а и у любой команды разработчиков. Если на каждый чих будут реагировать новой функцией, то это будет бардак.
    Соответственно и план как правило разрабатывается путем сбора информации и пожеланий. И в первую очередь учитываются те, которых больше и разработка которых не влечет за собой определенных проблем.
     
  18. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    На самом деле тот же мир Linux построен на том, что сначала появляются различные патчи или софт, который со временем включается в основную ветку или дистрибутив. Все вполне обыденно. Ведь для добавления некоторого функционала требуется время на определение того, нужно оно или нет в основном движке, а также, в каком виде.
    В винде немного другое. Там годами добавляют какой-либо функционал, но при этом сторонним разработчикам почти никогда "не светит" включить их наработки в дистрибутив, пока их не купит Microsoft вместе с командой этих разработчиков :)
    Да, в мире движков сайтов и форумов несколько иначе, но смысл тот же. Быстрая реакция на необходимость чего-то возможна только через аддоны. Добавление этого функционала непосредственно в движок либо вообще не светит, если это не вяжется с планами разработчиков, либо со временем включается.
    Так как движок XenForo является проприетарным, то влияние сообщества на него не такое сильное, как в мире Linux, но все же при открытых исходниках и открытого API (для плагинов) сторонние разработчики могут легко добавлять нужные функции в короткие сроки. Разработчики могут в итоге функционал хороших плагинов в итоге под своим "соусом" включить непосредственно в движок.
     
  19. Alex Norton

    Alex Norton Пользователь

    Регистрация:
    13.11.11
    Сообщения:
    9
    Симпатии:
    0
    Версия XF:
    1.1.0 RC
    У меня другой вопрос по поводу переписки (лички).

    Я перешел на xenForo с SMF. Предварительно, на старом форуме удалил всю свою переписку одним махом (в SMF в личке есть отдельный пункт Действия --> Поиск сообщений, и Удалить сообщения
    Так вот, при удалении выскакивает настройка Удалить все личные сообщения старше чем ?? дней. позволяющая задать возраст сообщений в днях.
    Ну я и грохнул всё разом. Было 384 сообщений.
    Далее конвертировал БД в Булку, а уже из неё в XF.
    Так вот, в xenForo я только увидел что вся личка осталась. И нет никакой возможности покинуть всю переписку разом, со всеми авторами. Получается 39 страниц, по 20 сообщений в каждом.
    Я повешусь удалять их :(

    Нет никакого радикального метода?

    То что разработчики такую ерундовую функциональность отдают на откуп в плагины, это плохо.
    Такими мелкими плагинами можно обрасти до полной невозможности обновлять форум.
     
  20. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    Радикального? Есть.
    Удалить ВСЕ переписки на форуме можно этим запросом:
    Код:
    TRUNCATE TABLE xf_conversation_master;
    TRUNCATE TABLE xf_conversation_message;
    TRUNCATE TABLE xf_conversation_recipient;
    TRUNCATE TABLE xf_conversation_user;
    UPDATE xf_user SET conversations_unread = 0;
    Выполняйте на свой страх и риск. Перед выполнением обязательно сделайте копию БД.
     
    patrig нравится это.

Поделиться этой страницей