การมอนิเตอร์การทำงานของ GNUGK

GNUGK สุดยอดโปรแกรม H.323 Gatekeeper เป็น Open Source

Moderator: jubjang

การมอนิเตอร์การทำงานของ GNUGK

โพสต์โดย voip4share » 19 ธ.ค. 2009 00:26

Telnet เข้าไปที่ไอพีแอดเดรสของ GNUGK พร้อมระบุพอร์ต 7000

โค้ด: เลือกทั้งหมด
telnet localhost 7000


ปกติจะไม่มีพาสเวอร์ด เราควรตั้งพาสเวอร์ด และต้องใช้ยูติลิตี้ชื่อ "addpasswd" ทำ

โค้ด: เลือกทั้งหมด
addpasswd /etc/gnugk/gnugk.ini GkStatus::Auth gkadmin password


ผลลัพธ์ Setting: gkadmin=cPdsdfl6pO2XgtNsPJXRGQ==

ตรวจสอบที่ไฟล์ /etc/gnugk/gnugk.ini
...
[GkStatus::Auth]
rule=password
127.0.0.1=allow
default=forbid
Shutdown=allow
gkadmin=cPdsdfl6pO2XgtNsPJXRGQ==
...

เมื่อ Telnet เข้าไป จะเห็นพร้อมท์แบบนี้

โค้ด: เลือกทั้งหมด
telnet localhost 7000


Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.

GnuGk login: admin
Password:

Version:
Gatekeeper(GNU) Version(2.3.4) Ext(pthreads=1,radius=1,mysql=1,pgsql=0,firebird=0,odbc=0,sqlite=0,large_fdset=4096,crypto/ssl=1,h46018=1,h46023=1) H323Plus(1.22.0) PTLib(2.8.2) Build(Jan 9 2011, 09:57:48) Sys(Linux i686 2.6.18-194.26.1.el5)
Startup: Mon, 10 Jan 2011 08:32:09 +0700 Running: 0 days 00:00:08
;
voip4share
Administrator
 
โพสต์: 656
ลงทะเบียนเมื่อ: 18 พ.ย. 2009 11:26
ที่อยู่: รามคำแหง กรุงเทพฯ

Re: การมอนิเตอร์การทำงานของ GNUGK

โพสต์โดย voip4share » 20 ธ.ค. 2009 13:27

13. Monitoring the Gatekeeper

13.1 Status Port
The status port is the external interface for monitoring and controlling the gatekeeper. The gatekeeper will send out messages about ongoing calls to all connected clients and it can receive commands via this interface.

Access to the status port is restricted by the rules in GkStatus::Auth. For security reasons, the default is not to allow any access until you have configured GkStatus::Auth.

The messages sent by the gatekeeper to the status port are grouped into three output trace levels: (These trace levels only apply to what is shown on the status port. Don't confuse them with the trace level for GnuGk's trace file.)

Level 0
Reload notifications and direct replies to entered commands.
Level 1
Reload notifications, direct replies to entered commands, CDRs and Route Requests.
Level 2
Output everything (reload notifications, direct replies to entered commands, CDRs, Route Requests, RAS, ...). This is the default output level.
The client connected to the status port can choose the output level it is interested in.

The interface is a simple TCP port (default: 7000) which you can connect to with telnet or another client. One example of a different client is the Java GUI, aka GkGUI. Another example is the Automatic Call Distribution application, aka GnuGk ACD.


Application Areas
What you do with the powers of the Status Interface is up to you, but here are a few ideas:

Call Monitoring
Monitoring the registered endpoints
Graphical User Interface for GnuGk
See GkGUI.
Call Routing
See GnuGk ACD.
Billing Applications
Analyze the CDR messages and forward them to a billing application.
Interfacing external extensions
If you don't want to publish the source code to additional features, just publish the core functionality and interface to it through the status interface and keep the external part private.

Examples
Suppose you are just interested in the CDRs (call detail records) and want to process them as a batch at regular intervals.

Here is a simple Perl script (gnugk_cdr.pl) that starts the gatekeeper and also forks a very simple client for the Status Interface and writes just the CDRs into a logfile. You'll have to modify it a little to fit your needs.


#!/usr/bin/perl
# sample program that demonstrates how to write the CDRs to a log file
use strict;
use IO::Socket;
use IO::Handle;

my $logfile = "/home/jan/cdr.log"; # CHANGE THIS
my $gk_host = "localhost";
my $gk_port = 7000;
my $gk_pid;

if ($gk_pid = fork()) {
# parent will listen to gatekeeper status
sleep(1); # wait for gk to start
my $sock = IO::Socket::INET->new(PeerAddr => $gk_host, PeerPort => $gk_port, Proto => 'tcp');
if (!defined $sock) {
die "Can't connect to gatekeeper at $gk_host:$gk_port";
}
$SIG{HUP} = sub { kill 1, $gk_pid; }; # pass HUP to gatekeeper
$SIG{INT} = sub { close (CDRFILE); kill 2, $gk_pid; }; # close file when terminated

open (CDRFILE, ">>$logfile");
CDRFILE->autoflush(1); # don't buffer output
while (!$sock->eof()) {
my $msg = $sock->getline();
$msg = (split(/;/, $msg))[0]; # remove junk at end of line
my $msgtype = (split(/\|/, $msg))[0];
if ($msgtype eq "CDR") {
print CDRFILE "$msg\n";
}
}
close (CDRFILE);
} else {
# child starts gatekeeper
exec("gnugk");
}

Keep in mind that this is just an example to show the usage of the status port. You can use the FileAcct module to log CDRs in a production system.


Java GUI for the Gatekeeper
Developed by Jan Willamowius.

You can monitor the registrations and calls that go through the gatekeeper. A right-click on a button gives you a pop up menu for that endpoint.

This GUI works with Java 1.0 built into most web browsers. For security reasons the GUI must be run as a standalone application or served by a web server on the same IP number as the gatekeeper (you cannot run it as an applet via a local file).

The program is available at GnuGk.org
voip4share
Administrator
 
โพสต์: 656
ลงทะเบียนเมื่อ: 18 พ.ย. 2009 11:26
ที่อยู่: รามคำแหง กรุงเทพฯ

Re: การมอนิเตอร์การทำงานของ GNUGK

โพสต์โดย voip4share » 20 ธ.ค. 2009 13:27

13.2 Commands (Reference)

This section lists all commands that you can issue to the status port (manually or with an external application). Commands are not case-insensitive, but parameters may be.

Entering help or h will display a list of all available commands.


Reload

Reload the configuration.

Reloading the configuration will not terminate existing calls, and any change to settings will only take effect on new calls.

You can add an optional parameter to reload only a part of your configuration:

AcctConfig - reload only the accounting config
AuthConfig - reload only the authentication config
CapConfig - reload only the CapacityControl rules
EpConfig - reload only the endpoint config (permanent endpoints, endpoint section, call table settings)

Example:

Reload
Full Config reloaded.

Reload EpConfig
EP Config reloaded.


Shutdown

Terminate the gatekeeper. Can be disabled by Shutdown=forbid in section [GkStatus::Auth].


Version, v

Show the version and OS information of the gatekeeper.


Statistics, s

Show the statistics information of the gatekeeper.

Example:

Statistics
-- Endpoint Statistics --
Total Endpoints: 21 Terminals: 17 Gateways: 4 NATed: 2
Cached Endpoints: 1 Terminals: 1 Gateways: 0
-- Call Statistics --
Current Calls: 1 Active: 1 From Neighbor: 0 From Parent: 0
Total Calls: 1539 Successful: 1076 From Neighbor: 60 From Parent: 5
Startup: Fri, 21 Jun 2002 10:50:22 +0800 Running: 11 days 04:22:59
;


ResetCallCounters

Reset the statistics counters for total calls, successful calls, neighbor calls and parent calls to zero.


PrintAllRegistrations, r, ?

Show all registered endpoints.

Format:

AllRegistrations
RCF|IP:Port|Aliases|Terminal_Type|EndpointID
...
Number of Endpoints: n
;

Example:

AllRegistrations
RCF|10.1.1.10:1720|800:dialedDigits=Wei:h323_ID|terminal|1289_endp
RCF|10.0.1.43:1720|613:dialedDigits=Jacky Tsai:h323_ID|terminal|1328_endp
RCF|10.0.1.55:1720|705:dialedDigits=Sherry Liu:h323_ID|terminal|1333_endp
Number of Endpoints: 3
;


PrintAllRegistrationsVerbose, rv, ??

Show details of all registered endpoints.

Format:

AllRegistrations
RCF|IP:Port|Aliases|Terminal_Type|EndpointID
Registration_Time C(Active_Call/Connected_Call/Total_Call) <r>
[Prefixes: ##] (gateway only)
...
Number of Endpoints: n
;

Example:

AllRegistrations
RCF|10.0.1.8:1720|Accel-GW2:h323_ID|gateway|1322_endp
Wed, 26 Jun 2002 16:40:03 +0800 C(1/5/33) <1>
Prefixes: 09,002
RCF|10.1.1.10:1720|800:dialedDigits=Wei:h323_ID|terminal|1289_endp
Wed, 26 Jun 2002 16:40:55 +0800 C(0/32/39) <1>
RCF|10.0.1.66:1720|716:dialedDigits=Vicky:h323_ID|terminal|1425_endp
Wed, 26 Jun 2002 16:40:58 +0800 C(1/47/53) <1>
Number of Endpoints: 2
;


PrintAllCached, rc

Print list of all cached out-of-zone endpoints.


PrintCurrentCalls, c, !

Show all current calls using the same ACF syntax as in call establishment.

Format:

CurrentCalls
Call No. # | CallID | Call_Duration | Left_Time
Dialed_Number
ACF|Caller_IP:Port|Caller_EPID|CRV|DestinationInfo|SrcInfo|IsAnswered;
ACF|Callee_IP:Port|Callee_EPID|CRV|DestinationInfo|SrcInfo|IsAnswered;
...
Number of Calls: Current_Call Active: Active_Call From Neighbor: Call_From_Neighbor \
From Parent: Call_From_Parent
;

Example:

CurrentCalls
Call No. 29 | CallID bd c6 17 ff aa ea 18 10 85 95 44 45 53 54 77 77 | 109 | 491
Dial 0953378875:dialedDigits
ACF|10.0.1.49:1720|4048_CGK1|25263|frank:h323_ID|gunter:h323_ID|false;
ACF|10.1.1.1:1720|4037_CGK1|25263|gunter:h323_ID|frank:h323_ID|true;
Call No. 30 | CallID 70 0e dd c0 9a cf 11 5e 00 01 00 05 5d f9 28 4d | 37 | 563
Dial 0938736860:dialedDigits
ACF|10.0.1.48:1032|4041_CGK1|11896|sue:h323_ID|peter:h323_ID|false;
ACF|10.1.1.1:1720|4037_CGK1|11896|peter:h323_ID|sue:h323_ID|true;
Number of Calls: 2 Active: 2 From Neighbor: 0 From Parent: 0
;


PrintCurrentCallsVerbose, cv, !!

Show details of all current calls.

Format:

CurrentCalls
Call No. # | CallID | Call_Duration | Left_Time
Dialed_Number
ACF|Caller_IP:Port|Caller_EPID|CRV|DestinationInfo|SrcInfo|IsAnswered;
ACF|Callee_IP:Port|Callee_EPID|CRV|DestinationInfo|SrcInfo|IsAnswered;
# Caller_Aliases|Callee_Aliases|Bandwidth|Connected_Time <r>
...
Number of Calls: Current_Call Active: Active_Call From NB: Call_From_Neighbor
;

Example:

CurrentCalls
Call No. 48 | CallID 7d 5a f1 0a ad ea 18 10 89 16 00 50 fc 3f 0c f5 | 30 | 570
Dial 0225067272:dialedDigits
ACF|10.0.1.200:1720|1448_endp|19618|frank:h323_ID|gunter:h323_ID|false;
ACF|10.0.1.7:1720|1325_endp|19618|gunter:h323_ID|frank:h323_ID|true;
# Sherry:h323_ID|Accel-GW1:h323_ID|200000|Wed, 26 Jun 2002 17:29:55 +0800 <2>
Number of Calls: 1 Active: 1 From NB: 0
;


PrintPrefixCapacities, printpc

Print the prefix capacities and current counter values for all endpoints or the specified alias.

Format:

PrintPrefixCapacities [Alias]
PrefixCapacities
-- Endpoint: Alias (1.2.3.4:1720) --
Total calls = 0
prefix/capacity/curr: 125/5/0
-- Endpoint: Alias2 (1.2.3.5:1720) --
Total calls = 0
prefix/capacity/curr: 125/5/0
;

Example:

PrintPrefixCapacities OpenMCU
PrefixCapacities
-- Endpoint: OpenMCU (192.168.1.100:1720) --
Total calls = 0
prefix/capacity/curr: ^(123|124)/2/0
prefix/capacity/curr: 125/5/0
;

printcc

Print the current counters for all CapacityControl rules.


Find, f

Find a registered endpoint by an alias or a prefix. To find an alias of the specified type (h323_ID, dialedDigits), prepend the alias type name (h323, e164, url, email) to the alias, followed by a colon.

Format:

Find Alias
RCF|IP:Port|Aliases|Terminal_Type|EndpointID
;

Example:

f 800
RCF|10.1.1.10:1720|800:dialedDigits=Wei:h323_ID|terminal|1289_endp
;
f 801
Alias 801 not found!
f h323:Wei
RCF|10.1.1.10:1720|800:dialedDigits=Wei:h323_ID|terminal|1289_endp
;


FindVerbose, fv

Find details of a registered endpoint by an alias or a prefix. To find an alias of the specified type (h323_ID, dialedDigits), prepend the alias type name (h323, e164, url, email) to the alias, followed by a colon.

Format:

FindVerbose Alias
RCF|IP:Port|Aliases|Terminal_Type|EndpointID
Registration_Time C(Active_Call/Connected_Call/Total_Call) <r>
[Prefixes: ##] (gateway only)
;

Example:

fv 02
RCF|10.0.1.100:1720|TFN:h323_ID|gateway|4037_CGK1
Wed, 26 Jun 2002 17:47:29 +0800 C(0/84/120) <1>
Prefixes: 02,09
;


UnregisterIP

Forcefully unregister an endpoint by IP and call signaling port. If you don't specify a port, the default call signalling port 1720 is used.

Format:

UnregisterIP IP[:Port]

Example:

UnregisterIP 10.0.1.31:1720
URQ|10.0.1.31:1032|1326_endp|maintenance;
Endpoint 10.0.1.31:1720 unregistered!


UnregisterAlias

Forcefully unregister an endpoint by one of its aliases. To match an alias of the specified type (h323_ID, dialedDigits), prepend the alias type name (h323, e164, url, email) to the alias, followed by a colon.

Format:

UnregisterAlias Alias

Example:

UnregisterAlias 601
URQ|10.0.1.31:1032|1326_endp|maintenance;
Endpoint 601 unregistered!


UnregisterAllEndpoints

Forcefully unregister all registered endpoints.

Format:


Example:

UnregisterAllEndpoints
URQ|10.0.1.7:1024|1325_endp|maintenance;
URQ|10.0.1.8:1024|1322_endp|maintenance;
URQ|10.0.1.32:1032|1324_endp|maintenance;
URQ|10.0.1.36:1032|1323_endp|maintenance;
URQ|10.0.1.42:1032|1318_endp|maintenance;
Done
;


DisconnectCall

Disconnect a call with given number (internal, gatekeeper assigned call number, not the caller's, callee's phone number).

Format:

DisconnectCall Number

Example:

DisconnectCall 1533


DisconnectIP

Disconnect all calls of an endpoint by IP and call signaling port.

Format:

DisconnectIP IP[:Port]

Example:

DisconnectIP 10.0.1.31:1720


DisconnectAlias

Disconnect all calls of an endpoint by one of its aliases. To match an alias of the specified type (h323_ID, dialedDigits), prepend the alias type name (h323, e164, url, email) to the alias, followed by a colon.

Format:

DisconnectAlias Alias

Example:

DisconnectAlias 601


ClearCalls

Disconnect all calls on the gatekeeper.


GK

Show the information of the parent gatekeeper.


Trace

Set the status interface output trace level. It controls which messages are sent to this client:

trace 0 or trace min

Only direct responses to commands and reload notifications.

trace 1

CDRs, direct responses to commands and reload notifications.

trace 2 or trace max

Show all (RAS, CDRs, direct responses to commands, reload notifications, etc).


Debug

Only used for debug purpose. Options:

trc [+|-|n]

Show/modify trace level.

cfg SEC PAR

Read and print a config parameter in a section.

set SEC PAR VAL

Write a config value parameter in a section.

remove SEC PAR

Remove a config value parameter in a section.

remove SEC

Remove a section.

printrm VERBOSE

Print all removed endpoint records.

Example:

debug trc 3
debug set RoutedMode H245Routed 1


SetLog

Send trace output to another file.

Format:

Setlog [filename]

Example:

Setlog /tmp/trace.log


RotateLog

Rotate the log file.


Who

Show all people on the status port. First field is the session id, which can be used to disconnect a user through the DisconnectSession command.


DisconnectSession

Disconnect a user from the status port.

Format:

DisconnectSession [session id]

Example:

DisconnectSession 2


Yell, y

Send a message to all status clients.

Format:

Yell [message text]

Example:

Yell Config reload in 5 minutes.


RouteReject

Terminate this call on a virtual queue. This command is used as a response to a RouteRequest event (see below). CallingEndpointID and CallRef must be passed back as they are in the corresponding RouteRequest. The CallID parameter is optional; if it is given it has to be the same format as signaled by RouteRequest.

Format:

RouteReject CallingEndpointID CallRef [CallID]

Example:

RouteReject endp_4711 1234


RouteToAlias, rta

Route this call on a virtual queue to the specified alias. This command is used as a response to a RouteRequest event (see below). CallingEndpointID and CallRef must be passed back as they are in the corresponding RouteRequest. The CallID parameter is optional; if it is given it has to be the same format as signaled by RouteRequest.

Format:

RouteToAlias Alias CallingEndpointID CallRef [CallID]

Example:

RouteToAlias Suzi endp_4711 1234


RouteToGateway, rtg

Route this call on a virtual queue to the specified alias and set the destinationSignalAddress. This command is used as a response to a RouteRequest event (see below). You can use this command to route calls to out-of-zone gateways or MCUs not registered with the gatekeeper. Make sure that the 'vqueue' and 'explicit' policy is in effect for these calls. CallingEndpointID and CallRef must be passed back as they are in the corresponding RouteRequest. The CallID parameter is optional; if it is given it must be the same format as signaled by RouteRequest.

Format:

RouteToGateway Alias IP:Port CallingEndpointID CallRef [CallID]

Example:

RouteToGateway Suzi 192.168.0.50 endp_4711 1234


SendProceeding

WARNING: This is an experimental feature.

Send a CallProceeding message to the caller. The only time this makes sense is after a RouteRequest event for an unregistered call. Otherwise a status port application won't know if a Setup message has been sent but that the call is not yet established.

Format:

SendProceeding CallID

Example:

SendProceeding 40-06-dd-98-22-37-52-40-8c-b0-92-0e-18-60-99-07


Exit, Quit, q, Ctrl-D

Quit the status port.


TransferCall

Transfer an established call from alias A to alias B.

This works only with endpoints that properly support Q.931 Facility messages (so it doesn't work with Netmeeting).

Format:

TransferCall Source-Alias New-Destination-Alias

Example:

TransferCall Frank Peter


MakeCall

Generate a new call from source to destination alias. You can also specify an IP number as destination. This is done by establishing a call from a pseudo endpoint in the gatekeeper to the source alias/number and then transferring the call from the gatekeeper endpoint to the destination.

The transfer can be done using either a H.450.2 transfer or a Facility message.

See [CTI::MakeCall] for configuration options.

Format:

MakeCall Source-Alias Destination-Alias

Example:

MakeCall 1234 5678
MakeCall joe 192.168.6.1


GetAuthInfo,gai

Gather information from a specific authentication module (if it provides such information) and displays it on the status port.

Format:

GetAuthInfo ModuleName

Example:

GetAuthInfo RadAliasAuth


GetAcctInfo,gci

Gather information from a specific accounting module (if it provides such information) and displays it on the status port.

Format:

GetAcctInfo ModuleName

Example:

GetAcctInfo SqlAcct
voip4share
Administrator
 
โพสต์: 656
ลงทะเบียนเมื่อ: 18 พ.ย. 2009 11:26
ที่อยู่: รามคำแหง กรุงเทพฯ

Re: การมอนิเตอร์การทำงานของ GNUGK

โพสต์โดย voip4share » 20 ธ.ค. 2009 13:31

13.3 Messages (Reference)

The section describes the messages output to the status interface.


GCF|IP|Aliases|Endpoint_Type;

The gatekeeper receives a GatekeeperRequest (GRQ) and responds with a GatekeeperConfirm (GCF).


GRJ|IP|Aliases|Endpoint_Type|RejectReason;

The gatekeeper receives a GatekeeperRequest (GRQ) and responds with a GatekeeperReject (GRJ).


RCF|IP:Port|Aliases|Endpoint_Type|EndpointID;

The gatekeeper receives a RegistrationRequest (RRQ) and responds with a RegistrationConfirm (RCF).


RRJ|IP|Aliases|Endpoint_Type|RejectReason;

The gatekeeper receives a RegistrationRequest (RRQ) and responds with a RegistrationReject (RRJ).


ACF|Caller_IP:Port|Caller_EndpointID|CRV|DestinationInfo|SrcInfo|IsAnswered|CallID;

The gatekeeper receives an AdmissionRequest (ARQ) and responds with an AdmissionConfirm (ACF).


ARJ|Caller_IP:Port|DestinationInfo|SrcInfo|IsAnswered|RejectReason|CallID;

The gatekeeper receives an AdmissionRequest (ARQ) and responds with an AdmissionReject (ARJ).


DCF|IP|EndpointID|CRV|DisengageReason|CallID;

The gatekeeper receives a DisengageRequest (DRQ) and responds with a DisengageConfirm (DCF).


DRJ|IP|EndpointID|CRV|RejectReason|CallID;

The gatekeeper receives a DisengageRequest (DRQ) and responds with a DisengageReject (DRJ).


LCF|IP|EndpointID|DestinationInfo|SrcInfo;

The gatekeeper receives a LocationRequest (LRQ) and responds with a LocationConfirm (LCF).


LRJ|IP|DestinationInfo|SrcInfo|RejectReason;

The gatekeeper receives a LocationRequest (LRQ) and responds with a LocationReject (LRJ).


BCF|IP|EndpointID|Bandwidth;

The gatekeeper receives a BandwidthRequest (BRQ) and responds with a BandwidthConfirm (BCF).


BRJ|IP|EndpointID|Bandwidth|RejectReason;

The gatekeeper receives a BandwidthRequest (BRQ) and responds with a BandwidthReject (BRJ).


UCF|IP|EndpointID;

The gatekeeper receives an UnregistrationRequest (URQ) and responds with an UnregistrationConfirm (UCF).


URJ|IP|EndpointID|RejectReason;

The gatekeeper receives an UnregistrationRequest (URQ) and responds with an UnregistrationReject (URJ).


IRQ|IP:Port|EndpointID;

The gatekeeper sends an InfoRequest (IRQ) to an endpoint to query if it is still alive. The endpoint must immediately respond with an InfoRequestResponse (IRR).


URQ|IP:Port|EndpointID|Reason;

The gatekeeper sends an UnregistrationRequest (URQ) to an endpoint to cancel its registration. The endpoint shall respond with an UnregistrationConfirm (UCF).


CDR|CallNo|CallId|Duration|Starttime|Endtime|CallerIP|CallerEndId| \
CalledIP|CalledEndId|DestinationInfo|SrcInfo|GatekeeperID;

After a call disconnected, the call detail record is shown (in one line).


RouteRequest|CallerIP:Port|CallerEndpointId|CallRef|VirtualQueue|CallerAlias|CallID|CalledIP:Port;

Request for an external application to route an incoming call on a virtual queue. This can be done with a RouteToAlias or RouteReject command.
voip4share
Administrator
 
โพสต์: 656
ลงทะเบียนเมื่อ: 18 พ.ย. 2009 11:26
ที่อยู่: รามคำแหง กรุงเทพฯ

Re: การมอนิเตอร์การทำงานของ GNUGK

โพสต์โดย voip4share » 20 ธ.ค. 2009 13:31

13.4 Status Port Filtering

Status port filtering facilitates control of the amount and type of output messages shown to the end user. Filtering is done using regular expressions which are used to decide whether to include (show) or exclude (ignore) an output message. Filtering control is performed using the following set of commands:


addincludefilter REGEX
Adds regular expression to the include list
addexcludefilter REGEX
Adds regular expression to the exclude list
removeincludefilter INDEX
Removes filter at given INDEX from the include list
removeexcludefilter INDEX
Removes filter at given INDEX from the exclude list
filter 1|0
Enable/Disable message filtering
printincludefilters
Print include filter list
printexcludefilters
Print exclude filter list
In order to enable usage of predefined filters, a new section named [GkStatus::Filtering] has been introduced. You may specify predefined filters to be loaded when the status port starts.


Example:

[GkStatus::Filtering]
IncludeFilter=.+
ExcludeFilter=.RQ

When filtering is enabled using the the filter 1 command, all messages will be shown other than lines with ARQ, LRQ etc. You may also type the following into the status port:

addincludefilter .+
addexcludefilter .RQ
filter 1

Note that enable filtering when there are no filters defined will automatically exclude all message output
voip4share
Administrator
 
โพสต์: 656
ลงทะเบียนเมื่อ: 18 พ.ย. 2009 11:26
ที่อยู่: รามคำแหง กรุงเทพฯ


ย้อนกลับไปยัง GNUGK - H.323 Gatekeeper Software

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และ บุคคลทั่วไป 1 ท่าน

cron