def links(user_id, data=None): res = """Сайты: Портфолио: https://portfolio.rsue.ru/login/index.php Учебный портал: https://do.rsue.ru Инстаграм: Официальный Инстаграм: https://www.instagram.com/rsue.rinh/ ВК группы факультетов: Факультет торгового дела: https://vk.com/club47417589 Учетно-Экономический Факультет: https://vk.com/public67629981 Факультета Экономики и Финансов: https://vk.com/public146692864 Юридический факультет: https://vk.com/urfakrinh КТиИБ: https://vk.com/club55703898 Менеджмент и предпринимательства: https://vk.com/mip_rsue Иные ВК группы: РИНХбург: https://vk.com/rinhburg Подслушано в РГЭУ: https://vk.com/uyutnenkyrinh Профсоюзная организация обучающихся: https://vk.com/profkom_rsue Штаб студенческих отрядов: https://vk.com/rso_rsue Студенческий совет: https://vk.com/studsovetrsue Официальная группа ВК: https://vk.com/rsue_rinh_officia_lgroup Студенческий культурный центр: https://vk.com/skc_rsue Отдела международной мобильности: https://vk.com/otdel_mobilnosti""" app.send_message(user_id, res)
def money(user_id, data = None): print(data['payload']) if data['payload'] == '"Стипендия"': settings = dict(one_time=False, inline=True) keyboard = VkKeyboard(**settings) # pop-up кнопка keyboard.add_callback_button(label='Академическая', color=VkKeyboardColor.POSITIVE, payload='\"Академическая\"') keyboard.add_callback_button(label='Социальная', color=VkKeyboardColor.POSITIVE, 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'])
def kitchen_reminder(): # fetch current status status = db.getStatus(conn) # if notify is disabled, no operation needed if status == "DISABLED": log("kitchen_reminder trigger; bot NOTIFY_STATUS is disabled") return "ok", 200 currentBoyNum = db.getBoyNum(conn) # if first day has passed if currentBoyNum == 1: # increment day currentBoy = db.getBoy(conn) db.changeDay(conn, currentBoy) # if second day has passed elif currentBoyNum == 2: # pass responsiblity currentBoy = db.getBoy(conn) nextBoy = db.getNextBoy(conn) db.updateBoy(conn, currentBoy, nextBoy) # send message to new kitchen boy msg = "{}, it is your kitchen day!".format(db.getNickname(conn, nextBoy)) send_message(msg, [nextBoy]) else: log("Error: getBoyNum() returned an unexpected value: {}".format(currentBoyNum)) return "ok", 200
def check_for_updates(): time = int(Message.query.with_entities(Message.date).order_by(Message.id.desc()).first()[0]) for username in User.query.with_entities(User.user).all(): for follower in Follower.query.with_entities(Follower.followed_nickname).filter_by(Follower.user=username).all(): user_id = User.query.with_entities(User.user).filter(User.name=follower).first() new_messages = Message.query.with_entities(Message.mes).filter(Cast(Message.date,sqlalchemy.BigInteger)>prev_time).all() for message in new_messages: app.send_message(username,str(follower+" said: "+message)) prev_time = time
def notifyIPOswithMsg(IPOList, message1): jsonFormatText = app.generateJSONResposneForText(message1) subscriberList = DBHelper.getUserIdList("1") for user in subscriberList: MyLogger.logMsg("Notifying user :" + user[0]) app.send_message(user[0], jsonFormatText) #sleep(1) for ipoData in IPOList: jsonFormat = app.generateJSONResposneForIPO(ipoData) app.send_message(user[0], jsonFormat)
def send_msg(): try: channel_data = channel_info('C01AV5KCA1W') channel_history = channel_text('C01AV5KCA1W') if channel_history['user'] == 'U01A27S0WMB': user_intent = detect_intent_texts(project_id, "unique", channel_history['text'], 'en') dict_data = MessageToDict(message=user_intent) response = dict_data send_message('C01AV5KCA1W', response) return Response(), 200 except Exception as e: print(e)
def info(user_id, data=None): print(data['payload']) if data['payload'] == '"вузинфа"': settings = dict(one_time=False, inline=True) settings = dict(one_time=False, inline=True) keyboard = VkKeyboard(**settings) # pop-up кнопка keyboard.add_callback_button(label='Информация о вузе', color=VkKeyboardColor.POSITIVE, payload='\"Информация о вузе\"') keyboard.add_line() keyboard.add_callback_button(label='РГЭУ РИНХ Большая Садовая', color=VkKeyboardColor.POSITIVE, payload='\"РГЭУ РИНХ Большая Садовая\"') keyboard.add_line() keyboard.add_callback_button(label='РГЭУ РИНХ Буденовский', color=VkKeyboardColor.POSITIVE, payload='\"РГЭУ РИНХ Буденовский\"') keyboard.add_line() keyboard.add_callback_button(label='РГЭУ РИНХ Максима-Горького', color=VkKeyboardColor.POSITIVE, payload='\"РГЭУ РИНХ Максима-Горького\"') app.send_message(user_id, message="🏫", keyboard=keyboard.get_keyboard()) if data['payload'] == 'Информация о вузе': message = """В 1930—1931 годах в СССР были созданы финансово-экономические институты в Москве, Ленинграде, Харькове, Ташкенте, Иркутске, Казани, Киеве и в Ростове-на-Дону (1931). Ростовский финансово-экономический институт (РФЭИ) возник на базе экономического факультета Северо-Кавказского государственного университета (прежнее название РГУ). Именно на его кадровой, научно-исследовательской и учебно-методической базе развивался институт в предвоенное десятилетие. Постановлением Совета Народных Комиссаров СССР от 28 февраля 1933 года за № 330 РФЭИ был включен в список высших учебных заведений страны, 11 марта 1939 года приказом Всесоюзного комитета высшей школы был утвержден устав института. 13 октября 1964 года приказом Министерства высшего и среднего специального образования РСФСР № 718 РФЭИ был переименован в Ростовский институт народного хозяйства (РИНХ). В 1994 году институт стал академией, а 2000 году — университетом.""" app.send_message(user_id, message) #app.message_edit(data['peer_id'], message, data['conversation_message_id']) if data['payload'] == 'РГЭУ РИНХ Большая Садовая': message = """Факультеты: Факультет Торгового Дела Факультет Компьютерных технологий и информационной безопасности Учетно-экономический факультет Факультет Экономики и финансов Факультет Лингвистики и журналистики""" app.send_message(user_id, message, longi=39.739537, lat=47.223185) #app.message_edit(data['peer_id'], message, data['conversation_message_id']) if data['payload'] == 'РГЭУ РИНХ Буденовский': message = """Факультеты: Факультет Менеджмента и предпринимательства""" app.send_message(user_id, message, longi=39.705702, lat=47.221863) #app.message_edit(data['peer_id'], message, data['conversation_message_id']) if data['payload'] == 'РГЭУ РИНХ Максима-Горького': message = """Факультеты: Юридический факультет""" app.send_message(user_id, message, longi=39.724418, lat=47.228614)
def feedback(): """The feedback page. Send posted content to feedback mail""" if request.method == 'POST': title = request.form.get('title') content = request.form.get('content') html_message = render_template('feedback_message.html', content=content) msg = Message(subject='Support: {0} - MatBoy'.format(title), recipients=[config.FEEDBACK_MAIL], html=html_message, sender=config.MAIL_DEFAULT_SENDER) send_message(msg) flash("Сообщение доставленно", 'success') return make_response(jsonify({'status': 'ok'}), 200) return render_template('feedback.html', menu=make_menu(now='Обратная связь'))
def inbound(): if request.form.get('token') == SLACK_WEBHOOK_SECRET: channel = request.form.get('channel_name') username = request.form.get('user_name') text = request.form.get('text') inbound_message = username + " in " + channel + " says: " + text message_history = [] if not message_history: message_history = [] print(inbound_message) message_history.append(inbound_message) channels = list_channels() game_topics = [ 'a: guess a word', 'b: run a test', 'c: release the monkey' ] monkey_topics = ['a: chimpanzee', 'b: ape', 'c: baboon'] for c in channels: detailed_info = channel_info(c['id']) if c['name'] == 'general': general_channel = c['id'] if text == 'play a game': for t in game_topics: send_message(general_channel, t) if text == 'hi': send_message(general_channel, "Hey") if text == 'what are you doing': send_message(general_channel, "Watching TV") if text == 'what should i do tonight': send_message(general_channel, "make a cake") if text == 'c': for m in monkey_topics: send_message(general_channel, m) print message_history else: print("Unable to authenticate.") return Response(), 200
def reset_password_step_1(): """Processing the first step of changing the password (search for a user by email)""" form = ResetPasswordStep1() if form.validate_on_submit(): email = form.email.data token = generate_confirmation_token_reset_password(email) reset_password_url = url_for('web_pages.reset_password_step_2', token=token, _external=True) template_html = render_template('reset_password_mail.html', url=reset_password_url) msg = Message(subject='Восстановление пароля MatBoy', recipients=[email], sender=config.MAIL_DEFAULT_SENDER, html=template_html) send_message(msg) flash('На вашу почту отправлена инструкция по восстановлению пароля', 'success') return redirect(url_for('web_pages.login_page')) return render_template('reset_password_step_1.html', form=form)
def send_updates(): # Update the course information and obtain the deltas. deltas = update_course_info() # Open the database connection. conn = sqlite3.connect("records.db") c = conn.cursor() # For each changed course number, query the database and send messages to # those subscribed to that course. changed_courses = [] for delta in deltas: c.execute("SELECT mobile_number, keycode FROM records WHERE confirmed = 1 AND course_id = ?", (delta["course"],)) numbers = c.fetchall() for number in numbers: send_message(str(int(number[0])), "As of now, {0} / {1} seats are now taken in {4} (previously {2} / {3}).\ Text \"STOP {5}\" to stop receiving updates.".format(delta["new_enrolled"], delta["new_max"],\ delta["old_enrolled"], delta["old_max"], delta["course"], str(int(number[1])))) return True
def hostels(user_id, data=None): button = json.dumps({ "one_time": False, "buttons": [[{ "action": { "type": "open_link", "payload": "\"Открыть в картах\"", "link": "https://yandex.ru/maps/-/CCQhvJwYLD", "label": "Открыть в картах" } }]], "inline": True }) res = """Информация по общежитиям: 1.г. Ростов-на-Дону ул. 2-я Краснодарская, 113/1""" app.send_message(user_id, res, keyboard=button, longi=47.205484, lat=39.649176) button = json.dumps({ "one_time": False, "buttons": [[{ "action": { "type": "open_link", "payload": "\"Открыть в картах\"", "link": "https://yandex.ru/maps/-/CCQhvJwYLD", "label": "Открыть в картах" } }]], "inline": True }) res = """ 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)
def news(user_id, data=None): #con = sqlite3.connect("VKBotData.db") con = pymysql.connect(host='', user='', password='', db='', charset='utf8mb4') with con: cur = con.cursor() fetch = cur.execute("select * from news limit 3") res = cur.fetchall() #res = fetch.fetchall() m = ['▶', '▶', '▶'] i = 0 for rw in res: for each in range(1, 3): m[i] += str(rw[each]) m[i] += ' \n' i += 1 for row in m: app.send_message(user_id, row)
def startTest(): MyLogger.logMsg("**************start DBTester*******************") openList = IPOHelper.getOpeningTodayIPO() MyLogger.logMsg("------OpenList-------") MyLogger.logMsg(openList) closeList = IPOHelper.getClosingTodayIPO() MyLogger.logMsg("------closeList-------") MyLogger.logMsg(closeList) runningList = IPOHelper.getRunningIPO(True) MyLogger.logMsg("------runningList-------") MyLogger.logMsg(runningList) subscriberList = DBHelper.getUserIdList("1") MyLogger.logMsg("------subscriberList-------") MyLogger.logMsg(subscriberList) jsonFormat = app.generateJSONResposneForText("DB Test Done") MyLogger.logMsg("Notifying admin") app.send_message(os.environ['ADMIN_ID'], jsonFormat) MyLogger.logMsg("**************End DBTester****************")
def contact(): form = ContactForm() if request.method == 'POST': if form.validate() == False: flash('El correo indicado no es válido.') return render_template('contact.html.j2', form=form) else: name = form.name.data email = form.email.data message = form.message.data resp = send_message(name, email, message) flash(resp) return render_template('contact.html.j2', form=form) elif request.method == 'GET': return render_template('contact.html.j2', form=form)
def trash_week_reminder_eugene(): msg = 'Eugene' + TRASH_WEEK_BASE_MESSAGE app.send_message(msg)
def trash_week_reminder_drex(): msg = 'Drex' + TRASH_WEEK_BASE_MESSAGE app.send_message(msg)
def trash_week_reminder_pj(): msg = 'PJ' + TRASH_WEEK_BASE_MESSAGE app.send_message(msg)
def rent_payment_reminder(): msg = 'Reminder to pay Mike rent via Zelle!' app.send_message(msg)
def sendAB(user_id, data=None): print(data['payload']) alphabet = [ 'А', 'Б', 'В', 'Г', 'Д', 'З', 'И', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'У', 'Ф', 'Э' ] dictionary = { '"ААА"': """Академическая задолженность — задолженность, возникающая у студента в результате отсутствия аттестации (положительной оценки) по одному из видов контроля знаний Академическая справка — документ, выдаваемый студенту, не полностью освоившему программу обучения Академический отпуск — возможность прерывания учебы, предоставляемая вузом при наличии уважительных (документально подтвержденных причин) Аккредитация государственная — признание государством статуса вуза, подтверждаемое свидетельством; дает право выдачи диплома государственного образца и отсрочку от службы в армии Аспирантура – форма подготовки научных и научно-педагогических кадров для вузов и НИИ Ассистент — преподаватель вуза, не имеющий (как правило) ученой степени и проводящий практические занятия Аттестация (студента) — оценивание его знаний по принятой в вузе шкале""", '"БББ"': """Бакалавр – квалификация, приобретаемая студентом после освоения базовой программы обучения (чаще четырехлетней). Впервые появилась в средневековых университетах западной Европы""", '"ВВВ"': """Виды вузов — институт, академия, университет. Независимо от названия вуза его статус определяет только государственная аккредитация, устанавливающая соответствие названия заявленному статусу Выпускная квалификационная работа – самостоятельно (под руководством специалиста) выполненное решение какой-либо проблемы в профессиональной области и оформленное в соответствии с принятыми стандартами Восстановление — отчисленный студент имеет право на восстановление; порядок восстановления определяется уставом и иными нормативными документами конкретного вуза""", '"ГГГ"': """Государственный образовательный стандарт – документ, содержащий основные требования к содержанию, качеству и уровню организации учебного процесса; для каждого направления (специальности подготовки) содержит требования к минимуму содержания программы подготовки""", '"ДДД"': """Декан — руководитель факультета, в полномочия которого входит решение вопросов учебной, воспитательной и научной работы, а также вопросов, связанных с приемом, отчислением, переводом, акад. отпуском и пр. Деканат – административно-учебное управление факультета, возглавляемое деканом Диплом — итоговый документ о высшем образовании, дающий право работать по специальности. Предъявляется при приеме на работу Докторантура – форма подготовки научных кадров высшей квалификации – докторов наук Доцент — ученое звание, присваиваемое Высшей аттестационной комиссией; не путать с должностью доцента конкретного вуза. Это ученое звание присваивается лицам, как правило, имеющим ученую степень кандидата наук. Право занимать должность доцента имеют, как правило, лица, имеющие ученое звание Д.""", '"ЗЗЗ"': """Зачет — вид аттестации по шкале зачтено/незачтено; часто является промежуточным видом аттестации по части курса; в ряде вузов выставляется по итогам практических занятий и является допуском для сдачи экзамена""", '"ИИИ"': """Инженер – 1) первоначальное название лиц, управлявших военными машинами. Понятие гражданский инженер появилось в 16 веке в Голландии, затем в Англии и других странах, применительно к строителям мостов и дорог; 2) специалист с высшим техническим образованием, способный к творческой деятельности в какой-либо области техники Итоговый контроль — И.К. по дисциплине – контроль, осуществляемый при полном завершении курса; может проводиться в любой форме (экзамена, тестирования) с выставлением, как правило, дифференцированной оценки""", '"ККК"': """Кандидат наук – ученая степень, присуждаемая лицам с высшим образованием, сдавших кандидатский минимум и защитившим кандидатскую диссертацию Кафедра — основная структурная единица вуза, организующая учебную, научно-методическую и научную работу по определенным направлениям Кафедра выпускающая — кафедра, ответственная в данном вузе за выпуск по конкретной специальности; основные вопросы, возникающие в ходе учебы, решаются именно с заведующим выпускающей К. Коллоквиум — вид промежуточного контроля; В переводе с латинского К. означает собеседование. В вузе К. — одна из разновидностей учебных занятий, проводимых в форме беседы преподавателя со студентами для выяснения их знаний. Обычно К. проводится по темам, по которым не запланированы семинарские занятия. К. могут проводиться и вне сетки расписания по согласованию со студентами Конспект — краткое изложение содержания какого-либо письменного, аудио- или видеоисточника. Консультация — вид внеаудиторной работы, в рамках которой студент имеет возможность задать детальные вопросы преподавателю Куратор — сотрудник вуза, которому поручено курировать (контролировать) либо какой-то вид деятельности студентов, либо общие вопросы учебы и быта студенческой группы Курсовая работа — письменная работа по утвержденной теме под руководством специалиста, оформляемая в соответствии с требованиями вуза КСР – контролируемая самостоятельная работа студента – вид внеаудиторной работы, предусмотренный государственным образовательным стандартом; в целом объем КСР за весь срок обучения может быть равен объему аудиторной работы""", '"ЛЛЛ"': """Лаборатория (учебная) — учебное помещение, оснащенное специальным оборудованием для проведения на нем лабораторных работ под руководством преподавателя Лабораторные занятия — групповые занятия со студентами под руководством преподавателя, но, в отличие от семинарских занятий, на лабораторных занятиях студенты работают с применением специального лабораторного оборудования Лекция — форма проведения теоретического обучения, связанная с изложением преподавателем материала по теме Л.; распространенная ошибка – представление о Л., как о своего рода «диктанте»; Л. предполагает активную работу студента""", '"МММ"': """Магистр – квалификация (в некоторых странах – начальная ученая степень), приобретаемая студентом после освоения специальной программы обучения на основе базовой (бакалавриата) Магистратура – ступень высшего профессионального образования, следующая после бакалавриата, позволяющая углубить специализацию по определенному профессиональному направлению""", '"ННН"': """Направление (подготовки) — профессиональная образовательная программа, не предполагающая узкой специализации Неполное высшее образование — уровень образования, достигаемый при полном выполнении программы двух-трех лет обучения в вузе. По требованию студента может выдаваться академическая справка""", '"ООО"': """Отчисление — прекращение обучения студента в вузе, оформляемое соответствующим приказом; происходит по разным основания, в т.ч. и по собственному желанию, в связи с переводом, а также в связи с академической неуспеваемостью, нарушением студентом устава вуза либо невыполнением им условий договора об обучении""", '"ППП"': """Перевод (из вуза в вуз) — осуществляется в конце учебного года по согласию принимающего вуза; устав вуза может предусматривать специальные вступительные испытания и сдачу академической разницы Перезачет (оценок) — производится при переводе из другого вуза или восстановлении после отчисления; конкретные условия П. Определяются собственными положениями вуза; при этом общими правилами являются: совпадение наименований дисциплин, их объемов (в часах) и содержания. Положения — локальные нормативные акты, принимаемые вузом и конкретизирующие те или иные виды его деятельности, не оговоренные уставом Практика — вид внеаудиторной работы студента, предусмотренный профессиональной образовательной программой; П. является обязательным видом работы, отсутствие по ней аттестации является академической задолженностью. Практика бывает учебно-ознакомительной, производственной и преддипломной Практическое занятие — вид аудиторной учебной работы, в рамках которой происходит освоение умений и навыков по дисциплине, предусмотренных ее программой; в рамках П.З. возможно также проведение текущего контроля знаний Преподаватель — работник высшего учебного заведения, ведущий какой-либо предмет(ы). Может иметь ученую степень и (или) звание Проректор — заместитель ректора по конкретному направлению деятельности; в большинстве вузов это П. по учебной работе, П. по науке, П. по админ. — хоз. работе, а также по иным видам, предусмотренным уставом вуза Профессор — ученое звание, присваиваемое Высшей аттестационной комиссией; не путать с должностью профессора конкретного вуза. Это ученое звание присваивается лицам, как правило, имеющим ученую степень доктора наук. Право занимать должность П. имеют, как правило, лица, имеющие уч. звание П.""", '"РРР"': """Рейтинг — обобщенная оценка успеваемости студента, определяющая его место среди других студентов Ректор — руководитель вуза, осуществляющий, в соответствии с его уставом, оперативное руководство и выполняющий решения совета (ученого) вуза; все перемещения студентов оформляются приказом Р. Приказ подписывается Р, на основании представлений (виз) проректоров, деканов или заведующих кафедрами и иными подразделениями вуза Реферат — краткое изложение в письменном виде или в форме публичного доклада содержания научного труда (трудов), литературы по теме""", '"ССС"': """Семинар — форма аудиторной работы, при которой происходит углубленное изучение некоторой темы программы курса в режиме диалога с преподавателем; в рамках С. может проводиться и контроль знаний Сессия — установленный графиком обучения период проведения итогового контроля по изученным дисциплинам Сессия установочная — форма проведения занятий при заочном обучении, когда студентам начитываются обзорные (установочные) лекции, содержащие методические указания и рекомендации по изучению соотв. дисциплин Специальность, специализация — определенное классификатором наименование конкретного вида профессиональной подготовки, предполагающее некоторую специализацию; завершается присвоением квалификации «дипломированный специалист»; на базе С. вуз может вводить «специализации», в рамках которых происходит углубленное изучение некоторых дисциплин Старший преподаватель — должность преподавателя, предполагающая наличие ученой степени или большого практического опыта""", '"ТТТ"': """Текущий контроль — контроль знаний по отдельным темам программы""", '"УУУ"': """Устав вуза — регистрируемый в установленном порядке нормативный акт, определяющий наиболее существенные моменты, связанные со структурой вуза, его управлением и организацией учебного процесса Ученая степень — степень, присуждаемая президиумом Высшей аттестационной комиссии на основании ходатайства диссертационного совета вуза. Для получения ученой степени необходимо защитить кандидатскую или докторскую диссертацию. Существуют ученые степени кандидата и доктора наук Ученое звание — звание, присваиваемое президиумом Высшей аттестационной комиссии на основании ходатайства Ученого совета вуза за достижения в науке, большое количество научных публикаций, определенный стаж научно-педагогической деятельности. Существуют ученые звания доцента и профессора""", '"ФФФ"': """Факультет — структурное подразделение вуза, объединяющее несколько кафедр близкого профиля; возглавляется деканом Формы обучения — действующее законодательство предусматривает формы: дневная, заочная, вечерняя, дистанционная.""", '"ЭЭЭ"': """Экзамен — форма выборочного (т.е. неполного в смысле охвата объема программы) итогового контроля знаний по дисциплине Экзамен государственный — форма контроля знаний выпускников; осуществляется, как правило, по ряду дисциплин, выносимых вузом в соответствии с государственным образовательным стандартом на Э.Г.; может осуществляться, по решению вуза и в форме междисциплинарного Э. Элективный – избирательный""" } if data['payload'] == '"справочник"': 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)
def books(user_id, data=None): button = json.dumps({ "one_time": False, "buttons": [[{ "action": { "type": "open_link", "payload": "\"Открыть в картах\"", "link": "https://yandex.ru/maps/-/CCQhqDxC~B", "label": "Открыть в картах" } }]], "inline": True }) res = """Библиотека РГЭУ(РИНХ) на Островского Тел.: +7 (863) 267-43-83""" app.send_message(user_id, res, keyboard=button, longi=47.221722, lat=39.705331) button = json.dumps({ "one_time": False, "buttons": [[{ "action": { "type": "open_link", "payload": "\"Открыть в картах\"", "link": "https://yandex.ru/maps/-/CCQhqLCVKC", "label": "Открыть в картах" } }]], "inline": True }) res = """Библиотека в главном корпусе РИНХ Тел.: +7 (863) 261-38-21""" app.send_message(user_id, res, keyboard=button, longi=47.223079, lat=39.718184) button = json.dumps({ "one_time": False, "buttons": [[{ "action": { "type": "open_link", "payload": "\"Главный сайт\"", "link": "https://library.rsue.ru/", "label": "Главный сайт библиотки" } }], [{ "action": { "type": "open_link", "payload": "\"Электронная\"", "link": "https://lib.rsue.ru/MegaPro/web", "label": "Электронная библиотека" } }]], "inline": True }) res = """📕📗📘📙""" app.send_message(user_id, res, keyboard=button)
def gift(user_id,data = None): attachment = 'doc-196165322_560058549' app.send_message(user_id, "Лови!", attachment)
def sch(user_id, data=None): con = pymysql.connect(host='', user='', password='', db='', charset='utf8mb4') if datetime.today().strftime("%a") == 'Sat': currentW = 0 if data['payload'] == '"расписание"': settings = dict(one_time=False, inline=True) keyboard = VkKeyboard(**settings) print("button preesed") for row in range(0, 7): keyboard.add_callback_button(label=fakul[dictf[row]], color=VkKeyboardColor.POSITIVE, payload='\"' + dictf[row] + '\"') if row == 3: keyboard.add_line() app.send_message(user_id, "Факультеты", keyboard=keyboard.get_keyboard()) faculty = [] if data['payload'] in dictf: settings = dict(one_time=False, inline=True) keyboard = VkKeyboard(**settings) print("button preesed") for y in range(1, 5): keyboard.add_callback_button(label=y, color=VkKeyboardColor.POSITIVE, payload='\"' + data['payload'] + str(y) + '\"') #app.send_message(user_id, "Расписание", keyboard=keyboard.get_keyboard()) print(dictfy) app.message_edit(data['peer_id'], "Курс", data['conversation_message_id'], keyboard=keyboard.get_keyboard()) if data['payload'] in dictfy: print(data) fct = data['payload'][0:3] yaer = data['payload'][3] with con: cur = con.cursor() fac = cur.execute( "SELECT distinct schedule.group FROM schedule where faculty = '" + fakulfull[fct] + "' AND year = " + yaer + "") print(fac) res = cur.fetchall() print(res) m = [] for rw in res: print(rw) print(str(rw[0])) m += [str(rw[0])] print('next') settings = dict(one_time=False, inline=True) keyboard = VkKeyboard(**settings) print('keyboard') print(m) for row in range(0, len(m)): keyboard.add_button(label=m[row], color=VkKeyboardColor.POSITIVE, payload='\"group\"') print(m[row]) if row == 3: keyboard.add_line() print(m[row]) print(keyboard.get_keyboard()) print('edit') app.message_edit(data['peer_id'], "Группа", data['conversation_message_id'], keyboard=keyboard.get_keyboard()) print('end') if data['payload'] == '"group"': m = [[]] with con: cur = con.cursor() fetch = cur.execute( "select schedule.day,schedule.schedule from schedule where schedule.group = '" + data['text'] + "' and schedule.up_weak = '+app.up+'") res = cur.fetchall() m = res message = "" for row in m: for col in row: message += str(col) + "\n" app.send_message(user_id, message)
def rent_reminder(): msg = "Don't forget to pay rent!" send_message(msg, db.getAll(conn)) return "ok", 200
def notifyAdmin(msg): jsonFormat = app.generateJSONResposneForText(msg) MyLogger.logMsg("Notifying admin") app.send_message(os.environ["ADMIN_ID"], jsonFormat)
def trash_week_reminder_mike(): msg = 'Mike' + TRASH_WEEK_BASE_MESSAGE app.send_message(msg)
def send_message(self, message): ctx = app.app.test_request_context('/', method='POST') ctx.push() app.send_message(self.user_id, message)
def trash_week_reminder_random(): housemate = random.choice(HOUSEMATE_LIST) random_msg = random.choice(RANDOM_PREFIX_LIST) + RANDOM_CHOICE_MESSAGE msg = random_msg + housemate + TRASH_WEEK_BASE_MESSAGE app.send_message(msg)
from app import send_message, getsolar, setsolar import os # from rq import Queue # from worker import conn import redis r = redis.from_url(os.environ.get("REDIS_URL")) send_message( r.hget(os.environ["ENPHASE_USER_ID"], 'sender_id'), "Daily update: " + getsolar(os.environ["ENPHASE_KEY"], os.environ["ENPHASE_USER_ID"], os.environ["ENPHASE_SYSTEM_ID"]))
if len(str_2) > 1: new_url += "?{}".format('?'.join(str_2[1:])) return new_url if __name__ == '__main__': url_analyzer = URLAnalyzer() reddit = praw.Reddit(client_id='QGgquYDRm7jKqQ', client_secret='kIU_Rxo4gfO1jKP-XXMMHQH6Mug', password='******', user_agent='PrawTut', username='******') subreddit = reddit.subreddit('GameDeals') i = 0 for submission_id in subreddit.stream.submissions(): try: i += 1 print(30 * '_{}_'.format(i)) submission = reddit.submission(id=submission_id) if submission.ups >= configs.MIN_UPVOTES and url_analyzer.is_ref_link( submission.url): for user in User.query.all(): new_url = url_analyzer.ref_code_replace(submission.url) send_message(user.id_user, "{}\n{}".format(submission.title, new_url)) else: continue except praw.exceptions.PRAWException as e: pass
def get_quote(): app.send_message()