Ejemplo n.º 1
0
ap1 = Flask(__name__)


@ap1.route('/', methods=['POST'])
def espresso():
    message = 'Всё понятно, я записал \n А можно узнать твой телефон?'
    cnx = mysql.connector.connect(
        host='DocMorg.mysql.pythonanywhere-services.com',
        database='DocMorg$Delivery',
        user='******',
        password='******')
    cursor = cnx.cursor()
    data = json.loads(request.data)
    mid = answ(data['object'])
    idy = 'vk.com/id' + str(mid)
    add = "UPDATE delivery set coffe='Эспрессо' WHERE id='%s' ORDER BY number DESC LIMIT 1" % idy
    cursor.execute(add)
    cnx.commit()
    add = "UPDATE delivery set count='1' WHERE id='%s' ORDER BY number DESC LIMIT 1" % idy
    cursor.execute(add)
    cnx.commit()
    cursor.close()
    cnx.close()
    return message, ''


espresso_command = command_system.Command()

espresso_command.keys = ['эспрессо']
espresso_command.description = 'Заказать эспрессо'
espresso_command.process = espresso
Ejemplo n.º 2
0
import command_system
import vkapi


def skin_color():
    message = vkapi.skin_answer()
    return message, ''


tell_about_command = command_system.Command()

tell_about_command.name = "Если назовешь цвет своей кожи"
tell_about_command.keys = ['розовый', 'оливковый', 'розовая', 'оливковая']
tell_about_command.description = 'Запомню его'
tell_about_command.process = skin_color
Ejemplo n.º 3
0
import command_system
import vkapi
import settings

def next(vk_id, body):
    keys = ['начать', 'старт', 'start', 'голосовать', 'голос','выборы', 'привет']
    if body not in keys:
        return None, None

    name = vkapi.get_profile(vk_id)["first_name"]
    msg = 'Здравствуйте, ' + name + '!\n\n'

    if settings.close_years:
        years = set(settings.enable_years) - set(settings.close_years)
        msg += 'Если вы студент ВМК ' + ", ".join(map(str, years)) + ' курса, вы можете проголосовать на выборах в Студенческий совет ВМК.\n\n'
    else:
        msg += 'Если вы студент ВМК, вы можете проголосовать на выборах в Студенческий совет ВМК.\n\n'

    if settings.close_years:
        msg += 'Голосование на ' + ", ".join(map(str, settings.close_years)) + ' курсах завершено.\n\n'

    msg += 'Если вы хотите проголосовать, отправьте 1.\n\n'
    msg += 'Если вы хотите отправить сообщение в Студенческий совет ВМК, отправьте 2.'

    return msg, '0'

command_0 = command_system.Command(['-1', '0'])

command_0.description = 'Начать работу с ботом'
command_0.process = next
Ejemplo n.º 4
0
        f.close()
    message = 'класс, для которого отсылается расписание, изменён на ' + '"' + user_message + '"'
    print(user_message)
    return message

def klass_of_user(user_id):
    file = open('users.txt', encoding='utf-8')
    lines = file.readlines()
    file.close()
    if str(user_id) + '\n' not in lines:
        return ''
    else:
        return lines[lines.index(str(user_id)+'\n') + 1][0] + lines[lines.index(str(user_id)+'\n') + 1][1] + lines[lines.index(str(user_id)+'\n') + 1][2]






grade = command_system.Command()
grade.keys = ['10 а', '10-а','10а','10-б', '10 б','10б',
                            '10 в', '10-в', '10в', '10-г', '10 г', '10г',
                            '10 и', '10-и', '10и', '10-к', '10 к', '10к',
                            '10 м', '10-м', '10м', '10-с', '10 с', '10с',
                            '11 а', '11-а', '11а', '11-б', '11 б', '11б',
                            '11 в', '11-в', '11в', '11-г', '11 г', '11г',
                            '11 и', '11-и', '11и', '11-к', '11 к', '11к',
                            '11 м', '11-м', '11м', '11-с', '11 с', '11с', '11л', '11 л', '11-л']
grade.process = klass_change

Ejemplo n.º 5
0
import command_system
import wish
import vkapi
import utils

def addWish(uid, body):
	name = vkapi.getName(uid)   
	date = utils.getDateFromText(body)
	newWish, isOverwritten = wish.addWish(name, uid, body, date)

	message = "Твои пожелания записаны :)\n" if isOverwritten is False else "Твои пожелания перезаписаны :)\n"
	message += str(newWish)

	return message, ''

command = command_system.Command()

command.keys = ['пожелания', 'пожелания\n', 'пожелашки']
command.description = 'Запишу твои пожелания'
command.process = addWish
Ejemplo n.º 6
0
import command_system


def hello(step, *args, **kwargs):
    message = "Hi, how are you!"
    return (message, [], [], []), step


hello_command = command_system.Command()

hello_command.keys = ["hello", "hi"]
hello_command.description = "Greeting you!"
hello_command.process = hello
Ejemplo n.º 7
0
import command_system
from common_func import keyword_gen


def facult(keyword=''):
    message = 'Факультатив по Информатике:\nПонедельник - 5 урок\nСреда - 7 урок'
    return message, ''


facult_command = command_system.Command()

facult_command.keys = keyword_gen('факультатив', 'факульт', 'фак')
facult_command.description = 'Скажу запланированные факультативы'
facult_command.process = facult
Ejemplo n.º 8
0
import command_system
#пасхалки потом когда-ниубдь доделаю.


def eus():
    message = 'Берешь зачетку, уверенно подходишь и говоришь: "Поставьте троечку, я от бота Маллокника" B-)'
    return message, ''


eus_command = command_system.Command()
eus_command.description = 'расскажу как успешно закрыть сессию'
eus_command.keys = ['автомат']
eus_command.process = eus


def kon():
    message = 'Возможно вы имели в виду Плехановку?\nНет?\n\nНа пересдачу.'
    return message, ''


kon_command = command_system.Command()
kon_command.description = 'зачет в стиле коня'
kon_command.keys = ['конь']
kon_command.process = kon
Ejemplo n.º 9
0
    msg += str(choice + 1) + '. ' + candidates[choice][0] + ' ' + candidates[
        choice][1] + ' ' + candidates[choice][2] + '\n\n'

    if len(candidates) > 1:
        msg += 'Вы можете проголосовать одновременно ещё за других кандидатов:\n'

        for num, keys in enumerate(candidates):
            if num != choice:
                msg += str(
                    num +
                    1) + '. ' + keys[0] + ' ' + keys[1] + ' ' + keys[2] + '\n'

        msg += '\nДля этого выберите кого-то из оставшихся кандидатов, либо отправьте его номер.\n\n'

        msg += 'Чтобы отменить выбор кандидата, нажмите на кнопку с ним повторно или отправьте его номер.\n\n'

        msg += 'Для того, чтобы завершить голосование, выберите соответствующий вариант, либо отправьте 0'

        return msg, '4.1'
    else:
        msg += 'Для того, чтобы подтвердить выбор, отправьте 0.\n\n'

        msg += 'Чтобы отменить выбор кандидата, нажмите на кнопку с ним повторно или отправьте его номер.'

        return msg, '4.1.1'


command_0 = command_system.Command(['4'])

command_0.description = 'Голосование'
command_0.process = next
Ejemplo n.º 10
0
        settings = dict(one_time=False, inline=False)
        keyboard = VkKeyboard(**settings)
        for i in range(1, len(alphabet) + 1):
            keyboard.add_button(label=alphabet[i - 1],
                                color=VkKeyboardColor.POSITIVE,
                                payload='\"' + alphabet[i - 1] * 3 + '\"')
            if i % 5 == 0:
                keyboard.add_line()
        keyboard.add_line()
        keyboard.add_button(label="Меню",
                            color=VkKeyboardColor.NEGATIVE,
                            payload='\"Меню\"')
        app.send_message(user_id,
                         "📜🔽",
                         keyboard=keyboard.get_keyboard())
    if data['payload'] in dictionary.keys():
        print("на месте")
        message = dictionary[data['payload']]
        app.send_message(user_id, message)


sendAB_command = command_system.Command()

sendAB_command.keys = [
    '"справочник"', '"ААА"', '"БББ"', '"ВВВ"', '"ГГГ"', '"ДДД"', '"ЗЗЗ"',
    '"ИИИ"', '"ККК"', '"ЛЛЛ"', '"МММ"', '"ННН"', '"ООО"', '"ППП"', '"РРР"',
    '"ССС"', '"ТТТ"', '"УУУ"', '"ФФФ"', '"ЭЭЭ"'
]
sendAB_command.description = 'Справочник'
sendAB_command.process = sendAB
Ejemplo n.º 11
0
import command_system
from common_func import keyword_gen

def teacher(keyword=''):
   message = 'Приветствую!\nРусский яз.; Литература  - Рожкова Елена Викторовна\nМатематика - Попова Светлана Вячеславовна\nФизика - Гасымова Анжелика Евгеньевна\nХимия - Кокорина Светлана Евгеньевна\nИнформатика - Кузьмин Евгений Александрович\nИстория; Обществознание - Канатова Ирина Ивановна\nБиология - Капитанчук Юлия Сергеевна\nГеогрфия - Пухлова Любовь Викторовна\nАнглийский яз. - Бородина Елена Валерьевна\nФизкультура - Картавова Альфия Вагизовна\nМузыка  - Петросян Алла Рафаеловна\nОБЖ - Колбеев Владимир Владимирович'
   return message, ''

teacher_command = command_system.Command()
teacher_command.keys = keyword_gen('учителя','преподаватели', 'преподы')
teacher_command.description = 'Покажу список учителей'
teacher_command.process = teacher
Ejemplo n.º 12
0
                                       payload='\"Социальная\"')
        
        app.send_message(user_id, message="Виды стипендии", keyboard=keyboard.get_keyboard())
    if data['payload'] == 'Академическая':
        message="""Академическая стипендия зависит от успеваемости обучаегося.
При получении образования степендия составляет 2200 рублей.
Если по итогам сессии обучающийся имеет оценки «ХОРОШО» и «ОТЛИЧНО» или только «ХОРОШО», стипендия составляет 2200 рублей.
Если обучающийся по итогам сессии имеет только оценки «ОТЛИЧНО», он может рассчитывать на повышенную стипендию в размере 3000 рублей."""
        app.message_edit(data['peer_id'], message, data['conversation_message_id'])
    if data['payload'] == 'Социальная':
        message="""Социальная стипендия назначается студенту с даты предоставления документа, подтверждающего соответствие одной из категорий студентов, указанных в ФЗ № 273 «Об образовании в РФ» статья 36 пункт 5 по месяц прекращения действия основания её назначения.
Государственная социальная стипендия назначается студентам:
1.распорядительным актом руководителя организации на основании документа, подтверждающего соответствие одной из категорий граждан, с даты его представления
2.В случае, если документ бессрочный назначается до конца обучения
В РГЭУ РИНХ социальную стипендию могут получить:
-студенты, из числа детей - сирот и детей, оставшихся без попечения родителей - 3800 руб
-студенты - инвалиды 1 и 2 группы, дети - инвалиды и инвалидам с детства -3000 руб
-студенты, подвергшиеся радиации вследствие катастрофы на Чернобыльской АЭС и иных радикальных катастроф - 3000 руб
-студенты, инвалиды и ветераны боевых действий - 3000 руб
-студенты, получающих государственную помощь - 3000 руб"""
        app.message_edit(data['peer_id'], message, data['conversation_message_id'])

    


money_command = command_system.Command()

money_command.keys = ['"Стипендия"','Академическая','Социальная']
money_command.description = 'Стипендия'
money_command.process = money
Ejemplo n.º 13
0
    composite_list = [
        hashes_times[x:x + 2] for x in range(0, len(hashes_times), 2)
    ]
    try:
        for hash_time in composite_list:
            if hash_time[1].count(':') == 2:
                c.execute(
                    """UPDATE Activity SET Finish=TRUE, FinishTime=%s WHERE SecretKey=%s""",
                    [hash_time[1], hash_time[0]])
        db.commit()
        answer = Success['finish_time']
    except:
        answer = Error['finish_time']
    db.close()
    try:
        with open("Admin_LOGS.txt", "a") as log:
            log.write(
                str(datetime.datetime.now()) + " Admin " + str(user_id) +
                " added " + str(len(composite_list)) +
                " finishers (with time)\n")
    except:
        pass
    return answer


finish_command = command_system.Command()

finish_command.keys = ['финиш', 'список2', 'finish']
finish_command.description = 'добавить финишировавших (расширенная)'
finish_command.process = finish
finish_command.order = 6
Ejemplo n.º 14
0
# команда для рангов с rocket league stats
import command_system
from stat_finder.rocketstats import checker_stats


def stats(token, user_id, stroka='', peer_id=''):
    try:
        mas = checker_stats(stroka)
        message = '1c- ' + str(mas[0]) + '\n,2c- ' + str(
            mas[1]) + '\n,3cc- ' + str(mas[2]) + '\n,3c- ' + str(mas[3])
    except:
        message = 'Не работает!'
    return message, ''


stats_command = command_system.Command()
stats_command.keys = ['!стата']
stats_command.description = 'Узнать количество поинтов 1с, 2c, 3c, 3cc [ Не работает :( ]'
stats_command.process = stats
Ejemplo n.º 15
0
import command_system
import vk

session = vk.Session()
api = vk.API(session, v=5.92)


def tinderGender():
    message = 'Сейчас мы тебе кого-нибудь подберем😉Ты только скажи, с кем тебя знакомить.'
    buttons = open("/home/jBloodless/mysite/tinderGender.json",
                   "r",
                   encoding="UTF-8").read()
    return message, '', buttons


tinderGender_command = command_system.Command()

tinderGender_command.keys = [
    'Хочу знакомиться!', 'Оставить', 'Искать новые знакомства!'
]
tinderGender_command.description = 'internal tinder message'
tinderGender_command.process = tinderGender
Ejemplo n.º 16
0
import command_system
import vkapi


def violet():
    # Получаем случайную картинку из паблика
    attachment = vkapi.get_random_wall_picture(-160242252)
    message = 'Картинка со стены нашего паблика=)'
    return message, attachment


violet_command = command_system.Command()

violet_command.keys = [
    'violet', 'вайлет', 'эвергаден', 'эвергарден', 'evergarden', 'фото',
    'картинку'
]
violet_command.description = 'Пришлю картинку с Вайлет'
violet_command.process = violet
Ejemplo n.º 17
0
import vk
from openpyxl import load_workbook
from flask_app import curr_user_id
from settings import token, s_token

session = vk.Session()
api = vk.API(session, v=5.92)

def football1():
    user_id = curr_user_id()
    user = api.users.get(user_ids=str(user_id), access_token = s_token)
    first_name = user[0]['first_name']
    last_name = user[0]['last_name']
    hist = api.messages.getHistory(peer_id = user_id, group_id=17379212, offset = 0, count = 1, access_token = token)
    vote = hist['items'][0]['text']
    wb = load_workbook('/home/jBloodless/mysite/commands/football.xlsx')
    data = (str(user_id), first_name, last_name, vote)
    sheet=wb.active
    sheet.append(data)
    wb.save('/home/jBloodless/mysite/commands/football.xlsx')
    message = 'Голос учтен!\n Следующая пара — Физтех.Радио против Бакалавров Физтеха'
    buttons = open("/home/jBloodless/mysite/football2.json", "r", encoding="UTF-8").read()
    return message, '', buttons


football1_command = command_system.Command()

football1_command.keys = ['no1']
football1_command.description = 'голосование за футбол'
football1_command.process = football1
Ejemplo n.º 18
0
                user_prof = user_name+'_'+user_surn
                if user_prof not in os.listdir(dislikes) and user_prof not in os.listdir(likes) and first_name!=user_name and last_name!=user_surn and sex!='male':
                    break

    #user_dir = "/home/jBloodless/mysite/tinder/{0}_{1}_{2}_{3}".format(name[0], sex, user_name, user_surn)
        user_pic = "/home/jBloodless/mysite/tinder/{0}_{1}_{2}_{3}/{2}_{3}.jpg".format(dest, sex, user_name, user_surn)
        user_inf = "/home/jBloodless/mysite/tinder/{0}_{1}_{2}_{3}/{2}_{3}.txt".format(dest, sex, user_name, user_surn)
        id_txt = "/home/jBloodless/mysite/tinder/{0}_{1}_{2}_{3}/user_id.txt".format(dest, sex, user_name, user_surn)

        bio = open(user_inf, "r", encoding="UTF-8")
        id_to_msg = open(id_txt, "r", encoding="UTF-8")
        message = "@id"+str(id_to_msg.read())+'\n'+str(bio.read())
    #message = currdest

        server = api.photos.getMessagesUploadServer(peer_id=curr_user_id(), access_token = token)
        upload_url = server["upload_url"]
        files = {'photo': open(user_pic, 'rb')}
        response = requests.post(upload_url, files=files)
        result = json.loads(response.text)
        uploadResult = api.photos.saveMessagesPhoto(server=result["server"], photo=result["photo"], hash=result["hash"], access_token = token)
        attachment = 'photo'+str(uploadResult[0]["owner_id"])+'_'+str(uploadResult[0]["id"])
    #attachment = ''

        buttons = open("/home/jBloodless/mysite/tinderKeys.json", "r", encoding="UTF-8").read()
    return message, attachment, buttons

tinderLike_command = command_system.Command()

tinderLike_command.keys = ['Лайк!']
tinderLike_command.description = 'internal tinder message'
tinderLike_command.process = tinderLike
Ejemplo n.º 19
0
    elif keyword in keyword_gen('расписание на вторник','расписание вторник','распвт'):
        message = get_daily_schedule(1)
    elif keyword in keyword_gen('расписание на среду','расписание среда','распср'):
        message = get_daily_schedule(2)
    elif keyword in keyword_gen('расписание на четверг','расписание четверг','распчт'):
        message = get_daily_schedule(3)
    elif keyword in keyword_gen('расписание на пятницу','расписание пятница','расппт'):
        message = get_daily_schedule(4)
    elif keyword in keyword_gen('расписание на субботу','расписание суббота','распсб'):
        message = get_daily_schedule(5)
    elif keyword in keyword_gen('расписание на воскресенье','расписание воскресенье','распвс'):
        message = get_daily_schedule(6)
    else:
        message = '¯\_(ツ)_/¯ sorry...'
    return message, ''


schedule_command = command_system.Command()
schedule_command.keys = keyword_gen('расписание','расп', 'hfcgbcfybt', 'hfcg',
                                    'расписание на сегодня', 'расписание сегодня', 'распсгд', 'hfcgbcfybt yf ctujlyz', 'hfcg yf ctujlyz',
                                    'расписание на завтра','расписание завтра','распзвт', 'hfcgbcfybt yf pfdnhf', 'hfcg yf pfdnhf',
                                    'расписание на вчера','расписание вчера','распвчр', 'hfcgbcfybt yf dxthf', 'hfcg yf dxthf',
                                    'расписание на понедельник','расписание понедельник','расппн', 'hfcgbcfybt yf gjytltkmybr', 'hfcg yf gjytltkmybr',
                                    'расписание на вторник','расписание вторник','распвт', 'hfcgbcfybt yf dnjhybr', 'hfcg yf dnjhybr',
                                    'расписание на среду','расписание среда','распср', 'hfcgbcfybt yf chtle', 'hfcg yf chtle',
                                    'расписание на четверг','расписание четверг','распчт', 'hfcgbcfybt yf xtndthu', 'hfcg yf xtndthu',
                                    'расписание на пятницу','расписание пятница','расппт', 'hfcgbcfybt yf gznybwe', 'hfcg yf gznybwe',
                                    'расписание на субботу','расписание суббота','распсб', 'hfcgbcfybt yf ce,,jne', 'hfcg yf ce,,jne',
                                    'расписание на воскресенье','расписание воскресенье','распвс','hfcgbcfybt yf djcrhtctymt', 'hfcg yf djcrhtctymt',)
schedule_command.description = 'Скажу расписание уроков на вчера/сегодня/завтра/пн/вт/ср/чт/пт/сб/вс, либо на всю неделю'
schedule_command.process = get_schedule
Ejemplo n.º 20
0
import commands.st1_1 as st1_1
import command_system
import vkapi


def next(vk_id, body):
    keys = ['1. фио введены верно', '1.', '1', 'верно', 'всё верно']
    if body in keys:
        vkapi.notify_admins(
            'ФИО избирателя не найдены в списках. Избиратель: @id' +
            str(vk_id))
        return "Мы свяжемся с вами по поводу этого случая. Извините за неудобства!", '0.1'

    ret = st1_1.next(vk_id, body)
    if ret[0]:
        return ret
    return None, None


command_0 = command_system.Command(['1.1.1'])

command_0.description = 'Повторная попытка ввода ФИО'
command_0.process = next
Ejemplo n.º 21
0
                         user=p['user'],
                         passwd=p['passwd'],
                         db=p['db'],
                         charset="utf8",
                         use_unicode=True)
    c = db.cursor()
    #обновляем группу
    try:
        c.execute("""SELECT COUNT(*) FROM Students WHERE idVK=%s""", [user_id])
        if c.fetchone()[0] == 0:
            db.close()
            return Tip['group_update'], ''

        c.execute(
            """UPDATE Students SET Students.Group=%s WHERE idVK=%s""",
            [message_words[1].upper(), str(user_id)])
        db.commit()
    except:
        db.rollback()
        answer = Error['group']
    db.close()
    answer = Success['group']
    return answer, ''


group_command = command_system.Command()

group_command.keys = ['группа', 'група', 'group']
group_command.description = 'обновлю информацию о группе'
group_command.process = group
group_command.order = 3
Ejemplo n.º 22
0
session = vk.Session()
api = vk.API(session, v=5.92)


def upcoming():
    #posts = api.wall.search(owner_id=-177456743, domain = 'test_bot_df', query = '#событие', count = 1, access_token = s_token)
    #message = posts['items'][0]['text']
    message = ''
    unixtime = round(time.time() + 10800)
    wb = load_workbook('/home/jBloodless/mysite/commands/schedule.xlsx',
                       data_only=True)
    sheet = wb['Лист1']
    for i in range(2, 45):
        if sheet.cell(row=i, column=5).value >= unixtime:
            j = i - 1
            message = str(sheet.cell(row=j, column=3).value)
            attachment = str(sheet.cell(row=j, column=6).value)
            break
    #attachment=''
    buttons = open("/home/jBloodless/mysite/defaultKeys.json",
                   "r",
                   encoding="UTF-8").read()
    return message, attachment, buttons


upcoming_command = command_system.Command()

upcoming_command.keys = ['Ближайшее событие']
upcoming_command.description = 'Пришлю событие'
upcoming_command.process = upcoming
Ejemplo n.º 23
0
import re
import app
import utility
import command_system


def load_module(request):
    user_id = request['message']['from']['id']

    module_name = re.findall(r'\w+', request['message']['text'][6:])[-1]

    if user_id == app.db['info'].find_one({'name': 'admin'})['user_id']:
        return utility.load_module(module_name)

    return 'Invalid command'


load_module_command = command_system.Command()

load_module_command.keys = [r'/load \w+\t*']
load_module_command.description = '/load - load module'
load_module_command.process = load_module
Ejemplo n.º 24
0
        return 'Хмм, не понимаю тебя. Напиши ПОМОЩЬ, чтобы узнать доступные команды.', ''
    if len(message_words) != 2:
        return Tip['deactiv'], ''
    try:
        uid = message_words[1].upper()
    except:
        return Tip['deactiv'], ''
    db = MySQLdb.connect(host=p['host'],
                         user=p['user'],
                         passwd=p['passwd'],
                         db=p['db'],
                         charset="utf8",
                         use_unicode=True)
    c = db.cursor()
    #деактивируем занятие
    try:
        c.execute("""UPDATE Event SET Active=FALSE WHERE uID=%s""", [uid])
        db.commit()
        answer = Success['deactiv']
    except:
        answer = Error['deactiv']
    db.close()
    return answer, ''


deactiv_command = command_system.Command()

deactiv_command.keys = ['деактив', 'скрыть', 'деактивиров', 'deactivate']
deactiv_command.description = 'скрыть занятие из расписания'
deactiv_command.process = deactiv
deactiv_command.order = 4
Ejemplo n.º 25
0
2.г. Ростов-на-Дону пер. Гвардейский, 6"""
    app.send_message(user_id,
                     res,
                     keyboard=button,
                     longi=47.225523,
                     lat=39.692779)
    button = json.dumps({
        "one_time":
        False,
        "buttons": [[{
            "action": {
                "type": "open_link",
                "payload": "\"Открыть в картах\"",
                "link": "https://yandex.ru/maps/-/CCQhvJwYLD",
                "label": "Форма заявления"
            }
        }]],
        "inline":
        True
    })
    res = """
Подача завляния для заселения на E-mail: [email protected]"""
    app.send_message(user_id, res, keyboard=button)


hostel_command = command_system.Command()

hostel_command.keys = ['"общаги"']
hostel_command.description = 'Общежития'
hostel_command.process = hostels
Ejemplo n.º 26
0
        urllib.request.urlretrieve(attachments[i], f"images/detect-{i}.jpg")


def load_attachments(attachments):
    files = list(filter(lambda i: 'detect' in i, os.listdir('images/')))
    files = sorted(files, key=lambda x: x.split('-')[1])
    return files, NeuralModel.convert_images(files)


def detect(attachments):
    model = NeuralModel()
    n_files = len(attachments)
    download_attachments(attachments)
    files, images = load_attachments(attachments)

    message = ""
    model.load_model()
    for i in range(n_files):
        response = model.predict(images[i], files[i])
        remove_file(files[i])
        message += f"на картинке {i+1}/{n_files}. {response['answer']['answer']}\n"
    return message, ""


detect_command = command_system.Command()

detect_command.keys = ["$"]
detect_command.get_content = True
detect_command.description = "Отправь фото и я распознаю на нем я распознаю на нем кота или собаку"
detect_command.process = detect
Ejemplo n.º 27
0
def subjects_list(user_id, body):
    '''
    возвращает список уроков на завтраший день
    :param user_id: нужен, чтобы заюзать функции klass_of_user и klass_column_in_spreadsheet
    :param body: здесь бесполезен, нужен чтобы не нарушать логику вызова c.process, в ктр передаётся два аргумента
    :return:список уроков на некст день
    '''
    if klass.klass_of_user(user_id) == '':
        return 'Тебе необходимо отправить свой класс, чтобы получать расписание'
    t_day_number = tomorrow_day_number()#номер строчки, где начинается завтрашний день
    if weekdays[t_day_number] == 'воскресенье':
        return 'завтра выходной :>'
    klassname = klass.klass_of_user(user_id)#цифра и бува класса
    klassnumber = klass_column_in_spreadsheet(klassname, user_id)#номер столбца класса
    daynumber = 2#счётчик, ищущий строку дня недели в таблице
    subj_number = 1#нумератор выдаваемых уроков (для красоты)
    message = ''
    while sheet.row_values(daynumber)[0].lower() != weekdays[t_day_number]: #ищет строку дня недели в таблице
        daynumber += 1
    for subject_line in range(daynumber, daynumber + 7):#прибавляет к message новый урок
        message += str(subj_number) + '.' + str((sheet.row_values(subject_line)[klassnumber])).lower() + '\n'
        subj_number += 1

    return message



tomorrow_command = command_system.Command()

tomorrow_command.keys = ['завтра']
tomorrow_command.process = subjects_list
Ejemplo n.º 28
0
import command_system
from common_func import keyword_gen


def olimp(keyword=''):
    message = '20.11.2017 - Литература, Физика.\n21.11.2017 - Обществознание.\n22.11.2017 - Математика.\n23.11.2017 - Биология, Информатика и ИКТ.\n24.11.2017 - Русский язык.\n25.11.2017 - Французский язык, География.\n27.11.2017 - Английский язык(Теоретический тур).\n28.11.2017 - Английский язык(Практичесий тур).\n29.11.2017 - Астраномия, История.\n30.11.2017 - Немецкий язык, Право.\n01.12.2017 - МХК, Химия.\n07.12.2017 - Экология, Технология(Теоретические туры).\n08.12.2017 - Экология, Технология(Практические туры).'
    return message, ''


olimp_command = command_system.Command()
olimp_command.keys = keyword_gen('олимпиада', 'олимп')
olimp_command.description = 'Скажу запланированные олимпиады'
olimp_command.process = olimp
Ejemplo n.º 29
0
    bio = open(user_inf, "r", encoding="UTF-8")
    id_to_msg = open(id_txt, "r", encoding="UTF-8")
    message = "@id" + str(id_to_msg.read()) + '\n' + str(bio.read())

    server = api.photos.getMessagesUploadServer(peer_id=curr_user_id(),
                                                access_token=token)
    upload_url = server["upload_url"]
    files = {'photo': open(user_pic, 'rb')}
    response = requests.post(upload_url, files=files)
    result = json.loads(response.text)
    uploadResult = api.photos.saveMessagesPhoto(server=result["server"],
                                                photo=result["photo"],
                                                hash=result["hash"],
                                                access_token=token)
    attachment = 'photo' + str(uploadResult[0]["owner_id"]) + '_' + str(
        uploadResult[0]["id"])
    #attachment = ''

    buttons = open("/home/jBloodless/mysite/tinderKeys.json",
                   "r",
                   encoding="UTF-8").read()
    #message = str(uploadResult[0]["id"])
    return message, attachment, buttons


tinderFirstIter_command = command_system.Command()

tinderFirstIter_command.keys = ['legacy_file']
tinderFirstIter_command.description = 'internal tinder message'
tinderFirstIter_command.process = tinderFirstIter
Ejemplo n.º 30
0
import command_system
import vk
import random

session = vk.Session()
api = vk.API(session, v=5.92)


def tinderStart():
    messages = (
        'Тебя уже заждались! Жми кнопку внизу, чтобы начать общаться!',
        'Мне звонили из рая и сказали, что у них пропал самый красивый ангел. Это случайно не ты? Нажми на кнопку и срази всех наповал!',
        'Твои родители случайно не пираты? Тогда откуда у них такое сокровище? Скорее жми на кнопку, чтобы начать знакомиться!',
        'Крокодил Гена нашел Чебурашку с помощью объявления на стенде. Ты можешь пообщаться прямо сейчас, просто нажав кнопку! Дерзай!',
        'Иван-царевич нашел свою невесту, пустив стрелу в случайном направлении. Попытай и ты свою удачу! Жми на кнопку, чтобы начать.'
    )
    message = random.choice(messages)
    buttons = open("/home/jBloodless/mysite/tinderStartKey.json",
                   "r",
                   encoding="UTF-8").read()
    return message, '', buttons


tinderStart_command = command_system.Command()

tinderStart_command.keys = ['Тиндер']
tinderStart_command.description = 'тиндер, хех'
tinderStart_command.process = tinderStart