Previous Topic

Next Topic

Locate topic in Contents

External Helpdesk API

HSPcomplete interaction with external trouble ticket systems is implemented via the SOAP protocol, using an open Application Programming Interface (API).

The Parallels Business Automation - Standard - External Helpdesk integration is implemented as two modules:

Messages are sent from the Parallels Business Automation - Standard side module to an external Helpdesk as SOAP envelopes. SOAP is an open protocol and thus, no secret data is passed. However, each envelope is protected with a security HTTP header generated using the secret phrase set by you to prevent intrusions and fake envelopes from unauthorized sources.

If you would like to use secure HTTP protocol for communication between Parallels Business Automation - Standard and an external Helpdesk server, you can enable SSL for Helpdesk-side module only. Please, refer to the SOAP::Lite documentation available from CPAN for detailed instructions on enabling the Parallels Business Automation - Standard side SOAP::Lite to support SSL.

Note: The Crypt::SSLeay module is included in Parallels Business Automation - Standard distribution.

External HelpDesk side module - SOAP server

greet()

Function checks if required tables exist and creates them if needed, i.e. performs initial installation, if it hasn't been done yet.

Returns identification string of HelpDesk system for displaying in Parallels Business Automation - Standard Control Centers.

alter_contacts(contacts)

Function retrieves data required to alter records in HelpDesk database from a person contacts structure that contains the following fields:

id (person ID in Parallels Business Automation - Standard)

email

prefix

first_name

insertion

middle_name

last_name

suffix

accounts (comma separated list of person's account names)

HelpDesk side must check each record in respect to its conformity with its internal Parallels Business Automation - Standard to HelpDesk mapping to define whether to insert a new record or update an existing one.

Returns the number of altered records.

list_contacts()

Function returns all records from HelpDesk database mapped from Parallels Business Automation - Standard database as an array of Parallels Business Automation - Standard record IDs.

Returns list of IDs already synchronized with Parallels Business Automation - Standard.

init_session(id, ip, act)

Function initializes new session for account identified by Parallels Business Automation - Standard ID id and visitor's IP address ip (e.g. for protecting a session) and action code act (could be add for ticket creation page or list for tickets list) and returns session URL which is either HelpDesk native URL for processing session or additional HelpDesk-specific module shipped with Parallels Business Automation - Standard. Thus, pointing user to this URL guarantees transparent login to page according to action code.

Returns redirection URL for logging in to an External Helpdesk from Parallels Business Automation - Standard Control Panels.

Parallels Business Automation - Standard side - SOAP client

According to SOAP server design, SOAP client doesn't depend on HelpDesk type and relies on common configuration options for all HelpDesk types.

Security

Security of communication is guaranteed using the following technique:

Thus, no intruder could send fake SOAP requests without knowing HSPC_SECRET. Besides, scheme implementation is too easy to be impossible for almost any language.

Sample

The sample Kayako SupportSuite HelpDesk side module shipped with Parallels Business Automation - Standard is located in samples/external_helpdesk directory.

Please send us your feedback on this help page