Reference8:PBX Configuration API

From innovaphone wiki
Revision as of 11:30, 18 June 2009 by Gd (talk | contribs) (New page: Starting with v6 a new Web User Interface has been implemented to configure the PBX. The same interface can be used by applications for configuration. The interface is based on the mechani...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Starting with v6 a new Web User Interface has been implemented to configure the PBX. The same interface can be used by applications for configuration. The interface is based on the mechanism used by web forms. This means a string containing a list of named arguments is sent to the PBX and the PBX returns an XML document.

There are different ways to send the argument list to the PBX: HTTP GET, HTTP POST, SOAP.

Transport Methods

HTTP GET

The arguments are sent as part of the URL. The URL to be used has the following form:

http://<ip>/<PBX-Entity>/mod_cmd_login.xml?argument1=value1&argument2=value2&...

HTTP POST

to be done

SOAP

to be done

Arguments

In general the sequence of the arguments is not importent except in some cases in which a list of configuration items can be sent, with each item being described by multiple arguments.

cmd

The argument cmd is used to identify which command shall be executed. Depending on the argument cmd other arguments are available.

xsl

With this argument a reference to an XSL file is inserted into the returned XML file.

PBX Objects configuration

All commands to create/change/delete PBX objects use some common arguments

guid Hexstring containing the GUID of the object to be changed. This argument may be ommitted only if a new object shall be created. A value of * indicates that the argument cn shall be used to identify the object instead.
cn The Long Name of the object. Used to identify an existing object if guid is set to *

cmd=submit-object

Used to create/change/delete objects.

h323 The name of the object
e164 The number of the object
pseudo This argument defines the type of object to be set. If omitted a user object is created
pseudo=waiting

...

cmd=submit-groups

Used to change group configuration of a user. With a single command the complete list of groups is sent, which replaces the existing list of groups.

A single group is configured with the following arguments in exactly this order. For multiple groups this can be repeated.

grp-name Name of the group
grp-active If this argument is set to on, the group membership is marked as active
grp-dyn If this argument is set to in, the group membership is dynamic with preset to be in the group, if this argument is set to out the group membership is dynamic with preset to be not in the group
grp-add Marks the end of the group membership definition, must be present.