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
Сделать "Мягкое игнорирование" - так сказать, полуигнор. #4106
Comments
И да, это на сегодня даже поддержано сервером ICQ, и оф. клиентом. Там это называется "тихий режим" - при его включении у контакта появляется поле "mute":1280. Я не знаю, что означает эта цифра, но вот так. При снятии "тихого режима" - поле "mute" пропадает совсем. Так что, видимо стоит переименовать "мягкое игнорирование" в "тихий режим" (Mute). |
А, да - переключается этот режим через GET https://u.icq.net/api/v92/wim/buddylist/Mute?buddy=<UIN>&eternal=<X>&f=json&aimsid=<AIMSID>&r=<REQ_ID> где X = 1 для включения тихого режима, и 0 для его выключения. Соответственно, после исполнения этого запроса всем подключенным клиентам прилетит уведомление об изменении "тихого режима" для контакта UIN |
Учитывая, что 1280 == 0x500, это два каких-то бита. Каких - неизвестно. |
Если что-то дальше прояснится (в дизассемблированном в IDA Pro коде оф. клиента винды) - допишу. Пока еще не нашел, обрабатывается там это как-то, кроме "есть/нет" или нет. Там, в этом коде, кстати, вообще много интересного есть. Например, в запрос presence/setState в view можно передавать не только online/offline, а еще "occupied" и "away", а также при "online" можно дать "invisible=1". И сервер это реально принимает (при том, что на иное - ругается - то есть не игнорит, по крайней мере проверяет). Что намекает на наличие еще пары статусов и инвиза. Но что это и зачем - остатки былой роскоши, или их планы на будущее, или еще что, пока тоже непонятно. Также, там присутствует вся инфраструктура работы с серверными группами, но "на морду" не вытащена. |
Эти статусы это пережиток прошлого ) пока зачем-то для совестимости ) хотя с чем ? Вот в чём вопрос... я ещё раньше замечал (когда оно работало в QIP-е) что у ICQ было реальных только два статуса , Online и Offline ) всё промежуточное трактовалось как Online ) |
Не надо путать мух с котлетами. Это "mute" это не статус, а свойство контакта, хранящееся на сервере, и доступное клиентам с целью управления "тихим режимом" на них. И это работает во всех видах оф. клиентов прямо сейчас. А "невидимость" уже реализована в миранде и работает ровно так же, как она работает сейчас на смартфонских клиентах - уходит в "оффлайн" по таймауту, на самом деле сидя в онлайне и принимая все сообщения. |
Это так же как в MailAgent и в Telegram ) , я понял о чём вы сказали ) , а вот occupied / away и подобное - это то что я говорил вам выше , некий костыль по совместимости ) |
А про occupied/away - ну есть надежда, что нам когда нибудь это вернут, раз на сервере оно есть. Реально очень-очень нехватает этой функциональности, менять статусы. Но это к теме тикета это не относится, тут про реализацию "тихого режим" - "mute". И, вообще, это от нас не зависит... |
Вообще этот режим реально хотелось бы иметь ) , причём было бы не плохо ещё выбирать как его включить , на конкретный контакт , или группу , или на конкретное событие ) ещё было бы не плохо чтоб те контакты которые помещены в тихий режим помечались отдельным конвертиком с зачёркнутым динамиком ) то есть... к вам обычно приходят уведомляшки и в трее вы видите мигающий конвертик и вы понимаете что тыкнув на него - вы видите сообщение от контакта , а вот для контактов в тихом режиме , жилательно чтоб появлялся ещё один конвертик с сообщением на котором перечёркнут динамик и который не мигал бы , а просто показывал бы количество не прочитанных сообщений ) и вот если вы наводите на него , то открывать сообщения последовательно начиная с первого ) |
Только вот не надо городить непонятного и нового. Имеется удобная настройка игнорирования, просто в ней надо добавить еще один вид игнора. Там и так можно включать режимы игнора и для групп контактов, и для отдельных контактов. А вот игнор событий - это другое, к тихому режиму отношения не имеет, и давно там же работает. Тихий же режим по отдельным событиям - ИМХО жесткое излишество, и сервером не поддерживается, на сервере только один флаг вроде как есть. Насчет "как это должно выглядить" - лично мне надо, чтобы в тихом режиме для этого контакта ничего нигде не появлялось совсем, не мигало, не возникало, и никак не раздражало. Как будто ничего не произошло. Именно для этого тихий режим и нужен в принципе. А вот как только я его сниму с группы контактов или с контакта - все уведомляшки должны возникнуть, если где-то что-то новое появилось за время тихого режима. Но тут есть команда разработчиков со своим видением, как и что должно работать. |
Можно и так ) только тогда включение мягкого игнора надо сделать не залазанием в настройки , а чем-то типа кнопки поиска контактов ) |
Текущие проблемы с редактированием групп и настройкой инвизов-игноров навеяли вот такую идею...
Сейчас оно как работает: Ставлю некую группу контактов, не связанных с работой, в полный игнор, чтобы не мешали работе. Потом, когда появилось свободное время, убираю с них игнор, и делаю им всем по очереди Load Server History, и смотрю, писал ли кто-то мне что-то в то время, когда было не до них. Оно работает, но это не очень удобно, особенно когда контактов, которые уводились в игнор, например сотня, умумукиваешься Load History делать.
Предложение: сделать некий "soft ignore". Аналогично, уходя в работу, ставлю группу контактов в "полуигнор". При этом, если полуигнор установлен для контакта, при приходе с сервера чего либо от этого контакта, оно принимается и записывается в базу. Автозагрузка файлов также работает. НО! При этом не возникает никаких уведомлений о сообщениях и файлах, и не всплывают и не самооткрываются окна/закладки с журналом. То есть, все происходит втихаря, как будто ничего не происходит. Ну, за исключением случая, если лог этого контакта и так открыт мной - тогда, конечно же, я все вижу сразу и могу ответить. Соответственно, все пришедшее и невиденное не помечается прочитанным. Затем, когда такой "полуигнор" сняли - все резко вываливается, если что-то пришло, то появляется, всплывает, уведомляет, и я резко все вижу, что там где было, пока я был занят, из того, что я сам до этого не открывал и не смотрел.
Можно такое реализовать? Если да, то вот, запрос на фичу.
The text was updated successfully, but these errors were encountered: