Remote-Mouse/src/core/__init__.py

58 lines
1.5 KiB
Python
Raw Normal View History

2020-05-28 18:07:53 +00:00
# Python imports
2020-11-22 23:00:20 +00:00
import os, secrets
from datetime import timedelta
2020-05-28 18:07:53 +00:00
# Lib imports
2020-11-22 23:40:18 +00:00
import pyautogui
2020-06-12 03:38:20 +00:00
import eventlet
2020-11-23 05:15:26 +00:00
# import eventlet.debug
2020-06-12 03:38:20 +00:00
from engineio.payload import Payload
2020-11-22 23:00:20 +00:00
# Some fixrs for Websockets
eventlet.monkey_patch()
# eventlet.debug.hub_prevent_multiple_readers(False)
Payload.max_decode_packets = 120 # Fix too many small packets causing error
2020-06-12 03:38:20 +00:00
2020-05-28 18:07:53 +00:00
from flask import Flask
from flask_bcrypt import Bcrypt
from flask_login import current_user, login_user, logout_user, LoginManager
2020-06-12 03:38:20 +00:00
from flask_socketio import SocketIO
2020-05-28 18:07:53 +00:00
# Apoplication imports
# Configs and 'init'
2020-11-22 23:40:18 +00:00
APP_NAME = 'RemoteMouse'
2020-11-22 23:00:20 +00:00
ROOT_FILE_PTH = os.path.dirname(os.path.realpath(__file__))
2020-05-28 18:07:53 +00:00
app = Flask(__name__)
2020-11-22 23:00:20 +00:00
app.config.update({
2020-11-22 23:40:18 +00:00
"TITLE": APP_NAME,
2020-11-22 23:00:20 +00:00
'DEBUG': False,
'SECRET_KEY': secrets.token_hex(32),
'PERMANENT_SESSION_LIFETIME': timedelta(days = 7).total_seconds()
})
2020-05-28 18:07:53 +00:00
2020-06-12 03:38:20 +00:00
# For Websockets
2020-11-22 23:00:20 +00:00
socketio = SocketIO(app, async_mode = 'eventlet',
cors_allowed_origins = ["*"],
path = "socket.io",
allow_upgrades = True,
manage_session = True,
cookie = None,
engineio_logger = True,
logger = True)
2020-05-28 18:07:53 +00:00
2020-11-22 23:40:18 +00:00
app.jinja_env.globals['TITLE'] = APP_NAME
pyautogui.FAILSAFE = False # If we hit corner, that's ok
# Let piautogui make updates as quick as it can...
pyautogui.MINIMUM_DURATION = 0
pyautogui.PAUSE = 0
2020-05-28 18:07:53 +00:00
from core import routes