Нужен бот, который будет сканировать и репостить посты из канала
t.me/DSTrendingSolana по определенным фильтрам в мой ТГ канал.
Полностью рабочий бот, установленный на хостинге. (доступ к хостингу предоставлю).
Нужен именно отдельный бот. Бот, где есть возможность настраивать фильтры. Например, указать ссылку на свой канал где бот будет размещать посты.
Какие посты парсим с канала
t.me/DSTrendingSolana На канале
t.me/DSTrendingSolana есть 2 вида постов. Первая, когда обновляют информацию о токене на сайте dexscreener. Они всегда подписываются одинаково текстом: ” ✨ Token info updated for и далее название монеты”. Например:
t.me/DSTrendingSolana/514... Второй тип постов когда монета попадает в тренды dexscreener и подписываются сообщением: (Название монеты) is now trending at (в каком месте в тренде). Например:
t.me/DSTrendingSolana/514... Нас интересует только второй тип постов! Первый тип полностью игнорируем.
Данные которые парсим и в каком виде публикуем в группе.
Данные
CA
Liquidity
Age
Telegram
Twitter
Website
Info
Данные CA, Liquidity, Age всегда указываются в посте на канале
t.me/DSTrendingSolana Остальные данные могут иногда быть, иногда нет. Если каких-то данных нету, то бот должен поставить знак минус “-” вместе этих данных.
В каком виде они должны публиковаться. Ссылка на шаблон:
t.me/BullPumpCalls/254 тут на примере кнопки не хватает. Ниже расскажу.
Надо соблюдать все пробелы, эмоджи и шрифт текста.
Разбор некоторых моментов.
На моем примере в начале пишется название монеты, потом символ монеты. На канале, на примере
t.me/DSTrendingSolana/514... эти данные указаны так: Goldman Sack (SACK). Сначала название и в скобках символ.
Далее надпись #Solana остается неизменным во всех постах.
Остальные данные я думаю понятно откуда брать. Вот пример поста где указаны все ссылки:
t.me/DSTrendingSolana/514... На моем примере
t.me/BullPumpCalls/254 есть раздел Description. Здесь это называется “Info”
t.me/DSTrendingSolana/514... Надпись: More bull calls on @BullPumpCalls остается неизменным во всех постах.
Далее надписи: Dexscreener | 🔵 Solscan
Это надписи кликабельные. Для Dexscreener брать ссылки либо с названия, либо с кнопки. Во всех постах с группы
t.me/DSTrendingSolana/514... есть кнопка “Open in DEX Screener”. Так вот эту ссылку встраиваем в нашу кнопку “Dexscreener ”
Далее кнопка Solscan.
Для кнопки Solscan надо брать адрес контракта (сокращенно CA) и добавляем в ссылку
solscan.io/token/ . Вот это часть
solscan.io/token/ получается никогда не меняется, а если добавить в конце адрес контракта получится так:
solscan.io/token/A5gVj5j1... после token/ это является адресом контракта который на каждом посту пишется “CA” и далее цифры контракта.
Кнопка ( 🎯SOL TRADING BOT ) надпись без скобок, но с эмоджи.
В кнопке встроена ссылка:
t.me/SolTradingBot?start=... адрес контракта)-eG8GhB4dI
например:
t.me/SolTradingBot?start=... между знаками “=” и “-” должен вставляться адрес контракта (СА).
Вот как на примере как должна выглядеть кнопка,на поста с другого канала:
t.me/SolanaListing/341809 Фильтры:
По сути бот нужен для того чтобы можно было настраивать фильтры. Иначе теряется смысл надобности бота.
Liquidity. Если в фильтре нашего бота указано 10000 это значит бот не должен парсить посты где в разделе Liquidity указаны цифры больше указанного значения в нашем боте.
В группе
t.me/DSTrendingSolana/514... пишется с окончанием “K”. Например в посте
t.me/DSTrendingSolana/514... написано Liquidity: 💧 $315.3K это значит 300 000
Age: аналогично как с фильтром Liquidity. Должно настраиваться в часах. Например если я в боте указал 3, это значит если в группе выйдет пост где в поле Age значение больше 3х часов, значит данный пост парсить не нужно.
Обратите внимание, в поле Age данные указываются в таком формате, m это минуты, h часы, d дни и mo месяц. В нашем случае мы ориентируемся только на часы h.
Фильтры Age и Liquidity должны работать в паре. Чтобы бот спарсил пост нужно чтобы по двум фильтрам проходил.
Какие настройки нужны в боте.
Фильтры: Liquidity и Age
Возможность указать ссылку на свой тг канал (или по моему обычно бота добавляют в группу, дают права админа и бот начинает постить);
Надо чтобы только я мог управлять ботом. Возможность добавить мой ID.
Проверка доступности бота например вызвав функцию под названием “статус” я мог понять когда в последний раз бот сканировал исходную группу.