👀 Good news, everyone!
Unexpectedly, it's us again. Yes, we published news just a few days ago, but we've piled up so many changes that releasing them bit by bit would stretch out over several months. So let's continue. There's a separate mega post coming for @AximoBot, and there'll probably be three or four of those in a row, so for now let's go through the rest of the bots. We've done plenty there too. So, updates, fixes, improvements:
@download_it_bot and @InstantMediaBot
— MEGA NEWS! There are so many updates that we decided to reset everyone's trials, so you can try the new features all over again. And as a bonus, we've got a discount coupon, ➡️DW10, if you decide to grab a plan.
— File size is now determined precisely instead of by eyeballing it. In a couple of places it was estimated from the resolution, and on a long clip it was off by multiples: a 96 MB video could be counted as 300 and hit your plan's limit even though it fit easily. Now we ask the server for the real size, and small files no longer get blocked over a wrong estimate.
— Download progress is honest again. It not only shows the real progress but also starts at zero instead of ten percent, before the bar started out already filled and there was no way to tell how much was left.
— Downloading got noticeably more resilient. The problem was this: the bot would start downloading, the proxy would drop, it'd pick another one and retry with the old link, which only worked with the previous proxy. Now, if a link is tied to a specific proxy and that proxy goes down, the bot runs the cycle again: requests fresh media data, gets a fresh link and finishes the download with it.
— Reddit titles no longer get cut off mid-word. The cause turned out to be unexpected: it's not our code doing the cutting but the downloader itself, it truncates the title at 72 characters and puts the full one in a separate field nobody was looking at. Now we look and restore it.
— The "already downloaded" icon came back for audio. Along the way we found out the cache wasn't working for audio at all: the icon never showed up and the system re-downloaded the file every single time. First, that counted against your traffic, second, it was slow. Fixed, of course.
— Long titles no longer break the card: clips with very long titles used to show a chunk of markup instead of a link.
@voice_remover_bot
— Long files no longer break down. We spent a week digging into why processing long recordings would sometimes finish and sometimes cut off halfway, and found several causes at once, each of which looked like a fluke on its own. Sorted them all out, fixed. The result: on premium plans you can safely throw in recordings several hours long, a lecture, a stream, a whole podcast, and they'll make it to the end.
@ChatzillaBot
— Warnings to rule breakers are now seen only by the rule breaker. Telegram learned how to do personal messages inside a group, so moderation no longer clutters the chat feed with replies addressed to one person.
@NudesRemoverBot
— The bot silently stopped checking images for a few days. The nastiest part of this story is that it didn't crash or complain: the internal recognition engine broke at the memory level, every check quietly failed with an error, and the message got marked as processed. From the outside it looked like "the bot works, it just isn't finding anything". We figured it out, fixed it and removed the cause while we were at it: the image is now downsized to what the neural net needs before analysis starts, so it takes hundreds of times less memory. Plus black and white images and files in non-standard color profiles stopped breaking.
— If the bot doesn't have permission to delete posts, you'll now know about it. We found groups where the bot dutifully detected violations, wrote "⚠️ detected" and left the picture hanging, because nobody made it an admin. Now the owner gets a personal message with instructions, and checking is paused until the permissions appear.
— Also our mini app was broken for a while. Thanks for reporting it in the group, we fixed it promptly, of course.
Need help? Ask any questions you like in our support group: @madbots_talk.
———————————
👀 Отличные новости!
Неожиданно снова мы. Да, несколько дней назад уже публиковали новость, но у нас накопилось столько изменений, что если выдавать их по чуть-чуть, это растянется на несколько месяцев. Так что продолжаем. Про @AximoBot будет отдельный мега-пост, причём таких, наверное, будет штуки три-четыре подряд, так что пока пройдёмся по остальным ботам. Там тоже много чего наделали. Итак, обновления, фиксы, улучшения:
@download_it_bot и @InstantMediaBot
— МЕГАНОВОСТЬ! Обновлений так много, что мы решили сбросить всем триалы, так что можете попробовать новые фичи заново. Ну и как бонус, у нас есть купон на скидку ➡️ DW10, если надумаете приобретать план.
— Размер файла определяется точно, а не на глазок. В паре мест он вычислялся прикидкой по разрешению и на длинном ролике ошибался в разы: видео на 96 МБ могло числиться как 300 и упереться в лимит тарифа, хотя влезало с запасом. Теперь спрашиваем настоящий размер у самого сервера, и мелкие файлы больше не блокируются из-за неверной оценки.
— Прогресс скачивания снова честный. Он не только показывает реальный ход загрузки, но и начинается с нуля, а не с десяти процентов, раньше полоса стартовала уже заполненной и оценить, сколько осталось, было невозможно.
— Скачивание стало заметно устойчивее. Проблема была такая: бот начинал качать, прокси отваливалась, он брал другую и пробовал по старой ссылке, а она работала только с предыдущей. Теперь если ссылка привязана к конкретной прокси и та упала, бот проходит цикл заново: запрашивает свежие данные о медиа, получает свежую ссылку и докачивает по ней.
— Заголовки с Reddit больше не обрываются на полуслове. Причина оказалась неожиданной: их режет не наш код, а сам загрузчик, он обрезает название на 72 символа, а полное кладёт в отдельное поле, куда никто не смотрел. Теперь смотрим и восстанавливаем.
— Значок «уже скачано» вернулся к аудио. Заодно выяснилось, что для аудио кэш вообще не работал: значок не появлялся, и система каждый раз перекачивала файл заново. Во-первых, вам за это считался трафик, во-вторых, это было долго. Само собой, починили.
— Длинные названия перестали ломать карточку: у роликов с очень длинным заголовком вылезал кусок разметки вместо ссылки.
@voice_remover_bot
— Долгие файлы больше не срываются. Мы неделю копали, почему обработка длинных записей то доходит, то обрывается на полпути, и нашли сразу несколько причин, каждая из которых по отдельности выглядела как случайность. Разобрали все, починили. Итог: на премиум-тарифах можно спокойно закидывать записи на несколько часов, лекцию, эфир, целый подкаст, и они дойдут до конца.
@ChatzillaBot
— Предупреждения нарушителям видит только сам нарушитель. Telegram научился личным сообщениям внутри группы, так что теперь модерация не засоряет ленту чата сообщениями, адресованными конкретному человеку.
@NudesRemoverBot
— Бот несколько дней молча не проверял картинки. Самое неприятное в этой истории, что он не падал и не ругался: внутренний движок распознавания сломался на уровне памяти, каждая проверка тихо завершалась ошибкой, а сообщение помечалось как обработанное. Снаружи выглядело как «бот работает, просто ничего не находит». Разобрались, починили и заодно убрали причину: картинка теперь ужимается до нужного нейросети размера до начала анализа, так что памяти требуется в сотни раз меньше. Плюс перестали ломаться чёрно-белые изображения и файлы в нестандартных цветовых профилях.
— Если у бота нет прав на удаление постов, вы об этом узнаете. Нашлись группы, где бот исправно находил нарушения, писал «⚠️ обнаружено» и оставлял картинку висеть, потому что его не сделали администратором. Теперь владельцу приходит личное сообщение с инструкцией, а проверка ставится на паузу до появления прав.
— Плюс у нас тут на некоторое время ломалось мини-приложение. Спасибо, что сообщили в группу, само собой оперативно починили.
Проверяем, тестируем. Если обнаружились проблемы, пишите в @madbots_talk.