Просмотр новых публикаций

Последние сообщения с форума

Джокер2 - Безумие на двоих (2024)
kishnin81, Кинообзор онлайн
0 Ответов
kishnin81
Дэдпул и Росомаха (2024)
kishnin81, Кинообзор онлайн
0 Ответов
kishnin81
Бесплатные VPS/VPDS
kishnin81, Прочие статьи
7 Ответов
safonovs3f
Как узнать имя пользователя на удаленном компьютере
kishnin81, Прочие статьи
1 Ответов
safonovs3f
ВТБ халявные акции за обучение
kishnin81, Прочие статьи
3 Ответов
safonovs3f

Внимание! Если Вы видите рекламму на нашем ресурсе, установите для вашего браузера расширение Adblock Plus | AdBlocker Ultimate | Блокировщик рекламы |

[Telegram BOT] Бот по заявкам



Небольшой bot, функционал которого можно вырезать под принятие заявок
 
  • Принять\Отказать\Отказать+Заблокировать
  • База данных sqlite3 которая легко расширяется
  • Кнопки на инлайне
 
Code Python:
import telebot
import database
import keyboard

bot = telebot.TeleBot('')#token
admin = ''#id admina

@bot.message_handler(commands=['start'])
def welcome(message):
 chat_id = message.chat.id
 try:
 if not database.user(chat_id):
 database.add_user(chat_id)
 bot.send_message(chat_id, 'Приветствую, этот под создан для подачи заявок в проект Al3f Team', reply_markup=keyboard.start())
 elif database.ban(chat_id) == 1:
 bot.send_message(chat_id, ' Вы заблокированы!')
 elif database.verif(chat_id) == 0:
 bot.send_message(chat_id, 'Вам необходимо подать заявку!', reply_markup=keyboard.start())
 elif database.verif(chat_id) == 1:
 bot.send_message(chat_id, 'Ваша заявка на данный момент находится на проверку!')
 else:
 bot.send_message(chat_id, f'{message.chat.first_name}, выбирите направление ниже!', reply_markup=keyboard.main())
 except:
 bot.send_message(chat_id, 'Произошла незивастная ошибка!')

@bot.message_handler(content_types=['text'])
def message(message):
 chat_id = message.chat.id
 try:
 if not database.user(chat_id):
 database.add_user(chat_id)
 bot.send_message(chat_id, 'Приветствую, этот под создан для подачи заявок в проект Al3f Team', reply_markup=keyboard.start())
 elif database.ban(chat_id) == 1:
 bot.send_message(chat_id, ' Вы заблокированы!')
 elif database.verif(chat_id) == 0:
 bot.send_message(chat_id, 'Вам необходимо подать заявку!', reply_markup=keyboard.start())
 elif database.verif(chat_id) == 1:
 bot.send_message(chat_id, 'Ваша заявка на данный момент находится на проверку!')
 else:
 bot.send_message(chat_id, f'{message.chat.first_name}, выбирите направление ниже!', reply_markup=keyboard.main())
 except:
 bot.send_message(chat_id, 'Произошла незивастная ошибка!')

@bot.callback_query_handler(func=lambda call:True)
def answer(call):
 chat_id = call.message.chat.id
 try:
 if (call.data == 'start'):
 if database.verif(chat_id) == 0:
 bot.edit_message_text(chat_id=chat_id, message_id=call.message.message_id, text='Желаемый логин в проекте: ')
 bot.register_next_step_handler(call.message, login)
 else:
 bot.delete_message(chat_id=chat_id, message_id=call.message.message_id)
 elif (call.data == 'accept'):
 accept(call)
 elif (call.data == 'inaccept'):
 inaccept(call)
 elif (call.data == 'inacceptban'):
 inacceptban(call)
 except:
 bot.send_message(chat_id, 'Произошла неизвестая ошибка!')

def login(message):
 login = message.text
 bot.send_message(message.chat.id, 'Отлично! Какой у вас опыт в данной сфере?')
 bot.register_next_step_handler(message, opit, login)

def opit(message, login):
 opit = message.text
 bot.send_message(message.chat.id, 'Отлично! Сколько времени готовы уделять работе?')
 bot.register_next_step_handler(message, time, opit, login)

def time(message, opit, login):
 time = message.text
 database.update_verif(message.chat.id, 1)
 bot.send_message(message.chat.id, 'Ваша заявка была успешно отправлена! Ожидайте решения!')
 bot.send_message(admin, f'Новая заявка!\n\nLogin: {login}\nОпыт: {opit}\nВремени: {time}\n\nTelegram ID: {message.chat.id}\nUser Name: [User link](tg://user?id={message.chat.id})', parse_mode='Markdown', reply_markup=keyboard.otvet())

def accept(call):
 message = call.message.text.split('\n')

 user_id = message[6].split(':')
 user_id = user_id[1].replace(' ', '')
 database.update_verif(user_id, 2)
 bot.send_message(user_id, 'Поздравляем! Ваша заявка была успешно принята!', reply_markup=keyboard.main())
 bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=f' Принята!\n\n{call.message.text}')

def inaccept(call):
 message = call.message.text.split('\n')

 user_id = message[6].split(':')
 user_id = user_id[1].replace(' ', '')
 database.update_verif(user_id, 0)
 bot.send_message(user_id, 'К сожалению! Ваша заявка была отклонена! Но вы можете подать её ещё раз!')
 bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=f' Отказано!\n\n{call.message.text}')

def inacceptban(call):
 message = call.message.text.split('\n')

 user_id = message[6].split(':')
 user_id = user_id[1].replace(' ', '')
 database.update_ban(user_id, 1)
 bot.send_message(user_id, 'К сожалению! Ваша заявка была отклонена! Без возможности подать её ещё раз!')
 bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=f' Отказано + Заблокирован!\n\n{call.message.text}')

if __name__ == '__main__':
 bot.polling(none_stop=True, interval=0)



Информация:
Посетители, находящиеся в группе Гости, не могут скачивать файлы с данного сайта.

Пароль к архивам: ComInet



16.04.2021 23:43 丨 Загрузок: 1 Просмотров: 406 Комментарий: (0)


Автор материала
...
Логин на сайте: ...
Группа: ...
Статус: ...

Категория

Поделись с друзьями


Комментариев: 0
avatar