Electronic Manual - MessageSuite / MessageSuite plus
© SunnyScript - www.sunnyscript.com

 
Table of contents
 
Installation and configuration [go] Directory structure
[go] File transfer to the server
[go] Configuration
Administration panel [go] Admin menu
System implementation [go] Edit MessageSuite parameters
[go] Topic categories - overview
[go] Topic categories - available settings
[go] User groups - overview
[go] User groups - available settings
[go] POP3 gateway accounts - overview
[go] POP3 gateway accounts - available settings
Case management & advanced features [go] Communication streams
[go] Staff panel
[go] Online chat ability (MessageSuite plus only)
[go] FAQ and KnowledgeBase databases
[go] System statistics
[go] Send out mailings
[go] Manage system tables - overview and applications
[go] Manage system tables - restructure table, table parameters & layout
[go] Database import and export tools
User lounge and template management [go] Access the user lounge
[go] User lounge - basic overview
[go] User lounge customization with templates
[go] Available templates
[go] Customization of templates
Helpful hints and technical reference [go] Background processes
[go] MessageSuite's range of applications
[go] Advanced search features, fuzzy logic search
[go] POP3 gateway accounts
[go] Workload vs. system resources
[go] Forgot your admin password ?
[go] User lounge and template translations
Customer services [go] Need help ? Contact the SunnyScript service department !

Smart tip: This handbook is also designed to be printed... set your printer's page orientation to landscape format, so there is enough space to place hand-written notes on the left and right margin easily.
 


 
Installation and configuration
 
SunnyScript offers an optional available installation service, if you don't want to install the software yourself.
Please contact our customer service department by e-mail for detailed information and pricing.
 
Directory structure...

The software can be installed at any place that allows the execution of CGI software: Most server systems provide a special directory called "cgi-bin" where you have to install the application, while others are not limited to a particular location.

In a common environment, we recommend to create a new sub-directory within the existing "cgi-bin" folder to separate the software from other already installed products.

Required "template.en" directory:

Inside the directory you desired for installation, please create a new sub-directory called "template.en". It's used to hold the content of "template.en" directory delivered with your software package.

Required "data" directory:

Inside the directory you desired for installation, please create a new sub-directory called "data". It's used to hold the content of "data" directory delivered with your software package.

Adjust path to Perl:

Open all program files (*.pl and *.cgi) in a text editor and change the first line "#!/usr/bin/perl" that it reflects the correct path to Perl 5 (or higher version) on your system. This is required to let your server know where the Perl interpreter is located.

Usage note: On most systems, /usr/bin/perl is already the default path to Perl and so no modifications are required.
 

File transfer to the server...

Upload all files to the created directories. If a ftp client is used, ensure to set the "ASCII transfer mode" for file submissions.

Detailed file table: Scheme: [filename | suggested place to upload (short description); file permission]:
 
Filename...
Description...
Filename...
Description...
* cgi-bin (program & data files); 755 template.en/* template.en (templates); 666
    data/* data (basic data files); 666

Important notes: Please double-check file permissions and transfer mode, otherwise the software may not work as intended. Depending upon the server configuration, different file permissions than the ones stated above may be necessary.

Smart tip: Our installation helper install.cgi makes it easier... just call it from your web browsing software (requires correct installation of this script) and it automatically checks your entire installation, adjusts permissions and fixes typical errors.
 

Configuration...

After you have uploaded all files, you may wish to start the admin panel first time to initialize the system parameters. In order to do so, please call admin.cgi with your favorite web browsing software:
 
Action to perform...
URL to call (location varies on your system, of course)...
Open admin panel http://www.sunnyscript.com/cgi-bin/msuite/admin.cgi

Before you proceed, it is highly recommended to set an administration password. After this is done, access to the admin panel is granted only by using "admin" as login together with the chosen password.

Now click on the button "Edit system parameters" and configure the shown parameters according your needs.

Usage note: Since all parameters are automatically filled with correct values, modifications on your side may not be required.

Directories and files:
 
Name of parameter to set...
Description...
CGI files directory
Example: /usr/www/cgi-bin/msuite
Absolute path to the location of MessageSuite on your server.
"binarydata" directory *
Example: /usr/www/cgi-bin/msuite/bindata
Absolute path to the location that holds binary database content.

* Technical note: The software tries to create this directory at a web-accessible place (certain cgi-bin locations doesn't allow to deliver multimedia content). If you experience problems in content delivery, please move it manually to a suited location.

Platform specific settings:
 
Name of parameter to set...
Description...
Mailing program (for Unix only)
Example: /usr/bin/sendmail
Absolute path to Sendmail (or compatible) application on your server.
SMTP server
Example: smtp.sunnyscript.com
SMTP server for handling mails; when left blank, default mail application is used. This setting is required for non-Unix systems, otherwise optional.
Don't use flock
Example: Unchecked
"flock" is normally supported directly by the operating system; should it be unavailable for any reason (e.g. on Win9x, WinMe), mark this checkbox.
Don't use fork
Example: Unchecked
"fork" is normally supported directly by the operating system; should it be unavailable for any reason, mark this checkbox.
Forked process respawn interval (seconds)
Example: 60
Respawn interval for processes; recommended range: 30 to 60 seconds.
Max. life of chat process (seconds) *
Example: 60
Respawn interval for chat processes; recommended range: 30 to 60 sec.
Webserver buffer size (bytes) *
Example: 16
Size of the data buffer during chat; recommended range: 16 to 8192 bytes.
Admin e-mail address
Example: admin@sunnycript.com
E-mail address of the system administrator (e.g. webmaster).

* Available on MessageSuite plus only.

URLs:
 
Name of parameter to set...
Description...
Binary directory URL
Example: http://www.sunnyscript.com/cgi-bin/msuite/bindata
URL to the location that holds binary database content.
URL of CGI files directory
Example: http://www.sunnyscript.com/cgi-bin/msuite
URL to the location of MessageSuite on your server.

Various parameters:
 
Name of parameter to set...
Description...
Authentication time (in seconds)
Example: 36000
Time frame keeping user authentications active (after expiration, people must log in again); recommended range: 1 to 12 hours.

After you have verified all settings carefully, click on the button "Save parameters" to take over modifications to the system. It is also possible to bring back previous values with the "Let the script restore defaults" button.
 

Congratulations - you have successfully installed the software :-)

 
Administration panel

The administration panel is a convenient way to work interactively with MessageSuite. You can start the admin panel by calling admin.cgi with your favorite web browsing software:
 
Action to perform...
URL to call (location varies on your system, of course)...
Open admin panel http://www.sunnyscript.com/cgi-bin/msuite/admin.cgi

How to access the staff panel:

The staff panel is a special web panel (but similar to the admin panel) intended for operators to work on cases.
 

Action to perform...
URL to call (location varies on your system, of course)...
Access staff panel http://www.sunnyscript.com/cgi-bin/msuite/login.cgi

Get access by using the concerned staff profile's login information; multiple profiles can be logged in at the same time and work simultaneously (see chapter "Helpful hints and technical reference" for some notes).

Usage note: Finally it does not matter wether calling admin.cgi or login.cgi. You can use both to get access either to the administration panel or the staff panel. The software automatically decides depending upon the login information.
 

Admin menu...

This screen allows the following actions:
 
Main menu options...
Description...
Manage system tables
 
Table...
Description...
... of registered users Database containing registered users.
... of staff members Database containing staff panel members.
... of cases Database containing case definitions.
... of messages Database containing messages.
... of FAQ Database containing frequently asked questions.
... of KnowledgeBase Knowledge database (similar to FAQ).
 
Quick statistics View summarized system statistics.
Edit MessageSuite parameters Modify general parameters and manage system preferences.
Change password Change admin password.
Other administrative features
 
Section...
Description...
Edit system parameters Modify system related parameters.
Edit templates Edit the layout templates.
Import / export data Import and export databases.
 

The top menu line provides additional selections (depending on the current system status):
 

Top menu options...
Description...
Admin panel
Admin Go to the main admin menu.
Settings Adjust software parameters.
Statistics Access system statistics area.
Home Browse the currently active system table.
Search Search the currently active system table.
Login / Logout Login or logout as administrator.
Moderate Approve or decline user modifications.
Restructure Modify structures and parameters of the currently active database.
Add / Clone / Update / Delete Add, clone, update or delete profiles / records.
 

 
System implementation

This chapter contains all technical details regarding configuration of MessageSuite's system preferences.

If you are interested in the setup of applications, implementation topics or advanced features, please refer to the next chapters for more comprehensive information. As a beginner, start with the chapter "Case management & advanced features".
 

Edit MessageSuite parameters...

First of all you must configure basic system settings which take effect to the behavior of the software. Click on the button "Edit MessageSuite parameters" when you're in the admin menu. 

General settings:
 

MessageSuite asks...
Description...
Name of site Name of your website (e.g. "My sample company").
Footer to be added to each e-mail Default footer being added to all outgoing e-mails; suited especially for showing your business card or advertisements.

Technical note: Each staff member can have its own signature, see staff member profile for applicable setting (table of staff members).

Don't ask "Relevant URL" Mark this button in order to disable the optional field "Relevant URL" on the user lounge (send inquiries). It is intended only for software support or Internet based issues.

Security settings:
 

MessageSuite asks...
Description...
E-mail blocking
Sometimes it is helpful to exclude people from accessing the user lounge to prevent system abuse.
Accept all e-mail addresses Mark this button in order to allow all e-mail addresses for the user lounge.
Block these e-mail addresses Activate "Block these e-mail addresses" and specify a list of e-mail addresses or domains (one per line) disallowed to create accounts or send inquiries.
User registration policy
Decide about the software's behavior regarding user handling and security.
User can post request without reg. Mark this checkbox in order to allow people accessing the user lounge (e.g. sending of inquiries or browsing the FAQ / KnowledgeBase).

Usage note: It doesn't hurt security to enable this feature; however it is recommended to be disabled, if you provide paid support only (so people are forced to register first).

Deny user to create mult. accounts Mark this checkbox in order to prevent people creating multiple user accounts with the same e-mail address (e.g. providing of limited support).
"Welcome new user" message
Send a welcome message after creating a new user profile successfully.
Send welcome message Mark this checkbox to send a welcome message.

Click on "edit" in order to modify the default message (a new browser window opens; after you have altered the template, close it to come back to this screen again).

Reading notification:
 

MessageSuite asks...
Description...
Track msg. readers in staff panel Mark this checkbox to track staff members reading user messages via the staff panel.
Embed read-notification HTML code
in each message forwarded to staff
Also mark this checkbox in order to add a special HTML code notifying MessageSuite each time staff members reading user messages on their own mail client.

Usage note: Applies only for staff members working on cases using their own e-mail client (e.g. working at home or while on travel).

Technical note: Requires HTML message support by the concerned mail clients.

User lounge layout:
 

MessageSuite asks...
Description...
Message editor control width (chars) Specify the number of characters max. allowed for one line.
Menu layout
By modifying these settings, you can take influence to the top menu line shown within the user lounge.
Menu items separator Characters that will appear between the top menu items (standard value: " | ").
"Search FAQ/KB", "Login",
"My cases", "Post inquiry",
"Direct chat", "Mail password",
"Create profile", "Profile update",
"Logout" entry text
Labels (linking text) used for main menu entries. You can also insert image tags according valid HTML.
FAQ / KnowledgeBase search results layout
Max. number of records in results Maximum total number of results presented for a single search. Depending upon the number of available records; recommended range: 10 to 50 matches.
Records per page Set the shown number of records per page; recommended range: 5 to 15 records.
Add date/time stamp
 
Available selections...
Description...
No Don't show a date/time stamp.
Created Show record creation date/time stamp.
Last modified Show last record update date/time stamp.
Created, Last modified Show both date/time stamps, creation and update.
 
Date/time stamp format Specify the date format used.

Default setting: DD.MM.YYYY
Example for default: 01.01.2525

Available components for this parameter:
 

Component...
Description...
Date format parts
D 2-digit day (without leading zero).
DD 2-digit day (with leading zero).
DDD Abbreviation of the weekday.
DDDD Complete name of the weekday.
M 2-digit month (without leading zero).
MM 2-digit month (with leading zero).
MMM Abbreviation of the month.
MMMM Complete name of the month.
YY 2-digit year.
YYYY 4-digit year.
Time format parts
h 2-digit hour (without leading zero).
hh 2-digit hour (with leading zero).
m 2-digit minute (without leading zero).
mm 2-digit minute (with leading zero).
s 2-digit second (without leading zero).
ss 2-digit second (with leading zero).
AM Flag to activate 12-hour time scheme. By default, the 24-hour time scheme is enabled.

Some sample combinations:

DD. MMM YYYY, hh:mm.ss AM  -> 01. Jan. 2525, 01:30.59 PM
DDD, MM. D. YYYY           -> Wed., 01. 1. 2010
YY-MM-DD                   -> 25-01-01

Usage note: Additional text is taken over unmodified (e.g. "Date info: YY-MM-DD").

Message background colors
Within the user lounge, case messages' background is color-coded depending upon the actual status.
... message background color Specify the hexadecimal color value for the background color. Alternatively you can also use color keywords (requires special support by the web browser).

Usage note: Use light colors to allow convenient reading of black text.

Staff panel layout:
 

MessageSuite asks...
Description...
Case priority colors
Within the staff panel, case messages' background is color-coded depending upon the actual status.
Color of ... priority case Specify the hexadecimal color value for the background color. Alternatively you can also use color keywords (requires special support by the web browser).

Usage note: Use light colors to allow convenient reading of black text.

Case status colors
Within the staff panel, case status cells' background is color-coded depending upon the importance.
Color of ... status Specify the hexadecimal color value for the background color. Alternatively you can also use color keywords (requires special support by the web browser).

Usage note: Use light colors to allow convenient reading of black text.

Chat (MessageSuite plus only):
 

MessageSuite asks...
Description...
Direct chat
Enable "direct chat" feature Mark this checkbox to enable the direct chat ability.

Please read the chapter "Case management and advanced features", part "Online chat ability" for more details.

Display this text as first staff msg.
in "direct chat" session
Add a welcome message to introduce the staff member. You can use any field from the table of staff members...

General usage of embedding table fields: <!--$FIELDNAME-->
Sample: "Hello, my name is <!--$first_name-->. How can I help you ?"

Anonymous user label in direct chat Label applying for unregistered chat users, e.g. "Anonymous".
Chat window layout
Date/time format Specify the date/time format applicable for the user lounge.

Default setting: hh:mm:ss
Example for default: 15:30:47

Available components for this parameter:
 

Component...
Description...
Date format parts
D 2-digit day (without leading zero).
DD 2-digit day (with leading zero).
DDD Abbreviation of the weekday.
DDDD Complete name of the weekday.
M 2-digit month (without leading zero).
MM 2-digit month (with leading zero).
MMM Abbreviation of the month.
MMMM Complete name of the month.
YY 2-digit year.
YYYY 4-digit year.
Time format parts
h 2-digit hour (without leading zero).
hh 2-digit hour (with leading zero).
m 2-digit minute (without leading zero).
mm 2-digit minute (with leading zero).
s 2-digit second (without leading zero).
ss 2-digit second (with leading zero).
AM Flag to activate 12-hour time scheme. By default, the 24-hour time scheme is enabled.

Some sample combinations:

DD. MMM YYYY, hh:mm.ss AM  -> 01. Jan. 2525, 01:30.59 PM
DDD, MM. D. YYYY           -> Wed., 01. 1. 2010
YY-MM-DD                   -> 25-01-01

Usage note: Additional text is taken over unmodified (e.g. "Today, DD. MM YYYY").

Default chat window width (pixels) Set the width of the pop-up chat window hosting the chat session.

Technical notes: Width specified here is also applicable for user's chat pop-up window. The pop-up window is resizeable, so these default dimensions can be adjusted.

Default chat window height (pixels) Set the height of the pop-up chat window hosting the chat session.

Technical notes: Height specified here is also applicable for user's chat pop-up window. The pop-up window is resizeable, so these default dimensions can be adjusted.

Text color
Text color of ... Specify the hexadecimal color value for the text parts. Alternatively you can also use color keywords (requires special support by the web browser).

Usage note: Use dark colors to allow convenient reading on light colored backgrounds.

Audio alert for new chat calls
Enable audio alert Mark this button to play a sound file notifying the staff member that a new chat request came in (requires a correctly configured soundcard at staff member's computer).
URL of sound file Specify the URL of the sound file being played.

Mailings:

The following settings are valid for using MessageSuite handling e-mail correspondence (explained later more detailed).
 

MessageSuite asks...
Description...
Case number prefix added
to e-mail subject
Each e-mail sent to the system receives an auto-generated case number allowing MessageSuite identifying messages belonging to the same case.

You may add a custom prefix, like "SUPPORT-2525-" or "MailCase_"; all characters can be used, except parentheses and language specific ones.

Default gateway e-mail address Type in an e-mail address of a POP3-typed mail account used, if staff member has no own gateway e-mail address or a case cannot be assigned to a specific member.

Important note: You must use an e-mail address pointing to a POP3 account registered by MessageSuite as mail gateway (refer below of this chapter and also see next one).

Autoresponder on incoming mail with undeterminable topic
Special autoresponder for inquiries with an undeterminable topic. For more information about autoresponders, please take a look below at "Topic specific incoming mail autoresponder" within this part.
Enable autoresponder Check this button in order to enable this kind of autoresponders.

Click on "edit" in order to modify the default message (a new browser window opens; after you have altered the template, close it to come back to this screen again).

Max. number of FAQ/KB records Specify the maximum amount of FAQ/KB records shown in the autoresponder mail. Recommended range: 3 to 20 records.
Imported mail handling
All e-mails reaching MessageSuite are taken over to the system, so they are available on the staff panel. You can also forward messages to your staff members' own e-mail clients or other outside e-mail addresses (e.g. backup or marketing analysis).
Message top size limit (KB) Max. size of a message accepted by the system (incl. all attachments). If a message exceeds this limit, acceptance is refused and sender will receive a notice.

Click on "edit" in order to modify the default message (a new browser window opens; after you have altered the template, close it to come back to this screen again).

Forward incoming messages from
assigned cases to staff
 
Available selections...
Description...
Yes, use member profile pref. Messages are also forwarded to the matching staff member via e-mail (requires "Forward incoming msgs." enabled in concerned profile preferences).
No Messages are only available at the staff panel.
 
Forward all incoming msgs. also to Specify e-mail address(es) to which copies of all incoming messages are sent or leave the field empty to disable this feature. Please separate multiple entries with commas.

Usage note: Suited mainly for backup generation or marketing analysis.

"Reply required" reminder
After a given time frame without action, a reminder is sent to the staff member(s) asking them to answer an inquiry.
Max. delay before sending first
reminder (hours)
Remind assigned staff members answering user enquiries after this number of hours.

Click on "edit" in order to modify the default message (a new browser window opens; after you have altered the template, close it to come back to this screen again).

Send copy of first reminder also to Specify e-mail address(es) to which copies of first reminders are sent or leave the field empty to disable this feature. Please separate multiple entries with commas.

Usage note: Suited to allow the supervisor to detect staff members causing delays.

Max. delay before sending second
reminder (hours)
Remind assigned staff members again to answer user enquiries after this number of hours (delay between message arrival and second reminder, not first reminder).

Click on "edit" in order to modify the default message (a new browser window opens; after you have altered the template, close it to come back to this screen again).

Send copy of second rem. also to Specify e-mail address(es) to which copies of second reminders are sent or leave the field empty to disable this feature. Please separate multiple entries with commas.

Usage note: Suited to allow the supervisor to detect staff members causing delays.

Critical situations alert *
Send alert messages to the admin in case of technical problems. Alerts are also stored in error.log located at the "logs" directory of MessageSuite's location (you may like to check and clear this file from time to time).
Send e-mail alerts in critical sit. Enable this feature to receive alert messages by e-mail for critical situations.

Click on "edit" in order to modify the default message (a new browser window opens; after you have altered the template, close it to come back to this screen again).

* Technical note: In order to avoid receiving too many alerts, you will only get one alert related to the same-typed error within 24 hours. However each single alert is logged for later referencing purposes.

Data maintenance:

Each time data maintenance runs, the following actions are performed:
 
* Manage cases and POP3 gateway accounts.
* Remove expired activity log entries.

Important note: Executing data maintenance is required and needs "fork" function to be enabled (see "System parameters"). If it is disabled due to technical limitations of the server, please follow instructions below.
 

MessageSuite asks...
Description...
Maintenance interval (seconds) Specify the re-calculation interval in hours; recommended value: 600 seconds.

Important note: This setting requires enabled "fork" function. See below for workaround.

Store closed cases for this # of days Number of days to keep closed cases available on the system (depending upon system load and free diskspace); recommended range: 30 days to 180 days.
Auto-close open cases after this
number of inactive days
Number of days before inactive, but still open, cases are closed automatically by the system; recommended range: 7 to 14 days.
Keep usage statistics this # of days Number of days to keep usage statistics; recommended range: 30 days to 180 days.

Data maintenance with disabled "fork" function:

Schedule the file cron_run.pl (file is located in the software directory of MessageSuite) to be ran regularly by your server (recommended scheduling: each ten minutes). You may use Cron or your server's scheduling tool in order to manage this task.

Technical note: Even when starting data maintenance in this way, ensure to fill in the parameters above.

By the way: If you are new at scheduling server actions, please contact your webhoster for details or refer to available literature. Alternatively you may use the Cron editor we provide (call cron_edt.pl from the command line, e.g. "perl5 cron_edt.pl").
 

Topic categories - overview...

What is a topic category ?

Topic categories divide your message system into different fields of interests. Incoming user messages and inquiries are scanned for matching topic categories and automatically assigned to the correct one by using a complex filtering system.

Each staff member is assigned to specific topic categories (multiple staff members can work for a particular category). In this way, they answer only inquiries of their concerned field.

Some examples of possible topic categories:

Let's say you manage a hardware store providing online customer service: So topic categories like "Do-it-yourself", "Decoration and fabrics" and "wooden floors" would be useful; each one has experts assigned specialized in concerned field.

Your company distributes computer software: For each product range (like "Games", "Business applications" and "Networking products") you may create a topic category maintained by experienced support personnel.

As project manager you use topic categories to handle the daily flood of important (and not so important) messages.

Are topic categories absolutely required ?

As you have noticed, there is one topic category ("default") pre-defined. It is mandatory for the system, because the software must need to know how to handle incoming messages - and since this is set in topic categories, you need at least one of them.

How to create a new topic category ?

Type in the name of the new topic category (keep it short; use alphanumerical chars only) and click on the button "Create new".

How to edit / remove a topic category ?

Select the topic category from the list, click on "Delete" or "Edit" and follow the provided instructions.

How to change the sorting of topic categories ?

Select the one you wish to move around and click on either "Move up" or "Move down" button to change its position (this affects the category's position within the user lounge).
 

Topic categories - available settings...

Topic category identification:
 
MessageSuite asks...
Description...
Topic category internal code Code of the topic category; use only alphanumerical characters and keep it short.
Topic category name Name of the topic category, as it will be displayed at the staff panel and user lounge.
Detailed description Short description, as it will be displayed at the staff panel and user lounge.
For staff usage only Mark this button to make this topic category available for the staff panel only.

Usage note: Suited for internal discussions or as blackboard for staff members.

FAQ / KnowledgeBase search:
 

MessageSuite asks...
Description...
When searching this category,
search also these ones
FAQ/KB searches for this topic category can be also expanded to others. Type in a list of all topic category internal codes (comma separated) to connect with the actual one.

Incoming mail sorting:

Incoming e-mails are filtered and then directed to the matching topic category.
 

MessageSuite asks...
Description...
E-mail filter Specify the filter criteria; for all filtering actions, these keywords are available:
 
Keywords...
Description...
from "Sender" field of incoming e-mail messages.
to "Recipient" field of incoming e-mail messages.
subject "Subject" field of incoming e-mail messages.
body The text body of incoming e-mail messages.

Simple filter syntax (OR):

Format: <Keyword>:<Content>

<Keyword>: One of the keywords above.
<Content>: Matching string to make this filter applying.
 

Sample input...
Filter applies, if...
to:tech1@sunnyscript.com
to:tech2@sunnyscript.com
subject:support
... the recipient is equal to one of these addresses OR the subject contains the string "support".

Advanced filter syntax (expressions):

See chapter "Helpful hints and technical reference", part "Advanced search features, fuzzy logic search" regarding detailed information.
 

Sample input...
Filter applies, if...
to='info@starenterprise.com'
OR (subject~'hosting'
AND subject~'server')
... the recipient is equal to info@starenterprise.com OR the subject contains the string "hosting" AND the string "server".

Technical note: The entire expression must be true to make the filter matching.

Filter syntax Select the used syntax type for this filter.
Priority of this filter Priority points to give this filter compared to other topic categories' filters (build complex relationships between different topic categories and their concerned filters).

Recommended range: 0 (lowest priority) to 100 (highest priority).

Action on matched messages If the filter matches, then this action will be carried out:
 
Possible settings...
Description...
Create own case and remove
from POP3 server
Create a new case assigned to this topic category.
Remove from POP3 server * Suited to build blocking filters, see following note.

* How to add an "anti-advertisement" filter:

Create a topic category (marked for staff usage only) and write a filter which covers all undesired messages' criteria. So such mails are automatically sorted out and removed.

Topic specific incoming mail autoresponder:

For each incoming inquiry, MessageSuite can search the FAQ/KB databases for matching solutions; found results are then automatically mailed to the concerned user - this saves time answering recurring questions.
 

MessageSuite asks...
Description...
Enable topic-specific autoresponder Mark this button to send topic-specific autoresponders.
Max. number of FAQ/KB
search results
Specify the maximum amount of FAQ/KB records shown in the autoresponder mail. Recommended range: 3 to 20 records.
Template of autoresponder mail Select the template file used for this autoresponder (or keep the default one).
 
User groups - overview...

What are user groups ?

User groups gives you the ability to assign different rights to certain users (like "normal" and "preferred" customers).

By default, two user groups are pre-defined:

The group "?" refers to all unregistered users (people sending inquiries or accessing the user lounge without logging in).
The group "*" refers to all registered users (people accessing the user lounge with their username/password pair).

Technical note: Both groups are mandatory for MessageSuite, feel free to configure them according your requirements.

How to create a new user group ?

Type in the name of the new user group (keep it short; use alphanumerical chars only) and click on the button "Create new".

How to edit / remove a user group ?

Select the group from the list, click on "Delete" or "Edit" and follow the provided instructions.

How to change the sorting of user groups ?

Select the one you wish to move around and click on either "Move up" or "Move down" button to change its position (this affects the group's position within the admin and staff panels).
 

User groups - available settings...

User group identification:
 
MessageSuite asks...
Description...
User group internal code Code of the user group; use only alphanumerical characters and keep it short.
User group name Name of the user group, as it will be displayed at the staff panel and user lounge.

User group permissions:
 

MessageSuite asks...
Description...
Maximum priority allowed to select Set the maximum priority level users can choose for their inquiries.
User can select preferred staff
member when posting request
Mark this button to let users select a particular staff member (if different are available).
User can skip FAQ/KB search Mark this button to allow users sending inquiries without the need to search the FAQ and KnowledgeBase databases before.
User can request a chat session Mark this button to allow users opening a chat session.
Show msg. reading status on
user lounge
Mark this button to show detailed case status messages to the concerned user.
Send "message was read"
notification via e-mail
Mark this button to send a "will care soon" status notification to the concerned user.

Click on "edit" in order to modify the default message (a new browser window opens; after you have altered the template, close it to come back to this screen again).

Send "satisfaction survey" via e-mail Mark this button to send a message to the concerned user after closing the case. It may contain some kind of satisfaction survey, a "thank you" note or a "contact us again in case of further inquiries" message.

Click on "edit" in order to modify the default message (a new browser window opens; after you have altered the template, close it to come back to this screen again).

Permission to view assigned member profile
Provide access to personal details of the assigned staff member; select multiple entries by holding CTRL key (or appropriate).
Permission to view member profiles before posting inquiry
Provide access to personal details of available staff members before sending an inquiry (needs "User can select preferred staff member ..." enabled); select multiple entries by holding the CTRL key (or appropriate).

Profile lifetime limitation:
 

MessageSuite asks...
Description...
Limit on profile lifetime, days Lifetime of user profiles in days; when expiration date is reached, the concerned profile becomes removed from the system. Keep the field empty to disable this feature.

Usage note: Suited for limited-time-support, e.g. "30 days after purchase".

Send profile expiration message Mark this checkbox to send a "profile expired" notification to the user.
Message on profile expiration Select the mail template used for sending profile expiration messages.
 
POP3 gateway accounts - overview...

What are gateway accounts ?

MessageSuite is able to import messages from e-mail accounts compatible to the post office protocol (POP3). Such e-mail accounts are named "gateway accounts" in this manual.

Each time executing the data maintenance routines, MessageSuite downloads all mails from the gateway accounts, analyzes their content according your preferences and either creates new cases or assigns messages to existing ones.

Important note: Gateway accounts needs to be exclusively managed by MessageSuite; shared usage may lead to data loss.

How to create a new gateway account ?

Type in the name of the gateway account (keep it short; use alphanumerical chars only) and click on the button "Create new".

How to edit / remove a gateway account ?

Select the account from the list, click on "Delete" or "Edit" and follow the provided instructions.
 

POP3 gateway accounts - available settings...

POP3 account identification:
 
MessageSuite asks...
Description...
POP3 account code Code of the gateway account; use only alphanumerical characters and keep it short.

Account settings:
 

MessageSuite asks...
Description...
POP3 host Host address of the POP3 mail account, e.g. "pop.sunnyscript.com".
POP3 account user name The user name to access the mail account, e.g. "myaccount".
POP3 account password The password to access the mail account, e.g. "donttell".

Usage note: The mail account details are available from your ISP (Internet Service Provider) or webhosting provider.
 


 
Case management and advanced features
Communication streams...

Online communication stream:

E-mail gateways:

MessageSuite manages incoming messages from gateway accounts to handle mail communication efficiently. Customers and prospective clients can reach you simply by using their familiar mail clients.

Web-based services:

Via the built-in user lounge, people can access your support and communication areas instantly from everywhere. An online live chat (MessageSuite plus only) provides a convenient solution for pre-sale inquiries and fast support services.

Offline communication stream:

This refers to all kinds of communication not requiring a personal computer or access to the Internet: Starting from telephone and fax, over written correspondence and ending in smoke signals (last way is not directly supported by MessageSuite ;-)

All kinds of offline communication can be recorded by MessageSuite for later reference.
 

Staff panel...

The staff panel is used by the staff members to process inquiries and work on open cases as well as searching the FAQ and KnowledgeBase databases (e.g. when doing phone or fax support).

Open the staff panel:
 

Action to perform...
URL to call (location varies on your system, of course)...
Access staff panel http://www.sunnyscript.com/cgi-bin/msuite/login.cgi

Use your staff login and password pair to get access. Depending upon the permissions assigned to your profile, some of the features described in the following may not be available.

Overview:

On the main staff panel screen, the following selections are available on the top menu line:
 

MessageSuite asks...
Description...
Cases / New case Manage existing cases or create a new one (offline communication channels).
Profile Modify your staff member profile.
Open chat Open the chat listener; if enabled, you will be marked being available for chat sessions.
Search FAQ/KB Search the FAQ and KnowledgeBase databases.
FAQ Access the FAQ database (view, search, add, update or delete records).
KnowledgeBase Access the KnowledgeBase database (view, search, add, update or delete records).
Users Go to the users database (view, search, add, update or delete records).
Staff Go to the staff database (view, search, add, update or delete records).
Statistics View the system statistics.
Logout Logout as staff member.

Depending upon the screen currently shown, more top menu entries may be available. Since we have spent much time to make the staff panel self-explaining, you'll find it very easy to use.

Main staff panel screen:

The main staff panel screen shows all open cases assigned to your profile. Click on the linked subject or the case number in order to view the cases and all messages more detailed.

Use "Staff cases" to work on assigned cases and "Database tools" to search for specific records (cases, messages).

Case details screen:

Shows all case details as well as the messages connected to it. Starting from this screen, you can manage further actions, like replying to the user's inquiry or viewing more details about the concerned user who initialized the case.

Provided that the concerned staff member has sufficient permissions, more complex tasks are available on this screen, like merging or deleting cases and updating FAQ / KnowledgeBase instantly.

Replying to a user message within a case:

Click on "reply" near the user message you wish to reply. The following screen will appear:
 

MessageSuite asks...
Description...
Message content
Specify the reply text message (user message is quoted also). You can add up to four attachments to your reply.
Message parameters
Type Select the way this message will become submitted to the user (normally "E-mail").
Direction Select "Outgoing" (e.g. type "E-mail") or "Bi-directional" (e.g. type "Phone call").
Message handling options
Forward this reply to user's e-mail Mark this button (done by default) to send your message to the user via e-mail.

Important note 1: It is absolutely necessary to enable this for online communication streams (e.g. e-mail or web form). Otherwise the user may never receive your message !

Important note 2: When doing offline communication, it is within your responsibility to ensure that the user will receive your message.

Forward ... alternative e-mail Mark this button to send your message to user's alternative e-mail address (e.g. taken from the "reply-to" field of original e-mail message).

Usage note: If there is no alternative address available, this parameter is hidden.

Show FAQ / KB maintenance form Mark this button in order to go to the FAQ / KB maintenance form and add messages from this case to the FAQ or KnowledgeBase databases.

Create a new case:

Click on "New case" in the upper right corner of the screen. For more details, please take a look at the part "Manage system tables - overview and applications", "Table of cases".

Usage note: As soon as the user inquiry is answered, ensure to close the case (set its status to "closed").

Handling offline communication streams:

As a staff member, you may also do telephone support, answering faxes or written correspondence. For each new user inquiry you receive, please create a new case within MessageSuite to keep the case database up to date.

Select the appropriate "Type" (e.g. "Phone call" or "Fax message") and the correct "Direction" (e.g. "Incoming"). In this way, other staff members have all necessary information also about cases managed offline.

While working on a case, you may add new messages (e.g. repeated faxes or phone calls) to the case and set its flag to the appropriate status (e.g. "Replied, awaiting user response").

Printing messages or entire cases:

Click on "print" near a particular message or case to see it in a printer-friendly layout or click on "FAXable" to see an outgoing message ready formatted for being sent via telefax (including a customizable fax header).

In both cases, a new browser window opens to show the content - in order to go back to the original screen, simply close this window again. You can modify the default templates by using the "Templates editor".

By the way: All graphical attachments (e.g. screenshots) are shown for being printed or faxed directly (requires support of the concerned file formats by your web browsing software).

Usage note: This feature is suited well for handling offline communication streams efficiently or creating paper-based archives.
 

Online chat ability (MessageSuite plus only)...

Chat directly with customers and prospective clients - right away from your website. So the chat is perfectly suited for providing live technical support, processing pre-sale inquiries or guide people personally through your website (e.g. while shopping).

Chat sessions - overview:

Topic specific chat sessions:

When people sending an inquiry via the user lounge, they have the ability to open a chat session with a staff member of their choice (if more than one suited staff member is available and selection allowed by the admin).

In this way, MessageSuite looks for the most experienced chat partner. Before starting the chat session, the selected staff member will see all inquiry details.

Direct chat sessions:

You can also add a link to your website providing chat sessions, suited for pre-sale inquiries or questions concerning your website (e.g. provide personal advice while people go shopping online).

An auto-adjusting "availability banner" can be placed on your website indicating whether staff members are available for chat or asking the visitor to leave a message via the user lounge.

Pre-requisites for chat sessions:

In order to allow chat sessions, one or more staff members must be logged in and having the chat listener active (click on "Open chat" when you are on the staff panel (the pop-up window must be kept open, but can be minimized).

For enabling direct chat sessions, ensure that the "Direct chat" parameters on screen "Edit MessageSuite parameters" are set correctly. Please refer to the chapter "System implementation" for more details.

In some cases, you may need to modify the "System parameters" screen, part "Platform specific settings":
 
Name of parameter to set...
Description...
Max. life of chat process (seconds)
Example: 60
If the chat session is interrupted, then decrease the value carefully until it is kept stable (should not go below 10 seconds to avoid an unnecessary high server load).
Webserver buffer size (bytes)
Example: 16
If the data transmission is too slow during chat sessions, increase the buffer size until the performance is suited (however a delay of up to five seconds is okay).

Technical note: Should your server support unbuffered content delivery, then set this value to "0" to achieve best results (ask your system administrator before).

Important note: When closing a chat session, please click on the appropriate link appearing in the chat window (do NOT simply close the window, this causes an activity timeout error and leaves the chat session incomplete).

How to start a topic specific chat session:

The entire procedure is handled by the staff panel / user lounge automatically. Please refer to the chapter "User lounge and template management" for more details.

Chat sessions - technical and usage notes:

If user requests a chat, the FAQ search results are shown in any case (even if "Skip FAQ" checkbox is enabled).

At a beginning chat session, the referring URL is shown allowing to determine the user's location on your website (intended to answer product specific questions with reference to the current open webpage).

Chat sessions can be printed and even sent by e-mail; this is useful when needing to clarify open issues by a third person.

If staff member sends an e-mail address or Internet location (e.g. website URL) during the chat, it will be automatically send with embedded HTML to make it clickable by the user (content opens in a new browser window to keep running chat session).

How staff members are chosen by the software:

MessageSuite looks for the "best-suited" staff member for a topic specific chat (depending upon members' priority settings).

In order to achieve a balanced workload, staff members already involved in chat sessions will be ignored unless no other staff member is available for concerned topic. Then one already chatting member will receive also the new chat session.

In the case that there are two or more staff members available with same priority on the concerned topic, MessageSuite randomly selects the chat partner.

Direct chat session - availability banner & implementation of chat link:

The "availability banner" is suited to notify people visiting your website about staff members available for chat (should nobody be able to talk to them right away, then people can leave a message via the user lounge).

You need to create two graphics of equal size and upload them to the location of your website: The first image should say "Talk with us personally now !" and the second one "Leave a message !".

Now implement the "availability banner" (isonline.cgi) to your website according this scheme:
 
<a href = "<URL>/user.cgi?action=direct_chat&topic=<Topic>">
<img src = "<URL>/isonline.cgi?topic=<topic>&yes_url=<YesURL>&no_url=<NoURL>">
</a>
 

Argument values...
Description...
<URL> URL to the location of MessageSuite on your system.
<topic> Internal code of topic ID (leave empty for checking any topic) to check for available chat partners.

Create an own topic for "direct chat" and assign special operators answering only such inquiries to relief the professional support staff.

<YesURL> URL to the "Talk with us personally now !" banner; called to indicate an available chat partner and invite the user to start a chat session.
<NoURL> URL to the "Leave a message !" banner; called to ask leaving a message.

A filled-in sample may look like this (please ignore any line breaks):
 
<a href = "http://www.sunnyscript.com/cgi-bin/msuite/user.cgi?action=direct_chat&
topic=*"><img src = "http://www.sunnyscript.com/cgi-bin/msuite/isonline.cgi?topic=
*&yes_url=http://www.sunnyscript.com/chatnow.gif&no_url=
http://www.sunnyscript.com/leavemsg.gif"></a>

Usage note: Use additional HTML tags to achieve a custom layout (e.g. banner dimensions, borders, ...).

Expert note: It is possible to display the chat link and "availability banner" separately from each other by using the concerned URL from the above scheme.
 

FAQ and KnowledgeBase databases...

General overview:

FAQ and KnowledgeBase are accessible at the main menu of admin / staff panel as well as through the user lounge (depending upon the permissions of the staff member profile you are logged in with).

More information about system tables is available at "Manage system tables - ..." parts below.

Important note: Since MessageSuite uses special fuzzy logic algorithm for search operations, it is essential to understand the difference between FAQ and KnowledgeBase to achieve best-matching results.

Frequently asked questions (FAQ):

This table contains all frequently asked questions (FAQ) entered via the admin panel or staff panel.

Guidelines for adding FAQ entries:

A FAQ entry should answer often asked questions (e.g. "How to turn power on ?") in a short and precise way (e.g. "Push the red button."). It is not the place for specific in-depth questions (see KnowledgeBase instead of).

New entries should be written in a short language using many technical terms related to the specific theme by experienced staff members having sufficient knowledge.

Original sentence: "You should try to measure the temperature: If it goes over 50°, this is okay. But should it ever exceed 75°, then turn the blue device off immediately and control the pressure shown on the yellow liquid crystal display."

Shortened FAQ sentence: "If temperature goes over 75°, turn off the blue device and control pressure on the yellow LCD."

Usage note: The more time you spend on the FAQ, the more you are able to reduce incoming "dummy" questions.

KnowledgeBase:

This table contains all KnowledgeBase ("knowledge database") articles entered via the admin panel or staff panel.

Guidelines for adding KnowledgeBase articles:

While FAQs are short text parts answering most important questions, KnowledgeBase articles are normally longer and more comprehensive. It is suited for detailed step-by-step instructions, background details and special experts-only information.

Usage note: The more time you spend on the KnowledgeBase, the more you are able to reduce complex inquiries.
 

System statistics...

MessageSuite offers a large scale of statistical information suited to track the efficiency and monitor the workload of your staff members. In order to access the statistics form, click on "Statistics" available in the upper right corner of the screen.

Here you can select the desired time period (date range, months or years) as well as the following report types:
 

Report types...
Description...
Overall software usage Get a report of the software load and general system statistics.
Workload statistics for staff Get a report of the staff's workload and amount of cases/messages handled.
Performance analysis of staff Get a report of the staff's performance.

Technical note: Depending upon your system settings, the available time period of statistics may be limited.

The system statistics is an essential tool to track your staff members' activities and to prevent particular staff members getting overtaxed by workload while others have free capacities (in such a case, change staff members' topic priorities).
 

Send out mailings..

In order to create a mailing, select the desired table and choose "Send out mailings" from admin panel. Alternatively you can click on "Mailings" in the upper right corner of the screen.

You can send out mailings either to all record owners of a selected table (recipients filter set to "Send to all") or just mail such people who have allowed you to do so (recipients filter set to "Send to subscribed users only").

Mark "Do not send duplicate e-mails" in order to send only one single mail, even a particular address is found multiple times.

Custom recipients filter:

You can specify a search query that filters only recipients matching particular criteria. It is possible to use any field available in the table this mailing is intended for. Click on "view filter results" to get a listing of all selected records.

For example: income>=3000 AND education="high"
Only recipients will receive this mailing which have an income of more than 3000 currency units and a "high" education level.

Usage note: For more details about how to perform search operations, please refer to "Searching of databases (tables)" below.

Personalized mailings:

Personalized mailings contain an individual "To:" field for each recipient. In addition, you can include fields from the concerned table  (format: <!--$FIELDNAME-->) which are replaced by appropriate content.
 

MessageSuite asks.
Description...
Sender's name and e-mail Type in the name and e-mail address used in the header of outgoing mails.
Message subject Type in the subject line used in the header of outgoing mails.
Message format Select message format, "Plain text" or "HTML" (applicable to recipients' mail clients).
Message body Type in the content of your mailing here.

Sample personalized mailing:
 
  Dear <!--$first_name--> <!--$last_name-->,

you recently added your website <!--$URL--> to our database.

If you would like to increase the popularity of your <!--$BUSINESSTYPE--> company, you should take a closer look at our valuable offers !

With kind regards,
John Smith (my sample company).

Technical note: If "Do not send duplicate e-mails" is marked, a recipient with multiple records receives mail for the first found record only (and so will just see content of table fields for this specific record).

Quick mailings:

Quick mailings are used to send identical messages to all recipients (faster processing). However the usage of personalized elements is not possible (included table tags are removed automatically).
 

MessageSuite asks...
Description...
Mailing method Mark "Quick" to send out messages by using blind carbon copies.
 
MessageSuite asks...
Description...
"To:" field Specify one visible "To:" address for the mailing (user addresses are hidden).
Max. number of BCC recipients
per message
Max. number of recipients allowed per message; recommended value: 99.
 

Intelligent mail content delivery:

The most powerful feature is the delivery of intelligent message parts based on a record's content and "if/then/else" conditions. So a mailing can be written absolutely targeted, which leads to higher response rates and increased user convenience.

Important note: This works only with "Personalized" mailing method. "Quick" mailings will ignore intelligent message parts.

Each "intelligent message part" has the following structure:
 
  <!--if <expression>-->
Message delivered when <expression> is true.
<!--else-->
Message delivered when <expression> is false.
<!--endif-->

Usage notes: "if" and "endif" tags are required, while the "else" part is optional. Recurrent tags may also be used.

<expression> can contain these operators:
 

Type...
Allowed operator...
Possible applications...
Mathematical operators +, -, /, *, == Any kind of calculations with numerical field content, e.g. indices, formulae.
String comparison operators eq (equal)
le (less than or equal)
ge (greater than or equal)
lt (less than)
gt (greater than)
ne (not equal)
Comparison of string based field content, e.g. names and selected options.
Numerical comparison operators =, <=, =>, >, <, <> Comparison of numerical values, e.g. age, size.
Logical operators AND, OR, NOT Relationships between fields, calculation and comparison results.

Format of field values: $fieldname (field names are handled case-sensitive).

Sample applications (non-recurrent tags):
 
  <!--if $gender eq "m"-->
Ties for 5 Euro only.
Just a limited time, buy now !
<!--else-->
Parfums starting at 10 Euro.
<!--endif-->

<!--if $income < 20000 AND $intelligence_quotient <= 30-->
Hi <$name>,
participate in our "get rich fast" special offers !
This is your chance to live like the <rich & beautiful>.
<b><i>So start acting now - start today.</b></i>
<!--endif-->

<!--if $index * 10 / $basetax + 0.03 == 2 AND $taxstatus eq "high"-->
Save taxes by ordering our book "1001 (il)legal tax tricks".
<!--else-->
Increase your income by ordering our book "1001 ways to get wealthy".
<!--endif-->

Usage notes: Second sample does not have an "else" tag, which means that a false result will lead into not displaying anything. Should a field value be unavailable (spelling error, non-existing field), then the argument is considered as being empty.

Technical note: It is also possible to use HTML and client-sided scripts (like JavaScript) within intelligent message parts.

Sample application (recurrent tags):
 
  <!--if $gender eq "m"-->
Special offer for <b>men</b> from our drug store:
<!--if $age > 50-->
Gray hair remover for just 9,99 Euro.
<!--else-->
Shaving foam - just 3,99 Euro.
<!--endif-->
<!--else-->
Special offer for <b>women</b> from our drug store:
<!--if $age > 50-->
Wrinkle remover for just 9,99 Euro.
<!--else-->
Lavender bath salt - just 3,99 Euro.
<!--endif-->
<!--endif-->

Usage notes: Parts in green text belonging together. Do not forget to close all "if" tags avoiding malfunctions.

How to perform a test of personalized and intelligent mailings:

In order to let the system process a sample message, click on the button "Send test message to admin". The system then generates a mailing, which is sent to the administrator under real life conditions.

And these default values are used: Numerical = 0; date/time related fields = actual date/time; URLs = http://test.<fieldname>/; e-mail addresses = test@<fieldname>.test; fields in general = test-<fieldname>.

Smart tip: Have a look at MailingStar (plus) - professional mailing list management and e-mail marketing software.
 

Manage system tables - overview and applications...

Overview:

The system tables contain system related data, like registered user and staff profiles, FAQ and KnowledgeBase articles as well as case databases. All system tables can be searched and modified according their specific applications.

You can access the system tables from the main admin menu. For each table, different selections are available.

Usage note: All modifications made to these tables takes immediately effect to the user lounge. Since most of these actions cannot be recovered, please be careful when altering data.

Restructure system tables, table parameters and layout:

Please refer to the next part of this chapter for general information about modifying table parameters or read below to find table specific information (e.g. managing records, permission handling).

Table of registered users:

This table holds all information about registered users. You can add users through the admin / staff panel and people can also subscribe via the user lounge:

When browsing this table, click on "Add" in the upper right corner of the screen to create a new user profile or select the desired profile to edit or delete and then click on the appropriate link (also available in the upper right corner).
 

MessageSuite asks...
Description...
E-mail address User's e-mail address. MessageSuite will send mails to this address.
Password Password of the user to access the user lounge, handled case sensitive.
"First name", "Last name",
"Company", "Country",
"Telephone number", "Fax number"
Address details of the concerned user.
Subscribe on mailing list Check this button in order to subscribe the user to the mailing list.
User group Select the user group, this user belongs to. According the selected group, the user has specific rights (e.g. can determine desired staff member for inquiries).

Default entry: "Registered users".

Usage note: This parameter is not available for subscriptions via the user lounge.

Set table permissions / Moderation:

You can make this table moderated (MessageSuite asks for acknowledgement before adding new profiles or modifying existing ones) as well as set special permissions. In order to do so, go to the screen "Table parameters & layout", part "Permissions":
 

MessageSuite asks...
Description...
Anonymous user permissions
Set the permissions for people currently not having a user profile.
Add Allow people to subscribe online through the user lounge. This should be activated unless you have a closed system (e.g. profile creation through the admin only).
Moderate additions New profile creation will be put in moderation queue first (see main admin menu "Moderate user actions" of registered users' table).
Logged in users
Set the permissions for people having a user profile.
Update own, Delete own Allow logged in people to change their personal profile through the user lounge.
Moderate own updates,
Moderate own deletions
User actions will be placed in moderation queue first to allow verification by admin.

In addition, MessageSuite can send an e-mail notification as soon as there are records in moderation queue. This is done also on the screen "Table parameters and layout", part "Behavior" (refer to the next part of this chapter for details).

In order to moderate actions, click on "Moderate users actions" available on main admin menu.

Technical note: If you wish to modify records that are currently in moderation queue, mark the button "Remind to update" when approving these records. On the moderation result screen, you can edit them right away (new browser window opens).

Table of staff members:

This table contains all registered staff members allowed to access the staff panel (special kind of admin panel) working on cases, doing chat sessions and other tasks.

Staff member profiles are allowed to be created by the admin only (via admin panel).

Add / Update / Delete profiles:

When browsing this table, click on "Add" in the upper right corner of the screen to create a new staff profile or select the desired profile to edit or delete and then click on the appropriate link (also available in the upper right corner).
 

MessageSuite asks...
Description...
Login Login of the staff member; must be unique for each profile. It is recommended to use alphanumerical characters only (A-Z, a-z, 0-9).
Password Password of the staff member, handled case sensitive.
"First name", "Last name" * First and last name of the staff member.
Active Uncheck this button to temporarily disable this profile (e.g. during holiday).
E-mail address E-mail address of the staff member. Used for communication between MessageSuite and the concerned staff member.
"Telephone number", "Fax number",
"Pager", "Cellular phone" *
Contact details of the staff member.
Emergency e-mail address Inquiries arriving with "Highest" priority to this staff member will lead to send notifications to these specified e-mail address(es); comma separate multiple entries.

Helpful hint: Also suited for e-mail addresses connected with pagers or mobile phones.

ICQ UIN * UIN of staff member's ICQ account (optional).
Other messenger(s) ID * Other messenger account IDs or special contact information (optional).
Photo * Staff member's photo (optional). Allowed formats: GIF, JPG, PNG and BMP.

Helpful hint: Use photos of same dimensions (e.g. 50*50 pixels) for all profiles.

Topics priority Set staff member's level of experience for each created topic category.
 
Available selections...
Description...
Can't read Profile is disabled for the concerned topic.
Can read only Read access only.
Can respond, priority ... Full access, ability to accept chat sessions and respond to inquiries.
Must respond, priority 10 (highest) Full access, highest priority (should be selected only for the supervisor of concerned topic).

The priority setting takes influence to the assignment of this staff member to new cases or requested chat sessions.

Technical note: If more staff members with same knowledge are available for a given case, MessageSuite chooses the one receiving it randomly for balanced workload.

Important note: For each topic category, at least one staff member needs full access; otherwise inquiries belonging to the concerned topic cannot be answered.

Subordinate logins Select desired logins, the current staff member can re-assign cases to (the target staff member will get notified when receiving a case).

Sample application: The supervisor may need the ability to re-assign cases to other staff members (e.g. some are too busy, got ill or are not experienced enough).

Forward incoming messages Choose "Yes" in order to send a copy of all incoming messages to the staff member's e-mail address. Choose "No" to disable this feature.

Usage note: When enabled, the staff member can use its own e-mail client to manage cases (suited to work from home or while on travel not using the staff panel).

Please refer to the chapter "Helpful hints and technical reference" for more details.

Permissions Decide about the granted permission for this profile. Depending upon these settings, the staff panel will show different functionality.
 
Available selections...
Description...
Cases (view, create, modify, merge, delete**) Case handling permissions.
Recommended*: "view", "create" and "modify".
Messages (view, add to owned cases, update, delete**) Message handling permissions.
Recommended*: "view", "add", "update".
KnowledgeBase (add**, edit**, delete**) KnowledgeBase management permissions.
Recommended*: Nothing selected.
FAQ (add**, edit**, delete**) FAQ management permissions.
Recommended*: Nothing selected.
User profiles (create, update, delete**) User profile handling permissions.
Recommended*: "create" and "update".
Staff profiles (create**, browse, view, update**, delete**) Staff profile handling permissions.
Recommended*: "browse" and "view".
View statistics** Grant access to software statistics.
Recommended*: Not selected.
* Recommended values for the average staff member necessary to work efficiently.
** Permissions should be reserved for supervisors or experienced staff members.

Important note: Be very careful granting permissions to staff members you are not sure about. Some permissions (marked with **) allow people to overwrite data.

Technical note: Even allowing staff members modifying their profiles, these permissions can be changed only by the administrator using the admin panel.

Signature Staff member's signature added to each message automatically.
Gateway e-mail E-mail address of a preferred gateway mail account (any communication between the staff member and the system is handled via this one).

Please refer to the previous chapter and "Helpful hints and technical reference" for more details about gateway e-mail addresses and how they work.

Important note: Ensure that the used e-mail address belongs to an account controlled by MessageSuite (see "MessageSuite parameters", part "POP3 gateway accounts").

* These details may be visible on the user lounge.

Set table permissions / Moderation:

You can make this table moderated as well as set special permissions. In order to do so, go to the screen "Table parameters and layout", part "Permissions of logged in members":
 

MessageSuite asks...
Description...
Update own profiles Allow staff members to change their personal profile through the staff panel.
Moderate profile updates Updates will be placed in moderation queue first to allow verification by admin.

In addition, MessageSuite can send an e-mail notification as soon as there are records in moderation queue. This is done also on the screen "Table parameters and layout", part "Behavior" (refer to the next part of this chapter for details).

In order to moderate actions, click on "Moderate member updates" available on main admin menu.

Table of cases:

This table contains all existing cases on the system. Messages belonging to a case are stored in a separate database.

Technical note: Although possible, the admin panel is not suited to work on cases; please use the staff panel instead of.

Add / Update / Delete cases:

Normally this table is managed by the software (new cases created when importing e-mails or web form submissions), but if you do also offline communication (e.g. via phone and fax), you can create a case also via the admin / staff panel.

When browsing this table, click on "Add" in the upper right corner of the screen to create a new message or select the desired message to edit or delete and then click on the appropriate link (also available in the upper right corner).
 

MessageSuite asks...
Description...
Case details
Topic category Select the category this case belongs to.
Subject Type in a subject for this case.
Relevant URL Specify an URL showing more information (optional, see "MessageSuite parameters").
Assigned to Select your login ID or the concerned login ID of the staff member you wish to assign this case to (may be limited depending upon your profile permissions).

If a login ID is selected, the field "Status" changes automatically from "Not assigned" to "Assigned, but not replied yet". Check the correct status' value.

Status
 
Available selections...
Description...
Not assigned The case is not assigned to any staff member.
Assigned, but not replied yet The case is assigned to a staff member, but the staff member has not replied until yet.
Replied, awaiting user response Staff member answered case, but no user reply was done until yet (last msg. originated from staff).
User response arrived User has replied to the case.
Closed * The case has been marked as closed.

* Usage note: Outgoing messages to an already closed case are still added to that case. Incoming messages however will lead into opening a new case.

Staff comments Anything you type in there is visible for the staff and admin only.
Priority Select the priority of this case, ranging from "Lowest" to "Highest".
User details
User ID Type in the user ID, this case belongs to (if the user is registered).

Usage note: When filled, personal details are automatically taken over (staff panel only).

"First name", "Last name",
"Company", "Country", "E-mail",
"Phone", "Fax"
Various personal details of the user.
First user message
Content First user message's text body.
Attachments Any attachments to this message.
Type Origin of the user's first message.
 
Available selections...
Description...
"Phone call", "Fax message", "Post" Offline communication streams.
"E-mail", "Web form", "Chat session" Online communication streams.
 
Direction Direction of this message.
 
Available selections...
Description...
Incoming Arriving message (e.g. customer sends a fax).
Outgoing Leaving message (e.g. you send fax to customer).
Bidirectional Bidirectional communication (e.g. phone call).

Technical note: Logically, first user message should be always "Incoming".

Table of messages:

This table contains all messages (e-mail, user lounge, chat and offline) connected to cases available on the system.

Technical note: Although possible, the admin panel is not suited to work on messages; please use the staff panel instead of.

Add / Update / Delete messages:

Normally this table is managed by the software, but if you do also offline communication (e.g. via phone and fax), you can create messages also by using the admin / staff panel.

When browsing this table, click on "Add" in the upper right corner of the screen to create a new message or select the desired message to edit or delete and then click on the appropriate link (also available in the upper right corner).

Technical note: Each message has to belong to an already created case.
 

MessageSuite asks...
Description...
Case ID Type in the case ID this message belongs to.
Content This text box will hold the content of the message. It is also suited to type in a phone call protocol or the summarization of a faxed message.
Type Select the origin of the message here.
 
Available selections...
Description...
"Phone call", "Fax message", "Post" Offline communication streams.
"E-mail", "Web form", "Chat session" Online communication streams.

Usage note: For adding messages, only offline communication streams are of interest to be selected (since others are recorded automatically).

Direction Select the type of direction here.
 
Available selections...
Description...
Incoming Arriving message (e.g. customer sends a fax).
Outgoing Leaving message (e.g. you send fax to customer).
Bidirectional Bidirectional communication (e.g. phone call).

Technical note: The field "Direction" is important for setting the correct case status.

Author staff member login Type in your login ID or the login ID of staff member this case and message belongs to.

FAQ and KnowledgeBase tables:

Please refer above within this chapter for information about these tables.
 

Manage system tables - restructure table, table parameters and layout...

Before you proceed:

The following information contains details about how to modify the system tables. As an experienced user, you can modify MessageSuite's system behavior according your wishes.

However please note that once modifications were made, they cannot be recovered. In worst case, you have to re-install the software with the risk of losing existing user and staff member profiles as well as other data.

Important note: Before you touch the system tables, ensure that you are familiar with MessageSuite.

Restructure system table:

Click on "Restructure" of the desired system table. Alternatively you can use the "Restructure" link in the upper right corner of the screen appearing when you are inside of a system table (browse its content).

How to add a new or edit an existing field:

Go to "New field name", type in the desired name, select the data type and click on "Create new field". Otherwise look for the field you wish to modify and click either on "Edit" or the field name. Now the screen "Field properties" appears:
 

MessageSuite asks...
Description...
Field name Contains the name of the table field; you can change it at any time (table parameters are automatically updated with new field name).
Data type Select the type of content being stored in this field:
 
Type...
Description...
text Any content with unlimited size (default).
int Positive and negative integers.
float Real numbers.
date Date in format YYYY-MM-DD.
time Time in format HH:MM:SS.
datetime Date and time in format YYYY-MM-DD HH:MM:SS.
boolean Empty value = false; any other value = true.
image GIF, JPG, PNG & BMP pictures (stored in "binary" directory).
binary Binary content (stored in "binary" directory).
memo Textual content (stored in "binary" directory).
htmlmemo HTML-formatted content (stored in "binary" directory).
uploadmemo See "memo", but use with "upload (other files)" edit control only.
autoinc Autoincrement integer field.
URL Same as text, but URL validation and embedded HTML.
email Same as text, but e-mail validation and embedded HTML.
 
Display label Field label appearing instead of field name set above.
Display comment Comments which appear when adding or updating records, giving some hints to users.
Display mask Advanced users only: Active template for Perl scripts used to format concerned field value in HTML code or to make manipulations with value before output.

Available system variables are $id (contains record ID), $fields{FIELDNAME} and $value (contains the current field's value).

Sample application for display mask:
 

Description...
How to realize...
Field value in bold characters Type in: &"<b>$value</b>"
 
Default value Type in a default value you wish to use for this field, if it is kept unfilled by the user; can be also a Perl script.

Sample applications for default value:
 

Description...
How to realize...
Text based (no Perl scripting) Just type in the desired default value.
Current date & time Type in: &datetime2str(time)
 
Required Click here to mark this field as required.
Unique Click here to mark that this field's content has to be unique in the entire table.
Verification rules Type in rules to verify field's content (multiple rules separated by semicolon); if this is left empty, verification is done based upon used field type.
 
Rule...
Description...
int Positive and negative integers.
float All numbers ("+", "-", "." and digits).
alpha Characters only (A-Z, a-z).
alphanum Characters and digits only (A-Z, a-z, 0-9).
positive Positive numbers only.
negative Negative numbers only.
range:x,y All numbers from x to y.
values:val1,val2, ... Only given values are allowed.
min_size:x Minimum length of required input.
max_size:x Maximum length of allowed input.
valid_email E-mail address checking for correct format.
valid_URL URL checking for correct format.
accepted Required field (same as "required" in field types); e.g. used for checkboxes.
format:<x>::<error> <x> must match a Perl regular expression.
<error> may contain a customized error message, shown instead of the default one when verification failed.

Samples for field verification:
 

Rule...
Allowed content...
range:1,10 All positive numbers from 1 to 10 (e.g. 2, 9.35, ...).
values:yes,no Allowed input "yes" or "no" only.
min_size:5 At least 5 chars required, e.g. postal code check.
format:^\d+\.\d\d$ One or more digits followed by point and two digits, for example: 123.78 (Perl expressions).
 
Edit control Choose the intended edit control type:
 
Edit control type...
Description...
Automatic selection Let MessageSuite automatically select the matching edit control type based upon field type.
Text input control Standard text input field.
Text input with dropdown list * Combined text input and dropdown list control (requires JavaScript enabled).
Password input control Password text input field.
Checkbox Checkbox (value = 1 when enabled).
Checkbox list * List of multiple checkboxes.
Upload (image) "Upload file" field for images (uploaded content will be stored in "binary" directory).
Upload (other files) "Upload file" field for binaries and memos (uploaded content will be stored in "binary" directory).
Text area Multi-line textbox (applicable for data types "text", "memo" and "htmlmemo").
Radio buttons * Radio buttons.
Combobox (Dropd. list) * Dropdown list.
List * Same as combobox, but items appears as listing.
Multiselectable list * Same as list, but allows to choose multiple items.
Hidden Hidden from users, but may have a value (as it is specified in "Default value")
* Values must be specified in field "Edit control data" below.
 
Edit control data Applicable for radio buttons, comboboxes, lists and multiselectable lists to determine the field content. Format: <Internal used value>|<Displayed value>

For example:
 
  01|Get YourAffiliates now
02|Get EasyData now
03|Get AccessGuardian now
...
 

Edit control width Applicable for text and password input fields as well as text areas. Type in the width of concerned field in characters (this does not set maximum length of field input).
Edit control height Applicable for text areas, lists and multiselectable lists. Type in the height of concerned field in lines (field content can contain more or fewer lines than set here).
Edit control template Advanced users only: Active template for executing Perl scripts.
Column width Type in the width of the table column concerned field appears in. Use either percentage value or pixels; leave empty for standard setting.
Column alignment Select alignment of the table column concerned field appears in.
Cell vertical alignment Select alignment of the table cell concerned field appears in.
Max. size Type in max. number of characters allowed for input.
Images, binary & memo fields: Type in max. file size (bytes) allowed being uploaded.

Important notes: If you edit a system field (all system fields starts with an underline character), some of the settings above may be not available for selection. Don't touch pre-filled settings for system fields; you may negatively affect their behavior.

How to change sorting of fields:

Look for the field you wish to move around and click on either "move up" or "move down" to change the its position. This action takes effect to the admin panel and to the dynamically generated user lounge templates (except mail templates).

How to delete a field (use with care only):

Look for the field you wish to remove from the table and click on "Delete". However, please note that once a field is removed, all related content will get lost and cannot be recovered.

By the way: All table parameters are automatically updated and the concerned field becomes removed from these settings.

Empty table:

Just select the desired options and click on the "Clear data" button in order to clear the concerned table. Please note that once a table (or part of it) is cleared, all related content will get lost and cannot be recovered.

Important note: Since all entries of concerned table may get lost, this option should be used with care (e.g. clearing table from test entries before starting to run the system officially).

Table layout parameters:

On the "Restructure" screen of concerned system table, there is a button named with "Edit table parameters" which leads you to the table layout parameters screen.

Usage note: The shown table parameters may not be available for all system tables.
 

MessageSuite asks...
Description...
Table display label Used for admin's convenience only. This parameter can be ignored normally.
Table browsing mode
Sort records by (when browsing) Right box (available selections): Choose field and click on "Add" to select it.

Left box (current selections): Click on "Delete" to remove a field or "Up" and "Down" to change field order. You may also decide for descending or ascending sorting (standard).

Alternatively you can type in a comma delimited list of fields manually. Add "-" before a fieldname to sort in descending order (ascending sorting done by standard).

View records per page Number of records displayed per page.
Visible fields * Right box (available selections): Choose field and click on "Add" to select it.

Left box (current selections): Click on "Delete" to remove a field or use "Up" and "Down" buttons to change field order.

Alternatively you can type in a comma delimited list of fields manually.

Linked columns Field content is linked and if clicked on, concerned record will be displayed in detailed entry view mode.

Right box (available selections): Choose field and click on "Add" to select it.

Left box (current selections): Click on "Delete" to remove a field or use "Up" and "Down" buttons to change field order.

Alternatively you can type in a comma delimited list of fields manually.

Detailed entry view mode
Visible fields * Fieldnames shown when viewing a record detailed.

Right box (available selections): Choose field and click on "Add" to select it.

Left box (current selections): Click on "Delete" to remove a field or use "Up" and "Down" buttons to change field order.

Alternatively you can type in a comma delimited list of fields manually.

"Add record" mode
Visible fields * Fieldnames shown when adding a record (e.g. customer subscribes to your service).

Right box (available selections): Choose field and click on "Add" to select it.

Left box (current selections): Click on "Delete" to remove a field or use "Up" and "Down" buttons to change field order.

Alternatively you can type in a comma delimited list of fields manually.

"Record update" mode
Visible fields * Fieldnames shown when modifying a record (e.g. customer change existing profile).

Right box (available selections): Choose field and click on "Add" to select it.

Left box (current selections): Click on "Delete" to remove a field or use "Up" and "Down" buttons to change field order.

Alternatively you can type in a comma delimited list of fields manually.

* These are required (and important) fields; double-check them for containing correct values.

Search layout parameters:
 

MessageSuite asks...
Description...
Sort records by default Right box (available selections): Choose field and click on "Add" to select it.

Left box (current selections): Click on "Delete" to remove a field or "Up" and "Down" to change field order. You may also decide for descending or ascending sorting (standard).

Alternatively you can type in a comma delimited list of fields manually. Add "-" before a fieldname to sort in descending order (ascending sorting done by standard).

View records per page Number of records displayed per page.
Search fields * Fieldnams available for searching (no binary, memo & image fields).

Right box (available selections): Choose field and click on "Add" to select it.

Left box (current selections): Click on "Delete" to remove a field or use "Up" and "Down" buttons to change field order.

Alternatively you can type in a comma delimited list of fields manually.

* These are required (and important) fields; double-check them for correct values.

Behavior:
 

MessageSuite asks...
Description...
"Add record" mode Available parameters:

"Data verification script": Perl script being executed after pressing the "Submit" button (before data is added); suited for input validation.

"Run this code before applying actual changes": Perl script being executed after the data verification script or (in moderated environments) record approval. It is not executed when data verification script returns an error or admin declines a moderation request.

Possible applications:

Modify some field values before posting, validate input or update data in other tables or perform other actions (e.g. calling 3rd-party software).

Notes for using Perl codes:

Field values are read- and writable via hash $fields{<fieldname>}. Just replace <fieldname> with a field of the concerned table.

Cancel posting to the table by making Perl code return number below zero. Return -2 in order to don't display "add form" again. Add error messages to global @errors array.

Usage example ("Data verification script"):

At least one of both fields, option1 or option2, must be chosen...

if ($fields{option1} eq "" && $fields{option2} eq "") {push (@errors, "One of these options must be selected.");-1;} else {0;}

"Record update" mode Available parameters:

"Data verification script": Perl script being executed after pressing the "Submit" button (before data is updated); suited for input validation.

"Run this code before applying actual changes": Perl script being executed after the data verification script or (in moderated environments) record approval. It is not executed when data verification script returns an error or admin declines a moderation request.

Possible applications:

Modify some field values before posting, validate input or update data in other tables or perform other actions (e.g. calling 3rd-party software).

Notes for using Perl codes:

Cancel posting to the table by making Perl code return number below zero. Return -2 in order to don't display "update form" again. Add error messages to @errors array.

Usage example: See above for "Add record" mode.

"Record delete" mode Available parameters:

"Data verification script": Perl script being executed after sending a deletion request (before data is removed); suited for input validation.

"Run this code before applying actual changes": Perl script being executed after the data verification script or (in moderated environments) record approval. It is not executed when data verification script returns an error or admin declines a moderation request.

Possible applications:

Validate input or remove data from child table(s) or perform other actions (e.g. calling 3rd-party software).

Notes for using Perl codes:

Cancel deletion from the table by making Perl code return -1 and adding error messages to global @errors array.

Usage example ("Data verification script"):

If field can_delete is empty, concerned record cannot be deleted...

if ($fields{"can_delete"} eq "") {push (@errors, "Record is marked as locked and can't be removed.");-1;} else {0;}

"Log in" mode Possible applications:

Verify additional conditions before allowing user to log in (e.g. date or time, calling 3rd-party software).

Notes for using Perl codes:

Login variable is $login; password variable is $pwd, Decline logging in by making Perl code returning -1 and adding error messages to global @errors array.

Usage example ("Run this script after logging in"):

If field balance is <= 0, then no login is granted...

if ($table->FindKey($login) && $table->{FieldByName}->{balance}<=0) { push (@errors, "Your balance is not positive. Please remit money to your account first."); -1;} else {0;}

After logging in redirect user to
this URL
Possible applications:

After users are successfully logged in, they can be redirected to specific URLs.

Notes for using Perl codes:

It's an active template ("&" at beginning initializes Perl script).

Available variables are $login (user login), $pwd (user password) and $table_name (name of the concerned table).

Usage example: Redirect user to a page with owned records...

&"search.cgi?tbl=$table_name&filter._email=".escape("='$login'")."&action=search"

Moderation request alert If moderation is enabled you can select to be automatically notified by e-mail when new moderation requests are waiting in queue.
 
Selection...
Description...
Don't send alerts Disable this feature.
After first moderation request Send one message regardless of the number of incoming requests.
After each moderation request Send a message for each new incoming request.
 
Moderation decline note
When declining a moderation request you can optionally send an e-mail notification to the record owner (field _email).
Send "On decline" message when
modification is declined by admin
Mark this button to send out an e-mail notification to record owners telling them about declined moderation requests.
"On decline" message body templ. Specify the template file used as notification text.

Permissions:

These parameters are specific to some system tables; please refer to the parts above within this chapter for more information.

Menu layout:
 

MessageSuite asks...
Description...
Sub-menu entries Allow or block sub-menu entries; possible values: "add,clone,update,delete".

Database script pages headers / Login script page headers:

Customize the headlines of generated pages; also usage of images (IMG tags according HTML) is allowed.

Table modifications logging:

Check this button in order to log all table modifications (add, update and delete records) to TABLENAME.modif.log located in the "data" directory (TABLENAME is replaced with the name of the concerned table).

In this way, you are able to manually recover lost data or track IP addresses of users trying to cheat your system.

Technical notes: Content of memo / image / binary field types is not logged.

Table automatic maintenance:
 

MessageSuite asks...
Description...
Maintenance interval (in seconds) Time frame between running automatic maintenance of this table (data backup only). Recommended value: 3600 seconds (1 hour).

Data file backing up:

What exactly is backup generation ?

MessageSuite is able to generate backups of its data files automatically to allow restoring them later. Generated backup files (extension .db.bak) are located within the "data" directory.

Pre-requisites for generating backups:

Maintenance interval: Ensure that a maintenance interval is specified. See screen "Table parameters", "Table automatic maintenance". Recommended range: 3600 to 43200 seconds (1 to 12 hours).

Important note: The backup update period must be longer than the specified maintenance interval.

Enable / disable backup generation:
 

MessageSuite asks...
Description...
Number of backup files Type in the number of different backup file levels generated (max. 5). Increasing this value gives you a better chance to restore elder data, but also requires more diskspace.
Backup file #1 update period (hours) Specify the time frame between backups are generated.
Rename backup file #x to #x
after this number of updates...
Type in the number of updates processed for the concerned backup file before it will be replaced by the next generation of backups.

Technical notes: In order to disable the backup feature, set "Number of backup files" to 0 or leave it empty. New backups are not generated for unchanged files (since backup already exists).

Recommended backup settings:

Maintenance interval = 3600; number of backup files = 4; backup file #1 update period = 6
Rename backup file #1 to #2 after this number of updates of backup file #1: 4
Rename backup file #2 to #3 after this number of updates of backup file #2: 5
Rename backup file #3 to #4 after this number of updates of backup file #3: 6

<TABLENAME>.db.bak1 holds 0 to 6 hours old database content.
<TABLENAME>.db.bak2 holds 6 to 24 hours old database content.
<TABLENAME>.db.bak3 holds 1 to 5 days old database content.
<TABLENAME>.db.bak4 holds 5 to 30 days old database content.

<TABLENAME>: Name of the table, concerned backup file belongs to.

Retrieve data from backup:

If you wish to roll-back a corrupted data file, just replace the original file with the latest error-free backup copy.

Before doing so, please ensure that the table definition did not change recently (e.g. by adding new fields). In this case, the table definition needs to be set to the configuration of the data file to restore.

Important note: Restoring data files should be managed by an experienced system administrator only. In case of emergency, SunnyScript can provide you with special assistance to professionally handle this task (optional fee-based service).

Helpful hint: In order to create a backup of an entire database, you may use the "Download/upload table package" feature.

"Password reminder" utility (system tables of "users" and "members"):

If a user or staff member forgot the password to access the user lounge or staff panel, it can be re-send automatically by the system at request.
 

MessageSuite asks...
Description...
Pwd. remember msg. body template Select the file that keeps the notification message.

Important note: Since the admin password is saved encrypted for higher security, it cannot be restored. See chapter "Helpful hints and technical reference" about information on how to reset the admin password.

Templates substitution:

If you wish to use your own templates instead of the pre-defined ones, please select your desired templates here (more details about templates are available in the next chapter). "--use default--" will activate the standard template for concerned output.

Helpful hint: If you're unable to find your recently created templates within the lists, hold CTRL or SHIFT key and click on the "Reload" button of your browser software to reload the browser window (to replace an old copy in cache).
 

Database import and export tools...

In order to import or export data, click on the button "Import / export data" available on the main admin menu.

Import data into database:

Click at the button "Start data import..." to begin reading in an existing 3rd-party database.
 

MessageSuite asks...
Description...
Determine data file being uploaded Choose the file holding the data intended for being imported to MessageSuite or select an already uploaded one * for processing.

* It is also possible to upload files directly to the server (e.g. via ftp) and then use the admin panel for importing them - please refer below for more information.

Specify data format Select the type of the importable file; alternatively to the pre-defined types, you can also set up a custom format in case of reading special database structures.

Please consult the manual of the 3rd-party database product you wish to import data. If it directly supports MessageSuite, mark "EasyData exchange format".

Important note: Please ensure to decide for the correct data format, otherwise the imported data may appear being destroyed.

Determine the target table New table:

Select this radiobutton to create a new table for the importable data.

Important note: Ensure to mark "Add autoincrement key field" to automatically add a key field (if not existing) - the first table field must be unique to allow identifying records.

Existing table:

Select this radiobutton and choose the desired table (must have the same structure as the one to import); decide either to replace or update already existing data.

Fields selection and post-processing Determine whether you want to import all fields or just selected ones.

If "Let me select fields after uploading" was chosen, a screen appears after the file was read in that shows a list with fields for being importable.

Mark "Delete uploaded file after processing" to remove the source file from the system as soon as the data import has been finished (recommended).

Click on the button "Import data" to start the importing process. After it is finished successfully, please check the read in data for consistency first. It is also recommended to keep a backup copy of all original database files for later references.

Technical note: Data formats "... with field names" requires that the first line of the importable file holds the names of the fields. Alternatively, default names are chosen you can rename later at any time.

Importing already uploaded source files:

This feature is useful especially when trying to import huge databases, because the file size allowed to read in through the admin panel may be limited by your server or webbrowsing software...

Just place the source file into the directory data/import.tmp. Now go to the admin panel, click on "Import / export data" and select the concerned file from the list (see parameter "Determine data file being uploaded").

Export data from database:

Select the appropriate source table and click on "Continue..." to go to the next screen.
 

MessageSuite asks...
Description...
Specify data format Select the type of file you wish to build: You can either decide for a pre-defined format or a custom one suited for special applications.

Usage note: If supported by the target database software, choose "EasyData exchange format" to achieve best results.

Select fields to export By default, all fields and their contents will be exported; however you can uncheck fields not required in your target application (e.g. the ID field may be of no usage there).
Set optional data filter Depending upon the available system fields, you are able to set additional filters.

Only records matching the filter criteria (multiple filters can be connected with AND / OR operators) will be exported. This may save additional diskspace.

For example, you can specify a range of records by using the key field filter (ID field) or enter a search query to export only a determined group of records.

Now click on "Export data" to start the exporting process. A "save file" dialog is shown by your web browsing software to store the exported data file on your computer.

Advantages of the "EasyData exchange format":

The "EasyData exchange format" is a tab-delimited text-based format also storing binary field content, like images or software files together with the textual data (URL-encoded).

Where possible, this format should be used for data import and export tasks to ensure best results when handling non-textual contents (all other supported formats cannot handle binary fields).

Technical note: If you are a programmer interested in implementing our exchange format into your own applications, please let us know. We are able to provide you with additional information upon request.

Helpful hint: Should you wish to manually back up an entire database or to carry an existing one over to an other MessageSuite installation, you may decide to create a "table package" as described more closer in the following.

Table packages - overview:

A table package contains an entire database (the table and all related elements) in one single file (TABLENAME.ede). So table packages are ideally suited for carrying an entire database to an other server or for generating manual backups.

Download table package:
 

MessageSuite asks...
Description...
Specify source table Select the table being intended for package downloading.
Include log files Mark this button to add all log files to the package (may become very large).
No compression Click here to not compress the table package.
Use internal gzip compression Use the internal compression utility (to pack the table package) or unmark this checkbox and specify external utility as followed.
Use external compression program Click here to compress the table package by using a server-sided tool.

"Compression command template": Contains the command used for compression. By default, MessageSuite tries to use the gzip compression utility of the server.

The compression command usually has two variables: $file_to reflects the compressed file, $file_from reflects the original source.

"Compressed file extension": Extension appended at file marking it as compressed.

Now click on "Download table" to save the table package. A "save file" dialog is shown by your web browsing software.

Upload table package:
 

MessageSuite asks...
Description...
Specify ".ede" file Select a local ".ede" file being intended for package uploading.
Decompression method
Compressed table packages needs to be decompressed first.
No decompression Click here to not decompress the uploaded package.

Important note: In the case a compressed package is uploaded but not decompressed correctly, an error message will be displayed and installation aborts.

Use internal gzip compression Use the internal decompression utility (to unpack the table package) or unmark this checkbox and specify external utility as followed.
Use external compression program Click here to decompress the table package by using a server-sided tool.

"Decomp. command template": Contains the command used for decompression. By default, MessageSuite tries to use the gzip compression utility of the server.

The decompression command usually has two variables: $file_to reflects the target ".ede" file, $file_from reflects the original source.

"Expected filename after decompression is complete": Select either to autodetect the package filename or specify one (has to end with .ede).

Now click on "Upload table" to copy the table package to the server.

Technical note 1: Should there already exist a table with equal name, MessageSuite chooses a new name for the uploaded table (may be changed later at "Restructure table" screen).

Technical note 2: The choices "Use internal GZIP compression" respectively "Use internal GZIP decompression" for table package down- and uploads are only available, if there is the Perl module "Compress::Zlib" installed.
 


 
User lounge and template management
Access the user lounge...

The user lounge is the web panel for direct communication. People can send inquiries, register and login (case history, profile modifications), search FAQ and KnowledgeBase articles as well as open chat sessions - depending upon the set permissions.

How to access the user lounge:
 

Action to perform...
URL to call (location varies on your system, of course)...
Access user lounge (main screen) http://www.sunnyscript.com/cgi-bin/msuite/user.cgi
Direct URL for calling the login form http://www.sunnyscript.com/.../user.cgi?action=login_form
Direct URL for adding a profile http://www.sunnyscript.com/.../user.cgi?action=add_form
Direct URL for posting an inquiry http://www.sunnyscript.com/.../user.cgi?action=request_form
Direct URL for FAQ and KB http://www.sunnyscript.com/cgi-bin/msuite/faqsrch.cgi
 
User lounge - basic overview...

User lounge main screen:
 
Login screen options...
Description...
Search FAQ and KnowledgeBase Search the FAQ and KnowledgeBase database for existing solutions.
Login Login as a registered user to see all cases managed by the system (click on the link "My cases" visible in the top menu line).
Post inquiry Send an inquiry to the staff and / or open a topic-specific chat session.
Mail password Let MessageSuite remind to forgotten passwords via e-mail.
Create profile Start user registration (may be required before posting inquiries).

Usage note: Some actions may not be available depending upon the set system behavior.

How to search FAQ and KnowledgeBase:
 

MessageSuite asks...
Description...
Decide for a search area
Database Choose the database to search: FAQ and KnowledgeBase or just one of them.
Topic category Mark all topics you wish to search or click on the "browse" link to get all records listed immediately (may be spread over different pages depending upon number of entries).

Usage note: Selecting no topic leads into searching all available topics.

Specify your search query
Fuzzy Select "Fuzzy" and enter a question to start an intelligent search.
Exact Select "Exact" and specify keywords to start a classic search.

Click on the button "Search" in order to send your request to the system.

How to post an inquiry:

Select the appropriate radiobutton or click on the link "Post inquiry" available in the top menu line of the screen.

The following procedure is spread over two screens and allows creation of a new case, searching the FAQ and KnowledgeBase or opening a topic specific chat session.
 

MessageSuite asks...
Description...
Inquiry content
Topic category Select the category your enquiry belongs to.
Subject Type in a subject for your enquiry.
Inquiry message Type in a question or message being sent to the staff.
Optional inquiry fields
Relevant URL Specify a URL showing the problem (this field may not be available).
Priority Choose the priority of your enquiry.
Skip FAQ / KnowledgeBase search Mark this button in order to not search the FAQ or KnowledgeBase databases.
Instant help (MessageSuite plus only)
Talk with us personally right now Mark this button in order to open a topic specific chat session (if a staff member is available matching the selected topic category).

Technical notes: The staff member receives all inquiry details instantly before starting the chat session. Only staff member with sufficient rights can do this kind of chat.

Click on the button "Continue" after all fields are filled in.

Depending upon user's selection, found search results in FAQ and KnowledgeBase databases appears first (done by using fuzzy logic search algorithms based upon inquiry details).

If the user's question could not be answered by the FAQ and KnowledgeBase search results, then the inquiry can be posted to the staff (a preferred staff member may be selected depending upon system settings).

If a staff member is available for chat (chat listener active), then the customer can start the chat session and may be also able to select the desired staff member to talk with (depending upon system settings).
 

User lounge customization with templates...

Templates are used by MessageSuite to build the user lounge frontend. Each screen shown on the lounge is generated from one or more template files (mail messages are also handled in this way).

By default, a standard template scheme is used. It's the ideal basis to create your own templates or modify the existing ones. More detailed information will follow later in this chapter. You have two choices of modifying the lounge templates:

1. Modify color and font schemes only:

You may adjust the color and font schemes to achieve a similar layout as the one of your business website...

Go to the admin menu, click on the button "Edit templates" and search for "main template" labelled entries. These contains various layout settings taking effect to all sub-templates connected with the concerned main template.

2. Full set of freely configurable templates:

Beside of just customizing color and font schemes with style sheet commands, you can create your own set of templates or re-write the standard ones (they are a good basis for your own templates).

Each template is written in HTML and contains special tags which will be replaced by appropriate content. There's nothing you cannot customize, however you should have a familiar understanding of MessageSuite and HTML programming.
 

Available templates...

Available templates:

There are three kinds of templates: Main templates contain the master layout; sub-templates hold the layout of output blocks appearing in these main templates; independent templates stand alone.

A detailed list with comprehensive descriptions of all template files is available from the admin panel (see "Templates editor" screen). Please contact our customer service for pre-sale inquiries asking for this list.

Helpful hints: If you create your own template sets, start creating the main templates first to have a better overview. After each single template is ready, run a test-drive to check correct functionality.

Important note: We strongly recommend to keep backup copies of the original template files for later referencing purposes.

Expert note: Some mail templates may be also modified using the screen "Edit MessageSuite parameters". Simply click on the link available near each template label to open a new pop-up browser window containing all required details.

Location of templates:

All template files are physically located in the templates directory you specified during installation of MessageSuite.

As long as you create or modify templates using the admin panel, you don't have to care about. However if you create templates manually, you must copy them to this location, because MessageSuite only recognizes files in this directory as templates.
 

Customization of templates...

As you may have seen above, each template contains special tags in the format <!--$TAGNAME--> which will be replaced by MessageSuite with appropriate content (like menu options or system messages).

For some advanced functions, Perl code is used on the templates together with internal script variables. You may just surround these codes with additional HTML tags or modify them as desired (suggested only if you are familiar with Perl).

Important notes: Some tags are specific for selected templates. If you add a tag to a template which cannot use it, concerned tag will be simply ignored. However a missing tag can cause that users are not able to get access to selected features.

If you wish to customize templates, go to the admin menu and click on the button "Edit templates".

List of tags and Perl script variables you can use on templates:

A detailed list with comprehensive descriptions of all valid variables and tags is available from the admin panel (see "Templates editor" screen). Please contact our customer service for pre-sale inquiries asking for this list.

Expert note: Common script variables available in all templates are $in{<form_var>}, which gives access to form variables submitted by the user (<form_var>) and $namespace->{'TAG'}, which offers access to special tag variables.

Custom software solutions:

Contact our sales department to request a free quote for our individual programming and customization services. Our team of experienced programmers and website designers looks forward to take over your project at affordable rates.
 


 
Helpful hints and technical reference
Background processes...

MessageSuite runs long-living processes in the background, e.g. importing messages and hosting chat sessions. Depending upon the job type, server performance and other factors, these processes can take several minutes.

In order to manage this task with highest possible compatibility to different server systems, MessageSuite uses "fork" function to prevent killing of resource consuming processes by running clone processes with other PID (process identification).

So the allowed CPU time on your server isn't exceeded, but MessageSuite can manage all tasks without disruptions. In this way, you don't have to take care about deep technical details of your server configuration.

However sometimes "fork" function is not available (this is detected automatically when running the admin panel first time, see "System parameters" screen). In this case, please refer to the chapter "System implementation" ("Data maintenance" of "Edit MessageSuite parameters" screen) for more details about how to workaround this problem.
 

MessageSuite's range of applications...

General applications:

MessageSuite is a versatile mail management software which can not just handle support requests and any kind of pre-sale inquiries coming from (potential) customers, but also the following special tasks.

Project related communication:

All members participating in a project receive own user profiles. In order to prevent unauthorized people logging in, you should disable "User can post request without registration" (see "Edit MessageSuite parameters") and disallow anonymous users to create profiles (see "Table parameters and layout" of registered users table).

In this way, the user lounge is fully password protected to allow only certain users access to the information listed there.

Time-based support services:

By requiring people to register first, you can also provide time-based support. Each registered user profile gets a time stamp, so you (the admin) can easily remove expired profiles (let sort records in registered users table by this "lifetime" field).

Mail management:

Let MessageSuite handle all e-mail addresses belonging to your company or e-business: Create a topic category for each e-mail address and give only permitted persons (staff members) access to it (the same people normally receiving the mails).
 

Advanced search features, fuzzy logic search...

Searching for information:

MessageSuite provides a wide range of powerful search features to retrieve information from your stored data fast and accurate. In the following, we want to show how to built search operations in an effective way.

Let's first have a look at these two records used to explain the sample operations below:
 
id: 1
firstname: John
lastname: Smith
age: 27
postcode: 12345
city: Samplecity
country: Somewhere
id: 2
firstname: Max
lastname: Smith
age: 12
postcode: 02345
city: Samplecity
country: Somewhere

Usage note: All samples don't consider special features like searchable fields, whole word or case-sensitive search operations. They just refer exclusively to their concerned explained features.

Interpreting keyword searches:

In most cases, you can use any text string for query fields in order to start searching a table.

Sample query: smith
Delivered records: 1, 2

Multiple keywords should be separated by spaces. MessageSuite automatically adds the logical operator AND unless an other one is specified (read below for details and additional explanations).

Sample query: john blanche
Delivered records: none ("john" is found in record 1, but "blanche" is not existing)

If you are not sure about the spelling of a word (e.g. singular/plural or different spelling alternatives), then just type in a partial word.  MessageSuite will perform a sub-string search for the provided string.

Sample query: some
Delivered records: 1, 2 (finds string "some" in values of field "country")

Boolean operators: AND (&) OR (|) NOT (!)

The logical operators AND, OR, NOT are supported. Instead of the words AND, OR and NOT you can also use the operator characters ampersand (&), pipe (|) and exclamation mark (!).

Sample query: john AND smith
Delivered records: 1

Sample query: john OR max
Delivered records: 1, 2

Sample query: john ! max
Delivered records: 1 ("!" stands for "NOT")

Technical note: At advanced searches you can specify a default operator.

Parentheses: ( )

Operations put within parentheses are processed first; the result is then used for further operations within the search string.

Sample query: (john NOT max) AND samplecity
Delivered records: 1 ("john NOT max" delivers record 1; then looks there for "samplecity"; both statements are true (AND))

Phrases: " "

Strings put within phrases are searched exactly as they are (not case-sensitive).

Sample query: "sample"
Delivered records: 1, 2 (finds "samplecity")

Sample query: "JOHN"
Delivered records: 1

Wildcards: * ? \

Beside of the standard sub-string search, it is possible to use more specific wildcards for automatically expanding a search operation. Wildcards marking variable parts of a string; they are helpful when looking for word variations and different spellings.

The asterisk (*) is considered as placeholder for none, one or more characters; the question mark (?) is considered as placeholder for exactly one character.

Place an escape character (\) before any symbol to disable its special meaning (e.g. a search for the string "book\*" will look for "book*" as it is written and does not consider the special meaning of the asterisk character).

Sample query: sample*
Delivered records: 1, 2 (would also find "sampletown", "samplevillage" or just "sample")

Sample query: ?2345
Delivered records: 1, 2 (but would not find "012345", since only one character is allowed being there).

Comparison operators: = == < > <= >= <> ~ !~ ~~

Within a search query you may address a specific record field being searched for a given string or numerical value.

Available operators:
 
= wildcard match (wildcard symbols allowed) == exact match (disabled wildcard search, "as is")
< less than > greater than
<= less or equal than >= greater or equal than
<> or != not equal ~ contains text (default operator)
!~ does not contain text ~~ whole word match

Sample query: age <= 12
Delivered records: 2 (looks exactly at the field "age" and disregards other fields)

Technical note: When just entering a string, MessageSuite converts it into <searchable field> ~ <search string>. In case of using "whole word" match, the search string is converted into <searchable field> ~~ <search string>.

Priority of used operators:

When processing a search request, MessageSuite first handles all parentheses, then comparisons and finally any boolean operator found (in this priority: NOT, AND, OR).

Search options at "Advanced search" screen:

By clicking at the "Search" link in the upper left corner of the screen you will come to the advanced search area for the concerned active table. Beside of a standard search mask, also the following options are available:

Case-sensitive: Mark this button to handle search operations case-sensitive (CAPITAL and lowercase chars are differed).

Whole words: Mark this button to search for entire words only (recognizes space characters).

Match method: Select whether all arguments must be found (AND) or just one is sufficient to list a record (OR).

Sort by / then sort by: Define sorting of search results over two levels.

Fuzzy logic search algorithm:

FAQ and KnowledgeBase search operations can be also done by simply asking a question (e.g. "Who is SunnyScript ?") or generally while sending an enquiry. In order to deliver matching results, a special fuzzy logic search algorithm is used:

This system will give "points" to each string found in databases depending upon a weight factor scheme. In easy words, records with most points are displayed first while "not so relevant" ones are shown later in search results.

Since FAQ records are normally smaller than KnowledgeBase articles (less substance to search), matching strings in FAQ records have higher weight factors as KnowledgeBase ones.

In addition, the question part of FAQ records also has a higher weight factor than the FAQ answer (because they are very likely the subject to search); so it is very important that records added to the FAQ table consists of clear, situation-matching terms.
 

POP3 gateway accounts...

MessageSuite uses POP3 mail accounts to handle e-mail communication between the staff and the users. In the following we want to show you how this is done exactly...

Message goes from user to staff:

1. The user sends a message to an e-mail address belonging to a registered POP3 (gateway) account.

2. MessageSuite downloads the mail from the gateway account and creates a new case (case ID is assigned to the message). The case and message are added to the system, responsible staff member receives a copy of the message (requires admin to enable "Forward incoming messages" as well as concerned preference settings in staff member profile).

Messages marked with "Highest" priority will lead that concerned staff member receives also a notification to the emergency e-mail address. So it is recommend to keep "Highest" priority only for certain user groups.

Message goes from staff to user:

A. The staff member uses its own e-mail client to answer mails ("Forward incoming messages" set to "Yes"):

1. The staff member replies to a user message. The reply is not directly sent to the user, but to a gateway account's e-mail address (as set in staff member profile). Under normal conditions, this doesn't take any attention of the staff member.

2. Message Suite imports the e-mail from the gateway account, looks for the case number and redirects the message via e-mail to the user (recipient mail address as assigned to the concerned case).

B. The staff member uses staff panel to answer inquiries:

1. The staff member writes the reply to an inquiry and sends it to MessageSuite.

2. MessageSuite will redirect the message to the user (recipient mail address as assigned to the concerned case) and automatically set the "From:" address part in mail header pointing to the concerned staff member's gateway e-mail address.

In this way, replies send back to the user are automatically taken over by MessageSuite.

Technical note: Even if "Forward incoming messages" is set to "Yes", staff can also still use the staff panel to work on cases.
 

Workload vs. system resources...

Multiple staff members can be logged in simultaneously to work on open cases or do chat sessions.

Technically there is no limitation in the number of staff members working at the same time. Each logged in member (as well as logged in user) does not require CPU resources until actively working with the software (e.g. doing chat or sending a form).

Each open chat listener needs only few system resources (amount of used memory space and CPU time varies basing upon operating system and hardware configuration). Starting a chat session just takes inappreciable more resources.

So on a common system environment, you may never notice a loss of performance or speed. But please contact our customer service, if you have specific questions regarding this topic.
 

Forgot your admin password ?
 
If you forgot your admin password, you must remove the admin password file named admin.pass located in "auth" directory (see software directory of MessageSuite). Then you can set a new password next time you access the admin panel.
 
User lounge and template translations...

The user lounge of MessageSuite is fully customizable and translatable by modifying the existing templates accordingly. In addition, also system messages may be translated:

In order to translate system messages into your desired language, download the files *.en (located in the software directory), which holds all pre-defined text parts and load them into a text editor.

Each language file uses the same structure:
  <Meaning or default text> => <Translation>

Please change only the part <Translation> while keeping the left-sided ones. After you finished translation, please upload the files to your server and give them a try.

Important note: You should create a backup copy of all original *.en for later reference.
 


 
Customer services

Depending upon your license type, this software package includes various support services. Please refer to the license document or visit our website for more information about available services.

Before you contact our customer service department, please read this manual first. In most cases you find the answer here. However if you still experience problems, we will be more than happy to help you...

For all support inquiries, please contact support@sunnyscript.com and provide the following information:

* The license number of the concerned product.
* A close description of the problem or question you have (no file attachments, please).
* For technical inquiries: Used server environment, URL of admin panel & admin password.
 

Now we wish you a great time with our software products :-)

 
© SunnyScript - A subsidiary of Star Enterprise. Visit the SunnyScript website.
Please read our terms of business located at... http://www.sunnyscript.com/terms.htm