Exemple #1
0
# -*- coding: UTF-8 -*-
from helper import data_save, data_read, getlogger
import os
import traceback
import re
logger = getlogger(__name__)
config_filename = 'permission.json'
allow_msg_type = ('private', 'group')
permissionList = {'private': {}, 'group': {}}
legalPermissionList = {}  #权限列表
res = data_read(config_filename)
if res[0]:
    permissionList = res[2]
    for k1 in permissionList:
        for k2 in list(permissionList[k1].keys()):
            permissionList[k1][int(k2)] = permissionList[k1][k2]
            del permissionList[k1][k2]


#权限名称是否合法
def perm_isLegalPerm(perm_group: str, perm_unit: str = None):
    #权限组与权限名,以字母开头,只能包含字母、数字与下划线
    res = re.match(r'(([A-Za-z]{1}[A-Za-z0-9_]*)|\*)', perm_group)
    if res == None:
        #权限组验证不通过
        return False
    if perm_unit != None:
        #以减号开头表示权限拒绝(优先于*号,-*的权限将拒绝所有)
        res = re.match(r'-?(([A-Za-z]{1}[A-Za-z0-9_]*)|\*)', perm_unit)
        if res == None:
            return False
Exemple #2
0
    os.makedirs(os.path.join(base_path, 'config'))
if not os.path.exists(os.path.join(base_path, 'log')):
    os.makedirs(os.path.join(base_path, 'log'))

import nonebot
import module.twitterApi as tweetListener
import traceback
import time
import asyncio
import threading

#配置
import config
#日志输出
from helper import keepalive, getlogger, msgSendToBot
logger = getlogger('START')
'''
nonebot封装的CQHTTP插件
'''


def init():
    allow_start_method = ('twitter_api', 'socket_api', 'twint')
    if config.UPDATA_METHOD not in allow_start_method:
        msg = '配置的更新检测(UPDATA_METHOD)方法不合法:' + str(config.UPDATA_METHOD)
        logger.critical(msg)
        raise Exception(msg)


def reboot_tewwtlistener():
    keepalive['reboot_tewwtlistener'] = False