Skip to content

Commit

Permalink
fix bug
Browse files Browse the repository at this point in the history
  • Loading branch information
bafflingbug committed Apr 2, 2019
1 parent 69ba090 commit 85c1760
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 12 deletions.
3 changes: 2 additions & 1 deletion src/service/plugins/v2s/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,14 +84,15 @@ def ssr_load():
sers = []
for service in services:
con = safe_get(service, 'config')
port = safe_get(service, 'port')
if not con and con == '':
raise ValueError('v2ray config not find')
host = get_host()
if host is None:
raise ValueError('\'host\' is config is None')
remarks = safe_value(safe_get(service, 'remarks'), 'default')
restart = safe_value(safe_get(service, 'restart'), '')
ssr = v2ray(con, host, '', remarks, restart)
ssr = v2ray(con, host, port, remarks, restart)
sers.extend(ssr.get_services())
return sers

Expand Down
33 changes: 22 additions & 11 deletions src/service/plugins/v2s/v2ray.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ def get_data(self):
return None
return base64.urlsafe_b64encode(json.dumps(self.conf).encode()).decode()

def __init__(self, conf, host, group, remarks, restart):
def __init__(self, conf, host, port, remarks, restart):
self.data_list = []
self.conf = conf
with open(self.conf, 'r') as f:
Expand All @@ -51,39 +51,50 @@ def __init__(self, conf, host, group, remarks, restart):
except Exception:
raise ValueError('v2ray config is not json: %s' % conf)
self.host = host
self.group = group
self.remarks = remarks
self.restart = restart
self.port = port

def get_services(self):
_net = self.config['streamSettings']['network']
_tls = self.config['streamSettings']['security']
_path = ""
_type = 'none'
if _net == 'ws':
_path = self.config['streamSettings']['network']['wsSettings']['path']
_path = self.config['streamSettings']['wsSettings']['path']
elif _net == 'h2':
_path = self.config['streamSettings']['network']['httpSettings']['path']
_path = self.config['streamSettings']['httpSettings']['path']
elif _net == 'tcp':
_type = self.config['streamSettings']['network']['tcpSettings']['header']['type']
_type = self.config['streamSettings']['tcpSettings']['header']['type']
elif _net == 'kcp':
_type = self.config['streamSettings']['network']['kcpSettings']['header']['type']
_type = self.config['streamSettings']['kcpSettings']['header']['type']
elif _net == 'quic':
_type = self.config['streamSettings']['network']['quicSettings']['header']['type']
_type = self.config['streamSettings']['quicSettings']['header']['type']
base_service = v2ray.Service(
{
'v': '2',
'add': self.host,
'net': _net,
'id': self.config['settings']['clients']['id'],
'aid': self.config['settings']['clients']['alterId'],
'id': '',
'aid': 0,
'type': _type,
'ps': self.remarks,
'host': self.host if _net in ('ws', "h2") else "",
'path': _path,
'tls': _tls,
'restart': self.restart,
'port': self.config['port']
'port': self.config['port'] if self.port is None else self.port
}
)
return [base_service]
for item in self.config['settings']['clients']:
service = copy.deepcopy(base_service)
a = {
'id': item['id'],
'aid': item['alterId']
}
service.update(a)
url = service.get_data()
if url is None:
continue
self.data_list.append(url)
return self.data_list

0 comments on commit 85c1760

Please sign in to comment.