New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Реализовать поддержку нахождения контакта в нескольких группах одновременно #4111
Comments
Это отлично, очень нужно и ожидаемо. Только вот вопрос - а как это увязать с серверными группами? Если брать протокол ICQ как пример, пока что видно, что скорее на сервере может быть контакт только в одной группе. Значит, надо как-то помечать, какие группы серверные, а какие только локальные? Соответственно, при добавлении контакта в серверную группу надо ее перемещать из текущей другой серверной, а при добавлении в "только локальную" - сервер вообще не уведомлять не о чем? А если создалась новая группа, как решать, надо ее делать на сервере, или нет? А если удалилась, особенно с идеей их самоудаления, несовместимой с тем, как принято на сервере? При этом поддержка серверных групп это тоже нужно и важно, так как это подтягивается с сервера, если с нуля залогиниться с нового устройства. То есть прибивать это никак нельзя. PS |
Для этого есть список серверных групп в настройках ICQ |
А где это такие настройки ICQ, кроме Options->Network->ICQ_account? Да и не очень ясно, зачем в принципе этот отдельный список нужен в настройках, учитывая то, что в серверных группах ведь не только ICQ-контакты сидят, а и другие контакты других протоколов тоже в них же размещаются. Я уже предложил в другом месте - все группы должны быть в одном месте и управляться единообразно, серверные, не серверные, это не принципиально, где они хранятся. Можно вообще убить как класс все серверные группы, сделав иной способ синхронизации групп между разными мирандами на разных компах, что снимет сразу все вопросы, проблемы и геморрои. |
В меню протокола (пкм по значку протокола в панели статусов). Там живёт редактор серверных групп и ссылка на изменение профиля через веб-сайт. |
Спасибо, нашел. Но сделать все то же, Rename и Delete, можно и через ПКМ на обычной группе в редакторе игноров, и они там ровно так же сохраняются на сервере (на днях пользовался, и оно работает). Более того, с недавних пор там можно и добавить новую группу, и она добавляется на сервер тоже. А тут добавить вроде нельзя. В общем, совершенно бесполезное окно, дублирующее две функции основного редактирования групп. |
Полезное, можно удалить группы, которых в клисте уже нет. |
Это и так можно (т.е. было можно до недавнего, пока в настройках инвизов показывались пустые группы) после первой же синхронизации, обычным штатным способом сделать. Хотя это вообще нонсенс, когда группа на сервере есть, а в клисте нет - значит она с сервера почему-то не подтянулась. В отличие от обратного - когда в клисте куча групп есть не-серверных, а на сервере таких нету (и кстати она и их пытается с сервера удалять, если их пришибить, хотя она отлично знает, что их нет на сервере) |
Так значит их там и нет... Это вообще какой-то глюк получается. Раз с сервера они не прилетают - значит их там нет, значит - с какого перепуга они тут есть? То, что с сервера пустые группы без контактов тоже прилетают, это факт, я проверял. Раз их нет в клисте - ну нет. Не знаю, почему. А где они тогда есть? Они в таком случае должны сами все помереть при синхронизации групп. |
Причем, на попытку удаления сервер рапортует, что всё ок
Только никуда они не удаляются. Если я сейчас создам новую группу Discord, то в редакторе у меня будет их две: свежая и та, старая. Свежая удаляется без вопросов, "старая" нет. |
А он по жизни OK рапортует, что не стирай... На это я давно обратил внимание. Надо смотреть при старте, когда буддилист прилетает, что там реально есть, а чего нету. Но выглядит это как какой-то косяк в БД - типа они там где-то в забытом богом месте есть, откуда их никто, кроме этого окна, не берет. |
Собственно, поэтому я все время и говорю - что информация о всех группах должна быть в БД (или не в БД, а где-то еще) единообразной и в одном месте, несмотря на то, серверные они и из какого аккаунта, или локальные. Ведь любой контакт из любого аккаунта можно внести в любую группу, в том числе и в серверную, в том числе и хранящуюся в другом аккаунте (но при этом не говоря об этом тому серверу - не поймет). Сплошной геморрой с кучей подводных камней. Но иначе и будут подобные косяки с группами, кем-то взятыми непойми откуда. |
Но ведь это откровенная несуразица. Есть shared roster в жабере, есть группы аськи, есть папки в телеге, есть гильдии в Дискорде, и общего между ними нет ничего. Каждый протокол сам решает, как отображать всю эту хрень в локальные папки Миранды, и каждый раз это отдельная песня. Держать это в базе, а тем более обрабатывать единообразно - это чушь.
Нет, не любой. Про серверные группы движок Миранды ничего не знает, и знать не может по определению.
Не будет никаких косяков.
Предлагаю на этом дискуссию закончить. |
Ну пока еще не всё прояснилось.
А каким образом тогда на данный момент создание, удаление и переименование групп через контекстное меню в окне настроек игнора и в клисте делает эти действия и на сервере ICQ тоже? Откуда она знает, что эти группы хранятся на сервере в аккаунте аськи? Особенно, при создании новой группы - как миранда решает, что ее надо сохранить на сервер ICQ (и сохраняет!), а не на какой-то иной сервер, или вообще на сервер не сохранять?
Как это не любой? У меня, к примеру, в группе General, которая "ICQ-серверная", сидят аккаунты и из MRA, и из погоды, и из жабера. И нормально себе сидят, без видимых проблем. Ну и как бы они там и в будущем должны ровно так же сидеть. |
Да она тупо пуляет все новые группы на сервер. Отчего у меня там и образовались группы и подгруппы дискорда в своё время, которые теперь сервер не хочет удалять. Это же бред. Т.е. я ставлю протокол Discord, он мне создаёт группу Discord, как указано в его настройках, вываливает туда приваты и каналы дискорда с подгруппами, и эти группы идут на сервер аськи. Если же в базе есть группы, которых на сервере нет, в меню протокола появляется пункт "синхронизировать группы". |
Ну я с этим не спорю ни разу. Поэтому и задаю вопросы - а как будет в "новой системе" задаваться при создании группы, на каком именно сервере какого протокола я ее хочу создать? |
Я считаю, что если у асечного контакта есть группа, её надо пулять на сервер аськи. асечный контакт1 с группой "Агнцы" то на сервере аськи должны быть группы "Агнцы" и "Козлища" |
Допустим. И это логично. Но, есть нюансы, к примеру:
и еще... |
Еще раз: это задача для ядра, обеспечить возможность показа контакта в нескольких группах. Здесь вообще речь не идет о синхронизации с каким-либо протоколом. Завязываем |
а ежели заменить папки на метки? с возможностью метить каждый контакт несколькими метками? а уже их показывать... |
No description provided.
The text was updated successfully, but these errors were encountered: