Esempio n. 1
0
 def _check(func, rss):
     logging.warning(str(subscribe))
     if subscribe:
         try:
             rss_feed = feedparser.parse(rss)
             logging.warning('checking rss')
             parsed_date = parser.parse(rss_feed.entries[0].published)
             today = utc.localize(datetime.today()).day, utc.localize(
                 datetime.today()).month
             yesterday = utc.localize(
                 datetime.today()).day - 1, utc.localize(
                     datetime.today()).month
             if (parsed_date.day, parsed_date.month) in (
                     today, yesterday) or parsed_date.day > today[0]:
                 url = rss_feed.entries[0].link
             else:
                 url = None
         except Exception:
             url = rss
         if url:
             if 'dilbert' in rss:
                 i, txt = func(rss, latest=True)
             else:
                 i, txt = func(url)
             if 'apod' in rss:
                 bot.send_message(chat_id, txt, parse_mode='Markdown')
             else:
                 bot.send_photo(chat_id, i, txt, parse_mode='Markdown')
Esempio n. 2
0
def return_comic(call, get_comic, link, latest=False):
    if not latest:
        img, txt = get_comic(link)
    else:
        img, txt = get_comic(link, latest)
    if 'apod' in link:
        bot.send_message(call.message.chat.id, txt, parse_mode='Markdown')
    elif 'pbf' in link:
        bot.send_message(call.message.chat.id, txt)
    elif not img:
        bot.send_message(call.message.chat.id,
                         error_msg,
                         reply_markup=keyboard_small)
    else:
        bot.send_photo(call.message.chat.id, img, txt, parse_mode='Markdown')
Esempio n. 3
0
def address(message):
    bot.send_message(message.chat.id, ph.ADDRESS_MESSAGE)
    turn1 = open('D:/Бизнес/YourGoal/бот/turn1.jpg', 'rb')
    turn2 = open('D:/Бизнес/YourGoal/бот/turn2.jpg', 'rb')
    door = open('D:/Бизнес/YourGoal/бот/turn3.jpg', 'rb')
    bot.send_photo(message.chat.id, turn1)
    bot.send_photo(message.chat.id, turn2)
    bot.send_photo(message.chat.id, door)
    bot.send_location(message.chat.id, 49.953183, 36.327853)
def send_images(users, image, caption, parse_mode=None, reply_markup=None):
    for user_id in users:
        try:
            bot.send_photo(user_id, image, caption=caption, parse_mode=parse_mode, reply_markup=reply_markup)
        except telebot.apihelper.ApiException:
            logging.error(f"Message to user {user_id} was not sent")
Esempio n. 5
0
def callback_worker(call):
    def _again():
        bot.send_message(call.message.chat.id,
                         "Again?",
                         reply_markup=keyboard_small)

    global chat_id, subscribe
    chat_id = call.message.chat.id
    if call.data == "xkcd_random":
        return_comic(call, codo.get_xkcd, links.xkcd_random)
        _again()
    if call.data == "xkcd_latest":
        return_comic(call, codo.get_xkcd, links.xkcd_latest)
        _again()
    if call.data == "goose_random":
        return_comic(call, codo.get_goose, links.goose_random)
        _again()
    if call.data == "poorlydrawnlines_random":
        return_comic(call, codo.get_poorlydrawnlines_archive,
                     links.poorlydrawnlines_random)
        _again()
    if call.data == "poorlydrawnlines_latest":
        return_comic(call, codo.get_poorlydrawnlines,
                     links.poorlydrawnlines_latest)
        _again()
    if call.data == "smbc_random":
        return_comic(call, codo.get_smbc_from_archive, links.smbc_archive)
        _again()
    if call.data == "smbc_latest":
        return_comic(call, codo.get_smbc, links.smbc_latest)
        _again()
    if call.data == "exo_random":
        return_comic(call, codo.get_exo_archive, links.exo_archive)
        _again()
    if call.data == "exo_latest":
        return_comic(call, codo.get_exo, links.exo_latest)
        _again()
    if call.data == "tom_gauld_random":
        return_comic(call, codo.get_tom_gauld, links.tom_gauld_random)
        _again()
    if call.data == "tom_gauld_latest":
        return_comic(call, codo.get_tom_gauld, links.tom_gauld_latest)
        _again()
    if call.data == "dilbert_latest":
        return_comic(call, codo.get_dilbert, links.dilbert, latest=True)
        _again()
    if call.data == "dilbert_random":
        return_comic(call, codo.get_dilbert, links.dilbert)
        _again()
    if call.data == "phd_random":
        return_comic(call, codo.get_phd_random, links.phd_archive)
        _again()
    if call.data == "phd_latest":
        return_comic(call, codo.get_phd, links.phd_latest)
        _again()
    if call.data == "apod_latest":
        return_comic(call, apod.get_apod, links.apod_latest)
        _again()
    if call.data == "apod_random":
        return_comic(call, apod.get_apod_random, links.apod_archive)
        _again()
    if call.data == "pbf_random":
        return_comic(call, codo.get_pbf, links.pbf_random)
        _again()
    if call.data == "pbf_latest":
        return_comic(call, codo.get_pbf, links.pbf_latest, latest=True)
        _again()
    if call.data == "new_yorker":
        res = codo.get_new_yorker_rss(links.new_yorker_daily_rss)
        for item in res:
            for i, txt in item:
                if not i:
                    bot.send_message(call.message.chat.id,
                                     error_msg,
                                     reply_markup=keyboard_small,
                                     parse_mode='Markdown')
                else:
                    bot.send_photo(call.message.chat.id, i, txt)
        _again()
    if call.data == "calvinandhobbes":
        return_comic(call, codo.get_from_gocomics,
                     links.calvinandhobbes_random)
        _again()
    if call.data == "garfield":
        return_comic(call, codo.get_from_gocomics, links.garfield_random)
        _again()
    if call.data == "pearlsbeforeswine":
        return_comic(call, codo.get_from_gocomics,
                     links.pearlsbeforeswine_random)
        _again()
    if call.data in ("again", "show_all"):
        bot.send_message(call.message.chat.id,
                         'Choose wisely!',
                         reply_markup=keyboard)
    if call.data == "get_all_latest":
        return_comic(call, codo.get_xkcd, links.xkcd_latest)
        return_comic(call, codo.get_poorlydrawnlines,
                     links.poorlydrawnlines_latest)
        return_comic(call, codo.get_smbc, links.smbc_latest)
        return_comic(call, codo.get_exo, links.exo_latest)
        return_comic(call, codo.get_tom_gauld, links.tom_gauld_latest)
        return_comic(call, codo.get_dilbert, links.dilbert)
        return_comic(call, codo.get_phd, links.phd_latest)
        return_comic(call, apod.get_apod, links.apod_latest)
        bot.send_message(call.message.chat.id,
                         'Here you go! Want more?',
                         reply_markup=keyboard_small)
    if call.data == "smth_random":
        random_list = [(codo.get_xkcd, links.xkcd_random),
                       (codo.get_goose, links.goose_random),
                       (codo.get_poorlydrawnlines_archive,
                        links.poorlydrawnlines_random),
                       (codo.get_smbc_from_archive, links.smbc_archive),
                       (codo.get_exo_archive, links.exo_archive),
                       (codo.get_tom_gauld, links.tom_gauld_random),
                       (codo.get_dilbert, links.dilbert),
                       (codo.get_phd_random, links.phd_archive),
                       (apod.get_apod_random, links.apod_archive)]
        func, link = random.choice(random_list)
        return_comic(call, func, link)
        _again()
    if call.data == "subscribe":
        logging.warning("chat id " + str(chat_id))
        chat_id = call.message.chat.id
        subscribe = True
        logging.warning("You've got subscribed")
        bot.send_message(call.message.chat.id, "You've got subscribed :)")
    if call.data == "unsubscribe":
        subscribe = False
        logging.warning("You've got unsubscribed")
        bot.send_message(call.message.chat.id, "You've got unsubscribed :(")
Esempio n. 6
0
def coaches_list_callback(message):
    message_text, photo_id, markup = generate_pagination_messsage()
    bot.send_photo(message.chat.id,
                   photo_id,
                   message_text,
                   reply_markup=markup)