Обновления Телеграма с новыми фичами выходят каждый месяц. Последний год появляется всё больше крупных механик с неочевидными ограничениями, которые очень сложно держать в голове.
Например, появилась статистика групп и каналов. При этом статистику можно смотреть только в каналах от 50 подписчиков и группах от 500 участников. А теперь вы можете увидеть список прочитавших ваше сообщение в группе — но только в группах до 50 человек и только в течение семи дней.
При нажатии на некоторые эмодзи появляется анимация на весь экран (да, среди них был и ????) — но только в личных сообщениях. Только в личных сообщениях можно закреплять сообщения для себя и менять темы для отдельных чатов.
Все эти особенности могут быть неожиданными. Но самые запутанные механики, пожалуй, связаны с сообщениями от групп и каналов: на самом деле, это три абсолютно разные фичи. Эта статья — об их особенностях и нюансах.
Маленькое содержание:
Как дублировать все посты канала в группе
Вы можете привязать группу к каналу — все посты из канала будут автоматически дублироваться в группе.
Как это сделать: Зайдите в меню управления каналом и добавьте группу-обсуждение. Вы должны быть админом и в канале, и в группе, которую привязываете.
Посты из канала будут автоматически отправляться и закрепляться в группе. Поскольку закреплённых сообщений в чате может быть сколько угодно, эти посты могут “засорять” список закреплённых сообщений. Чтобы этого избежать, вы можете откреплять их вручную или с помощью бота.
На такие сообщения от канала в группе пользователи тоже могут отвечать. Ответы на сообщения от привязанного канала — это и есть комментарии канала. Нативные комментарии появляются во всех каналах, к которым привязаны группы.
Комментариями считаются ответы на пост, ответы на эти ответы и так далее. Их можно посмотреть, нажав на кнопку "Комментарии" (остальные сообщения из чата не будут показаны).
Оставлять комментарии могут все участники канала. Да, таким образом сообщения в группе могут отправлять пользователи, не состоящие в этой группе! (Кроме того, все подписчики канала могут зайти в привязанную группу.)
Так могут начать общаться участник группы и комментатор, который не состоит в группе. Это может создавать некоторые проблемы:
Проблемы комментариев в чате
Например, если участник группы отправит сообщение, которое не является ответом, то в комментариях его просто не будет видно. А все комментарии выглядят в группе как ответы (по умолчанию это ответы на пост).
Кроме этого, участники комментариев получают уведомления только об ответах на их комментарии.
Эти моменты неочевидны для многих пользователей, поэтому обсуждения в комментариях часто случайно прерываются.
Иногда хочется добавить комментарии к каналу, но запретить подписчикам общаться в группе. Для этого есть боты, которые удаляют всех вступающих в группу. Костыль, но работает :)
Сообщение от канала в группе — это копия поста канала. Поэтому, если вы удалите пост в группе, в канале он не удалится — зато под ним пропадёт кнопка "Комментарии" (потому что пользователи больше не смогут отвечать на пост в группе). Кнопка “Комментарии” в канале также не отображается, если под постом есть другие кнопки.
Обратите внимание: если вы привязываете к каналу группу-обсуждение, в которой вы создатель, вы по умолчанию становитесь в ней анонимным админом. Чтобы это отменить, измените свои права администратора. Подробнее об анонимных админах — в следующем разделе.
Как писать от лица группы
Если вы анонимный администратор группы, все ваши сообщения в ней будут отправлены от лица самой группы.
Телеграм не позволяет писать от лица группы в других чатах.
Как это сделать: Получите право администратора “Анонимность”.
Если вы создатель группы: измените свои права в меню “Управление группой” → “Администраторы”.
Если вы не создатель группы: попросите создателя или другого анонимного администратора (если он может изменять ваши права) дать это право.
Пока у вас есть право “Анонимность”, вы не можете писать сообщения в группе от своего лица (только от лица группы).
Обычные участники не видят анонимных админов в списке участников чата и не могут узнать автора конкретного сообщения от лица группы (на то это и анонимность). Также нельзя различить, отправлены ли два анонимных сообщения разными администраторами или одним и тем же.
Но если у администратора есть должность (так называется кастомная подпись вместо слова “админ”), то она отображается и у его анонимных сообщений — как на видео выше. Анонимные админы могут использовать должности для того, чтобы участники группы могли их различать.
Все администраторы чата видят анонимных администраторов в списке участников. Но они также не могут определить, кто из анонимных админов отправил конкретное сообщение от лица группы. Зато, даже если админ анонимен, его имя отображается в действиях в списке “Недавние действия” (его видят все админы чата).
Как писать от лица канала
В декабрьском обновлении появилась возможность писать отправлять сообщения от лица канала в публичных или привязанных к каналам группах. Для этого нужно быть создателем канала.
В подходящих группах слева от поля ввода появляется ваша аватарка. Нажав на неё, вы можете выбрать, под каким именем вы хотите отправить сообщение.
Фича была добавлена “для большей анонимности пользователей”, и она немного усложняет модерацию групп. Если кто-то пишет от имени канала в вашем чате, вы можете забанить этот канал — для этого нужно удалить его сообщение с галочкой “Забанить пользователя” (других способов пока вроде как нет). При этом сам пользователь останется в чате.
Вы не можете узнать, какой именно пользователь отправляет сообщения от лица канала.
Разработчикам ботов
Если вы разрабатываете ботов для групп, то вам следует учесть, что сообщения могут быть не только от пользователей. Многие боты ещё не умеют обрабатывать сообщения от лица групп и каналов в группах.
В Bot API у сообщений есть поля from
(пользователь, отправивший сообщение) и sender_chat
(канал или группа, отправившая сообщение). Не забывайте использовать второе поле, если оно представлено.
С точки зрения API сообщения в группе, автоматически отправленные из привязанного канала — это пересланные сообщения. Чтобы отличать такие сообщения от пользовательских сообщений от лица каналов, в Bot API добавили поле is_automatic_forward
.
Заключение
Итак, есть три абсолютно разные новые фичи, которые у обычного пользователя вызывают один и тот же вопрос: “Ого, чаты могут отправлять сообщения?”
Ещё раз кратко — это:
Привязка группы к каналу. Все посты из канала автоматически отправляются в группу и закрепляются. Ответы на них — это и есть комментарии к посту.
Анонимные администраторы группы. Все сообщения от анонимного админа выглядят как сообщения от группы.
Отправка сообщений от лица канала. Работает только для создателя канала и только в публичных или привязанных к каналам группах.
В целом Телеграм становится всё более нагромождённым. Не знаю, хорошо это или плохо: фичи выглядят полезными, но сложными.
Комментарии (2)
QeqReh
23.12.2021 09:31Как дублировать все посты канала в группе
Лучше расскажите как не дублировать посты канала в группу? Хотя бы выключить автоматический закреп поста в группе.
Bazis007
Механику работы клавиатурок бы привели в порядок. Очень не хватает..
Для keyboard - сделали бы колбеки.
Для inline_keyboard - режим one_time_keybord.
А ещё диалоговых окон не хватает с типизацией ввода, например ввести дату, или число в определённом диапазоне. Ибо проверять весь объём дичи, которая может придететь от пользователя накладно :(