СИСТЕМА
1.31K subscribers
213 photos
21 videos
9 files
214 links
Пилим софт 🔧
#боты #проги #код
Download Telegram
ДЕЛАЮ QR-БОТА НА ЧИСТОМ BASH

Суть: кидаешь ссылку — получаешь qr-код
Стек: только bash + /dev/tcp
Никаких внешних программ.

Зачем?: А главное — нахуя??

Статус: начал
Когда готово: хз

#bash #qrbot


#bash #qrbot
👍5
Я офигел от этого хостинга. Не надо никаких команд вбивать, просто тупо папку с файлами закинул и всё))

https://deploy-f.com/
👍3
Друзья разработка QR-бота на Bash идет,но это чистый ад, Грабли, тупики, головоломки....
Не хочу тут спамить каждым факапом, и поэтому решил завести отдельный чат в котором буду постить прям всю кухню,
Почему именно чат, а чтобы каждый желающий мог принимать участие))

В общем, хотите жить-живите!
Не хотите - Добро пожаловать в чАД !)
😈: https://t.me/sandbox_hardcore
Please open Telegram to view this post
VIEW IN TELEGRAM
СИСТЕМА pinned «Друзья разработка QR-бота на Bash идет,но это чистый ад, Грабли, тупики, головоломки.... Не хочу тут спамить каждым факапом, и поэтому решил завести отдельный чат в котором буду постить прям всю кухню, Почему именно чат, а чтобы каждый желающий мог принимать…»
Мааааленькая победа...

Делаем QR-бота на bash. Telegram требует HTTPS, /dev/tcp не шифрует — значит нужен openssl. Подписчики запретили curl, только openssl.

openssl в WSL вёл себя странно — handshake проходит, сертификаты проверяет, а ответ не отдаёт. unexpected eof и тишина.

Пробовал два терминала с fifo-каналом (постоянное соединение) — упёрлось в 400 Bad Request. Разные флаги -quiet, -no_ign_eof, sleep — без толку.

В итоге забил на сложные конструкции и тупо сделал в одну строку:
echo -e "GET /bot.../getMe HTTP/1.1\r\nHost: api.telegram.org\r\nConnection: close\r\n\r\n" | openssl s_client -connect api.telegram.org:443 -quiet 2>&1

Заработало! 👌
HTTP/1.1 200 OK
...
{"ok":true,"result":{"id":8368595923,"first_name":"QR-BOT","username":"QR_FUCKING_BOT"}}

HTTPS через openssl работает. Можно слать запросы и получать ответы. Дальше — sendMessage и генерация QR.

Весь ТРЭШ ТУТ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥3👏1
📶 ЕСТЬ КОНТАКТ!

Сегодня добил приём и отправку сообщений.
Что было:

💬 getUpdates — получил JSON с сообщениями от юзера

💬 sendMessage — попытался ответить, но упёрся в Content-Length (тупил, считал неправильно)

Потом оказалось что openssl не показывает ответ, но запросы уходят — телеграм молча принимал

Для теста собрал эхо-скрипт.
Вроде бы хуйня делов, но:

🤬DOS-переносы (\r) в файле — bash ругался

🤬Кириллица ломала JSON — пришлось делать ответы на английском

🤬Долго тупил с парсингом JSON без jq (чистый bash — боль)

В итоге: бот принимает сообщения, ссылки возвращает, на всё остальное отвечает "Only links here, asshole" 🔥

Дальше: генерация QR-кода на чистом bash. Без внешних программ. Ждите пиздеца.
Сама КУХНЯ ТУТ!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21👏1
Please open Telegram to view this post
VIEW IN TELEGRAM
KВАДРАТ МАЛЕВИЧА

Попытка сделать генератор QR-кода на чистом bash провалилась.
Планировал взять ссылку, превратить в QR-матрицу, упаковать в PNG руками (без внешних программ), отправить в Telegram.
Что получилось:
😡Этап 1. CRC32
Для PNG нужно считать CRC каждого чанка. Написал свою функцию на чистом bash — таблица 256 значений, сдвиги, xor'ы. Работает, но на больших данных будет тормозить дико. Ладно, похуй, главное работает.

🤬Этап 2. Структура PNG
Собрал сигнатуру, IHDR, IEND. Вставил свою CRC. В итоге — тестовый файл не открывается. CRC неправильно считается. Переписал три раза — результат тот же.

Этап 3. Матрица QR
Сделал матрицу 21×21 с паттернами (уголки, синхрополосы). Вывел в консоль — красиво. Записал байты ссылки "https://pornhub.com" в свободные ячейки. В консоли видно 104 бита данных. Красота.

Этап 4. Генерация PNG из матрицы
Добавил IDAT чанк, упаковал пиксели (1 бит на точку). Запустил — открываю картинку...

ЧЕРНЫЙ КВАДРАТ МАЛЕВИЧА.😡😡😡😡

Не хуя не видно. Просто черный квадрат 21×21. Данные есть, но они не отображаются. Либо с фильтрами налажал, либо с битностью, либо с порядком байтов. Хуй знает.

Этап 5. Отправка в Telegram
Решил хотя бы этот черный квадрат отправить. А там multipart/form-data для фото. Собрал вручную границы, заголовки. Отправил через openssl — тишина. Добавил отладку — в ответе инопланетные символы. Переделывал разделители, переводы строк — результат тот же.

Итог: пока останавливаюсь на base64. Да шляпа конечно лютая , зато на чистом bash/
Please open Telegram to view this post
VIEW IN TELEGRAM
Деплоить эту шляпу я конечно не стал,та на компе запустил на пару часов,можете потыкать)):
@QR_FUCKING_BOT
Полный код если кому-то интересно:
https://t.me/sandbox_hardcore/109
На развитие канала можно повлиять одной кнопкой))
Голосуйте, мне будет приятно.❤️


https://t.me/boost/system_develop
12
Благодарю за Ваши голоса!

Теперь канал на 3- м уровне!!!⭐️⭐️⭐️

Ну а мы идём дальше. Предлагаю вам на выбор 3 направления:

1️⃣ Эксперименты:

➡️Бот-тролль
➡️Git в Telegram
➡️Экран смерти

2️⃣ Полезный сервис:

➡️Свой ВПН (DYI)
➡️Добить опросник
➡️Мониторинг цен на товары (Озон/ВБ)

3️⃣Другое:

➡️Osint
➡️MiniApp
➡️ИИ-агент

Ваш выбор очень важен!⬇️⬇️⬇️
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥3😁21
🔒 Что мы будем запиливать (Опрос завершен)
❤‍🔥3🔥2🤔1
⚡️ГОЛОСОВАНИЕ ОКОНЧЕНО!⚡️

И с небольшим отрывом побеждает
👉👉👉Git в Телеграмм👈👈👈

Ахуенный
выбор на самом деле!!!
Я и сам пока не знаю как это всё будет выглядеть)))

Да кстати,помогите пожалуйста с названием нового сервиса!!!
Я не могу выбрать между двумя вариантами:
Please open Telegram to view this post
VIEW IN TELEGRAM
👎1
Между этими:
Anonymous Poll
32%
TGit
68%
Gitgram
👾 НАЧИНАЕМ РАЗРАБОТКУ GITGRAM

Git прямо в Telegram.

Что это будет:
Полноценный контроль версий внутри мессенджера. Инициализация репозиториев, коммиты, ветки, история изменений — всё через бота.
💬Репозитории живут в Telegram-канале как отдельные треды
💬Код с подсветкой синтаксиса и навигацией по версиям
💬Управление проектами с телефона без терминала и IDE

Сейчас:
Проектируем архитектуру. За процессом разработки можно следить здесь

Канал проекта: https://t.me/Git_Gram

#GitGram
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
GitGram: день второй — экранирование это ада🔥

Вчера накидал архитектуру, сегодня начал пилить код. И началось...

Что хотел:
Бот принимает файлы, кидает их в канал с подсветкой синтаксиса. Красота.

Что получил:
Telegram говорит "иди нахуй со своими символами".

Проблема:
Markdown в Telegram требует экранировать специальные символы. А в коде этих символов — дохуя. Точки, подчеркивания, обратные слеши — всё надо экранировать, но так, чтобы сам код не разъебался.

Решение:
Написал свой экранировщик:

# Сначала экранируем точки и подчеркивания
content = content.replace('.', '\\.')
content = content.replace('_', '\\_')
# Потом обратную косую черту
content = content.replace('\\', '\\\\')


Итог:

aiogram.exceptions.TelegramBadRequest: Telegram server says - Bad Request: can't parse entities: Character '.' is reserved and must be escaped with the preceding '\'

АААААААА СУКАААА!!!

Весь треш ТУТ😈

#GitGram
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍11
Друзья привет всех с Праздником!!⚡️⚡️

Среди нас есть дизайнеры или типо того?
Надо логотип сделать!
👾
Пишите в лс или в комменты
⬇️
Заранее спасибки!!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🤨11
СИСТЕМА pinned «Друзья привет всех с Праздником!!⚡️⚡️ Среди нас есть дизайнеры или типо того? Надо логотип сделать!👾 Пишите в лс или в комменты⬇️ Заранее спасибки!!»
GitGram: день третий — форматирование снова по пизде 🔥

Вчера почти победил Markdown. Сегодня начал добавлять новый функционал и всё снова разъебалось.

Что добавил:

➡️Удаление файлов (/rm) и проектов (/rmproject)
➡️Игнорируемые файлы (аналог .gitignore)
➡️Загрузку проектов целиком через ZIP

Что сломалось:

Всё, что связано с форматированием. Опять.

🥲Сначала ZIP-обработчик работал, но файлы в канал уходили без названия и автора. Пофиксил.
😡Потом упала загрузка обычных файлов — забыл метод в базе данных. Добавил.
🤬Потом телеграм сам лёг: "Указанное сетевое имя более недоступно". Ну ок, бывает.

content = escape_markdown_v2(content)  # ← ЭТА ХУЙНЯ ВСЁ ЛОМАЕТ

Убрал нахуй — работать перестало по-другому. Вернул — опять ошибки с экранированием.

Текущий статус:

💬/rm и /rmproject работают (с подтверждением, чтобы случайно не выпилить проект)
💬.gitignore, ZIP сделал но не тестил,не дошёл

Продолжение следует...

#GitGram
Please open Telegram to view this post
VIEW IN TELEGRAM
3😢1
GitGram: день 4 Markdown снова ебет мозг 😡

Вчера победил экранирование, сегодня оно вылезло снова.

Что сломалось:

😡/status и /log упали из-за спецсимволов (Italic entity, тире)

🤬/ignored не работал — в БД не обновлялся текущий проект

😡ZIP не грузился — декоратор накрылся

ФИКС:

➡️Переписал экранирование во всех командах — теперь каждый текст проходит через escape_md()
➡️В /log заменил длинное тире на дефис (телеграм его тоже хочет экранировать)
➡️Убрал отдельный декоратор для ZIP, проверка внутри handle_document — заработало
➡️Добавил таблицу ignored_files для .idea/, __pycache__, venv. Пока через пень-колоду, буду доделывать.

Сейчас работают:
ZIP, ignore, status, commit
Запиливаю:
🟢/get - чтобы скачивать файлы из БД
🟡 /cat - чтобы смотреть содержимое в чате

Вся залупа ТУТ
#GitGram
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11