mirror of https://github.com/kf7eel/hbnet.git
add wizard for config of data gateway
This commit is contained in:
parent
665ee6f1a7
commit
48e2d812b3
|
|
@ -1719,15 +1719,16 @@ class OBP(OPENBRIDGE):
|
|||
_dtype_vseq = (_bits & 0xF) # data, 1=voice header, 2=voice terminator; voice, 0=burst A ... 5=burst F
|
||||
_stream_id = _data[16:20]
|
||||
|
||||
print(int_id(_peer_id))
|
||||
print(int_id(_rf_src))
|
||||
print(int_id(_dst_id))
|
||||
print((_dtype_vseq))
|
||||
print(ahex(bptc_decode(_data)))
|
||||
## print(int_id(_peer_id))
|
||||
## print(int_id(_rf_src))
|
||||
## print(int_id(_dst_id))
|
||||
## print((_dtype_vseq))
|
||||
## print(ahex(bptc_decode(_data)))
|
||||
|
||||
if _mode == b'MDAT' or _mode == b'DATA':
|
||||
print('MDAT')
|
||||
## self.dmrd_received(_peer_id, _rf_src, _dst_id, _seq, _slot, _call_type, _frame_type, _dtype_vseq, _stream_id, _data)
|
||||
if _rf_src not in PACKET_MATCH:
|
||||
PACKET_MATCH[_rf_src] = [_seq, time()]
|
||||
if _seq == PACKET_MATCH[_rf_src][0] and time() - 1 < PACKET_MATCH[_rf_src][1]:
|
||||
print('matched, dropping')
|
||||
pass
|
||||
|
|
|
|||
28
web/app.py
28
web/app.py
|
|
@ -937,6 +937,12 @@ def hbnet_web_service():
|
|||
def gateway_help_page():
|
||||
return render_template('data_gateway_help.html')
|
||||
|
||||
@app.route('/data_wizard/<add_server>')
|
||||
@roles_required('Admin')
|
||||
@login_required
|
||||
def gateway_wiz_page(add_server):
|
||||
return render_template('data_gateway_wizard.html', server = add_server)
|
||||
|
||||
@app.route('/generate_passphrase/pi-star', methods = ['GET'])
|
||||
@login_required
|
||||
def gen_pi_star():
|
||||
|
|
@ -3939,9 +3945,15 @@ Name: <strong>''' + p.name + '''</strong> - Port: <strong>''' + str(
|
|||
db.session.delete(dr)
|
||||
db.session.commit()
|
||||
|
||||
def add_data_options(_name, _options):
|
||||
print(_name)
|
||||
s = ServerList.query.filter_by(name=_name).first()
|
||||
s.other_options = _options
|
||||
db.session.commit()
|
||||
|
||||
|
||||
def server_edit(_name, _secret, _ip, _global_path, _global_ping_time, _global_max_missed, _global_use_acl, _global_reg_acl, _global_sub_acl, _global_tg1_acl, _global_tg2_acl, _ai_subscriber_file, _ai_try_download, _ai_path, _ai_peer_file, _ai_tgid_file, _ai_peer_url, _ai_subs_url, _ai_stale, _um_shorten_passphrase, _um_burn_file, _report_enable, _report_interval, _report_port, _report_clients, _unit_time, _notes, _dash_url, _public_notes, _other_options):
|
||||
print(_public_notes)
|
||||
## print(_public_notes)
|
||||
s = ServerList.query.filter_by(name=_name).first()
|
||||
# print(_name)
|
||||
if _secret == '':
|
||||
|
|
@ -4426,6 +4438,17 @@ Name: <strong>''' + p.name + '''</strong> - Port: <strong>''' + str(
|
|||
content = '''<h3 style="text-align: center;">Server deleted.</h3>
|
||||
<p style="text-align: center;">Redirecting in 3 seconds.</p>
|
||||
<meta http-equiv="refresh" content="3; URL=manage_servers" />'''
|
||||
|
||||
elif request.args.get('add_data_options'):
|
||||
## s = ServerList.query.filter_by(name=request.args.get('add_data_options')).first()
|
||||
print(request.form)
|
||||
print(request.form.get('user_settings'))
|
||||
add_data_options(request.args.get('add_data_options'), 'DATA_GATEWAY:data_id=' + request.form.get('data_id') + ':call_type=' + request.form.get('call_type') + ':aprs_login_call=' + request.form.get('aprs_login_call') + ':aprs_login_passcode=' + request.form.get('aprs_login_passcode') + ':aprs_server=' + request.form.get('aprs_server') + ':aprs_port=' + request.form.get('aprs_port') + ':default_ssid=' + request.form.get('default_ssid') + ':default_comment=' + request.form.get('default_comment') + ':aprs_filter=' + request.form.get('aprs_filter') + ':user_settings=' + request.form.get('user_settings') + ':igate_time=' + request.form.get('igate_time') + ':igate_icon=' + request.form.get('igate_icon') + ':igate_comment=' + request.form.get('igate_comment') + ':igate_lat=' + request.form.get('igate_lat') + ':igate_lon=' + request.form.get('igate_lon') + '')
|
||||
|
||||
content = '''<h3 style="text-align: center;">Added data gateway options.</h3>
|
||||
<p style="text-align: center;">Redirecting in 3 seconds.</p>
|
||||
<meta http-equiv="refresh" content="3; URL=manage_servers" />'''
|
||||
|
||||
elif request.args.get('edit_server'):
|
||||
s = ServerList.query.filter_by(name=request.args.get('edit_server')).first()
|
||||
|
||||
|
|
@ -4436,6 +4459,9 @@ Name: <strong>''' + p.name + '''</strong> - Port: <strong>''' + str(
|
|||
|
||||
<p style="text-align: center;"><strong><a href="/import_rules/''' + str(s.name) + '''">Import Rules</a></strong></p>
|
||||
|
||||
<p style="text-align: center;"><strong><a href="/data_wizard/''' + str(s.name) + '''">Add options for Data Gateway</a></strong></p>
|
||||
|
||||
|
||||
<form action="manage_servers?save_mode=edit&server=''' + str(s.name) + '''" method="post">
|
||||
<p style="text-align: center;"> </p>
|
||||
<h3 style="text-align: center;"><strong>Server<br /></strong></h3>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,115 @@
|
|||
{% extends 'flask_user/_public_base.html' %}
|
||||
{% block content %}
|
||||
|
||||
<h1 style="text-align: center;">Add Data Gatweay Options</h1>
|
||||
|
||||
<br />
|
||||
|
||||
<strong>Note: </strong> Setting the APRS Login Call to <strong>N0CALL</strong> will disable APRS features. You will still be able to see station positions on the map though.
|
||||
<br />
|
||||
<br />
|
||||
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">Add Options</div>
|
||||
<div class="card-body">
|
||||
|
||||
|
||||
<form action="/manage_servers?add_data_options={{server}}" method="post">
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">Data ID(s)</span>
|
||||
<input type="text" id="data_id" name="data_id" class="form-control" aria-describedby="basic-addon1" value="9099, 9098">
|
||||
</div>
|
||||
|
||||
<select class="form-select" aria-label="Call Type" name="call_type" id="call_type">
|
||||
<option value="both" selected>Call Type - Both</option>
|
||||
<option value="unit">Unit</option>
|
||||
<option value="group">Group</option>
|
||||
|
||||
</select>
|
||||
|
||||
<br />
|
||||
<br />
|
||||
|
||||
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">APRS Login Call</span>
|
||||
<input type="text" id="aprs_login_call" name="aprs_login_call" class="form-control" aria-describedby="basic-addon1" value="N0CALL">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">APRS Passcode</span>
|
||||
<input type="text" id="aprs_login_passcode" name="aprs_login_passcode" class="form-control" aria-describedby="basic-addon1" value="123456">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">APRS Server</span>
|
||||
<input type="text" id="aprs_server" name="aprs_server" class="form-control" aria-describedby="basic-addon1" value="aprs.hbnet.xyz">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">APRS Port</span>
|
||||
<input type="text" id="aprs_port" name="aprs_port" class="form-control" aria-describedby="basic-addon1" value="14580">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">APRS Filter</span>
|
||||
<input type="text" id="aprs_filter" name="aprs_filter" class="form-control" aria-describedby="basic-addon1" value="t/m r/100">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">Default SSID</span>
|
||||
<input type="text" id="default_ssid" name="default_ssid" class="form-control" aria-describedby="basic-addon1" value="15">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">Default Comment</span>
|
||||
<input type="text" id="default_comment" name="default_comment" class="form-control" aria-describedby="basic-addon1" value="HBNet APRS Gateway - ">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">User Settings File</span>
|
||||
<input type="text" id="user_settings" name="user_settings" class="form-control" aria-describedby="basic-addon1" value="./user_settings.txt">
|
||||
</div>
|
||||
|
||||
|
||||
<br />
|
||||
|
||||
<br />
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">iGate Comment</span>
|
||||
<input type="text" id="igate_comment" name="igate_comment" class="form-control" aria-describedby="basic-addon1" value="HBNet APRS Gateway">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">iGate Time</span>
|
||||
<input type="text" id="igate_time" name="igate_time" class="form-control" aria-describedby="basic-addon1" value="30">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">iGate Icon</span>
|
||||
<input type="text" id="igate_icon" name="igate_icon" class="form-control" aria-describedby="basic-addon1" value="/I">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">iGate Latitude</span>
|
||||
<input type="text" id="igate_lat" name="igate_lat" class="form-control" aria-describedby="basic-addon1" value="0000.00N">
|
||||
</div>
|
||||
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-text" id="basic-addon1">iGate Longitude</span>
|
||||
<input type="text" id="igate_lon" name="igate_lon" class="form-control" aria-describedby="basic-addon1" value="00000.00W">
|
||||
</div>
|
||||
|
||||
|
||||
<br />
|
||||
<p style="text-align: center;"><input class="btn btn-primary" type="submit" value="Save" /></form></p>
|
||||
|
||||
</div>
|
||||
<div class="card-footer"></div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
Loading…
Reference in New Issue