Это очень длинный и скучный пост о том, как я окунулся в "ничей" чат в телеграме. Пролистывайте.
(стена текста)
Также читателей телеграма предупреждаю, что такие длинные тексты переносятся в телеграм с пропусками, поэтому придётся какое-то время подождать, пока я восстановлю правильное разбиение по постам. Сегодня я тестирую разбиение с применением служебных картинок размером 1 на 1 пиксель.
Итак, я уже упоминал, что я сунулся в некий научно-популярный чат. Об этом я сделал следующие посты:
zhz00.diary.ru/p220158543_ob-okruzhenii.htm
zhz00.diary.ru/p220290616_kto-ty-po-masti.htm
В те разы я говорил о социально-философских аспектах. В этот раз я буду говорить о технических моментах телеграма.
Вводная.
Как устроены комментарии в телеграме, кто не в курсе: zhz00.diary.ru/p220037905_pro-kommentarii-v-tel... . Я обновил этот пост, добавив примеры переписок. Если вы не понимаете досконально, как работают комментарии в телеграме, сначала прочтите тот текст.
Канал на 300 тысяч человек открывает комментарии и чат. Нетрудно представить себе, какой цирк будет там твориться. На самом деле представить трудно. Чтобы держать всё это в порядке, нужно дежурство модераторов в три смены. Мало кто захочет этим заниматься бесплатно. Кроме роботов.
Я не знаю, как канал набрал 300 тысяч человек аудитории. Качество контента, хотя и научно-популярное, но довольно низкое. Посты либо копируются из иных источников, либо содержат в себе опечатки и очевидные ошибки. Много рекламы, в том числе кликбейтной и некрасивой. Администрация не любит свой канал и использует его, в основном, для зарабатывания денег.
Теория. Обзор технологии.
Используются два бота. @AngryModerBot и @ChatKeeperBot. Первый занимается непосредственно модерацией, второй -- репутацией. Репутация -- отдельная песня, про неё напишу в другой раз.
AngryModerBot выполняет три основных функции:
а) выставление участника на бан квалифицированным большинством голосов
б) удаление излишних сообщений
в) автоматический бан по ряду признаков
Живой модератор в чате присутствует, но он занимается своими делами и делает административные действия только если его позвать. И то, не всегда.
Теория. Демократический бан.
Если кому-то из участников не нравится, как ведёт себя другой участник, он может открыть голосование на бан. Он отвечает на непонравившееся собщение командой /voteban . Бот открывает голосование -- сообщение с двумя кнопками "да" и "нет". Нужно больше 5 человек "за", которые должны составлять больше 70% от голосовавших. После бана голосование закрывается. Для незабаненных голосование остаётся открытым. По-видимому, неограниченно долго. Если это так, то можно зарегистрировать пару дополнительных симок, отмотать чат на неделю/месяц назад и проголосовать там за бан определённого человека. То есть, все неоконченные баны продолжают висеть над незабаненным участником.
В случае бана появляется кнопка "разбанить", но она работает только для живого модератора.
Немаловажная технологическая особенность, которую надо упомянуть, заключается в том, что телеграм для удобства выводит слова, начинающиеся со слэша, как гиперссылки (только в публичных супергруппах). Нажатие на такие гиперссылки приводит к тому, что слово, начинающееся со слэша, автоматически пишется как сообщение от лица нажавшего. Сделано это, очевидно, чтобы было удобнее вызывать команды бота. Ты пишешь типа, /help, бот выдаёт сообщение со списком команд. И все команды уже являются гиперссылками. Достаточно нажать на нужную команду, и она напишется от твоего лица. А значит, сразу выполнится. К чему это приводит на самом деле -- читайте ниже.
Теория. Удаление лишних сообщений.
К лишним относятся следующие сообщения:
1) содержащие мат
2) слишком краткие, типа "ахаха" (но стикеры можно). Судя по всему, список удаляемых сообщений фиксированный, потому что некоторые не удаляются.
3) КАПСОМ
4) все гиперссылки кроме как на youtu.be/, yandex./... и, возможно, ещё некоторых
Это позволяет в теории удалять бессодержательные сообщения и фильтровать большую часть несанкционированной рекламы.
Теория. Автоматический бан.
В чате, о котором я пишу, автоматический бан работает только по одному признаку: регулярное употребление матерных слов. За каждое употребление счётчик увеличивается на 1. Когда он достигает пяти, пользователь банится. Сбросить счётчик невозможно.
Практика. Обзор.
Чтобы бот-модератор модерировал, его надо наделить правами модератора. Этого сделано не было. В результате все голосовалки и предупреждения носили чисто декоративный характер. Тем не менее, право удалять сообщение у бота-модератора всё-таки было (а почему?), поэтому с фильтрацией гиперссылок и мата бот справлялся.
Бот не справлялся с рекламой иного сорта, а именно -- шлюхоботами. Шлюхоботы существуют во многих чатах, привязанных к каналам. Это выглядит следующим образом. Когда на канале появляется новый пост, к нему сразу же подключаются первонахи. Один или даже сразу несколько человек пишут бессодержательный комментарий типа "Ого!" или "Вот это да!". Если посмотреть внимательно на аватарку написавшего человека, то мы увидим фрагмент женского тела соблазнительных форм. Как правило, это перси или ягодицы. Часто -- обнажённые. Если открыть профиль этого человека, то в био можно обнаружить запись типа: "Женщины ищут мужчин для секса тут! (ссылка)". Это не прямая реклама, поэтому не фильтруется ботом. Над ними уже весь чат смеялся, что типа это невероятно, что все представительницы древнейшей професси поголовно -- большие любительницы науки.
Обилие шлюхоботов породили специальный мем. Его источник -- не данный чат, я видел его и в других. Этим мемом отвечают шлюхоботам на их "Ого!"
Практика. Демократический бан.
Хотя изначально права на бан у бота-модератора не было, потом его всё-таки добавили. Я не знаю, почему. Возможно, потому что я постоянно обращался к администрации с просьбами провести те или иные административные действия, которые не мог провести бот из-за недостаточных прав. Всё, что я напишу ниже, относится уже к эпохе, когда бот-модератор имел право на бан.
Можно ожидать, что главная проблема демократического бана будет в том, что будут случайно банить тех, кого не надо. Но главная проблема оказалась с тем, что люди не понимают, куда писать /voteban .
Если ты сидишь в комментариях, то ты можешь написать /voteban там просто как сообщение. А можешь кликнуть куда-нибудь, например на чужой воутбан, который, как я уже писал, отображается как гиперссылка.
Если участник пишет в комментариях воутбан сам по себе, то открывается голосование на бан всего канала. Потому что, как мы помним, технически комментарий является ответом на дубль поста канала в чате. А значит воутбан пишется не сам по себе, а в адрес канала. Интересной особенностью тут является то, что голосование начинается словами "Иван открыл голосование за бан Telegram". Проблема в том, чем это сообщение заканчивается. А заканчивается оно текстом поста. Например, в случае шлюхоботов это работает так:
Марина: Ого!
Иван, в ответ на Марину: /voteban
Модератор: Иван начал голосование за бан пользователя Марина. Причина: Ого!
Как мы помним, канал -- научно-популярный. Каждый пост содержит в себе, скажем, полстраницы текста. И при каждой попытке бана эти полстраницы заново дублируются в чат. получается:
Канал: (полстраницы текста)
Иван, в ответ на Канал: /voteban
Модератор: Иван начал голосование за бан пользователя Telegram. Причина: (полстраницы текста)
Далее, воутбаны в сообщениях кликабельны. Поэтому если их кто-то случайно или специально нажимает, открывается новое голосование на бан. Выглядит это так:
Марина: Ого!
Иван, в ответ на Марину: /voteban
Модератор: Иван начал голосование за бан пользователя Марина. Причина: Ого!
Владимир, в ответ на Ивана: /voteban
Модератор: Владимир начал голосование за бан пользователя Иван. Причина: /voteban
Иван, в ответ на Владимира: Что я вам сделал-то?
Владимир, в ответ на Ивана: Извините, я случайно. Как отменить?
А отменить никак. И эти голосования за бан продолжаются по цепочке до бесконечности.
Когда обсуждаешь что-то по теме в таком чате, чувствуешь себя под постоянным артобстрелам. Против шлюхоботов это всё помогает очень ограниченно. Один из ботов за день сделал четыре новых аккаунта. В такой ситуации шлюхоботы -- меньшее зло. Они пишут тихо своё одно сообщение и всё.
Да, сам канал забанить невозможно, поэтому хотя голосование "за бан Telegram" многократно заканчивалось сообщением о том, что пользователь заблокирован, дубли поста с канала продолжают исправно появляться в чате.
Практика. Удаление лишних сообщений.
В научно-популярном чате удаление гиперссылок сильно осложняет общение, поскольку становится сложнее подкреплять свою точку зрения. Приходится идти на ухищрения, направляя аргументы в ЛС, делая скришноты википедии и маскируя гиперссылки вставкой пробелов в каких-нибудь местах.
Что касается ахаха -- опять-таки, ахаха это меньшее зло, чем десятки страниц стикеров. А стикеры разрешены. И вот это оплошность администрации. В стикерах прокатывает и мат и порнография, которые вроде как запрещены. Бот это не опознаёт и не удаляет.
Обратиться к администрации сложно. Есть живой модератор, но чтобы к нему обратиться, надо найти в истории чата одно из его немногих сообщений, ответить на него и указать, в чём дело. Почему такие сложности? Потому что обращение к пользователям через собачку трактуются ботом как гиперссылка и удаляется!
Практика. Автоматический бан.
Практика автоматических наказаний уже давно стала входить в нашу жизнь на примере камер на дорогах. Но даже камеры могут только выписывать штрафы. Лишить прав на основании фотографии на камере невозможно (на данный момент в России).
Плохо не то, что автоматика ошибается, а то, что с ней нельзя ничего обсудить. Уже как минимум два пользователя были заблокированы следующим образом:
Модератор: Пользователь Иван был заблокирован за мат (Предупреждения 5/5).
Казалось бы -- матерился -- сам виноват. Но дело в том, что модератор выдаёт сообщение на каждое предупреждение, т.е. 1/5, 2/5 и т.д. И если сделать поиск по истории чата, то обнаружится, что никаких предварительных предупреждений бот данному пользователю не выдавал! Он сразу выдал 5/5 и забанил. По словам потерпевшего (это был не я) он матерных сообщений не писал. Я обратился к администрации с вопросом по поводу того, что происходит, но администрация не отвечает.
Этот участник был самым умным и адекватным. Имел большие очки репутации (о которых я тут не пишу). Его (почти) все уважали. И теперь его нет.
Подводя итоги.
Автоматическая модерация жизнеспособна, но за ней требуется присматривать, как и за всем чатом. Полностью автоматический чат -- следствие абсолютного безразличия к аудитории.
Советы:
1. Бороться со шлюхоботами следует вручную. Они работают по паттерну. На канал выкладывается всего несколько постов в день. Вполне можно потратить 10 минут в день, чтобы зайти спустя 5 минут после поста и почистить сообщения.
2. Демократический бан мешает разговаривать.
3. Автоматический бан требует проверки: кого забанили и почему.
4. Следует запретить стикеры
5. Автоматическое удаление некоторых сообщений вводит в ступор, пока не разберёшься. Если после матерных сообщений бот выдаёт предупреждения, то гиперссылки и другие сообщения трутся молча. При этом заранее пользователи об этой особенности не предупреждены. Это не соответствует правилу наименьшего удивления.
А вообще -- не находитесь там, где вам не рады.
(стена текста)
Также читателей телеграма предупреждаю, что такие длинные тексты переносятся в телеграм с пропусками, поэтому придётся какое-то время подождать, пока я восстановлю правильное разбиение по постам. Сегодня я тестирую разбиение с применением служебных картинок размером 1 на 1 пиксель.
Итак, я уже упоминал, что я сунулся в некий научно-популярный чат. Об этом я сделал следующие посты:
zhz00.diary.ru/p220158543_ob-okruzhenii.htm
zhz00.diary.ru/p220290616_kto-ty-po-masti.htm
В те разы я говорил о социально-философских аспектах. В этот раз я буду говорить о технических моментах телеграма.

Как устроены комментарии в телеграме, кто не в курсе: zhz00.diary.ru/p220037905_pro-kommentarii-v-tel... . Я обновил этот пост, добавив примеры переписок. Если вы не понимаете досконально, как работают комментарии в телеграме, сначала прочтите тот текст.
Канал на 300 тысяч человек открывает комментарии и чат. Нетрудно представить себе, какой цирк будет там твориться. На самом деле представить трудно. Чтобы держать всё это в порядке, нужно дежурство модераторов в три смены. Мало кто захочет этим заниматься бесплатно. Кроме роботов.
Я не знаю, как канал набрал 300 тысяч человек аудитории. Качество контента, хотя и научно-популярное, но довольно низкое. Посты либо копируются из иных источников, либо содержат в себе опечатки и очевидные ошибки. Много рекламы, в том числе кликбейтной и некрасивой. Администрация не любит свой канал и использует его, в основном, для зарабатывания денег.

Используются два бота. @AngryModerBot и @ChatKeeperBot. Первый занимается непосредственно модерацией, второй -- репутацией. Репутация -- отдельная песня, про неё напишу в другой раз.
AngryModerBot выполняет три основных функции:
а) выставление участника на бан квалифицированным большинством голосов
б) удаление излишних сообщений
в) автоматический бан по ряду признаков
Живой модератор в чате присутствует, но он занимается своими делами и делает административные действия только если его позвать. И то, не всегда.

Если кому-то из участников не нравится, как ведёт себя другой участник, он может открыть голосование на бан. Он отвечает на непонравившееся собщение командой /voteban . Бот открывает голосование -- сообщение с двумя кнопками "да" и "нет". Нужно больше 5 человек "за", которые должны составлять больше 70% от голосовавших. После бана голосование закрывается. Для незабаненных голосование остаётся открытым. По-видимому, неограниченно долго. Если это так, то можно зарегистрировать пару дополнительных симок, отмотать чат на неделю/месяц назад и проголосовать там за бан определённого человека. То есть, все неоконченные баны продолжают висеть над незабаненным участником.
В случае бана появляется кнопка "разбанить", но она работает только для живого модератора.


К лишним относятся следующие сообщения:
1) содержащие мат
2) слишком краткие, типа "ахаха" (но стикеры можно). Судя по всему, список удаляемых сообщений фиксированный, потому что некоторые не удаляются.
3) КАПСОМ
4) все гиперссылки кроме как на youtu.be/, yandex./... и, возможно, ещё некоторых
Это позволяет в теории удалять бессодержательные сообщения и фильтровать большую часть несанкционированной рекламы.
Теория. Автоматический бан.
В чате, о котором я пишу, автоматический бан работает только по одному признаку: регулярное употребление матерных слов. За каждое употребление счётчик увеличивается на 1. Когда он достигает пяти, пользователь банится. Сбросить счётчик невозможно.

Чтобы бот-модератор модерировал, его надо наделить правами модератора. Этого сделано не было. В результате все голосовалки и предупреждения носили чисто декоративный характер. Тем не менее, право удалять сообщение у бота-модератора всё-таки было (а почему?), поэтому с фильтрацией гиперссылок и мата бот справлялся.
Бот не справлялся с рекламой иного сорта, а именно -- шлюхоботами. Шлюхоботы существуют во многих чатах, привязанных к каналам. Это выглядит следующим образом. Когда на канале появляется новый пост, к нему сразу же подключаются первонахи. Один или даже сразу несколько человек пишут бессодержательный комментарий типа "Ого!" или "Вот это да!". Если посмотреть внимательно на аватарку написавшего человека, то мы увидим фрагмент женского тела соблазнительных форм. Как правило, это перси или ягодицы. Часто -- обнажённые. Если открыть профиль этого человека, то в био можно обнаружить запись типа: "Женщины ищут мужчин для секса тут! (ссылка)". Это не прямая реклама, поэтому не фильтруется ботом. Над ними уже весь чат смеялся, что типа это невероятно, что все представительницы древнейшей професси поголовно -- большие любительницы науки.
Обилие шлюхоботов породили специальный мем. Его источник -- не данный чат, я видел его и в других. Этим мемом отвечают шлюхоботам на их "Ого!"
Практика. Демократический бан.
Хотя изначально права на бан у бота-модератора не было, потом его всё-таки добавили. Я не знаю, почему. Возможно, потому что я постоянно обращался к администрации с просьбами провести те или иные административные действия, которые не мог провести бот из-за недостаточных прав. Всё, что я напишу ниже, относится уже к эпохе, когда бот-модератор имел право на бан.
Можно ожидать, что главная проблема демократического бана будет в том, что будут случайно банить тех, кого не надо. Но главная проблема оказалась с тем, что люди не понимают, куда писать /voteban .
Если ты сидишь в комментариях, то ты можешь написать /voteban там просто как сообщение. А можешь кликнуть куда-нибудь, например на чужой воутбан, который, как я уже писал, отображается как гиперссылка.
Если участник пишет в комментариях воутбан сам по себе, то открывается голосование на бан всего канала. Потому что, как мы помним, технически комментарий является ответом на дубль поста канала в чате. А значит воутбан пишется не сам по себе, а в адрес канала. Интересной особенностью тут является то, что голосование начинается словами "Иван открыл голосование за бан Telegram". Проблема в том, чем это сообщение заканчивается. А заканчивается оно текстом поста. Например, в случае шлюхоботов это работает так:

Иван, в ответ на Марину: /voteban
Модератор: Иван начал голосование за бан пользователя Марина. Причина: Ого!
Как мы помним, канал -- научно-популярный. Каждый пост содержит в себе, скажем, полстраницы текста. И при каждой попытке бана эти полстраницы заново дублируются в чат. получается:
Канал: (полстраницы текста)
Иван, в ответ на Канал: /voteban
Модератор: Иван начал голосование за бан пользователя Telegram. Причина: (полстраницы текста)
Далее, воутбаны в сообщениях кликабельны. Поэтому если их кто-то случайно или специально нажимает, открывается новое голосование на бан. Выглядит это так:

Иван, в ответ на Марину: /voteban
Модератор: Иван начал голосование за бан пользователя Марина. Причина: Ого!
Владимир, в ответ на Ивана: /voteban
Модератор: Владимир начал голосование за бан пользователя Иван. Причина: /voteban
Иван, в ответ на Владимира: Что я вам сделал-то?
Владимир, в ответ на Ивана: Извините, я случайно. Как отменить?
А отменить никак. И эти голосования за бан продолжаются по цепочке до бесконечности.
Когда обсуждаешь что-то по теме в таком чате, чувствуешь себя под постоянным артобстрелам. Против шлюхоботов это всё помогает очень ограниченно. Один из ботов за день сделал четыре новых аккаунта. В такой ситуации шлюхоботы -- меньшее зло. Они пишут тихо своё одно сообщение и всё.
Да, сам канал забанить невозможно, поэтому хотя голосование "за бан Telegram" многократно заканчивалось сообщением о том, что пользователь заблокирован, дубли поста с канала продолжают исправно появляться в чате.

В научно-популярном чате удаление гиперссылок сильно осложняет общение, поскольку становится сложнее подкреплять свою точку зрения. Приходится идти на ухищрения, направляя аргументы в ЛС, делая скришноты википедии и маскируя гиперссылки вставкой пробелов в каких-нибудь местах.
Что касается ахаха -- опять-таки, ахаха это меньшее зло, чем десятки страниц стикеров. А стикеры разрешены. И вот это оплошность администрации. В стикерах прокатывает и мат и порнография, которые вроде как запрещены. Бот это не опознаёт и не удаляет.
Обратиться к администрации сложно. Есть живой модератор, но чтобы к нему обратиться, надо найти в истории чата одно из его немногих сообщений, ответить на него и указать, в чём дело. Почему такие сложности? Потому что обращение к пользователям через собачку трактуются ботом как гиперссылка и удаляется!

Практика автоматических наказаний уже давно стала входить в нашу жизнь на примере камер на дорогах. Но даже камеры могут только выписывать штрафы. Лишить прав на основании фотографии на камере невозможно (на данный момент в России).
Плохо не то, что автоматика ошибается, а то, что с ней нельзя ничего обсудить. Уже как минимум два пользователя были заблокированы следующим образом:
Модератор: Пользователь Иван был заблокирован за мат (Предупреждения 5/5).
Казалось бы -- матерился -- сам виноват. Но дело в том, что модератор выдаёт сообщение на каждое предупреждение, т.е. 1/5, 2/5 и т.д. И если сделать поиск по истории чата, то обнаружится, что никаких предварительных предупреждений бот данному пользователю не выдавал! Он сразу выдал 5/5 и забанил. По словам потерпевшего (это был не я) он матерных сообщений не писал. Я обратился к администрации с вопросом по поводу того, что происходит, но администрация не отвечает.
Этот участник был самым умным и адекватным. Имел большие очки репутации (о которых я тут не пишу). Его (почти) все уважали. И теперь его нет.

Автоматическая модерация жизнеспособна, но за ней требуется присматривать, как и за всем чатом. Полностью автоматический чат -- следствие абсолютного безразличия к аудитории.
Советы:
1. Бороться со шлюхоботами следует вручную. Они работают по паттерну. На канал выкладывается всего несколько постов в день. Вполне можно потратить 10 минут в день, чтобы зайти спустя 5 минут после поста и почистить сообщения.
2. Демократический бан мешает разговаривать.
3. Автоматический бан требует проверки: кого забанили и почему.
4. Следует запретить стикеры
5. Автоматическое удаление некоторых сообщений вводит в ступор, пока не разберёшься. Если после матерных сообщений бот выдаёт предупреждения, то гиперссылки и другие сообщения трутся молча. При этом заранее пользователи об этой особенности не предупреждены. Это не соответствует правилу наименьшего удивления.
А вообще -- не находитесь там, где вам не рады.
@темы: Борьба с техникой, Telegram, Статьи