| Version 5.4
Introduction
Installation
SysAdmin
Network
Objects
Storage
E-mail
Real-Time
Access
Services
Directory
Clusters
Applications
Miscellaneous
Licensing
WebMail
Pronto!
PBX
Pronto! | Module API | History
# Pronto! XIMSS Client Functionality Auto Login/Single Sign On Pronto! 3.x Customization Pronto! 4.x Customization Banner System The Pronto! client is a client application providing access to CommuniGate Pro Accounts using the XIMSS protocol. The Pronto! client is implemented using the Adobe® Flash technology. It is available as a zero-install "Web 2.0" client, and as a desktop "Adobe AIR" application. If the WebCal Service is enabled for your Account, you can use the Pronto! client to create Events (Meetings and Appointments) and ToDo items (Tasks), to accept and cancel them, to view your Calendar and ToDo lists. If the Signal Service is enabled for your Account, you can use the Pronto! client to exchange IM and Presence information with others. If the PBX Service is enabled for your Account, you can use the Pronto! client to originate and accept phone calls and perform other Telephony operations.

## Functionality

The client provides you access to all CommuniGate Pro "services" enabled for your Account and Domain:

Mail
  If this Service is enabled, you can read and compose new E-mail messages.
WebCal
  If this Service is enabled, you can review and update your Calendar information.
Signal
  If this Service is enabled, you can send and receive Instant Messages and Presence information.
WebSite
  If this Service is enabled, you can manage your File Storage.
PBX
  If this Service is enabled, you can make and receive phone calls.

## Auto Login/Single Sign On

The Pronto! client can be easily integrated into a "portal" environment, allowing a user to enter a Pronto! session without explicitly entering the username and/or password data.

To start Pronto!, direct the browser to the following URL:

  `[http|https]://server[:port]/Pronto/[?parameters]`

where:

`server`, `server`
  the CommuniGate Pro server/cluster address
`parameters`
  URL parameters. The following parameters are supported:
  `username`
    the user Account name (for Auto Login).
  `password`
    the user Account password (for Auto Login). This is not a secure Auto-Login method, and it should be avoided.
  `sid`
    a SessionID for a WebUser or XIMSS session the specified user Account has already opened. It will be used for Auto-Login.
  `hideLogin`
    if this parameter value is `yes`, and the `username` and `password`/`sid` parameters are specified, the Pronto! Auto Login will take place without displaying the Pronto! Login screen.
  `useHTTPBinding`
    if this parameter value is `yes`, the Pronto! XIMSS session will be established using HTTP binding instead of a direct TCP connection.

## Pronto! 3.x Customization

The Pronto! application uses files stored in the selected Web Application Skin. All Pronto! Skin names have the `Pronto-` prefix, while the Pronto Skin menus list these skins without that prefix.
When a new Skin `Pronto-glass` is created, it it seen to the users as the `glass` Pronto! Skin.

Pronto! Skins contain the files listed below. By uploading different versions of these files into different Skins, you can make Pronto! change its look and feel depending on the Pronto Skin selected.

`loginlogoimage.png`
  The main logo on the login page. Size: 350x117 pixels, background: transparent.
`loginimage.png`
  Login page "screenshot image". Size: 440x340 pixels, background: opaque.
`logosmallimage.png`
  The main screen logo in the top left corner. Size: 90x30 pixels, background: transparent.
`customlogosmall.png`
  Rotates with the CommuniGate Pro logo in the right bottom corner of the main screen. Size: 90x30 pixels, background: transparent.
`customlogomedium.png`
  Rotates with the CommuniGate Pro logo on the login page. Size: 145x50pixels, background: transparent.
`style.swf`
  This file controls most of the Pronto! display elements.
`dialtone.wav`, `busy.wav`, `ringing.wav`, `ringalert.wav`
  Dialer sounds. Sample rates: 44100, 22050, 11025, or 5512.5; bits: 8 or 16; channels: mono or stereo; format: RIFF (not RIFX) PCM; compression: none.

CommuniGate Pro logos on login screen and on the main screen can switch every few seconds with custom logos. To enable this functionality add the following files:

`customlogosmall.png`
  Task bar logo in Flex, tool bar logo in AIR. Size: 72x24 pixels, background: transparent.
`customlogomedium.png`
  The bottom right logo on the login page. Size: 145x50 pixels, background: transparent.

Some Pronto! components are implemented as separate modules. Each Pronto! module consists of two Skin files - `name.def` (the module descriptor) and `name.swf` (the module code) and some other assets, where name is the module name.

The Pronto! application builds the available module list by reading all `.def` files visible in the selected Skin.

To disable some module name, upload `name.def` with some whitespace inside it into the target Skin. Note: do not upload file of 0 bytes size, it should be at least 1 bytes size.

### Pronto Skins Hiding

Starting 5.2.6f there is an account setting `HiddenSkins`. If you put there a string value like `"Pronto-steel,Pronto-,Pronto-dd*"` (* can be used as a wildcard), then the listed skins will not be "visible" to the specified user. Usually, you would set this setting (as a default) on a server-wide/cluster-wide or domain-wide basis.

There is no UI (WebAdmin) for this setting, you can set it via CLI only (for now).

### Login Options

The `LoginOptions` dictionary in the selected Skin "strings" file controls the Pronto! Login page fields. The following dictionary elements are used:

`LanguageMenu`
  If this element is not `NO`, the Login page presents the Languages menu.
`ForgotPassword`
  If this element is not `NO`, the Login page presents the "Forgot your password?" option link.

### Custom Buttons

Custom buttons can be presented in the top toolbar next to the "Log Out" button. Each buttons is linked to some URL, and if the button is clicked, a new browser window with the specified URL is opened.

Custom buttons should be specified using the `AdditionalProntoButtons` dictionary in the selected Skin "strings" file. The dictionary key is an internal button name, while the dictionary value is a string with the URL associated with that button.

Example (2 buttons: WebSearch and WebShop):
AdditionalProntoButtons = {
WebSearch = "http://www.search-company.dom";
WebShop = "http://www.shop-company.dom";
};

The URL string can contain "macro combinations", which are substituted with the actual data before the URL is used. The following "macro" are supported:

`%%ID%%`
  the current XIMSS session identifier
`%%accountName%%`
  the session Account name (URL-encoded)
`%%domainName%%`
  the session Account Domain name (URL-encoded)
`%%fullAccountName%%`
  the session Account full name (in the `accountName@domainName` form (URL-encoded)
`%%realName%%`
  the session Account "real name" (URL-encoded)

Example:
AdditionalProntoButtons = {
"My Site" = "http://www.mysite.dom/%%ID%%/?name=%%realName%%";
};
ID a string with the unique identifier of this session accountName a string with the session Account name domainName a string with the name of the Domain the session Account belongs to filesRef a string with the URL prefix needed to retrieve files from the session Skin fullAccountName a string with the session Account full name: accountName@domainName

The custom button titles are translated using the `AdditionalProntoButtonNames` dictionary in the selected Skin "strings" file. (each language-specific file can have a different dictionary).

Example (for 2 buttons: WebSearch and WebShop):
AdditionalProntoButtonNames = {
WebSearch = "Search";
WebShop = "My Shopping";
};

## Pronto! 4.x Customization

In Pronto 4.x there is only one Web Application Skin named `Pronto4`. It is still possible to costomize it for different domains.

### Customizing logos

The image files contained in the `Pronto4` skin can be customized to add custom logos or login scree pictures.

`loginlogoimage.png`
  The main logo on the login page. Size: 350x117 pixels, background: transparent.
`loginimage.png`
  Login page "screenshot image". Size: 440x340 pixels, background: opaque.
`logosmallimage.png`
  The main screen logo in the top left corner. Size: 90x30 pixels, background: transparent.
`customlogosmall.png`
  Rotates with the CommuniGate Pro logo in the right bottom corner of the main screen. Size: 90x30 pixels, background: transparent.
`customlogomedium.png`
  Rotates with the CommuniGate Pro logo on the login page. Size: 145x50pixels, background: transparent.
`customlogo125x37.png`
  Rotates with the CommuniGate Pro logo on the login page. Size: 125x37pixels, background: transparent.
`loginlogo110.png`
  The logo used in the AIR-based version of Pronto4

### Customizing preloaders

Pronto preloaders are simple `.swf` files which are executed during application initialization and can be created with Flash Professional easily. Two templates are provided in the archive. One of the sample preloaders includes logo and displays progress as a text. The second one displays no text and no logo, so it can be used without modifications if you need to get Pronto! installation without the Pronto logo.

The archive also includes the basic ActionScript code that make preloaders tick. Any preloader should have at least a public property progress (of a numeric type). Optionally, a preloader can have public property `loadingText`, which is a `String`. These two properties are already used in the `Preloader.as` script in example preloaders.

To replace Pronto preloader, the custom `preloader.swf` should be installed into Pronto4 skin of the domain.

### Creating color schemes

Pronto4 provides the built-in color scheme editor. To start it right click on the Preferences button to select the "Show customization panel" command. The workflow is as follows:

1. The work in progress can be saved at any time. The design is stored in the account file storage.
2. The color scheme being designed can be downloaded using the `Download` button. The resulting file can be uploaded to the Pronto4 skin to be immediately available to the users.<.li>
3. The name of the scheme can be made more user-friendly and ready for localization process. The user-friendly names are retrieved from the `LookLabels` dictionary in `strings.data` of the Pronto4 skin. If the custom Pronto4 skin does not have yet a custom `strings.data` file, one needs to be created with just the `LookLabels` dictionary inside:
LookLabels = {
special_scheme = "For color blind";
spec2 = "High Contrast";
};
4. If the new scheme should be used by default, rename it to `strings.look-default.data` and upload it to te skin

### Customizing toolbar icons

The toolbar icons are stored inside the `mailloadassets.zip` archive in Pronto4 skin as plain `.png` files. To override default ones, simply download the archive from the skin, store modified icons into it and upload back to the skin/

### Customizing login page

The following parameters in `strings.login.data` skin file control the appearance of Pronto AIR login page:

`ShowSecureSelector`
  Set to "YES" to enable display of the "secure" checkbox.
`UseSecureConnection`
  Set to "YES" to force secure connection to the server when the option to select the secure connection mode is hidden.
`EnableCustomSignUp`
  Set to "YES" to use a custom sign-up page.
`CustomSignUpURL`
  Set to the string with the URL to use as the custom sign-up page.
`ShowLanguageSelector`
  Set to "YES" to enable language selector on the login page.

ShowSecureSelector = YES;
UseSecureConnection = YES;
EnableCustomSignUp = YES;
CustomSignUpURL = "https://sign-up.mydomain.com/";
ShowLanguageSelector = NO;

## Banner System

The following Pronto! components use the External Banner System:

EMail
  The banner area above the message list (type=`prontoEmailTop`), between the message list and the message preview area (type=`prontoEmailTop`), below the message preview area (type=`prontoEmailBottom`).

The Banner data returned with the External Banner System is expected to be a dictionary with the following elements:

`bgcolor`
  a "web-formatted" color string, such as `#066` or `navy`
`contentType`
  the banner image format (`jpeg`, `gif`, `png`)
`data`
  the banner image data, specified in one of the following formats:
  - `[base64data]` - the base64Data string is base64-encoded binary image file data.
  - `skin:fileName` - fileName specifies the name of a Skin banner image file.
  - `http://url` - an HTTP URL for the banner image file.
`timePeriod`
  a string or a number specifying the banner display time (in seconds). When this time is up, the component re-sends the request to get a new banner to display.
`vsize`
  a string or a number specifying the banner image height (in pixels)
`width`
  (optional) a string or a number specifying the banner image width (in pixels)
`onClick`
  (optional) the URL to open when the user clicks the banner.
``

If an External Banner System response for some banner type is empty or its timePeriod element is zero or absent, the new banner is not displayed, the existing banner (if any) is removed, and the component stops sending External Banner System requests for banners of that type.

CommuniGate® Pro Guide. Copyright © 1998-2012, Stalker Software, Inc.