Для приветствия часто служба регистрации канала обеспечивает это. ChanServ от Foonetic имеет опцию «ENTRYMSG»:
<grawity> помогите установить entrymsg
-ChanServ- ***** ChanServ Помощь *****
-ChanServ- Помощь для SET ENTRYMSG:
-ChanServ-
-ChanServ- SET ENTRYMSG позволяет изменить или установить
-ChanServ- сообщение, отправленное всем пользователям, присоединившимся к
-ChanServ- канал.
-ChanServ-
-ChanServ- Синтаксис: SET <#channel> ENTRYMSG [сообщение]
-ChanServ-
-ChanServ- Пример:
-ChanServ- / msg ChanServ SET #support ENTRYMSG Добро пожаловать в #support. Пожалуйста, не вставляйте более 5 строк.
-ChanServ- ***** Конец помощи *****
Отставание сложнее. Большинство IRC-серверов не имеют какой-либо регистрации сообщений - как по соображениям конфиденциальности, так и по производительности - поэтому пользователь никогда не знает, какие сообщения были отправлены, прежде чем присоединиться к каналу. Некоторые пользователи используют отказов IRC (например, ZNC или psyBNC), которые остаются на канале 24/7 и отправляют последние несколько сообщений, когда пользователь подключается к вышибалу. Веб-клиенты, такие как Mibbit, делают это с помощью общего журнала - если хотя бы один Mibbit-пользователь находится в канале, все остальные пользователи могут получить резерв.
Кроме того, до недавнего времени у IRC не было никакого способа передачи исходных временных отметок, поэтому, если история была воспроизведена, все старые сообщения будут отображаться как отправленные одновременно, с добавлением уродливого «[12:34]» к тексту сообщения. В настоящее время есть дополнительное расширение для этого, но его поддерживают только баунсер ZNC и, возможно, 2-3 клиента. Но он все еще работает только тогда, когда воспроизведение выполняется самим сервером (или вышибалой), а не ботом.
Таким образом, вы можете получить это, только a) написав бота, который предоставит резерв по запросу, или b) попросив пользователей использовать IRC-баунсер, который предоставляет эту функцию.