You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
www_admin/root/tt/peering_detail.tt

253 lines
13 KiB

<h2> SIP Peering Group
<a class="noarrow" href="detail?group_id=[% grp.group.id %]">
[% grp.group.name %]</a>
</h2>
<a href="/peering"><span class="button-back">Back</span></a>
<h3>Peering Servers</h3>
[% IF !grp.peers || grp.peers.size == 0 %]<div class="notice">The Peering Group will need at least one Peering Server to receive and deliver calls!</div>[% END %]
[% IF messages.servmsg %]<div class="success">[% messages.servmsg %]</div>[% END %]
[% IF messages.serverr %]<div class="error">[% messages.serverr %]</div>[% END %]
<ul class="cleanlist">
<li class="ui-state-default">
<div class="span-3">Name</div>
<div class="span-3">IP Address</div>
<div class="span-3-4">Hostname</div>
<div class="span-2">Port</div>
<div class="span-2">Protocol</div>
<div class="span-2 last">Weight</div>
</li>
[% id = 0 %]
[% FOREACH peer = grp.peers %]
<li class="ui-state-default">
[% IF peer.id == peditid && !Catalyst.session.admin.read_only %]
<form action="/peering/edit_peer" method="post">
<input type="hidden" name="grpid" value="[% grp.group.id %]" />
<input type="hidden" name="peerid" value="[% peer.id %]" />
<div class="span-3">
<input type="text" size="10 id="addtxt" title="string, peer name"
name="name" value="[% peer.name %]" />
</div>
<div class="span-3">
<input type="text" size="10" id="addtxt" title="string, peer ip address"
name="ip" value="[% peer.ip %]" />
</div>
<div class="span-3-4">
<input type="text" size="12" id="addtxt" title="string, peer hostname (optional)"
name="host" value="[% peer.host %]" />
</div>
<div class="span-2">
<input type="text" size="2" id="addtxt" title="int, peer port (1-65535)"
name="port" value="[% peer.port %]" />
</div>
<div class="span-2">
<select size="1" name="transport" title="Transport protocol (UDP, TCP, TLS)">
<option value="UDP" [% IF peer.transport == 'UDP' %]selected="selected"[% END %]>UDP</option>
<option value="TCP" [% IF peer.transport == 'TCP' %]selected="selected"[% END %]>TCP</option>
<option value="TLS" [% IF peer.transport == 'TLS' %]selected="selected"[% END %]>TLS</option>
</select>
</div>
<div class="span-2">
<input type="text" size="1" id="addtxt" title="int, peer weight (0-255)"
name="weight" value="[% peer.weight %]" />
</div>
<div class="span-1">
<button id="psave[% id %]" class="button-save">Save</button>
</div>
</form>
<div class="span-1 last">
<a href="/peering/detail?group_id=[% grp.group.id %]"><span class="button-cancel">Cancel</span></a>
</div>
[% ELSE %]
<div class="span-3"><a href="/peering/preferences?peerid=[% peer.id%]" class="aaction">[% peer.name %]</a></div>
<div class="span-3">[% peer.ip %]</div>
<div class="span-3-4">[% peer.host %]</div>
<div class="span-2">[% peer.port %]</div>
<div class="span-2">[% peer.transport %]</div>
<div class="span-2">[% peer.weight %]</div>
<div class="span-1">
[% UNLESS Catalyst.session.admin.read_only %]
<a href="/peering/detail?group_id=[% grp.group.id %]&peditid=[% peer.id %]"><span class="button-edit">Edit</span></a>
[% END %]
</div>
<form action="/peering/delete_peer" method="post">
<input type="hidden" name="grpid" value="[% grp.group.id %]" />
<input type="hidden" name="peerid" value="[% peer.id %]" />
<div class="span-1 last">
[% UNLESS Catalyst.session.admin.read_only %]
<button class="button-delete" id="pdel[% id %]">Delete</button>
[% END %]
</div>
[% END %]
</form>
</li>
[% id = id + 1 %]
[% END %]
[% UNLESS Catalyst.session.admin.read_only %]
<li class="ui-state-default">
<form action="/peering/create_peer" method="post">
<input type="hidden" name="grpid" value="[% grp.group.id %]" />
<div class="span-3">
<input type="text" size="10" id="addtxt" title="string, peer name"
name="name" value="" />
</div>
<div class="span-3">
<input type="text" size="10" id="addtxt" title="string, peer ip address"
name="ip" value="" />
</div>
<div class="span-3-4">
<input type="text" size="12" id="addtxt" title="string, peer hostname (optional)"
name="host" value="" />
</div>
<div class="span-2">
<input type="text" size="2" id="addtxt" title="int, peer port (1-65535)"
name="port" value="5060" />
</div>
<div class="span-2">
<select size="1" name="transport" title="Transport protocol (UDP, TCP, TLS)">
<option value="UDP" [% IF peer.transport == 'UDP' %]selected="selected"[% END %]>UDP</option>
<option value="TCP" [% IF peer.transport == 'TCP' %]selected="selected"[% END %]>TCP</option>
<option value="TLS" [% IF peer.transport == 'TLS' %]selected="selected"[% END %]>TLS</option>
</select>
</div>
<div class="span-2">
<input type="text" size="1" id="addtxt" title="int, peer weight (0-255)"
name="weight" value="1" />
</div>
<div class="span-1 last">
<button class="button-add" id="padd">Add</button>
</div>
</form>
</li>
[% END %]
</ul>
[% IF grp.peers.size > 0 %]
<div class="hspace-20"></div>
<h3>Peering Rules</h3>
[% IF !grp.rules || grp.rules.size == 0 %]<div class="notice">Peering Servers of this Peering Group will not be used until at least one Peering Rule is added!</div>[% END %]
[% IF messages.erulmsg %]<div class="success">[% messages.erulmsg %]</div>[% END %]
[% IF messages.erulerr %]
<div class="error">[% messages.erulerr %]
[% IF erulerr_detail %]
<br />
[% erulerr_detail %]
[% END %]
</div>
[% END %]
[% IF messages.rule_callee_prefix_err %]
<div class="error">Callee prefix: [% messages.rule_callee_prefix_err %]
[% IF rule_callee_prefix_err_detail %]<br />[% rule_callee_prefix_err_detail %][% END %]
</div>
[% END %]
[% IF messages.rule_callee_pattern_err %]
<div class="error">Callee pattern: [% messages.rule_callee_pattern_err %]
[% IF rule_callee_pattern_err_detail %]<br />[% rule_callee_pattern_err_detail %][% END %]
</div>
[% END %]
[% IF messages.rule_caller_pattern_err %]
<div class="error">Caller pattern: [% messages.rule_caller_pattern_err %]
[% IF rule_caller_pattern_err_detail %]<br />[% rule_caller_pattern_err_detail %][% END %]
</div>
[% END %]
<ul class="cleanlist">
<li class="ui-state-default">
<div class="span-3">Callee Prefix</div>
<div class="span-4">Callee Pattern</div>
<div class="span-4">Caller Pattern</div>
<div class="span-4 last">Description</div>
</li>
[% id = 0 %]
[% FOREACH rule = grp.rules %]
<li class="ui-state-default">
[% IF rule.id == reditid && !Catalyst.session.admin.read_only %]
<form action="/peering/save_rule" method="post">
<input type="hidden" name="grpid" value="[% grp.group.id %]" />
<input type="hidden" name="ruleid" value="[% rule.id %]" />
<div class="span-3">
<input type="text" size="10 id="addtxt" title="Callee prefix, e.g.: '431' (E.164 number prefix for Vienna)"
name="callee_prefix" value="[% restore_rule.callee_prefix or rule.callee_prefix %]" />
</div>
<div class="span-4">
<input type="text" size="15" id="addtxt" title="A POSIX regex matching against 'user@domain' (e.g. '^.+@example\.org$' or '^431.+$')"
name="callee_pattern" value="[% restore_rule.callee_pattern or rule.callee_pattern %]" />
</div>
<div class="span-4">
<input type="text" size="15" id="addtxt" title="A POSIX regex matching against 'user@domain' (e.g. '^.+@example\.org$' or '^431.+$')"
name="caller_pattern" value="[% restore_rule.caller_pattern or rule.caller_pattern %]" />
</div>
<div class="span-4">
<input type="text" size="15" id="addtxt" title="string, rule description"
name="description" value="[% restore_rule.description or rule.description %]" />
</div>
<div class="span-1">
<button class="button-save" id="rsave[% id %]">Save</button>
</div>
</form>
<div class="span-1 last">
<a href="/peering/detail?group_id=[% grp.group.id %]"><span class="button-cancel">Cancel</span></a>
</div>
[% ELSE %]
<div class="span-3">[% rule.callee_prefix %]</div>
<div class="span-4">[% rule.callee_pattern %]</div>
<div class="span-4">[% rule.caller_pattern %]</div>
<div class="span-4">[% rule.description %]</div>
<div class="span-1">
[% UNLESS Catalyst.session.admin.read_only %]
<a href="/peering/detail?group_id=[% grp.group.id %]&reditid=[% rule.id %]"><span class="button-edit">Edit</span></a>
[% END %]
</div>
<form action="/peering/delete_rule" method="post">
<input type="hidden" name="grpid" value="[% grp.group.id %]" />
<input type="hidden" name="ruleid" value="[% rule.id %]" />
<div class="span-1 last">
[% UNLESS Catalyst.session.admin.read_only %]
<button class="button-delete" id="rdel[% id %]">Delete</button>
[% END %]
</div>
[% END %]
</form>
</li>
[% id = id + 1 %]
[% END %]
[% UNLESS Catalyst.session.admin.read_only %]
<li class="ui-state-default">
<form action="/peering/save_rule" method="post">
<input type="hidden" name="grpid" value="[% grp.group.id %]" />
<div class="span-3">
<input type="text" size="10" id="addtxt" title="Callee prefix, eg: 43"
name="callee_prefix" value="[% IF not rule.id == reditid %][% restore_rule.callee_prefix %][% END %]" />
</div>
<div class="span-4">
<input type="text" size="15" id="addtxt" title="A POSIX regex matching against 'user@domain' (e.g. '^.+@example\.org$' or '^431.+$')"
name="callee_pattern" value="[% IF not rule.id == reditid %][% restore_rule.callee_pattern %][% END %]" />
</div>
<div class="span-4">
<input type="text" size="15" id="addtxt" title="A POSIX regex matching against 'user@domain' (e.g. '^.+@example\.org$' or '^431.+$')"
name="caller_pattern" value="[% IF not rule.id == reditid %][% restore_rule.caller_pattern %][% END %]" />
</div>
<div class="span-4">
<input type="text" size="15" id="addtxt" title="string, rule description"
name="description" value="[% IF not rule.id == reditid %][% restore_rule.description %][% END %]" />
</div>
<div class="span-1 last">
<button class="button-add" id="radd">Add</button>
</div>
</form>
</li>
[% END %]
</ul>
[% END %]