194 lines
6.8 KiB
Python
194 lines
6.8 KiB
Python
from datetime import datetime
|
|
from enum import Enum
|
|
from os import F_OK
|
|
import tempText_Module
|
|
import time
|
|
import config as config
|
|
|
|
import flask
|
|
from flask import Flask, request, after_this_request
|
|
|
|
import credentials
|
|
|
|
import commands.loader as command_loader
|
|
from commands.command_base import AbstractCommand
|
|
|
|
from cooldowns import Cooldown_Module
|
|
|
|
import utilities_script as utility
|
|
|
|
import chyron_module
|
|
import timers_module
|
|
|
|
import random
|
|
|
|
import json
|
|
import base64
|
|
|
|
import event_logs.event_log_Module
|
|
|
|
import os
|
|
import praxis_logging
|
|
praxis_logger_obj = praxis_logging.praxis_logger()
|
|
praxis_logger_obj.init(os.path.basename(__file__))
|
|
praxis_logger_obj.log("\n -Starting Logs: " + os.path.basename(__file__))
|
|
|
|
api:Flask = Flask(__name__)
|
|
api.config["DEBUG"] = True
|
|
|
|
logging_module = event_logs.event_log_Module.Event_Log_Module()
|
|
|
|
def init():
|
|
print("starting up... ",)
|
|
logging_module.main()
|
|
|
|
def add_event(eventName, eventTime, eventType, eventSender, eventData):
|
|
logging_module.make_event(eventName, eventTime, eventType, eventSender, eventData)
|
|
return flask.make_response("{\"message\":\"%s\"}" % None, 200, {"Content-Type": "application/json"})
|
|
|
|
def get_events():
|
|
#returnedData = logging_module.get_recent_logs(50)
|
|
try:
|
|
masterDic = {}
|
|
newDic = {}
|
|
counter = 0
|
|
for event in logging_module.Event_Log_List:
|
|
#recentLog = self.Event_Log_List[-x]
|
|
newDic['eventName'] = str(event['eventName'])
|
|
newDic['eventTime'] = str(event['eventName'])
|
|
newDic['eventType'] = str(event['eventType'])
|
|
newDic['eventSender'] = str(event['eventSender'])
|
|
newDic['eventData'] = str(event['eventData'])
|
|
masterDic[str(counter)] = newDic
|
|
counter = counter + 1
|
|
newDic = {}
|
|
except:
|
|
masterDic = {}
|
|
#returnedData = [""]
|
|
praxis_logger_obj.log("\nGotten Events" + masterDic)
|
|
print("\nGotten Events" + masterDic)
|
|
payload = json.dumps(masterDic)
|
|
payload = base64.b64encode(str.encode(payload))
|
|
|
|
return flask.make_response("{\"message\":\"%s\"}" % payload.decode(), 200, {"Content-Type": "application/json"})
|
|
|
|
def reRunEvent_handler(eventName, eventTime, eventType, eventSender, eventData):
|
|
return flask.make_response("{\"message\":\"%s\"}" % 'rerunning event....', 200, {"Content-Type": "application/json"})
|
|
|
|
|
|
|
|
@api.route('/')
|
|
def bot_StatusIcon():
|
|
@after_this_request
|
|
def add_header(response):
|
|
response.headers.add('Access-Control-Allow-Origin', '*')
|
|
return response
|
|
return flask.make_response('Hello There', 200)
|
|
|
|
@api.route('/api/v1/event_log/status')
|
|
def bot_status():
|
|
@after_this_request
|
|
def add_header(response):
|
|
response.headers.add('Access-Control-Allow-Origin', '*')
|
|
return response
|
|
return flask.make_response('EventLog Service: OK', 200)
|
|
|
|
|
|
@api.route('/api/v1/event_log/add_event')
|
|
def add_event_log():
|
|
@after_this_request
|
|
def add_header(response):
|
|
response.headers.add('Access-Control-Allow-Origin', '*')
|
|
return response
|
|
if 'event_name' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'event_name\' not in request"}', 400)
|
|
if 'event_time' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'event_time\' not in request"}', 400)
|
|
if 'event_type' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'event_type\' not in request"}', 400)
|
|
if 'eventSender' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'eventSender\' not in request"}', 400)
|
|
if 'event_data' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'event_data\' not in request"}', 400)
|
|
|
|
return add_event(request.args['event_name'], request.args['event_time'], request.args['event_type'], request.args['eventSender'], request.args['event_data'],)
|
|
|
|
@api.route('/api/v1/event_log/get_events')
|
|
def get_event_log():
|
|
@after_this_request
|
|
def add_header(response):
|
|
response.headers.add('Access-Control-Allow-Origin', '*')
|
|
return response
|
|
if 'request_name' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'request_name\' not in request"}', 400)
|
|
if 'request_type' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'request_type\' not in request"}', 400)
|
|
if 'request_data' not in request.args:
|
|
requestData = 50
|
|
return get_events()
|
|
|
|
@api.route('/api/v1/event_log/reRunEvent')
|
|
def reRunEvent():
|
|
@after_this_request
|
|
def add_header(response):
|
|
response.headers.add('Access-Control-Allow-Origin', '*')
|
|
return response
|
|
if 'eventName' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'eventName\' not in request"}', 400)
|
|
if 'eventTime' not in request.args:
|
|
sentTime = request.args('eventTime')
|
|
else:
|
|
sentTime = None
|
|
if 'eventType' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'eventType\' not in request"}', 400)
|
|
if 'eventSender' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'eventSender\' not in request"}', 400)
|
|
if 'eventData' not in request.args:
|
|
return flask.make_response('{\"text\":"Argument \'eventData\' not in request"}', 400)
|
|
|
|
return reRunEvent_handler(request.args['eventName'], sentTime, request.args['eventType'], request.args['eventSender'], request.args['eventData'])
|
|
|
|
|
|
# @api.route('/api/v1/event_log/chyron/get')
|
|
# def get_chyron():
|
|
# @after_this_request
|
|
# def add_header(response):
|
|
# response.headers.add('Access-Control-Allow-Origin', '*')
|
|
# return response
|
|
# return flask.make_response('Client Service: OK', 200)
|
|
|
|
# @api.route('/api/v1/event_log/commands/get')
|
|
# def get_commands():
|
|
# @after_this_request
|
|
# def add_header(response):
|
|
# response.headers.add('Access-Control-Allow-Origin', '*')
|
|
# return response
|
|
# return flask.make_response('Client Service: OK', 200)
|
|
|
|
# @api.route('/api/v1/event_log/rewards/get')
|
|
# def get_rewards():
|
|
# @after_this_request
|
|
# def add_header(response):
|
|
# response.headers.add('Access-Control-Allow-Origin', '*')
|
|
# return response
|
|
# return flask.make_response('Client Service: OK', 200)
|
|
|
|
# @api.route('/api/v1/event_log/timers/get')
|
|
# def get_timers():
|
|
# @after_this_request
|
|
# def add_header(response):
|
|
# response.headers.add('Access-Control-Allow-Origin', '*')
|
|
# return response
|
|
# return flask.make_response('Client Service: OK', 200)
|
|
|
|
# @api.route('/api/v1/event_log/text_sources/get')
|
|
# def get_text_sources():
|
|
# @after_this_request
|
|
# def add_header(response):
|
|
# response.headers.add('Access-Control-Allow-Origin', '*')
|
|
# return response
|
|
# return flask.make_response('Client Service: OK', 200)
|
|
|
|
if __name__ == "__main__":
|
|
init()
|
|
api.run(host="0.0.0.0", port = 42008) |