from quart import Quart, request import socket from telethon import TelegramClient import bot import json app = Quart(__name__) bot.init_bot() @app.route('/') def hello_world(): return 'Telegram bot is Running!' @app.route('/get_user_count', methods=['POST']) async def get_user_count(): try: data = await request.json result = await bot.get_users_count(data['topic']) return str({'count': result}) except Exception: return "Server error!" @app.route('/invite_user', methods=['POST']) async def invite_user(): try: data = await request.json result = await bot.create_chat(data['user_name'], data['topic'])
logging.debug("water level: " + ("ok" if check_water_level() else "low")) exit() logging.debug("Script started " + get_time()) logging.debug("time for watering=" + str(config.DEF_TIME_WATER_S)) last_updated = watering_info() logging.debug("readed last_updated time " + get_time(last_updated.time) + ", count= " + str(last_updated.count)) def GetWaterLevel(): return water_low_level init_bot(GetWaterLevel, do_watering) # MAIN if __name__ == "__main__": time_wait = config.DEF_TIME_WAIT_DAYS while True: try: if (datetime.now() - last_updated.time) > timedelta(time_wait) or args.now: time_wait = do_watering() else: sleep(300) # logging.debug("time not expired, sleeping " + get_time()) if args.now: break except Exception as e:
# -*- coding: utf-8 -*- import configparser from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.triggers.interval import IntervalTrigger from bot import init_bot from db import create from db.team import Team, TeamError from run_bot import scheduler config = configparser.ConfigParser() config.read('bot.conf') admin_bot_uid = config['admin_uid'] bot = init_bot(admin_bot_uid) def send_message(): try: db = create() cur = db.cursor() sql = '''select * from main.message_to_send where time_to_send <= datetime('now', 'localtime') and status = 0''' cur.execute(sql) rows = cur.fetchall() for row in rows: print 'sending %s' % row['message_text'] bot.sendMessage(chat_id="@enscp", text=row['message_text']) sql_update = '''update main.message_to_send set status = 1 where time_to_send <= datetime('now', 'localtime') and status = 0''' cur.execute(sql_update) cur.close() db.commit()
import bookeo import fb_handler #------ READ VAR FROM env file ----------- from dotenv import load_dotenv load_dotenv() BOOKEO_API_SECRET_KEY = os.getenv("BOOKEO_API_SECRET_KEY") BOOKEO_API_TOKEN_KEY = os.getenv("BOOKEO_API_TOKEN_KEY") BOOKEO_API_BASE_URL = os.getenv("BOOKEO_API_BASE_URL") FB_VERIFY_TOKEN = os.getenv("FB_VERIFY_TOKEN") FB_PAGE_ACCESS_TOKEN = os.getenv("FB_PAGE_ACCESS_TOKEN") #-------- Init FB bot --------------------- bot = bot.init_bot(FB_PAGE_ACCESS_TOKEN) #-------- Init Flask app ------------------ app = flask.Flask(__name__) app.config["DEBUG"] = True #-------- App Route ----------------------- @app.route('/webhook', methods=['GET']) def webhook_get(): # Check if data is correct mode = request.args.get('hub.mode') token = request.args.get('hub.verify_token') challenge = request.args.get('hub.challenge') if mode=='subscribe' and token == FB_VERIFY_TOKEN : resp = Response(challenge, status=200)
# -*- coding: utf-8 -*- import configparser from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.triggers.interval import IntervalTrigger from bot import init_bot from db import create from db.team import Team, TeamError from study import study_job from study.Searcher import Searcher config = configparser.ConfigParser() config.read('bot.conf') bot_uid = '' bot = init_bot(bot_uid) scheduler = BackgroundScheduler() def handle(msg): team = Team() con = create() reply_to_message_id = msg['message_id'] chat_id = msg["chat"]["id"] team_name = team.get_team_by_chat(chat_id) message_text = '%s' % msg['text'].encode("utf-8") print message_text if message_text == '/ping': bot.sendMessage(chat_id, "I'm alive!", reply_to_message_id=reply_to_message_id)
""" app.py Author: Allan Martínez """ from os import environ from flask import Flask from flask_restful import Api from bot import init_bot app = Flask(__name__) api = Api(app) @app.route("/") def hello(): """Root route. Returns: Str: Simple hello world response """ return "Bot Listening..." if __name__ == "__main__": app.run(debug=True, host='0.0.0.0', port=int(environ.get('PORT', 8080))) init_bot()