Skip to content

Onixwar/telegram_wireguard

 
 

Repository files navigation

Quick installation:

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 and Telegram-id Admin - your telegram account ID

Сhecking the operation of the service

sudo systemctl status vpnwg

Start

sudo systemctl start vpnwg

Stop

sudo systemctl stop vpnwg

Restart

sudo systemctl restart vpnwg

In file config.json added discounts

{   
    
    "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:
example


Аn admin function has been added that sends an update notification to all users

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",
}

The text of some messages is specified in texts.json

{
  "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
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 74.1%
  • Shell 25.9%