cd /opt/
git clone https://github.com/Onixwar/telegram_wireguard.git
bash /opt/telegram_wireguard/Wireguard-installer-with-Adminpanel.sh
- after configuring the wg, a choice will appear:
Hotite li ustanovit' srazu Telegram bota(1 - Da, 0 - Net):
We agree (press 1) - Then we specify the
Telegram API
of the bot, which we received from BotFather when creating the bot,YCassa API
, which we also received from BotFather when setting up the Payment of the bot andTelegram-id Admin
- your telegram account ID
sudo systemctl status vpnwg
sudo systemctl start vpnwg
sudo systemctl stop vpnwg
sudo systemctl restart vpnwg
{
"perc_1": 1,
"perc_3": 3,
"perc_6": 6,
}
We specify the number of months for which the user will actually pay (interest is calculated automatically)
For example:
config.json
{
"admin_tg_id": "",
"one_month_cost": 500,
"trial_period": 2,
"perc_1": 1,
"perc_3": 2.85,
"perc_6": 5.4,
"UTC_time": 3,
"tg_token": "",
"tg_shop_token": ""
}
That is, when paying for 3 months, the user will actually pay for 2.85 months (5% discount)
And when paying for 6 months, the user will pay for 5.4 months (10%)
In telegram bot:
in main.py
file:
if e.demojize(m.text) == "Уведомление об обновлении":
db = sqlite3.connect(DBCONNECT)
db.row_factory = sqlite3.Row
c = db.execute(f"SELECT * FROM userss where username <> '@None'")
log = c.fetchall()
c.close()
db.close()
BotChecking = TeleBot(BOTAPIKEY)
countSended = 0
countBlocked = 0
for i in log:
try:
countSended += 1
Butt_main = types.ReplyKeyboardMarkup(resize_keyboard=True)
Butt_main.add(types.KeyboardButton(e.emojize(f"Продлить :money_bag:")),
types.KeyboardButton(e.emojize(f"Как подключить :gear:")))
BotChecking.send_message(i['tgid'],
texts_for_bot["alert_to_update"],
reply_markup=Butt_main, parse_mode="HTML")
except:
countSended -= 1
countBlocked += 1
BotChecking.send_message(CONFIG['admin_tg_id'],
f"Сообщение отправлено {countSended} пользователям. {countBlocked} пользователей заблокировало бота", parse_mode="HTML")
in buttons.py
file:
Butt_admin.add(types.KeyboardButton(e.emojize(f"Уведомление об обновлении")))
in texts.json
file:
{
"alert_to_update":"Выполнено обновление бота, проверьте, пожалуйста, функциональность бота.\nЕсли после этого сообщения у вас пропал таймер действия подписки, напишите /start\n\nО найденых ошибках просьба сообщить @admin",
}
{
"hello_message": "<b>Почему стоит выбрать Study-vpn.ru?</b>\n\n1. Мы шифруем весь трафик клиентов \uD83D\uDD10\n2. Мы не сохраняем ваши конфиденциальные данные, в отличие от бесплатных VPN-сервисов \n3. Отличная скорость и нет ограничений по трафику \uD83C\uDFCE",
"trial_message": "Чтобы вы смогли оценить наш VPN, даем вам бесплатный доступ на 3 дня!\n\nКак пользоваться VPN и другие ответы, находятся в разделе \"Как подключить :gear:\"",
"how_to_connect_info": "1. Скачайте файл настроек\n\n2. Установите VPN: <a href='https://apps.apple.com/us/app/wireguard/id1441195209'>iPhone</a>, <a href='https://play.google.com/store/apps/details?id=com.wireguard.android'>Android</a>, <a href='https://download.wireguard.com/windows-client/wireguard-installer.exe'>Windows</a> или <a href='https://itunes.apple.com/us/app/wireguard/id1451685025?ls=1&mt=12'>Mac</a> \n\n3. Откройте VPN и нажмите добавить туннель через файл настроек",
"success_pay_message": "Оплата прошла успешно!\nПодписка продлена, спасибо что выбираете нас.",
"ended_sub_message": "Ваша подписка закончилась!\n\nЕсли хотите продолжить пользоваться нашими услугами, пожалуйста продлите подписку.",
"alert_to_renew_sub": "До конца действия подписки осталось меньше дня, пора продлить ее!",
"alert_to_extend_sub": " \uD83C\uDF81 Study-vpn.ru снова предлагает тебе бесплатный тестовый период на 3 дня\n\n✅ Уверены ты оценишь наш VPN \n\nДанные для входа были обновлены, скачайте новый файл авторизации через раздел \"Как подключить :gear:\"",
"alert_to_update":"Выполнено обновление бота, проверьте, пожалуйста, функциональность бота.\nЕсли после этого сообщения у вас пропал таймер действия подписки, напишите /start\n\nО найденых ошибках просьба сообщить @admin"
"add_trial_days": 3
}