1
0
Fork 0
mirror of https://github.com/myned/modufur.git synced 2024-11-01 21:02:38 +00:00

Changed session pool to be active only when needed

(issues arose with a globally active session)
This commit is contained in:
Myned 2017-10-14 21:53:55 -04:00
parent 00eec657da
commit cecd1f3abc

View file

@ -2,31 +2,39 @@ import asyncio
import json import json
import os import os
import pickle as pkl import pickle as pkl
import subprocess
import aiohttp as aio import aiohttp
from pync import Notifier
print('\nPID : {}\n'.format(os.getpid()))
# def notify(message):
# subprocess.run(['terminal-notifier', '-message', message, '-title',
# 'Modumind', '-activate', 'com.apple.Terminal', '-appIcon', 'icon.png', '-sound', 'Ping'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
print('PID {}'.format(os.getpid()))
try: try:
with open('config.json') as infile: with open('config.json') as infile:
config = json.load(infile) config = json.load(infile)
print('\"config.json\" loaded.') print('config.json loaded.')
except FileNotFoundError: except FileNotFoundError:
with open('config.json', 'w') as outfile: with open('config.json', 'w') as outfile:
json.dump({'client_id': 0, 'listed_ids': [0], 'owner_id': 0, 'permissions': 126016, 'prefix': ',', json.dump({'client_id': 0, 'listed_ids': [0], 'owner_id': 0, 'permissions': 126016, 'prefix': ',',
'shutdown_channel': 0, 'startup_channel': 0, 'token': 'str'}, outfile, indent=4, sort_keys=True) 'shutdown_channel': 0, 'startup_channel': 0, 'token': 'str'}, outfile, indent=4, sort_keys=True)
raise FileNotFoundError( raise FileNotFoundError(
'Config file not found: \"config.json\" created with abstract values. Restart \"run.py\" with correct values.') 'Config file not found: config.json created with abstract values. Restart run.py with correct values.')
def setdefault(filename, default=None): def setdefault(filename, default=None):
try: try:
with open(filename, 'rb') as infile: with open(filename, 'rb') as infile:
print('\"{}\" loaded.'.format(filename)) print('{} loaded.'.format(filename))
return pkl.load(infile) return pkl.load(infile)
except FileNotFoundError: except FileNotFoundError:
with open(filename, 'wb+') as iofile: with open(filename, 'wb+') as iofile:
print('File not found: \"{}\" created and loaded with default values.'.format(filename)) print('File not found: {} created and loaded with default values.'.format(filename))
pkl.dump(default, iofile) pkl.dump(default, iofile)
iofile.seek(0) iofile.seek(0)
return pkl.load(iofile) return pkl.load(iofile)
@ -61,14 +69,9 @@ async def clear(obj, interval=10 * 60, replace=None):
asyncio.sleep(interval) asyncio.sleep(interval)
session = None
HEADERS = {'user-agent': 'Modumind/0.0.1 (Myned)'}
async def fetch(url, *, params={}, json=False): async def fetch(url, *, params={}, json=False):
global session, HEADERS async with aiohttp.ClientSession() as session:
async with session.get(url, params=params, headers=HEADERS) as r: async with session.get(url, params=params, headers={'user-agent': 'Modumind/0.0.1 (Myned)'}) as r:
if json is True: if json is True:
return await r.json() return await r.json()
return r return r