IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#acetonevideo
/2021/05/24
~acetone
@qend
Leopold
Most2
Ruskoye_911
`
anon3
cancername
fidoid
korol4ik_
nil
poriori
segfault
skromniy
weko
whothefuckami
zero_tolerance
acetone Логи обнулены. Думаю, такого больше не будет, однако уверен, никто не расстроился :)
acetone Теперь abot стал еще ближе к полезному боту для ирки :)
lnkr **blinded message**
lnkr Matrix? С логикой работы серверов, подразумевающей изначально, что пользователь должен иметь возможность продолжить общение и сохранить свой адрес, даже если сервер, послуживший точкой входа, безвременно откинулся? Возможно с осмысленной
lnkr интеграцией ygg/i2p, может даже встроенными оными, дабы конечный пользователь по минимуму охуевал от пользования, но connectivity при этом достигалась всеми возможными способами?
acetone lnkr: я думаю, что мессенджер на транспорте i2p - это вышка
acetone а i2pd в свою очередь умеет и через ygg работать, поэтому посредственно в таком раскладе используется и игг)
acetone пока что набиваю скилл по-мелочи
lnkr **blinded message**
lnkr имеющих публичные ключи других юзеров и готовых если что у себя его принять
acetone lnkr: согласен с тобой полностью
acetone есть briar - замороченная бессерверная штука на торе
acetone бессерверная - значит без оффлайн сообщений, поэтому не взлетит никогда
acetone это доказывает история
acetone я вот думаю на базе i2p попробовать спроектировать а-ля briar, но с возможностью добавления доверенного сервера, которому будет делегировано хранение оффлайн сообщений
lnkr **blinded message**
lnkr acetone: бессерверная это не то, да
lnkr демонстрации - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque lorem nisi, hendrerit ut nisi vel, eleifend tristique ex. Nunc aliquet rutrum varius. Etiam in dolor congue, maximus purus vitae, sollicitudin libero. Quisque aliquam dolor eu eleifend pulvinar.
acetone lnkr: да, есть такое дело
acetone это уже на откуп писаке))
acetone так сказать утечка информации :D
lnkr Можно закостылить, ориентируясь на таймстэмпы сообщений, но это будет порядочно возни)
acetone lnkr: ахаха, ты злодей!
acetone я только подумал, что закончил на сегодня
acetone надо окститься, всё всё всё))
acetone подумаю сегодня неспеша как это сделать
acetone сразу браться не буду, а то с 7 утра уже эти магические буквы разглядываю
acetone мозги замылились
lnkr Ну это будет подразумевать уже обработку сообщений не сразу как пришло, а какую-то очередь и ожидание, и это будет очень больно)
lnkr а, вру, не будет
lnkr надо будет просто где-то в памяти ненадолго хранить списочек
acetone Ага, lnkr, тоже подумал над этим)) Таймстампы держать - значит основательно подумать где именно это делать в приложении, которое уже начинает образовывать свою архитектуру)
acetone Пока что вроде стараюсь делать максимально лакончино
lnkr Вот так всегда, хочешь сделать хорошо, а получается "лакончино")
acetone lnkr: ну что ты ругаешься)))
lnkr Ты первый начал)
acetone отдельный объект в отдельном потоке слушает сокет ирки и отвечает на пинги, а отдельный поток обрабатывает все получаемые запросы))
acetone правда если сокет - объект, то вся обработка - галимая процедрущина)))
acetone потому что ООП я не вывожу тут
acetone говнокод
acetone говнокод
acetone lnkr: у тебя глаз намётан. Какая бы еще простая функция вроде поиска может быть полезной для широкого применения на ирк-каналах?
lnkr удаление из логов, если обосрался со скрытием) На самом деле подумаю, к ботам штуки прикручивать это весело
lnkr А что если по запросу хуйнуть логи прямо пользователю в ЛС? Далеко ходить не надо, получаешь всё внутри IRC сразу
acetone lnkr: ты чёртов гений!
acetone логи нужной даты в ЛС пользователю
acetone ге-ни-аль-но
acetone буду сейчас кумекать как это покрасивше сделать, но интерфейсы уже существующей архитектуры это вроде позволяют
lnkr И поиск в таком формате можно повыразительнее сделать если хочется, вываливать сразу и что нашлось, чтоб хотя бы понимание было, что конкретно в той или иной дате обсуждали, а не просто 2021/05/24 (2)
acetone lnkr: наверное, легко будет сделать так: публичный поиск показывает общую активность, а потому бота можешь запросить лог за интересующую дату и он тебе насыпет в ЛС
acetone lnkr: как думаешь, высыпать весь лог, или только сообщения с упоминанием искомого слова?
lnkr Ну если изначально в ответ на поиск только конкретные сообщения, если по запросу на уточнение - логичнее уже весь лог
acetone lnkr: вызов принят! :)
acetone думал подеградировать в сериал, но нет моей душе покоя, пока бот не насрет мне в ЛС
lnkr Вопрос тогда такой - когда логи дорастут до условных хотя бы сотен мегабайт, и придёт какой-нибудь крендель, спросит у бота в течение пары секунд 100 раз поиск по "а" и 200 раз поиск по "и" - кто охуеет первый, сервер ирки или бот?)
acetone lnkr: думаю, что бот
acetone думал над такой угрозой. Думаю, будет логично со временем на многопоточность разбить поиск, чтобы быстрее и легче пролезало
acetone Но до сотен мегабайт еще дожить надо :D
lnkr Ну сотен это я загнул, может хватить и сильно поменьше
acetone lnkr: будет занятно провести подобные тесты :)
acetone локально, наверное, попробую сделать на днях
lnkr Ну подпереть зубочистками несложно, рейтлимиты на дорогие запросы и останавливать поиск на допустим 50 последних вхождений. Если нашлось больше - что ты искать то в этом шуме собрался
acetone lnkr: согласен, тормознуть не сложно) На досуге подумаю как это красивше сделать
lnkr Можно еще завести экстренные местячковые удобства для тех, у кого IRC-баунсера нет, в виде on demand сообщений, дескать пишешь что-то типа "abot send Фёдор: ты хуй, у тебя ключи утекли, беги меняй", и в следующий раз когда Фёдор появляется в онлайне - он
lnkr получает сообщение и имя отправителя.
acetone lnkr: согласен, хорошая штука
acetone тоже надо сделать :D
lnkr А по поводу порванных на части сообщений и таймстэмпов - если это делать, логичнее это тогда делать ещё на первом эшелоне, т.е. склеивать обратно сообщение еще до того, как оно будет обработано логикой, и будет записано в логи/скрыто/отправлено
lnkr Фёдору. Тогда куски сообщений перестанут быть проблемой, но тогда уже точно нужны очереди/задержки/какие-то пути не обрабатывать первый кусок мессаги сразу, а дождаться всех её частей. Правда, и то не панацея - при дерьмовом коннекте куски
lnkr разделенного сообщения вообще не факт что очень быстро друг за другом придут. Но тут уж имеем что имеем
lnkr ТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТест
lnkr ТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТест
lnkr ТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТест
lnkr Видел несколько раз, как ИРКа рвёт кириллическую мессагу не в том байте, и приходит каша. Видимо, от клиента и от случая зависит
lnkr aТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТестТест
acetone lnkr: да, я часто наблюдая как ирка рвёт посередине символа сообщение и кодировка срывается к херам собачьим))
lnkr попробуем немножечко прожестить
lnkr 👩‍👩‍👧‍👧👩‍👩‍👦‍👦👩‍👩‍👧‍👦👩‍👩‍👧👩‍👩‍👦👨‍👨‍👧‍👧👨‍👨‍👦‍👦👨‍👨‍👧‍👦??‍👨‍👧👨‍👨‍👦👨‍👩‍👧‍👧👨‍👩‍👦‍👦👨‍👩‍👧‍👦👨‍??‍👧👨‍👩‍👦👪👨‍👧‍👦👨‍??👨‍👦👩‍👧‍👧👩‍👦‍👦👩‍??‍👦👩‍👧👩‍
lnkr 👦👨‍👦‍👦👨‍👧‍👧👩‍👩‍👧‍👧👩‍👩‍👦‍👦👩‍👩‍👧‍👦👩‍👩‍👧👩‍👩‍👦👨‍👨‍👧‍👧👨‍👨‍👦‍👦👨‍👨‍👧‍👦👨‍👨‍👧??‍👨‍👦👨‍👩‍👧‍👧👨‍👩‍👦‍👦👨‍👩‍👧‍👦👨‍👩‍👧👨‍??‍👦👪👨‍👧‍👦👨‍👧👨‍👦👩‍👧‍👧👩‍👦‍
lnkr 👦👩‍👧‍👦👩‍👧👩‍👦👨‍👦‍👦👨‍👧‍👧👩‍👩‍👧‍👧👩‍👩‍👦‍??👩‍👩‍👧‍👦👩‍👩‍👧👩‍👩‍👦👨‍👨‍👧‍👧👨‍👨‍👦‍👦👨‍👨‍👧‍👦👨‍👨‍👧👨‍👨‍👦??‍👩‍👧‍👧👨‍👩‍👦‍👦👨‍👩‍👧‍👦👨‍👩‍👧👨‍👩‍👦👪👨‍👧‍👦👨‍👧
lnkr 👨‍👦👩‍👧‍👧👩‍👦‍👦👩‍👧‍👦👩‍👧👩‍👦👨‍👦‍👦👨‍👧‍👧👩‍👩‍👧‍👧👩‍👩‍👦‍👦👩‍👩‍👧‍👦👩‍👩‍👧👩‍👩‍👦👨‍👨‍👧‍👧👨‍👨‍👦‍👦👨‍👨‍👧‍👦👨‍👨‍👧👨‍👨‍👦👨‍👩‍👧‍👧👨‍👩‍👦‍👦👨‍👩‍👧‍👦??‍👩‍👧👨‍
lnkr 👩‍👦👪👨‍👧‍👦👨‍👧👨‍👦👩‍👧‍👧👩‍👦‍👦👩‍👧‍👦👩‍👧👩‍👦👨‍👦‍👦👨‍👧‍👧
lnkr ага, вижу в логах как рвутся эмоджи) обожаю эмоджи, нет такого в контекста в котором они бы что-то не сломали или не сломались бы сами)
acetone я сначала и не понял что за квадратики ты флудишь, пока в лог не заглянул)) а бровзер умеет эмоджи в отличие от ирка
lnkr там в логах по краям пары сообщений можно увидеть эмоджу одной морды вместо семьи из нескольких человек. Я запостил только эмоджи семей, так что иконки с одной мордой это разбившиеся на разрезах сообщений эмоджа семьи))
acetone ха! забавно они крошатся
acetone семья порвалась - стала рожа одна
lnkr Они так забавно крошатся, что буквально все компании, большие и не очень, еще в окне пользовательского ввода заменяют введенные эмоджи на другие специальные метки, которые потом уже при постинге меняются на просто картинки с сервера. Лишь бы с
lnkr этим вырождением юникода дел не иметь)
lnkr Смысл затеи то изначально может и правильный, экономить на отведённых символах в кодировке, создавая другие на основе уже имеющихся, подходящих по смыслу (типа символ "врач" - это вроде символ морды + больница), но когда в итоге у тебя одна иконка
lnkr жрёт место на 5-6 символов - начинаются проблемы
acetone Ага) А я тем временем почти реализовал выдачу лога в ЛС)
acetone **blinded message**
acetone **blinded message**
acetone lnkr: ха, замечательный пример, когда кодировка поломалась
acetone бот отдает по запросу "врач" твой сообщение, повредив кодировку
acetone lnkr: но в целом вроде как концепция реализована :)
lnkr acetone: не вижу повреденной кодировки. Или ты как-то починил?
acetone lnkr: видимо тот самый случай, когда оно случайно и непредсказуемо)) я не чинил это
acetone у меня снова поврежденная прилетела)))
acetone видимо, от ирк-клиента зависит
acetone lnkr: при запросе всей истории отдает лишь часть
acetone естественное ограничение
lnkr не понял естественного ограничения
acetone lnkr: естественное - в плане "не мной написанное", а некое нативное ограничение компилятора/С++, который не позволяет раздуваться объектам (в данном случае std::vector<std::string>) больше какого-то объема
acetone думаю, это решается, но дополнительными манипуляциями
acetone пока что оставлю так
acetone поэтому при запросе большого куска ты получаешь лишь часть. Я когда сортировкой файлов занимался в рамках другого проекта, наткнулся на такое же молчаливое ограничение
acetone Пока что не задавался вопросом как это лечится
lnkr чтоб в плюсах что-то из коробки не позволяло раздуваться хоть каким-то обьектам это чудеса какие-то, магия черная)
acetone lnkr: сам не ожидал увидеть
acetone сегодня с 7 утра этот говнокод гляжу, уже не в состоянии что-либо пытаться
acetone но завтра у знатоков поспрашиваю о природе выявленного явления)
qend код бота еще не публиковал? я все никак не зарегаюсь(
acetone qend: код бота приватный пока что, до релиза не дошел :)
acetone будет что показать не стыдно - я покажу))
lnkr acetone: ну конкретно в этом случае наверняка что-то пошло не так. Чтоб Vector не давал разрастаться это шляпа, Vector на то и вектор чтоб безлимитно расти пока всё не уронит нахер, это его определение)
acetone lnkr: согласен с тобой))
acetone если могёшь плюсы, могу код дать поглядеть
acetone сам я сейчас в полном невминозе после танцев с бубном от сегодняшних фич
lnkr acetone: не, с плюсами я так и не подружился. Очень уважаю, хочу чтобы всё в мире было переписано прямыми руками на плюсах, но сам после десяти минус сишных-плюсишных упражнений начинаю кататься по полу, обхватив голову)))
lnkr *минут
acetone lnkr :D ох, понимаю
acetone сделал таки репозиторий публичным
acetone вот конкретно место с вектором, который по идее должен надуваться безгранично notabug.org/acetone/ircbot/src/master/main.cpp#L57
acetone Пролистал часть кода в браузере, аж страшно стало. Неужели это моё :D Надо идти спать.
borat вива форева !!!
borat мамньку от впкцинации отговорил
borat уфффффф....
borat жива Будет
borat ёбта .....
borat Уфффф ....еЁеееееен
borat убедить
borat корочь
acetone borat: :D
borat удалось
acetone и вам добрый вечер
acetone а я прививку сделал
acetone считай чипировали всё
acetone конец
borat есть такая вещь!!!
borat ацетон ну бляяаа
borat в остальном не Легче
borat забудь нахуй!
borat я их рот ебал
borat да и их уродский рот ебать
borat западло
borat ну а то братка ?
acetone borat: да я тоже не шибко хотел
acetone так уж сложилось, что добровольно-принудительно)
borat acetone: так то брат:(
acetone borat: пару деньков херовски было, потом снова как огурчик)
borat acetone: Ты знашь что зона не зона а всё ОднО
borat полюбому я вот приехал как то с каникул в консу .....а.....моя .....напарница ...,девочка.....славянской наружности ....умерла....знаешь..,.игравшая на фно я на скрипке!
borat а встречалась с туркменом
borat тот её и кинул
borat кинул по всем 200 %
borat той ниче:о не
borat оставалось
borat Да
borat друзья /
borat не имейте
borat дел с обманщиками
borat но как есть так и есть
borat есть Аллах
acetone borat: пил сегодня?))
acetone - ушёл -