Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import vk_api
- from vk_api.longpoll import VkLongPoll, VkEventType
- import time
- from datetime import datetime
- from config import tok
- prefix = ".м"
- yes = "💚"
- def reply_message(vk):
- akk_id = vk.method('messages.getById', {'message_ids': event.message_id})['items'][0]['reply_message']['from_id']
- return akk_id
- """Функция для добавления в друзья"""
- def friends_add(vk):
- try:
- akk_id = reply_message(vk)
- response = vk.method("friends.add", {"user_id": akk_id})
- if response == 1:
- return f"[id{akk_id}|{yes} Заявка отправлена]"
- if response == 2:
- return f"[id{akk_id}|{yes} Заявка одобрена.]"
- if response == 4:
- return f"[id{akk_id}|{yes} Повторная заявка отправлена.]"
- except Exception as e: return e # при ошибке выводим ошибку
- """Функция для редактирования смс"""
- def msg_edit(text, atts=None):
- vk.method("messages.edit", {"peer_id": event.peer_id, "keep_forward_messages": 1, "message_id": event.message_id,
- "message": text,
- 'attachments': atts, "random_id": 0})
- def friends_list(vk):
- try:
- akk_id = reply_message(vk)
- friends_list = vk.method("friends.get", {"user_id": akk_id})
- print(friends_list)
- return f"[id{akk_id}|👀 Список друзей: {friends_list['count']}]"
- except Exception as e: return e
- """Функция для удаления из друзей"""
- def friends_delete(vk):
- try:
- akk_id = reply_message(vk)
- response = vk.method("friends.delete", {"user_id": akk_id})
- if response.get('friend_deleted'):
- return f"[id{akk_id}|💔 Пользователь удален из друзей]"
- elif response.get('out_request_deleted'):
- return f"[id{akk_id}|✅ Отменена исходящая заявка]"
- elif response.get('in_request_deleted'):
- return f"[id{akk_id}|✅ Отклонена входящая заявка]"
- elif response.get('suggestion_deleted'):
- return f"[id{akk_id}|✅ Отклонена рекомендация друга]"
- else:
- return f"[id562211705|❗ Произошла ошибка]"
- except Exception as e: return e # при ошибке выводим ошибку
- """Функция для удаления добавления в чёрный список"""
- def account_ban(vk):
- try:
- akk_id = reply_message(vk)
- response = vk.method("account.ban", {"owner_id": akk_id})
- if response == 1: # если результат равен к 1
- return f"[id{akk_id}|✅ Пользователь добавлен в ЧС]" # оповещаем что пользователь добавлен в чёрный спискок
- except Exception as e: return e # при ошибке выводим ошибку
- """Функция для удаления из чёрного списка"""
- def account_unban(vk):
- try:
- akk_id = reply_message(vk)
- response = vk.method("account.unban", {"owner_id": akk_id})
- if response == 1: # если результат равен к 1
- return f"[id{akk_id}|✅ Пользователь убран из ЧС]" # оповещаем что пользователь убран из чёрного списка
- except Exception as e: return e # при ошибке выводим ошибку
- def not_old_fritnds(vk):
- try:
- akk_id = reply_message(vk)
- friend = vk.method("friends.getRecent")
- print(friend)
- return f"[id{akk_id}|Количество недавно добавленных друзей: {friend[0]['count']}"
- except Exception as e: return e
- def chek_status_user(vk):
- akk_id = reply_message(vk)
- status = vk.method("status.get", {"user_id": akk_id})['text']
- print(status)
- return f"Статус юзера: {status}"
- def pingvk(vk):
- try:
- ct = time.time()
- print(ct)
- return f"🌐PingTime: {round((datetime.now().timestamp() - ct) * 1000, 1)} мс"
- except Exception as e: return e
- def user_info(vk):
- try:
- akk_id = reply_message(vk)
- info = vk.method("users.get", {"user_ids": akk_id, "fields": "bdate"})
- return f"👤 Пользователь [id{akk_id}|{info[0]['first_name']} {info[0]['last_name']}] (id{info[0]['id']})\n📯 Дата рождения: {info[0]['bdate']}"
- except Exception as e: return e
- def followers(vk):
- try:
- akk_id = reply_message(vk)
- response = vk.method("users.getFollowers", {"user_id": akk_id})
- return f"[id{akk_id}|👁 подписчики пользователя: {response['count']}]"
- except Exception as e: return e
- def banned_users(vk):
- response = vk.method("account.getBanned")
- my_id = vk.method('account.getProfileInfo')['id']
- return f"[id{my_id}|❤ Количество заблокированных аккаунтов: {response['count']}]"
- def info_account(vk):
- try:
- akk_id = reply_message(vk)
- response = vk.method("users.get", {"user_ids": akk_id})
- return f"Информация о пользователе: [id{akk_id}|{response['first_name']}\nМожет ли смотреть профиль: {response['can_access_closed']}\nПриват: {response['is_closed']}"
- except Exception as e: return e
- def user_stikers(vk):
- try:
- my_id = vk.method('account.getProfileInfo')['id']
- response = vk.method("store.getProducts", {"User_id": my_id, "type": "stickers", "filters": "purchased"})['count']
- return f"[id{my_id}|Стикеры пользователя: {response}]"
- except Exception as e: return e
- vk: object = vk_api.VkApi(token=tok) # авторизация
- lp: object = VkLongPoll(vk) # поднятие лонгпула
- for event in lp.listen(): # Читаем сообщения
- if event.type == VkEventType.MESSAGE_NEW: # Читаем сообщения
- if event.from_me: # Если отправили мы
- mess = event.text.startswith
- if mess(f'{prefix} +др'): # Если мы написали +др
- msg_edit(friends_add(vk)) # Вызываем функцию добавления
- print(f"Принял команду +др, ответ от сервера: {friends_add(vk)}")
- elif mess(f'{prefix} пинг'):
- msg_edit(pingvk(vk))
- print(f"Принял команду пинг, ответ от сервера: {pingvk(vk)}")
- elif mess(f'{prefix} друзья'):
- msg_edit(friends_list(vk))
- print(f"Принял команду друзья, ответ от сервера: {friends_list(vk)}")
- elif mess(f'{prefix} статус'):
- msg_edit(chek_status_user(vk))
- print(f"Принял команду статус, ответ от сервера: {chek_status_user(vk)}")
- elif mess(f'{prefix} стики'):
- msg_edit(user_stikers(vk))
- print(f"Принял команду стики, ответ от сервера: {user_stikers(vk)}")
- elif mess(f'{prefix} недавние'):
- msg_edit(not_old_fritnds(vk))
- print(f"Принял команду недавние, ответ от сервера: {not_old_fritnds(vk)}")
- elif mess(f'{prefix} акк'):
- msg_edit(info_account(vk))
- print(f"Принял команду подписки, ответ от сервера: {info_account(vk)}")
- elif mess(f'{prefix} подписки'): # Если мы написали подписки
- msg_edit(followers(vk))
- print(f"Принял команду подписки, ответ от сервера: {followers(vk)}")
- elif mess(f'{prefix} чс список'):
- msg_edit(banned_users(vk))
- print(f"Принял команду чс список, ответ от сервера: {banned_users(vk)}")
- elif mess(f'{prefix} инфо'):
- msg_edit(user_info(vk))
- print(f"Принял команду инфо, ответ от сервера: {user_info(vk)}")
- elif mess(f'{prefix} -др'): # Если мы написали -др
- msg_edit(friends_delete(vk)) # вызываем функцию удаления из др
- print(f"Принял команду -др, ответ от сервера: {friends_delete(vk)}")
- elif mess(f'{prefix} -чс'): # Если мы написали -чс
- msg_edit(account_unban(vk)) # вызываем функцию удаления из чс
- print(f"Принял команду -чс, ответ от сервера: {account_unban(vk)}")
- elif mess(f'{prefix} +чс'): # Если мы написали +чс
- msg_edit(account_ban(vk)) # вызываем функцию добавления в чс
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement