Documente Academic
Documente Profesional
Documente Cultură
(text here)
administration
guide
(version 4.1)
This manual provides information about xMatters. Every effort has been made to make it as complete and accurate as
possible; however, the information it contains is subject to change without notice and does not represent a commitment on
the part of xMatters, inc. No part of this document may be reproduced by any means without the prior written consent of
xMatters, inc.
Current to:
xMatters version 4.1.0 patch 023
xMatters integration agent version 4.1 patch 008
For more information about the latest changes, features, and fixes, and instructions on how to install
xMatters patches, consult the release notes at the xMatters Community site: community.xmatters.com.
Thursday, June 19, 2014
Copyright 1994-2014. All rights reserved.
xMatters, xMatters lite, xMatters workgroup, xMatters enterprise, xMatters on demand, xMatters service provider,
xMatters mobile access, Relevance Engine, AlarmPoint Systems, AlarmPoint, AlarmPoint Java Client,
AlarmPoint Mobile Gateway, AlarmPoint Integration Agent, AlarmPoint Express, AlarmPoint Standard,
AlarmPoint Professional, AlarmPoint Enterprise, AlarmPoint Service Provider, and AlarmPoint Notification
Server are trademarks of xMatters, inc.
All other products and brand names are trademarks of their respective companies.
Client Assistance:
Email: support@xmatters.com
International: +1 925.226.0300 and press 2
US/CAN Toll Free: +1 877.XMATTRS (962.8877)
EMEA: +44 (0) 20 3427 6333
Australia/APJ Support: +61-2-8038-5048 opt 2
Other Resources:
Join the xMatters Community: http://community.xmatters.com
Table of Contents
Chapter 1: Introduction to xMatters
About this document
Important xMatters Terms
Document Conventions
Introduction to xMatters
The xMatters Critical Event Notification Platform
The Role of xMatters in Service Availability
xMatters Features
Real-World Application Examples
How the xMatters system works
xMatters Products
Managed Devices, Systems, or Applications
Communication with the Management System
Sending a Request to xMatters
1
2
2
3
3
4
4
5
8
10
11
15
16
17
19
20
20
20
21
22
23
24
24
25
30
32
32
33
35
39
42
44
45
50
50
55
58
63
83
83
85
85
86
87
87
89
91
92
92
92
93
93
93
94
|i
| ii
95
96
96
97
98
100
100
101
104
106
107
108
109
110
111
116
117
118
120
150
151
156
157
157
161
191
192
193
194
197
198
204
209
210
211
212
212
215
216
219
220
220
224
227
228
228
228
231
236
238
238
239
241
242
244
245
246
247
Custom holidays
Site holidays
Example:Create company holidays
Custom user information
Custom attributes
Custom fields
Password policy
Device types
Manage device names
Specify a whitelist of email domains
Event domains
Import and export event domain information
Define event domain details
Define response contribution values
Define predicates
Subscriptions
Preparing Subscriptions
Configuring Subscription Domains
Managing Subscriptions
Searching for Subscriptions
Message domains
Define message domain details
Custom messaging panels
Define custom messaging panel details
Custom pages
Define custom page details
Import data
Format spreadsheets
Import your data
Phone recordings
Propagation Details
Add a recording
Modify system voice recordings
Manage phone recordings
Chapter 5: Reporting
About reporting
Access reports
Work with reports
Available reports
Activity reports
Event Details Reports
Replaying an Event
Company reports
Domain summary report
Synchronization report
Application audit report
Low-use user report
System reports
Component status report
Node network statistics report
Audit reports
Security audit report
Web service audit report
247
248
249
251
252
253
255
257
258
259
260
261
262
263
264
267
268
269
275
283
284
285
286
287
288
288
289
289
292
294
294
296
299
300
301
302
302
302
305
306
311
316
321
323
324
327
328
329
329
330
331
331
332
335
336
336
337
| iii
List of Tables
| iv
338
339
340
342
343
343
345
347
348
348
350
355
356
357
357
360
360
360
361
361
361
362
362
363
364
368
369
370
370
371
372
377
378
378
379
379
380
381
382
382
414
414
414
415
416
431
434
435
437
438
438
438
440
441
441
443
445
List of Figures
Index
453
459
|v
vi |
xMatters user guide: intended for end users, this guide explains the basics of the xMatters web user interface, and
how to accomplish common tasks. The User Guide also includes a section for User and Group Supervisors about
more advanced tasks, such as Group creation and management.
xMatters Online Developer's Guide: this guide is intended for developers and administrators, and contains
instructions on using the xMatters scripting tools, web services, custom panel APIs, and integration components.
xMatters AlarmPoint Java Client Guide: this guide explains how to configure and use the custom features of the
AlarmPoint Java Client.
xMatters integration agent guide: this guide describes and explains how to use the integration agent to facilitate
bi-directional communication between xMatters and one or more management systems.
xMatters mobile access guide: this guide introduces the mobile access component, an xMatters module that allows
xMatters Users to access management systems remotely, via any web-enabled Device, such as a BlackBerry
Smartphone.
xMatters administrators may also refer to some of the advanced features described in the xMatters user guide.
Groups
In xMatters, groups are used for collecting users and devices and organizing them into notification schedules. Full
definitions of groups and group components, including an example of group creation, are included in the xMatters user
guide.
Document Conventions
This manual uses the following styles and conventions when discussing xMatters and other software components.
Styles
Some instructions appear in the following format: MENU > OPTION; for example, File > Open means click the File
menu, and then click the Open menu option.
Words in bold typically reference text that appears on the screen. Words in monospace font represent the following:
n
code samples
Directory paths
Except when deliberately referring to an operating system path for a specific component or feature, directory paths in this
document are listed in Unix format. Windows users must substitute the given paths with the Windows equivalents.
The xMatters installation folder is referred to throughout the documentation as <xMHOME>.
n
The xMatters integration agent installation folder is referred to throughout the documentation as <IAHOME>.
n
Introduction to xMatters
xMatters is the leading Actionable Information Delivery platform which accelerates decision making, improves
operational effectiveness and increases IT service and application availability across the real-time enterprise.
xMatters transforms event data, instantly notifying the appropriate personnel with information relevant to their role. This
intelligent targeting reduces false alarms and enables mobile IT personnel to complete the resolution process more
accurately and efficiently. The xMatters approach delivers business service information further increasing IT service
visibility, reducing the cost of operations and transforming traditional organizations into proactive, real-time enterprises.
The xMatters platform is used in a variety of ways, including IT Service Delivery, IT Service Support, Business
Continuity, Disaster Recovery and Enterprise Messaging. Over 800 global firms, including 7 of the 10 largest Global
2000, rely on xMatters to ensure the availability of their mission critical and virtualized systems, networks, applications
and processes.
Introduction to xMatters | 3
This part of the guide introduces xMatters to IT managers, business continuity professionals, and others who require a
sophisticated critical event communication system. The following sections first discuss how xMatters meets important
business needs, and then describe xMatters products, components, and features.
Note:
To learn about xMatters features from an end user perspective, refer to the xMatters user guide.
Network monitoring
Application management
Business continuity
Employee safety
Network security
xMatters is an interactive alerting application, designed to capture and enrich important events, to route those events to
the right person on any communication device, and to give that person the ability to solve, escalate or enlist others to
resolve.
xMatters allows you to take critical business information and contact the right people via voice phone, SMS, two-way
pagers, instant message, and email.
Through integrations, the xMatters system can become the voice and interface of an automation engine or intelligent
application (the Management System, such as BMC Remedy or HP OpenView). When a Management System detects an
event that requires attention, xMatters places phone calls, sends pages, messages, or emails to the appropriate personnel,
vendors or customers.
The xMatters system is also persistent, escalating through multiple devices and personnel until someone accepts
responsibility or resolves the event. Once contacted, the xMatters system gives the notified person instant two-way
communication with the Management System. Responses are executed immediately on the Management System,
enabling remote resolution of the event.
Business Service Management: xMatters allows IT Management to sign up to receive relevant information
when services are about to be interrupted, SLAs are about to breach or events go unresolved. Stop viewing the
dashboard, xMatters will find you if something goes wrong!
Compliance: xMatters facilitates Sarbanes-Oxley (SOX) compliance by providing one enterprise-wide event
resolution system. xMatters provides the bridge between all events and the people who solve them: one system for
all event reporting and SOX Compliance.
Introduction to xMatters | 4
Incident & Problem Management: xMatters automates the incident and problem management process by enabling
personnel to solve events before the service degrades.
Capacity Management: xMatters plays an important role in the performance process by providing proactive
information to IT personnel when performance thresholds are met or about to be exceeded. Personnel can interact
and increase the available resources with the press of a button.
Change Management: xMatters automates the change process by allowing personnel to sign up to receive
authorization alerts (e.g., A change is pending your approval, press or say 1) to approve, 2) to decline, 3) to
reschedule, etc.). Additionally, customers can subscribe to alerts when a change is approved or declined on a
service that impacts their business area.
Service Level Management: xMatters uses service level mappings to proactively inform IT service users of
potential interruptions in managed services. Additionally, xMatters uses sophisticated event handling to escalate
events where the service is governed by an SLA and may be about to breach.
Service Support / Service Desk (Incident Control and Communication): xMatters automates personnel dispatch
and ticket assignment and provides real time feedback as the incident is in process. xMatters also provides
proactive information, outbound, to affected users in real time, avoiding costly inbound service calls.
Continuity Management:Reducing the risk of disaster, xMatters provides a module focused on the Continuity of
Operations. xMatters allows personnel to build, test and initiate scenarios that may affect an organizations ability
to recover in the face of a disaster. The crisis communications ability of xMatters ensures personnel that meet
specific criteria are dispatched and respond immediately.
xMatters Features
xMatters is a three-tier application that accepts system events from any number of management systems. Those events
may be network down alarms from a network management tool or alerts that a significant order has been placed.
xMatters is the event notification and interaction platform between a management system and an enterprises global
personnel. To ensure that when events occur the right people are found, xMatters was engineered to include the industryleading features summarized below.
Introduction to xMatters | 5
Supervisors may assign events to an existing group of personnel. The possibilities of event assignment and self-service
event subscription move event management from the management system into xMatters. Additional features include
subscription grouping of similar events and the ability to publish business rules. These features combine to allow other
users to search published subscriptions and published grouped subscriptions then sign up for those alerts. For more
information, see "Managing Subscriptions" on page 275.
Ping a device from xMatters, and then get the results back to the user via phone, pager or email.
Introduction to xMatters | 6
Notification
M-F 0700-1730
M-F 2200-0200
Holidays. Different hours and people to contact for specific days (e.g., Boxing Day in Canada).
Timeframes. Timeframes can be used to alter granular day and time settings for Users, Devices, and Groups.
Introduction to xMatters | 7
action back on the management system (e.g., assigning a Help Desk ticket or acknowledging an event on an operations
console).
The Action Script editing utility (xMatters Developer IDE) provides a remote Java-based user interface for checking out
and modifying scripts in the xMatters database. Once a script is complete, version control allows marking the new script,
and then importing it to the xMatters system and promoting it to production.
xMatters includes several out-of-the-box example Action Scripts that can be used as a basis for creating new scripts. In
addition, all xMatters integration modules include custom scripts specific to that particular network management, system
management, or help desk system.
Reports
Authorized personnel can generate real-time and historical reports to monitor and troubleshoot the system. Reports show
the success or failure of every notification, and track delivery and response to the Device level. This web-based, real-time
feedback enables help desk users, operations personnel and business continuity professionals to view the success of each
message sent from xMatters.
Flexible Licensing
Each xMatters product includes a specific set of licenses that control terms such as number of Users, Devices, and
Notification Servers. However, as your organizations needs grow and change, additional customized licenses can be
purchased and easily activated through the xMatters web user interface. For more information about purchasing
additional licenses, contact xMatters Sales.
Note that these examples often refer to features available only in xMatters workgroup and xMatters enterprise.
For full information on xMatters products and features, contact xMatters Sales.
Creating a real-time two-way telephone menu allowing personnel to take action over the phone.
Notifying management personnel in the event of a crisis; displaying status and resolution instructions.
Informing end users that a critical system is down so that they can work around the outage.
Escalating notifications to an operations manager when a batch job is behind schedule by a specific duration.
Introduction to xMatters | 8
Security Management
Leading Security Administrators are just starting to discover the benefits of automated event resolution for their
environments. Security is a perfect application for event resolution systems because there are a limited number of
specialists within the company and time-to-resolution is critically important.
Consider the importance to preventing an intrusion into your network.
xMatters allows key personnel to receive critical event information to any device (voice is suggested for security,
interactivity, and guaranteed delivery considerations); the recipient can suspend a policy, run a test, ping a device, shut
down a block of IP addresses, notify on-site personnel and other concerned personnel. The event resolution systems
should support voice over telephones and should have pre-built support for the leading security vendors.
Business Continuity
Post 9/11 concerns in the United States and worldwide have refocused attention on business continuity, employee safety,
backup and restoration procedures, and other data security initiatives. xMatters provides a central portal for emergency
communications to a large number of employees on Disaster Response teams.
Introduction to xMatters | 9
xMatters can take a single event like node down and send different events to different stakeholders:
n
Darren, On-Call Technician Node down what would you like to do?
Keith, Help Desk Node 123 is down, Darren is assigned, estimated fix in 20 minutes.
xMatters
The application server (node) is the central xMatters component, running the business processes (i.e.,
application Action Scripts) that instruct other components in the system. The application server also includes an
server
integrated notification server that performs the same tasks as a separate notification server node.
(Node)
Whether your deployment requires an integrated notification server or separate notification server(s) will
depend on many factors, including licensing and expected throughput. Discuss these issues with your
xMatters representative prior to deployment.
notification An xMatters deployment can have one or many notification servers that communicate with the
server
application server and database to queue, route, and send notifications and their responses.
(Node)
Note that an all-in-one deployment does not have a separate notification server node. Also, an xMatters
workgroup all-in-one deployment on Windows does not require a separate notification server node.
Device
Engines
A sub-component of notification servers, Device Engines send notifications to various Devices (Phones,
Pagers, Email, etc.). A notification server may have several Device Engines; for example, a notification
server can have an Email and a Paging Engine. Note that due to thread availability, it is strongly
recommended that a notification server does not have more than one Device Engine of the same type.
xMatters
database
The xMatters database is the central storehouse of User, Device, Group, logging and auditing information
for the xMatters system.
Java
Client
The Java Client acts as a two-way bridge, translator, filter, and message enhancer between the external
management system (BMC Remedy, HP OpenView, etc.) and xMatters. The Java Client formats messages
into xMatters XML messages before being transmitted to xMatters.
xMatters dynamically selects and runs the script called an Action Script appropriate for an incoming event. Scripts
can contact one person, a group, or even a specific communication device. Some scripts establish contact with people or
services, while others provide a choice of actions specific to the situation. xMatters constantly updates the management
system on what is happening, including replies from real-time two-way telephones, messaging devices, two-way pagers,
or email.
An application called the Java Client is installed on the management system, allowing the management system to
communicate with xMatters. The Java Client is like a bridge, translator, and message enhancer between the management
system and xMatters. If the management system wants to start or stop a situation, it uses the Java Clientto send a
message. To respond, xMatters returns a message to the Java Client, which can log the information, run a command on
the management system, and so on.
The Java Client, running on the management system sends messages to xMatters on behalf of the management system.
xMatters splits the notification process into several basic components, which allows the administrator to reuse several
scripts, making Action Scripting more like piecing modules together than programming.
Note:
For details on Action Scripting, refer to the xMatters Online Developer's Guide .
The main processing component in xMatters is called an application server. The application server communicates with
one or many xMatters notification servers to manage sending and receiving of notifications. notification servers contain
Device Engines (e.g., Email Engine, Paging Engine). The application server and notification server use a node structure
easily deployed using the same installer.
The sections that follow describe xMatters components, and provide diagrams of example xMatters deployments for each
product version.
xMatters Products
Because xMatters product licensing is very flexible, different deployments of xMatters may not have the same feature set.
For a complete matrix of available features and related products, contact xMatters Sales.
The following sections provide a brief description of some sample deployments, and diagrams illustrating the different
components.
Basic Deployment
xMatters workgroup
xMatters workgroup is a mid-level product intended for mid- to large-size ESM (Enterprise Service Management)
implementations that require voice capability, a rich feature set, greater flexibility, and user self-service (for full feature
details, contact xMatters Sales).
The following diagram shows an example xMatters workgroup deployment:
The example deployment shows xMatters workgroup connected to the Management System through the integration
agent. In this case, two xMatters application server Nodes (a Primary and a separately-licensed Secondary) stay in
constant contact via the xMatters database to synchronize information and detect whether the any components have
failed. If the Primary Application Server fails, the Secondary Application Server detects this and takes over notification
tasks.
In this failover example, the database must be run on a separate system. If the xMatters application servers are installed
on Unix, the Voice Engines must run on additional Windows 2003 systems.
xMatters enterprise
xMatters enterprise is intended for sophisticated ESM implementations that require full voice and text capability, an
industry-leading feature set, unrivalled permissioning and scheduling flexibility, user self-service, customizable event
subscriptions, customizable messaging panels, highly-distributed load capability, and a potentially global deployment.
The following diagram shows an example xMatters enterprise deployment:
This sample deployment shows how xMatters enterprise is scalable in a distributed implementation. Multiple
Notification Servers have been deployed to target specific Devices. Moreover, if a Notification Server or related Device
Engine fails, its load is automatically distributed to another Notification Server or Device Engine.
The xMatters enterprise architecture allows for global distribution of system components, providing additional failover
capability and local notifications.
Multiple-Company Deployments
With the xMatters service provider product, or an xMatters enterprise installation with additional Company licenses,
xMatters can be configured to support multiple Companies. This configuration allows a single xMatters installation to
host many distinct Companies, each with a unique feature set.
A multiple-Company deployment offers the following key features:
n
Single infrastructure
Company-specific reporting
Strict data segregation; Users in one Company cannot view any data about other Companies
Streamlined administration with Super Administrators providing global host administration and Company
Administrators restricted to administrating a single Company or tenant in a multi-Company deployment.
This multiple company ability is particularly useful for Service Providers that will host xMatters on behalf of a number
of their own customers (i.e., the host service provider will have its own employees act as Company Administrators for
all tenant Companies).
Other uses include existing customers (e.g., Internal IT service management) who want to extend the existing offering to
include their external customers (e.g., external Public users), and want to ensure that all data visibility, event processing
and notification behavior is strictly segregated. (Note that this solution is not appropriate when sets of Users in different
Companies must interact with each other.)
Since the multiple-Company configuration is part of the existing xMatters infrastructure, all the scalability, resilience,
and load-sharing capabilities of xMatters are available.
Management System
The Management System is not part of the xMatters System. It is the automation engine or intelligent application that
manages other devices, systems or applications. Those other components initiate the events that are passed to the
Management System.
Event components
These definitions are used throughout this document.
Event
A message sent from the Management System to an integration agent (or Java Client) is termed an Event. The Event
represents the starting point and the highest level of internal tracking in xMatters.
Incidents
An Incident represents the larger business representation and/or grouping of Events as supplied by the Management
System. The Management Systems could share an Incident identifier to span multiple events. The association of events
to an <incident_id> element allows for the management of multiple Events at the same time.
Alert
An Event received by xMatters creates at least one Alert. An Alert is a pre-formatted Event for personnel subscribed
against the matched criteria. An Alert is the association of an Event to specific users/groups.
Notification
Alerts will create at least one Notification. A Notification is the association of a specific Alert to a Persons devices.
For each active device that matches the time profile of an event, a Notification record will be created.
xMatters notification server engines
Within the xMatters notification servers, each Server (one per Engine) runs the appropriate Contact and Action Scripts
with the Event information, which results in a message delivered to a person. The information is forwarded to the Engine
that allocates specific resources for delivery. Resources per engine and possible message delivery mechanisms are
detailed in the following sections.
Phone Engine
Uses Dialogic Voice Cards or SIP for telephony, or Virtual Phone for testing.
Paging Engine
Uses a modem for modem-based paging services, the network and HTTP for Internet-enabled paging services and/or the
xMatters internal Virtual Pager for testing.
Email Engine
Inserts a message into the outbox of a MAPI-compliant server, or to an SMTP server. If a MAPI-compliant server is used,
it will be told to send all outgoing mail. This engine can also use Virtual Email for testing. Reply messages can be read
from a MAPI inbox, POP server, or IMAP server.
Messaging Engine
Sent to the appropriate Instant Messaging (IM) server for delivery to the persons IM client.
The xMatters Agent sends notification requests to xMatters, and receives messages from it. The messages can contain
information regarding the status or progress of individual notification requests, reports of acknowledgements by notified
users, or requests from notified users to perform actions on the Management System.
Command Line
HTTP
The following sections summarize these methods, and the comparative time required for each.
Command-line
While the command-line method produces the loosest integration, it is also the fastest to implement. This method is
sometimes used because it reduces maintenance requirements when new releases of xMatters are implemented.
To use this method, the Management System must be able to:
n
HTTP
The HTTP integration method is more difficult than command-line, and requires programming. The APJC accepts an
HTTP post and get to send XML messages with all relevant data. A program must be written to post the messages
that start notifications, and to create a process that continuously checks the APJC response queue for actions that people
may want to take through xMatters.
Remote Method Invocation (RMI)
The RMI method represents the tightest level of integration, and requires Java programming. This method provides
callbacks that automatically allow reliable two-way interaction with the APJC. Messages are sent in an XML format.
Time Requirements
In general, command-line integrations can take from several hours to several days, and are relatively simple to
implement. HTTP or RMI integrations usually require at least a week or longer, depending on how the program is
written.
The rest of this chapter covers the use of the command-line integration option.
18 |
Installation Overview
Before installing xMatters system components, it is strongly recommended that you review this entire chapter to help
ensure a successful xMatters deployment.
In general, it is recommended that at least one of each of the following personnel are available to address any issues
during the installation and configuration process:
n
Network administrator
Note:
This guide is current to xMatters version 4.1 patch 022. Note that xMatters patches and updates are
cumulative; for more information about the changes in this release and previous updates, refer to to the 4.1
patch 022 release notes on the xMatters Community site at community.xmatters.com.
Product Licensing
Product licenses control xMatters versioning, capabilities, and features, including the following items:
n
Number of:
o
Nodes
Companies
Groups
Users
Roles
Subscriptions
Advanced Reporting
Alerts tab
Languages
Failover
By default, only the xMatters super administrator has permissions for managing product licensing (for details, see
"Licenses" on page 109).
Installation Overview | 20
Note:
All Users in the xMatters database count towards the license limit. This means that Users not set as Active (i.e.,
on their User Details page) are still counted for licensing purposes. For further details on xMatters licensing,
contact xMatters Sales.
The Java Client has its own installer. For details, refer to the xMatters AlarmPoint Java Client Guide.
Ensure that xMatters components (including the database server) are not co-hosted with each other (see also "Allin-One Deployment" on page 30).
Ensure that xMatters components are not co-hosted with third-party enterprise applications.
Ensure that all xMatters components are redundant (see "Failover in xMatters" on page 343).
Be aware that Microsoft SQL Server Express is not supported for use with xMatters enterprise
Configure SIP Device Engines on dedicated xMatters notification server Node computers (i.e., the xMatters
notification server Node must reside on a computer that is separate from other xMatters components such as web
servers, application servers, and the database). Note that a maximum of 100 "Number of Line Appearances" is the
tested limit for SIP Device Engines. (See also "Software Requirements" on page 25.)
Note:
Increase the database connection pool settings for all xMatters components (for details, see "Configuring the
Database Connection Pool" on page 357).
Optionally, use database replication for cold disaster recovery (see also "Disaster Recovery Deployment
Considerations" on page 336).
Front web servers with Apache or Microsoft IIS (for details, see "Fronting the xMatters web server" on page 348).
Use a load balancer to route traffic if multiple web servers are deployed.
Ensure that all xMatters nodes (Application Servers and Notification Servers) can intercommunicate.
Set the minimum JVMheap size to the same value as the maximum heap size to eliminate the cost of allocating
memory to the JVM (for details, see "Configuring xMatters Heap Size" on page 359).
Ensure that latency between the xMatters web server, Application Server and Database is lower than 30ms (see
also table entry for "Failover Connectivity" on page 33). xMatters requires a robust network infrastructure with no
measurable communication loss between components. If the network layer is unreliable or has high latency,
product performance and behavior will be impacted. Operating xMatters in such conditions is not a configuration
supported by xMatters.
Note:
It is strongly recommended that you discuss your xMatters enterprise deployment plan with your xMatters
representative prior to installation.
Pre-allocate or dedicate virtual CPUs and the maximum required memory to the xMatters Virtual Machine to
reduce contention between virtual machines and scheduling losses.
Disconnect unused devices on the virtual machine and Virtual Server, including:
l
COM ports
LPT ports
Floppy drives
CD-ROM drives
USB adapters
Use separate network adapters for xMatters Virtual Machine communications and virtual server storage (i.e.,
Network Attached Storage).
Ensure the HAL/kernel installed on the xMatters Virtual Machine operating system is appropriate for the system
(i.e., uni-processor versus multi-processor).
Ensure specialized virtual server/machine drivers are installed on the xMatters Virtual Machine operating system
(i.e., virtualized network drivers).
Virtual machines with a close affinity should be co-located on the same virtual server to reduce communication
latencies. However, this must be balanced against resource contention. For example, virtual machines that demand
high levels of I/O should be located on separate virtual servers.
Distribute virtual machines over multiple disk spindles to reduce virtual machine I/O contention and request
queuing. If possible, place the virtual machines with highest disk I/O demands on separate disk spindles; if this is
not possible, use separate virtual servers.
Note:
Dialogic cards are not supported when using virtualization. Due to resource-contention that can affect call
quality and performance, xMatters SIP is not supported for virtualized environments.
Language Support
The following table summarizes xMatters language support:
Language Support
Component
Supported Languages
English, French, German, Spanish, Italian, Brazilian Portuguese, Russian, Japanese, Korean,
Chinese
Language Support | 22
Component
Supported Languages
Pre-recorded
Languages
As above, with UK and US for English, and Mandarin and Cantonese for Chinese
Integration Modules
TTS (Text-To-Speech)
xMatters can support any SAPI 5.1-compliant TTS engine in any language. Additionally, the
xMatters Action Script allows you to control the language spoken based on the selected
language of each User; for details, refer to the xMatters Online Developer's Guide.
Note that the list of available languages is hard-coded in the voice recordings script. If you
change the languages available to a Company, you must also change the script listing the
available languages.
A voice-capable xMatters installation includes the Microsoft Text-To-Speech (TTS) SAPI5.1
engine with the following available English-only voices:
o
o
o
Microsoft Mary
Microsoft Mike
Microsoft Sam
When installed as recommended by xMatters, Oracle and IBM DB2 can concurrently support
all xMatters-supported languages. Microsoft SQL Server can concurrently support only a
subset of xMatters-supported languages. For configuration information, see the related
"Support for International Character Sets" sections for each database under "Pre-Installation
Configuration" on page 32.
Notes
If your deployment will include voice capability, Dialogic cards and drivers should
always be installed before Notification Server Nodes are installed and configured on
computers dedicated to Voice notifications. For details, see "Installing Dialogic
Voice Cards and Drivers" on page 50.
Note that Windows 64-bit installations are not supported by Dialogic.
Component
Notes
Database
The xMatters application install requires you to enter parameters related to the
database installation. For installation details, refer to your database documentation.
n
xMatters application
The xMatters application install includes the xMatters database components, web
server, Application Server Node(s), and Notification Server Node(s). Depending on
your requirements and licensing, this installation can be on a single computer or
distributed across multiple computers (and different physical locations).
Java Client
The procedure for installing the Java Client on your Management System depends
on its type and the customization required. For information on the Java Client,
including installation, see the Java Client User Guide. If a customized integration
was provided, refer to the related documentation that accompanied the integration
package.
integration agent
The procedure for installing the integration agent on your Management System
depends on its type and the customization required. For information on the
integration agent, including installation, see the xMatters integration agent guide. If
a customized integration was provided, refer to the related documentation that
accompanied the integration package. Note that each version of xMatters must be
paired with its own version of the integration agent (e.g., xMatters 5.0 uses
integration agent 5.0.
These requirements apply only to xMatters lite and xMatters workgroup. xMatters enterprise system
requirements should be determined with the assistance of xMatters Systems Sales and Professional Services.
3 GB
2 GB
Component
5 GB
Software Requirements
This section details the software requirements for an xMatters deployment.
Manufacturer
Operating System
Version
x86
Various
Windows
LINUX
AMD, Intel
64-bit
Windows
LINUX
(64-bit versions
running 32-bit Java)
Sparc
Sun
Solaris
10
PA-RISC
HP
HPUX
11.23
Itanium
(Integrity)
HP
HPUX
11.23, 11.31
POWER
Processor
IBM
AIX
Note:
xMatters currently supports the Dialogic 6.0 driver release running on Windows 2003 (32-bit only) and
Windows 2008 R2.
Notes
AMD64
Various
Windows 2003
Various
SUSE
Intel64
AMD64
Intel64
Sparc
Sun
Solaris
Not supported
PA-RISC
HP
HPUX
Not supported
Itanium
HP
POWER
Processor
IBM
Virtualization Compatibility
xMatters has been successfully installed and run on several virtualization technologies (including Xen, VMWare,
RedHat, and others). Because the application does not check or otherwise attempt to determine whether it is being run
on a virtual machine, xMatters does not endorse any specific technology, brand, or version.
Due the nature of virtualization technology, the demands of other virtual machines running on the same physical hosts
as xMatters may impact xMatters components, and vice versa. In extreme cases, performance may degrade or become
erratic. Accordingly, careful monitoring and capacity planning are essential to avoid these situations; you must ensure
that sufficient resources are dedicated and available to the application. Your feature set may also be limited by the
virtualization layer if it cannot provide appropriate access to hardware resources, such as modems.
Also note that diagnosing and resolving virtualization issues are beyond the scope of xMatters Technical Support, and
are not covered by your support agreement. For help planning virtual installations, contact your virtualization vendor,
and refer to "Virtual Machine Deployment Guidelines" on page 22.
The following table summarizes current virtualization compatibility; note the following definitions:
n
Certified means that xMatters has tested the technology internally with complete functional/regression testing at
each release.
Validated means the technology has been implemented internally or in a customer environment with a baseline of
"known good state".
xMatters Components refers to the web server, application servers, and notification servers;
Virtualization Compatibility
Operating System
xMatters Components
Java Client
Certified
Certified
Validated
Validated
Validated
Validated
Validated
Validated
Validated
Validated
Validated
Validated
Note:
Dialogic cards are not supported when using virtualization. Due to resource-contention that can affect call
quality and performance, xMatters SIP is not supported for virtualized environments.
Databases
xMatters supports the databases detailed in the following table:
Supported Databases
Database
Versions
Oracle
Web Servers
The following web servers can be used as a proxy for xMatters:
Web Server Proxy
Web Server
Version
Apache
6.0
Note:
On xMatters enterprise deployments, web servers must be fronted with Apache or Microsoft IIS (for details, see
"Fronting the xMatters web server" on page 348).
Web Browsers
xMatters supports Microsoft Internet Explorer 8 and Mozilla Firefox 3.
xMatters can be used with Internet Explorer 8 running in compatibility mode. To use this mode, navigate to
Tools > Compatibility View Settings and add the URL for your xMatters deployment (or select the Display all
websites in Compatibility View check box).
Note:
SIP Gateway
xMatters supports the following SIP gateways on Linux, Windows 2003, and Windows 2008:
Supported SIP Gateways
SIP Gateway
Details
Asterisk
Avaya
The following versions of ACM are supported: 3.0, 3.0.1, 3.1, 3.1.1, 3.1.2, 3.1.3, 3.1.4, 4.0, and
5.2.1.
The following versions of SES are supported: 3.0, 3.1, 3.1.1, 3.1.2, 4.0, and 5.2.1.
xMatters has been compliance tested against SES 5.2.1 connecting to Avaya Communication
Manager (ACM) 5.2.1, and has been compliance-tested by Avaya for compatibility with Avaya
Aura Communication Manager 5.2.1 and Avaya Aura SIP Enablement Services 5.2.1. Additionally,
Avaya has granted xMatters with the Avaya Developer Connection Compliance Award for
successful compliance testing with Avaya Aura Communication Manager 6.0 (R016x.00.0.345.0),
Avaya Aura Session Manager 6.0 (6.0.0.0.600020), and Avaya Aura System Manager 6.0 (6.0.0.0556).
Cisco
xMatters has been validated against and supports Cisco Unified Communications Manager
(formerly CallManager) version 7.0.1 and version 9.
SIPGateway Considerations:
n
On Linux (32- or 64-bit), SIP is supported only when running the 32-bit JVM. SIP will not function properly
unless Call Progress Supervision is enabled on the PBX (otherwise, human and machine voice detection will not
work). For further details, see "SIP Requires Call Progress Supervision Support", below.
xMatters deployments that will experience high volumes of SIP traffic must have SIP Device Engines configured
on dedicated xMatters notification server Node computers (i.e., the xMatters notification server Node must reside
on a computer that is separate from other xMatters components such as web servers, application servers, and the
database).
Due to resource-contention that can affect call quality and performance, xMatters SIP is not supported for
virtualized environments.
If your deployment includes a firewall between the xMatters SIPDevice Engines and your SIPgateway, ensure
that the firewall has been configured to allow for traffic of SIPand RTP packets, and that packets can be
automatically forwarded to the correct xMatters IP address; the SIPGateway must use the same IPaddress to
communicate with the SIPDevice Engine. Note that SIPGateways external to the network where xMatters exists
are not supported.
Note that the xMatters SIPDevice Engine supports only RFC2833 for DTMF tones.
progress supervision. Call progress supervision is a telephony term that covers two telephony features: Answer
Supervision and Disconnect Supervision.
In particular, if the environment does not provide Answer Supervision, the xMatters SIP Device Engine cannot determine
when a call is answered. Instead, it starts playing the recording while the phone is still ringing.
Environments that have call progress supervision include those with direct T1/E1/J1 (ISDN PRI or BRI) connections,
analog Dialogic cards, and POTS lines that support call progress tones.
Note that problems can occur with PBXes and T1 cards that are connected to POTS lines through a channel bank that
does not support call progress supervision, and with PBXes that do not support call progress supervision that are directly
connected to POTS lines.
If your system employs multiple BES servers, each of which has a unique list of users, sending a message to a
BES server that does not have the recipient user results in undelivered messages. To resolve this issue, you will
need to configure the BlackBerry MDS Connection Service central push server. This abstracts xMatters and
your users from having to know the BES server on which they are deployed/listed. For further details, contact
your BlackBerry vendor to obtain the latest BES planning guide.
Developer IDE
To install the xMatters Developer IDE, it must be possible to install and run J2SE 1.6; a JVM used by the latter is
installed by default. (Note that the Developer IDE is supported for Windows and Linux, but is no longer supported for
Solaris, AIX, or HP-UX).
Phone Recorder
The Phone Recorder utility allows you to re-record system recordings such as numbers and letters. To use the Phone
Recorder application, a supported Dialogic card must be installed.
instructions on how to modify your deployment so that Virtual Devices will work with Windows 2008, please refer to
the xMatters Community site at community.xmatters.com; search on the terms "Windows 2008" and "Virtual Devices".
Using Dialogic cards with Windows 2008
If you are planning on using Dialogic cards for a new xMatters installation, ensure that you acquire the correct (i.e.,
updated for Windows 2008) Dialogic/Syntellect license dongles appropriate for your new deployment.
If you are upgrading your Windows 2003 deployment to Windows 2008, note that your existing dongles will not work
with Windows 2008. For assistance with dongles purchased through xMatters, you can contact xMatters Support via the
Community site at community.xmatters.com to speak with an associate about acquiring a temporary set of dongles. If
you purchased your dongles through another supplier, you may need to contact your original supplier to obtain updated
licenses.
Hardware Requirements
The following sections outline the minimum and recommended hardware requirements for an xMatters deployment on
Unix and Windows.
Note:
Voice (i.e., phone) and MAPI email deployments require a Windows system. SIP requires Windows Server 2003
or Linux (32- or 64-bit) running the 32-bit JVM.
All-in-One Deployment
In an all-in-one deployment, all xMatters components (Application Server, web server, and database) are co-hosted on
the same machine. All-in-one deployments on Unix do not support voice notifications (voice components must be
installed on a Windows server).
Note:
Co-hosting the xMatters database and xMatters components is NOT supported for enterprise deployments. The
database server must be installed on a machine that is separate from xMatters.
The following table outlines the minimum hardware requirements for an all-in-one deployment:
Minimum All-in-One System Hardware Requirements
Platform
Vendor
CPU
GHz
RAM (GB)
x86
Intel
2x P4
3.6
x86-64
Intel
Core2 Duo
3.0
x86-64
AMD
K8-Opteron
3.0
PowerPC
IBM
2 xG5
2.5
Sparc
Sun
2x UltraSparc IV
1.6
PA-RISC
HP
4x PA-8700
0.875
Itanium
HP
1.6
Multiple-System Deployments
This section outlines system requirements for larger enterprises that expect to experience extremely high concurrent
loads.
For high-volume xMatters deployments, ensure that xMatters components are not co-hosted with each other or
with third-party enterprise applications. For further details, see "xMatters enterprise Deployment Guidelines"
on page 21.
Note:
The following table outlines the minimum hardware requirements for a multiple-system deployment (xMatters
Application & Notification Server Nodes, Web Servers, and Databases):
Minimum Multiple-System Hardware Requirements
Platform
Vendor
CPU
GHz
RAM (GB)
x86
Intel
2x P4
2.8
x86-64
Intel
Core2 Duo
3.0
x86-64
AMD
K8-Opteron
3.0
PowerPC
IBM
2x G5
1.8
Sparc
Sun
2x UltraSparc IV
1.35
PA-RISC
HP
4x PA-8700
0.75
Itanium
HP
1.4
Note:
To compare the performance of other types of CPUs with that of the benchmark Intel Xeon CPUs, visit
http://www.spec.org/cpu2006/results/cpu2006.html. Additionally, although the latter table lists the
recommended hardware requirements, it is strongly recommended that you work with your xMatters
representative to determine the hardware requirements of your organization's specific deployment.
Latency Requirements
For multiple-system deployments, it is recommended that the latency between remote Notification Server Nodes and the
xMatters application server/database not exceed 200ms. Slower connections will experience increased delays between
notification creation and the start of a call, increased delays between voice recordings, and slower text messaging
performance.
Note:
xMatters requires a robust network infrastructure with no measurable communication loss between
components. If the network layer is unreliable or has high latency, product performance and behavior will be
impacted. Operating xMatters in such conditions is not a configuration supported by xMatters.
Failover Connectivity
For failover between the Application Server Node, the Web Server, the Notification Server Node, and the database, the
minimum connectivity requirements between the sites are as follows:
n
Dedicated bandwidth for Application Server Node and database traffic: 2Mbps
Network latency between the Application Server Node and the database: below 30ms for a 1024 byte (1KB)
packet round-trip
Dedicated bandwidth for Web Server Node and database traffic: 2Mbps
Network latency between the Web Server Node and the database: below 30ms for a 1024 byte (1KB) packet
round-trip
Network latency between the Notification Server Node and the database: less than 200 ms for a 1024 byte (1KB)
packet round-trip
Network latency between the Notification Server Node and the Application Server Node: less than 200 ms for a
1024 byte (1KB) packet round-trip
Note that this typically means the Application Server Node, the web server and the database should all be located in the
same data center. The Notification Server Node is optimized for remote distribution.
Pre-Installation Configuration
The following sections describe hardware, general software, database, and configuration issues that should be considered
before installing xMatters.
Hardware
Before installing xMatters, install and test the following hardware:
Hardware Checklist
Hardware
Notes
Dialogic
voice cards
When purchasing Dialogic cards, ensure that each card will fit into the target computers case. Also,
note the bus speed for the card so that you can match it with your system (i.e., PCI, PCIx).
For more information about installing Dialogic cards, see "Installing Dialogic Voice Cards and Drivers"
on page 50.
Call
Progress
Supervision
xMatters deployments installed with Phone or SIP Device Engines require a telephone environment that
supports call progress supervision. Call progress supervision is a telephony term that covers two
telephony features: Answer Supervision and Disconnect Supervision.
In particular, if the environment does not provide Answer Supervision, the xMatters SIP Device Engine
cannot determine when a call is answered. Instead, it starts playing the recording while the phone is still
ringing.
Environments that have call progress supervision include those with direct T1/E1/J1 (ISDN PRI or BRI)
connections, analog Dialogic cards, and POTS lines that support call progress tones.
Note that problems can occur with PBXes and T1 cards that are connected to POTS lines through a
channel bank that does not support call progress supervision, and with PBXes that do not support call
progress supervision that are directly connected to POTS lines.
Envox
license key
(dongle)
Ensure that you have purchased an Envox license key (USB or parallel dongle) for the appropriate
number of licensed voice lines. The drivers for the license key are installed during the xMatters
installation.
Pre-Installation Configuration | 32
Hardware
Notes
Modems
xMatters uses only hardware modems with a direct connections to the operating system (Softmodem,
WinModem, and physical modems in virtualized environments are not supported). For paging modems,
xMatters recommends the US Robotics Courier or Sportster (ensure that Auto Answer is disabled, or that
the Telco/PBX does not allow inbound calls to the modem). Most GSM modems are supported for
direct communication with GSM mobile phone providers for text messaging.
The following lists identify some of the many modems that have been successfully tested and deployed
with xMatters:
TAP
l
GSM
l
MultiModem MTCBA-G-F4
MultiModem MTCBA-G2-U
For more information about supported modems, including examples of known good configurations, see
the xMatters Community site at community.xmatters.com.
Analog
phone lines
for voice
cards and
modems
The number of voice lines should match the number of license lines in your xMatters purchase and
licensing information.
Failover
For failover between the Application Server Node and the database, the minimum connectivity
Connectivity requirements between the two sites are as follows:
l
l
Also note that the recommended latency between Application Server Nodes and remote Notification
Server Nodes is less than 200ms.
Software
Install and test the following software before installing xMatters:
Pre-Installation Configuration | 33
Software Checklist
Software
Notes
Operating System
If you are performing a clean OS install, ensure that any computer names reflect your
network naming conventions.
Database
The database you intend to use with xMatters (see "Software Requirements" on page 25
for a list of supported databases) must be installed and operational before you can
install xMatters.; Note that you will need the database administrator user name and
password for the installer to create the xMatters schema.
Confirm that the latest patches, service packs, and security updates have been installed
for supported databases.
Define SMTP or MAPI email accounts and passwords. A unique mailbox must be
created for use by xMatters.
Note that xMatters version 5.x has been validated only with Microsoft Outlook 2010.
Management System
Create a list of all Management Systems that will connect to xMatters, and ensure that
you have the latest xMatters Integration Module for each.
Java
Ensure that all xMatters nodes (Application Servers and Notification Servers) can intercommunicate.
Example One
A deployment has Nodes in three physical locations:
n
The time zones for the systems in San Francisco should all be set to US/Pacific.
Example Two
A deployment has Nodes in three physical locations:
n
Chicago with fast WAN connection to San Francisco (Application Server Node)
The time zone for the Chicago Application Server Node should be set to be US/Pacific time (i.e., the same time zone as
the San Francisco database, web server, and Application Server Node). The Toyko Notification Server Node can be set to
a different time zone.
Pre-Installation Configuration | 34
Oracle and its listener must start automatically after a system restart.
DBA must provide a path to where data files for the xMatters schema reside, and the Oracle instance must be able
to read/write to this location.
To help ensure a production-ready database, it is strongly recommended that the DBA and the host systems
System Administrator complete Oracles suggested post-installation set-up.
WARNING
The xMatters database name (where applicable), user name, and schema name MUSTMATCH, and the database user's
default schema must be assigned to the xMatters schema. Not following this practice may result in errors when
attempting the following:
n
If the database uses AL32UTF8 as the character set, all languages xMatters supports can be concurrently stored
(AL32UTF8 is the recommended method for installing Oracle).
If the database was configured to use a character set other than UTF-8, only a subset of languages are concurrently
supported.
To change the character set after database creation, a Database Administrator must issue an ALTER DATABASE
CHARACTER SET AL32UTF8 call.
WARNING: If AL32UTF8 is not a superset of your current character set, there is a risk of losing data when
performing this step.
Estimated Size
Notes
Code Tables
500 MB
Users
2.5 KB / User
Devices
3.0 KB / Device
Groups
50 KB / Group
Pre-Installation Configuration | 35
Data Type
Estimated Size
Notes
Runtime
40 KB / Notification
Redo Logs
200 KB / Notification /
Hour per log file; three
files recommended
Note:
These numbers are preliminary estimates. Each installation will have different requirements based on usage
patterns.
Sample Calculation
This sample database calculation includes estimates for 50 Events per day and 90 days of Audit / History data:
Oracle Sizing Example
Data Type
Code Tables
500
200 Users
20 Groups
*Runtime
900
**Redo Log
1410
Potential Growth
1410
2820
Pre-Installation Configuration | 36
Ensure this job is enabled if regular statistic gathering is required. To obtain basic information on the set of statistics
currently available to the CBO, run the following query while logged in as a user with permissions:
SELECT snap_id, begin_interval_time, end_interval_time
FROM dba_hist_snapshot
ORDER BY snap_id desc;
The available snapshots directly affect Oracle's performance, and it is important that they reflect Oracles typical running
condition. For example, when statistic gathering is disabled by setting the interval for GATHER_STATS_JOB to 0 or by
disabling the GATHER_STATS_JOB, it is highly likely that Oracle will not select the least expensive plan to execute
queries from xMatters. To ensure the highest accuracy, gather the Oracle object statistics after each xMatters archiving.
The AWR is very useful for automating statistic collection so that they are up to date; however, manual gathering is still
required. For system statistics, manual gathering should be done during normal workload (refer to the Oracle
documentation for information about System Statistics gathering options using DBMS_STATS.GATHER_SYSTEM_
STATS). Also, even though AWR gathers Object Statistics during the scheduled jobs, it is a good practice to collect
statistics manually after a large data load (refer to the Oracle documentation for information about the different levels
and options for gathering statistics using the DBMS_STATS package).
Pre-Installation Configuration | 37
must first be installed against a single instance in the cluster. Post-installation, the common.properties file must be
modified to ensure that load balancing and failover are configured.
Local storage (i.e., rather than shared storage) is the default location for creating a datafile when connecting by SID. As a
result, on the xMatters installers xMatters database Creation Options page, the Generate .SQL script for manual
creation option must be selected (the instructions below provide further details).
Single Client Access Name (SCAN)
Single Client Access Name (SCAN) is a new Oracle Real Application Clusters (RAC) 11g Release 2 feature that
provides a single name for xMatters to access clustered Oracle databases. (SCAN is configured during the installation of
Oracle Database 11g Release 2; for details, refer to the relevant Oracle documentation.)
Using SCANto access the cluster allowsxMatters to use a simple JDBC thin URL independent of which servers in the
cluster are active. The benefit is that xMatters connect information does not need to change if you add or remove nodes
in the cluster.
To install xMatters against an Oracle RAC database, do the following:
1. Run the xMatters installer.
2. On the xMatters database Creation Options page, select Generate .SQL script for manual creation.
3. Open the createdb.sql file in a text editor and locate the following text:
create tablespace ALARMPOINT4 datafile 'ALARMPOINT4.dbf' size 450M autoextend on extent
management local uniform size 500K;
For ASM, modify the datafile value to be null or specify the ASMdisk group:
Note:
Typically, when ASM is in use, Oracle Managed Files (OFM) is also in use and OFM does not use actual path
and file names when creating tablespaces.
For NFS, specify that the shared storage directory is used for the datafile option:
For Hostname, type the IP address of the first instance in the RAC database.
For SID, type the instance name/SID to the first instance in the RAC database (e.g., for a RAC service named
MYRAC, the default SID for the first instance is MYRAC1).
9. When the xMatters installation has completed, stop the xMatters node and web server.
10. Apply xMatters patches as required, start the node to ensure that xMatters database packets are executed, and then
stop the node.
11. Decrypt the common.properties file.
12. Open the decrypted file in a text editor, and replace the existing JDBC_URL content with the following RAC
content (replacing the placeholders below with the actual values; do not use line breaks):
JDBC_URL=jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on)
(ADDRESS=(PROTOCOL=TCP)(HOST=ROUND_ROBIN_RAC_SCAN_HOST_NAME)(PORT=1521))
(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=KNOWN_WHEN_INSTALL_ORACLE)))
Pre-Installation Configuration | 38
Specify the Auto-start option for the Microsoft SQL and SQL Server Agent Services; these Services will then start
when Microsoft SQL Server starts.
Create Microsoft SQL Server Maintenance Plans that automatically deal with backups (e.g., database and
transaction log), automatic shrinking, integrity checks, and so on.
Create a separate SQLServer User login ID and password; xMatters does not support Windows authentication for
the SQLServer user. This user can also be created during installation of xMatters.
WARNING
The xMatters database name (where applicable), user name, and schema name MUSTMATCH, and the database user's
default schema must be assigned to the xMatters schema. Not following this practice may result in errors when
attempting the following:
n
The Latin1_General collation family supports English, French, Italian, German, Brazilian Portuguese, and Spanish.
Note:
The 8-bit codepage character sets are a superset of the 7-bit ASCII code set. This implies that most collations
with also support English and other Latin-based languages. However, there may not be any single code page
that supports multiple languages like Japanese and Chinese.
If the default installation method (i.e., xMatters creates the database) is chosen, the database's collation is set according
to the locale of the database server. To specify a different collation type, use the Generate Database Script option during
installation (see "Database User/Schema Settings" on page 67.) After the script is generated, a Database Administrator
will have to modify the create database statement to use the desired collation.
Pre-Installation Configuration | 39
WARNING: Currently for SQL Server, there are no xMatters-supported methods for switching the collation type
after database creation.
Estimated Size
Notes
Code Tables
50 MB
User
40 KB / User
Group
50 KB / Group
Runtime
40 KB / Notification
Note:
These numbers are preliminary estimates. Each installation will have different requirements based on usage
patterns.
Sample Calculation
This sample database calculation includes estimates for 50 Events per day and 90 days of Audit / History data:
Microsoft SQL Database Sizing Example
Data Type
Code Tables
50
200 Users
20 Groups
*Runtime
900
959
Potential Growth
959
Pre-Installation Configuration | 40
Data Type
1918
100
200
20
1,000
2,000
200
10,000
20,000
2,000
100,000
200,000
20,000
100
50
10
1,000
80
20
10,000
100
30
100,000
1,000
100
Note:
If you still encounter data archiving issues, you can also set the tempdev and templog database files to
unrestricted growth.
Pre-Installation Configuration | 41
Microsoft SQL Server Express is not supported for use with xMatters enterprise. Also, be aware that SQLServer
Express has a maximum size of 4GB per database.
By default, SQL Server Express listens only to local connections. To allow SQL Server Express to work with xMatters
(installed on a separate computer), you must enable TCP/IP and configure SQL Server Express to listen on port 1433, as
described below.
To configure Microsoft SQL Server Express to work with xMatters:
1. Click Start > All Programs > Microsoft SQL Server > Configuration Tools > SQL Server Configuration
Manager.
2. In the left pane, expand the tree view for SQL Server Network Configuration.
3. Select Protocols for SQLEXPRESS ("SQLEXPRESS" is the name of the instance that xMatters will use. Note that it
may have a different name, as this is configurable during the SQL Server Express installation).
4. In the right pane, right-click TCP/IP and select Properties.
5. On the Protocol tab, set Enabled to Yes.
6. Click the IP Addresses tab.
7. In the IPAll section, change the TCP Port to 1433.
8. In all of the other IP sections, set the Enabled option to No.
Note:
If you are unsure about which IP address to change, make the change for all listed IP Addresses, except for the
loopback adapter and IPAll.
9. Click Apply.
10. Click OK.
11. In the left pane, select SQL Server Services.
12. In the right pane, right-click SQL Server (SQLEXPRESS) and select Restart.
13. After the service has restarted, close the SQL Server Configuration Manager.
l
You can now install xMatters against this SQL Server Express installation.
BackupAPDatabase.bat
BackupAPDatabase.sql
RestoreAPDatabase.bat
RestoreAPDatabase.sql
These files are located in the xMatters installation directory, in the backup folder. Running the batch files executes the
Windows osql command that calls the SQL scripts in this directory.
Pre-Installation Configuration | 42
Create a user to use with xMatters on the operating system hosting the database (for instructions, refer to the
operating systems documentation). Note that the database name and operating system username must match. These
are specified in the following lines of the common.properties file:
WARNING
The xMatters database name (where applicable), user name, and schema name MUSTMATCH, and the database user's
default schema must be assigned to the xMatters schema. Not following this practice may result in errors when
attempting the following:
n
Archiving Issue
The xMatters default batch size of 1000 causes a stack trace when archiving xMatters data on DB2. However, you can
work around this issue by increasing the transaction log size.
To increase the transaction log size for DB2:
1. Logon (or remote) to the computer hosting DB2.
2. Open Control Center (e.g., on Windows, Start > All Programs > IBM DB2 > DB2_Name > General
Administration Tools > Control Center).
3. Right-click the xMatters database, and select Configure Parameters.
4. Click the LOGFILSIZ entry, and then click the ellipses (i.e., ...) in the Value column.
5. Type a larger value in the Log File Size field (e.g., 102400), and then click OK.
6. Stop DB2 and then start DB2 (do not use the Restart action).
Note:
This section will be expanded as information becomes available; check the xMatters customer support site
(community.xmatters.com) for updates.
If the database uses UTF-8 as the code page, all languages xMatters supports can be concurrently stored.
If the database was configured to use a character set other than UTF-8, only a subset of languages are concurrently
supported.
Note:
If an existing database has data in it that you need to migrate to UTF-8, the following document can help:
http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=
/com.ibm.db2.udb.admin.doc/doc/t0024033.htm
Pre-Installation Configuration | 43
Configuration Checklist
Ensure the following configuration items have been addressed:
Configuration Checklist
Configuration Item
Notes
Phone Classes
Determine which Phone Classes to use for each Notification Server (for details, see
"Phone Class Resources" on page 153).
Determine which Clusters will correspond to which Sites (for details, see "Clusters" on
page 156 and "Sites" on page 242).
IP addresses
Because of the relatively low default setting for open files on Linux/Unix servers, "Too
many open files" errors can occur. This can be resolved by increasing the ulimit (this is
an operating system setting that allows more concurrent files to be open at a given
time) to 90000 or unlimited. For further details, see the related knowledge base article
on the xMatters Community web site.
Firewall
Create firewall clearance for network paging. Port numbers vary based on the protocol
used. For more information about running xMatters behind a firewall, contact xMatters
Support. Alternatively, you can configure xMatters to work with a proxy server; for
details, see "Socket Proxy Resources" on page 152.
Confirm that the PBX allows DTMF tone generation on internal calls. This allows users
to log in with their password when calling in through a PBX to make phone-menu
selections. On many PBX systems, internal DTMF is disabled by default, but a manual
override can be done on a call-by-call basis. If this is the case, users may have to be
trained to override the default.
Pre-Installation Configuration | 44
Configuration Item
Notes
xMatters deployments installed with Phone or SIP Device Engines require a telephone
environment that supports call progress supervision. Call progress supervision is a
telephony term that covers two telephony features: Answer Supervision and Disconnect
Supervision.
In particular, if the environment does not provide Answer Supervision, the xMatters SIP
Device Engine cannot determine when a call is answered. Instead, it starts playing the
recording while the phone is still ringing.
Environments that have call progress supervision include those with direct T1/E1/J1
(ISDN PRI or BRI) connections, analog Dialogic cards, and POTS lines that support
call progress tones.
Note that problems can occur with PBXes and T1 cards that are connected to POTS
lines through a channel bank that does not support call progress supervision, and with
PBXes that do not support call progress supervision that are directly connected to
POTS lines.
Voicemail system
Check the voicemail systems by listening to default greetings, and adjust scripts if
needed (for more information, see thexMatters Online Developer's Guide).
There should be at least one inbound telephone number, which should ring the highestnumbered Dialogic port first, then ring in descending order towards Dialogic port
number 1. xMatters places outbound calls with the lowest numbered-available Dialogic
port and then calls in ascending order. This maximizes telephone line selection for both
the xMatters and the PBX hunt group.
Define User and Group source data for the system. For details about synchronizing
system data, see "Data Synchronization" on page 377.
Define and document business rules related to the creation of Groups, notification
workflow, and shift rotations. xMatters scheduling is highly flexible, and can be
complex to configure and deploy without a defined framework in place.
Naming conventions
Escalation
Java Client
Pre-Installation Configuration | 45
There are two different types of usages: listen and open. A software component that listens on a port is waiting for
incoming connections, whereas a component that opens a port is initiating communications.
The tables below outline the different ports, usages, and example data (when applicable) for each application; all ports
listed are shown as defaults.
You cannot configure specific outgoing ports (or a range of ports) that the Java Client should use when
connecting to the server (outgoing ports are determined by the operating system and Java).
xMattersAgent
The following table shows the default port usage for the xMatters Agent:
xMatters Agent Default Port Usage
Port
Usage
2004 N
2009 Y
RMI
2010 Y
HTTP
Provides an HTTP API for posting event messages and web administration, used
primarily by APClient.bin; <install>/etc/APAgent.xml
2110 Y
TCP
25
SMTP
The following table shows the default port usage for the xMatters Client:
xMatters Client Default Port Usage
Port
2009 N
RMI
Java-based object communications, default facility for posting messages via APClient;
defined at runtime based on APAgent configuration
2010 N
HTTP
Pre-Installation Configuration | 46
2010 N
HTTP
2009 N
RMI
Java-based object communications for query and control APAgent; defined at runtime
based on APAgent configuration
xMatters Nodes
The following table shows the default port usage for the xMatters nodes (Application Servers and Notification Servers):
Note:
The Application Server and Notification Server Nodes have identical default port usage, with the exception
that Application Servers use port 2004 to accept input from the Java Client.
Port
Listen Open
Protocol
Usage
25
SMTP
465
110
POP3
995
139
MAPI
143
IMAP
993
444
Paging
2775
SMPP
5060
SIP
Default port for SIP Device Engine. Note that if you are using a firewall, you
must also open a range of ports based on the RTP Port (min) and RTP Port
(max) settings specified in the SIP Device Engine Details; default range is
102565535.
Pre-Installation Configuration | 47
Port
Listen Open
Protocol
Usage
5222
Jabber
7777
Paging
9901
TCP
1433
JDBC
1521
JDBC
8081
HTTP/
SOAP
50000 Y
Y (if
TCP
more
than one
Node)
8887 Y
TCP
Usage
8888 Y
HTTP/SOAP Listen for requests from web browsers and web service clients; defined in
<install>/webserver/etc/jetty.xml and specified during installation
8443 Y
HTTPS
Listen for secure requests from web browsers and web service clients; defined in
<install>/webserver/etc/jetty-sslengine.xml
8899 Y
AJP
8081 N
HTTP/
SOAP
1433 Y
JDBC
1521 N
JDBC
Pre-Installation Configuration | 48
On Windows, the xMatters web server runs as a Windows Service. On Unix systems, it runs as a daemon.
2. Navigate to the etc subfolder in your xMatters installation directory, and open the jetty.xml file in an editor.
3. Locate the following section:
<Call name="addConnector">
<Arg>
<New class="org.mortbay.jetty.nio.SelectChannelConnector">
<Set name="port"><SystemProperty name="jetty.port" default="8888"/></Set>
<Set name="maxIdleTime">30000</Set>
<Set name="Acceptors">1</Set>
<Set name="statsOn">false</Set>
<Set name="confidentialPort">8443</Set>
<Set name="lowResourcesConnections">2000</Set>
<Set name="lowResourcesMaxIdleTime">1000</Set>
<Set name="headerBufferSize">3072</Set>
<Set name="requestBufferSize">8192</Set>
<Set name="responseBufferSize">49152</Set>
</New>
</Arg>
</Call>
4. Change the port number referenced in the <SystemProperty name="jetty.port" default="8888"/> section
to the port on which you want to access the xMatters web server.
5. Save and close the file.
6. Restart the xMatters web server.
7. In a browser, go to http://<xMattersIP>:<port number>/alarmpoint to test the connection.
Note that changing the default port for the xMatters web server may affect the ability of some Devices to communicate
with xMatters, specifically BlackBerry Devices. The out-of-box presentation scripts for BlackBerry Devices attempt to
post to the web server on port 8888. If you change your port settings as described in the steps above, you must also
change the presentation scripts. The following code illustrates the location within the default domain presentation
scripts; the $content.pushurl and the FORM action URL should be changed to reflect the new port:
....
ELSE-IF ($content.deviceclassification == "bes")
...
#Fill the html part for BES device
#Note: content.pushurl must be present, even if url is invalid
$content.pushurl = "http://localhost:8888/static"
$content.pushtitle = $content.subject
$content.htmlmessage = $content.htmlmessage & "<table width=\u0022100%\u0022
border=\u00221\u0022>"
$content.htmlmessage = $content.htmlmessage & "<tr><td><b>Incident ID: </b></td><td>" &
$event.incident_id & "</td></tr>"
$content.htmlmessage = $content.htmlmessage & "<tr><td><b>Situation: </b></td><td>" &
$content.situation & "</td></tr>"
$content.htmlmessage = $content.htmlmessage & "<tr><td><b>Device: </b></td><td>" &
$content.device & "</td></tr>"
$content.htmlmessage = $content.htmlmessage & "<tr><td><b>Time of Incident: </b></td><td>" &
$userTime & "</td></tr>"
$content.htmlmessage = $content.htmlmessage & "</table>"
IF (EXISTS($content.choices))
$content.htmlmessage::add("<br>Your response choices are:")
#You may change the URL to point to the alarmpoint web
$content.htmlmessage::add("<FORM
action=\u0022http://localhost:8888/jsp/ProcessNotificationResponse.jsp\u0022
method=\u0022post\u0022>")
....
For more information about editing xMatters scripts, see the xMatters Online Developer's Guide.
Pre-Installation Configuration | 49
xMatters currently supports the Dialogic 6.0 driver release running on Windows 2003 (32-bit only)or Server
2008 R2. Dialogic drivers are available on the xMatters installation DVD or on the xMatters web site.
D/4PCIU
D/4PCIUF
D/4PCIUFW
D/4PCIUFEQ (PCI-Express)
D/4PCIU-Euro
D/4PCIUFEU
D/41JCT-LS Euro
D/4PCIU4S
D/240JCT-T1
D/240JCT-T1EW (PCI-Express)
D/300JCT-E1
Note:
If you are installing Dialogic voice cards, install them before installing xMatters, as it will be simpler to
troubleshoot any system problems.
4. In part 3, section B, Set the Hook-Switch State for Start Up, be sure the slide switch is in the Off position.
5. Perform parts 4 and 5 as indicated on the instruction card.
6. Instead of part 6, Install Software, Configure and Test, see the procedure Install Dialogic Drivers below.
Installing Drivers for Analog Dialogic Voice Cards
This section covers the steps required to install software drivers for Dialogic Voice Cards.
To install drivers for an analog Dialogic voice card:
1. Insert the xMatters installation DVD (or Dialogic Drivers CD) into your drive.
2. On the Windows Start menu, select Run.
3. Type the location of the drive and the path to the Setup folder. For example, D:\Dialogic6\Setup.
l
7. In the Program Group Folder dialog, click Next to accept the default folder.
8. On the Summary dialog, review your choices, and then click Next to continue.
9. Click Yes in the third-party software installation dialog box:
10. If the following dialog box appears (warning that some diagnostic utilities will not function), click OK:
11. On the Setup Complete page, select Yes (you must reboot), and then click Finish.
Configuring Analog Dialogic Cards
After installing the drivers for analog Dialogic Cards, run the Dialogic Configuration Manager to complete the setup
process.
If you have an ASR-enabled board, see "Automated Speech Recognition (ASR)" on page 54.
Note:
In some cases, the Dialogic board is not initially found by the DCM. If this occurs, restart the computer, check
the Windows Device Manager for the appearance of an unknown device, and then update the driver for the
device. The system should locate the appropriate file in the Dialogic folder. The board will then appear in the
Device Manager as a Dialogic device. Run the DCM again to ensure that the board is properly detected.
3. Within the Configuration Manager dialog box, select the D/4PCI card in the tree view. The cards icon will have
a red dot on it, indicating that the service is not started.
4. To start the service, click the Green Triangle button as shown in Dialogic Driver version 6.0 - Configuration
Manager above.
5. The Configuration Manager displays a dialog box, showing its progress as attempts it to start the service.
Service Starting
6. If the dialog box closes and the bottom of the Configuration Manager displays a System status of Running, then
proceed to Step 8. If the dialog reports Failed, check your settings again, and call xMatters technical support.
7. You can use the Configuration Manager to enable automatic startup, which requests that the driver service runs
whenever the system reboots: in the Settings menu, ensure that Start devices preference > Start all device(s) or
Start none is selected:
8. Click Settings > System/Device autostart, and then click Start System.
9. Close the Dialogic Configuration Manager dialog.
10. Reboot the computer.
Automated Speech Recognition (ASR)
xMatters automatically installs and uses Microsoft's Speech Recognition engine. This engine works only with specific
Dialogic voice cards that support the additional speech requirements.
Please note the following restrictions:
n
ASR is not currently supported on 64-bit installations of xMatters 5.0. This is due to a lack of support for the 64bit JREfrom the third-party libraries used to enable this feature.
D/41JCT-LS
D/4PCIU4S
D/41JCT-LS Euro
D/240JCT-T1
Note:
Since ASR requires Continuous Speech Processing (CSP) configuration, CSP is limited to robbed-bit protocols
on JCT Media Boards (i.e., T1 boards). Due to hardware limitations, CSP and ISDN cannot run on the same
span on a JCT Media Board. Additionally, be aware that for E1 or T1 boards that support Continuous Speech
Processing (CSP), specifying an ISDN protocol and a CSP firmware file for the same span results in a
download failure to that span (the Intel Dialogic System Service will not start).
The Microsoft ASR engine is tied to the account under which it is running. To run the Microsoft ASR engine
interactively using "node start", the SAPI_5_1_English.exe installation must have been run under the local account.
Further, to run the engine as a service, the installation must have been run under the local computer administer account.
To configure ASR when running the node as a service:
1. Log in using an account that has local administrator privileges.
l
If xMatters was not installed using this account, run the SAPI_5_1_English.exe install file.
2. Using the Services applet, right-click xMatters node and select Properties.
3. Click the Log On tab, and then click the This Account radio button.
4. In the pop-up dialog box, click Browse, and then click the Look in drop-down list and select the local machine
name.
5. In the pane, select your login account and click OK.
6. Enter the password and click Apply to verify the entries.
7. Click OK to complete the setup.
To set up Speech Recognition:
1. Open the Intel Dialogic Product Configuration Manager (DCM) and follow these steps:
2. Right-click the entry for the Dialogic board and select Configure device.
3. Select the Misc tab.
4. Ensure that CSP_Enabled is set to Yes.
5. If the CSPExtraTimeslot option is enabled, set it to ON.
6. Set FirmwareFile to an option other than default (e.g., D41JCSP.fwl).
l
For CSP configurations, change the firmware file being downloaded to the proper CSP firmware file, and
ensure ISDNProtocol is set to NONE for that span.
7. After making the changes, run the xMattersScan Voice Resources utility (Start > Programs > xMatters > Scan
Voice Resources).
xMatters supports only one T-1 or E-1 Dialogic card per computer.
The following detailed instructions are based on a specific line configuration; note that your settings may vary.
n
Dialogic software used: System Release 6; the Global Call Protocol Package version 4.2
Note:
Install any Dialogic voice cards before installing xMatters, as this will simplify system troubleshooting.
If an ISDN protocol will be used, expand the ISDN Protocols folder, and select the appropriate protocol.
If you are installing on Windows 2003 or 2008, select the Global Call Protocol check box, as illustrated by
the following figure. (This option is only available when installing on Windows 2003 and 2008.)
Note that if you are installing on Windows 2003 or 2008, you can skip these steps as you would have installed the
Global Call Protocol during installation of the Dialogic software.
To install the Global Call Protocol Package:
1. Run the setup.exe application from the Global Call Protocol install directory.
l
The Dialogic Service should detect the board and download the firmware to the board.
You should see the board listed under the DCM with a red dot to indicate that the Dialogic Service is
currently stopped.
2. To start the Dialogic Service, click the green radio button on the top toolbar.
3. Wait until the red dot on the board icon changes to green.
l
The System Service Status at the bottom of the DCM window should say Running. This indicates that the
board and firmware are installed and running properly.
4. Set the Dialogic System to start automatically by clicking Settings > System/Device autostart and selecting Start
System.
The UDD downloads the board firmware, starts the board, and displays an option screen.
3. Under Products, find your Dialogic board under (the JCT board has a main board at ID 0 and a daughter board at
ID 1).
4. In the Specify Tests dialog box, select all tests for the base board at ID 0.
l
Ensure that the Use Default Parameters check box is selected for each test, and then click OK.
5. In the Specify Tests dialog box, select all tests for the daughter board at ID 20.
l
Ensure that the Use Default Parameters box is selected for each test.
The test process begins. Board Sanity, Shared Ram, Local Ram, DSP, Board Timer, Onboard Interrupt, CT812
(bus test), EEPROM, and the T-1 Loopback tests for the base board should all pass. Board Sanity, Shared
Ram, Local Ram, DSP, Board Timer, Onboard Interrupt, CT812 (bus test), and the EEPROM tests for the
daughter board should also pass.
The Country Protocol may also need to be set depending on the ISDN protocol selected.
If you are upgrading from a previous version of xMatters, you can recreate the GlobalCall.tzp file with an additional
entry per line by running the Scan Voice Resources utility (on Windows, click Start > Programs > AlarmPoint
Systems > Scan Voice Resources).
To configure the Global Call call-out parameters:
1. Stop the xMatters node.
2. Open the GlobalCall.tzp file in a text editor, and change all occurrences of:
Techs[R4GcTrunk]\Devs[x]\UseMakeCallBlock=False
To:
Techs[R4GcTrunk]\Devs[x]\UseMakeCallBlock=True
FALSE
To:
ENABLE
TRUE
4. In the last section of the file, named [config], make any required changes.
l
REGID_R4GcMKBFacilityCodingValue
ISDN_NOTUSED
To:
REGID_R4GcMKBFacilityCodingValue
0x00
\Techs[R4GcTrunk]\Devs[23]\DNISSupported=True
\Techs[R4GcTrunk]\Devs[23]\ANISupported=True
Setting
Value
xMatters
GlobalCall
us_mf_io
Dialogic
ISDN Protocol
none
Country
US
Firmware file
default
Parameter file
spandti.prm
CSP_Enabled
YES
Configuration
Note:
Setting
Value
CSPExtraTimeslot
ON
To change the GlobalCall setting, see "To Modify the Global Call Protocol" on page 58.
spandti.prm
The Spandti.prm file may have to be modified, especially for the Framing Format and Zero Code Suppression Mode (this
file is in the Data subdirectory of the Dialogic installation folder):
n
Parameter 0014 Framing Format selects D4 or ESF (Extended Super Frame) framing. The parameter is set to 01 for
this sample.
Parameter 0020 Zero Code Suppression Mode selects None, B8ZS or Bit 7 jamming. The parameter is set to 01 for
this sample.
Note:
us_mf_io.cdp
This file is the ICAPI protocol file for the United States Inbound/Outbound using MF and DTMF tones (this file is in the
Data subdirectory of the Dialogic installation folder). This file typically does not need to be modified.
Setting
Value
xMatters
GlobalCall
pdk_us_ls_fxs_io
Dialogic
ISDN Protocol
none
Country
US
Firmware file
default
Parameter file
spandti.prm
CSP_Enabled
YES
CSPExtraTimeslot
ON
Note:
To change the GlobalCall setting, see "To Modify the Global Call Protocol" on page 58.
After you have changed GlobalCall to pdk_us_ls_fxs_io, start and stop the node to set the value into the registry. Before
the Voice (Phone) Engine can start, you must run the Voice Utility to apply the new protocol to the ProfileConfig.txt
and GlobalCall.tzp files. Once you have done this, restart the node and the Voice (Phone) Engine should start.
Setting
Value
xMatters
GlobalCall
isdn
Dialogic
ISDN Protocol
DMS
Country
US
Firmware file
default
Parameter file
dms.prm
CSP_Enabled
YES
CSPExtraTimeslot
ON
Note:
To change the GlobalCall setting, see "To Modify the Global Call Protocol" on page 58.
Setting
Value
xMatters
GlobalCall
isdn
Dialogic
ISDN Protocol
CTR4
Country
UK
Country Protocol
prot_BTCallStream
Firmware file
default
Parameter file
ctr4.prm
CSP_Enabled
YES
CSPExtraTimeslot
ON
Note:
To change the GlobalCall setting, see "To Modify the Global Call Protocol" on page 58.
Note:
The Parameter file for ISDN is the name of the ISDN Protocol followed by the .prm extension.
E-1 ISDN Q.SIG (ISO 11572, ISO 11574 - QTE) Dialogic Configuration Sample
ISDN Q.SIG is used for this sample:
E-1 ISDN Q.SIG (ISO 11572, ISO 11574 - QTE) Dialogic Configuration Sample
Configuration
Setting
Value
xMatters
GlobalCall
isdn
Dialogic
ISDN Protocol
QTE
Country
UK
Country Protocol
prot_BTCallStream
Firmware file
default
Parameter file
qte.prm
CSP_Enabled
YES
CSPExtraTimeslot
ON
Note:
To change the GlobalCall setting, see "To Modify the Global Call Protocol" on page 58.
Firmware
Equipment Type
4ESS
TE
NT1
NT
5ESS
TE
NI2
TE
DMS/100 and
DMS/250
TE
NTT
TE
VN
TE
VNNT
NT
EURO-ISDN ETSI300-102
CTR4
TE
EURO-ISDN ETSI300-102
NE1
NT
Protocol
Firmware
Equipment Type
DASS2
TE
TPH
TE
TPHNT
NT
QTE
TE
QNT
NT
1TR6
TE
DPNSS (can be
ordered
separately)
A and B side
ETU
TE
ETN
NT
QTU
TE
QTN
NT
Installing xMatters
This section describes how to install the xMatters application and components.
Note:
If you are installing Dialogic voice cards, install them before installing xMatters, as it will be easier to
troubleshoot any system problems.
To start the xMatters installation wizard on Windows, double-click the xmn_install.exe (where n is the version
number) file on the xMatters installation disc. Before running the installer on Windows 2008, ensure that you review the
section "Windows 2008 deployment considerations" on page 29.
Note:
If you want to install xMatters on Windows from a shared drive, first map that share as a local drive. If the
mapping failed, you will receive an error message ("The installer has detected one or more copies of the
Windows Services Control Manager, etc.) and you will not be able to proceed with the installation.
Command
Description
Graphical user
interface
Installing xMatters | 63
Method
Command
Description
Console
Note:
X-Server is required when performing a graphical user interface install on a Unix-based operating system.
Local and remote X-Server installs are possible; however, the user account used to launch the installer must
have appropriate rights to the X display to be used. In most cases, the user already has the appropriate rights.
If the installer will not run, use the "-i console" command to perform a console-based install.
xMatters Installer
This section guides you through the xMatters installation. You can install xMatters with the installation wizard (i.e.,
GUI installer) or through a console install. Although the sections below cover the wizard installer on Windows and the
console installer on Unix, both installation options are available on each platform. Additionally, the wizard and console
installers have identical choices and paths.
Note:
Before installing xMatters, ensure that the user account performing the install has permission to access the
installation directory, and that the installer will be run from a local drive.
Wizard Installation
The following sections describe each graphical wizard installation screen and related settings.
Introduction
After you launch the installer, the Introduction dialog box appears:
Installing xMatters | 64
License Agreement
After reading the introductory text, click Next to continue, which displays the License Agreement dialog box:
After reading the license agreement, use the radio buttons to specify whether you consent to its terms. If you do not
accept the agreement, the installer prevents you from continuing.
Choose Install Folder
If you accepted the agreement, click Next to continue, which displays the Choose Install Folder dialog box:
Installing xMatters | 65
If you want to use a path other than the one displayed, click Choose and browse to the desired folder.
Note:
Ensure that you have sufficient disk space to install xMatters at the specified location (for details, see
"Hardware Requirements" on page 30), and that the user running the installer has read/write permissions for
the destination folder.
Database Preparation
Click Next to continue.
The Database Installation Query dialog box is displayed (Windows only):
Installing xMatters | 66
Click one of the database installation options (if you are installing SQL Server Express, specify the database instance
name, port number, and system administrator password), and then click Next.
Note:
If you choose to install Microsoft SQL Server Express, the sa Account Password must meet the guidelines
defined in "If you are installing Dialogic voice cards, install them before installing xMatters, as it will be
easier to troubleshoot any system problems." on page 63. The installation will prompt you with an error if your
password does not meet the guidelines.
Installing xMatters | 67
Allow installer to automatically create: Select to create the User/Schema automatically. Note that you cannot
automatically create the database over an existing database. To install to an existing database, select Skip this step,
items already exist.
Generate .SQL Script for manual creation: Select to generate the scripts that will create the xMatters User and
Tablespace (the table below provides details for Oracle and SQL database settings).
o
After the scripts are generated, provide them to your DBA to create the User/Tablespace on the database
server. Then, start the installer again and select the Skip this Step, items already exist option (described
next). The installer will add the tables and data to your new Tablespace.
Skip this step, items already exist: Select if the User/Schema already exists.
The Upgrades will Archive All Runtime Data warning appears. This cautions you that upgrading from a previous
xMatters installation causes any current system events to be terminated and archived. Click OK if you want to
proceed.
Description
Hostname/IP
Port
Port number on the computer where the database is to be installed (typically 1521 for
Oracle, 1433 for SQL, and 50000 for DB2).
SID
Installing xMatters | 68
Setting
Description
DB Admin Account
Database administrator user name. Required only if you are allowing the installer to create
the database and user/schema.
DB Admin Password
Password for the DB Admin Account. Required only if you are allowing the installer to
create the database and user/schema.
Tablespace Name
(Oracle only) Name for the new tablespace. Required only if you are allowing the installer
to create the database and user/schema.
Tablespace Filepath
(Oracle only) Path and file name for the new database. Required only if you are allowing
the installer to create the database and user/schema.
(Oracle only) Initial size of the database tablespace. Required only if you are allowing the
installer to create the database and user/schema.
xMatters Account
Schema user account name. Note that on SQL Server: maximum length is 123 characters;
allowable characters are a-z, A-Z, 0-9, (_), (@), and (#); and, you cannot start the account
name with 0-9, (_), (@), or (#).
Note that for SQLServer deployments, this account must be a SQLServer user; xMatters
does not support Windows authentication for SQLServer login.
xMatters Password
Click Next.
Merging Administrator Roles
If you are installing xMatters for the first time, the following dialog box appears:
Installing xMatters | 69
This dialog box gives you the option of merging the xMatters super administrator and Company Administrator Roles in
your xMatters deployment. Multiple-Company deployments do not support merged Administrator accounts. For
deployments that do not require multiple Companies, merging these Roles simplifies system administration.
For more information about Roles, see "Permissions: functions and roles" on page 228.
Note:
Selecting Components
The Select Components dialog box is displayed next:
If you want to install the optional xMatters web server, a Node, or the Voice Engine, specify the following settings:
Optional Components Settings Windows installation
Component
Settings
Web Server
Select the Install xMatters web server check box to install the web server, and then type the port
number to use in the Port field.
Node
Select the Install xMatters node check box to install a Node, and then select one of the following
radio buttons:
Create New Node: Specify the settings on the tabs as described in the table below.
Use Existing Node: Click the Node Name drop-down list and select an existing node. Select this
option when you want to update a node or change a configuration setting.
If your xMatters deployment will be used for voice notifications, select the Install Voice Utilities
for VoIP-SIP and/or Dialogic check box (this option appears only on a Windows install). You may
need to scroll down in the dialog box to see this option.
Installing xMatters | 70
Setting
Description
General
Name
Identifier for the node being installed (this name appears in the node
administration portion of the web user interface). Note that if you attempt to use
the name of an existing node, you will receive a message listing node names that
you cannot use, and you will be prompted to type a new name for the node.
Host
The externally addressable name of the host where the node is being installed.
Used for inter-node communications.
Port
Port on which the node listens for messages from other nodes.
Protocol
Type
Email
Recipient
Email address that will receive a notification if a system health event occurs.
SMTP
Host of the email server that will route system health notifications.
Port
Execute
Target
If available, the user name of the Company Administrator the Health Monitor
should attempt to notify via xMatters in the event of a system health event
Health Monitor
Note:
You can adjust the Health Monitor settings after installation on the Global Configuration page in the xMatters
web user interface. For more information, see "Global Configuration" on page 198.
Installing xMatters | 71
Depending on the components you have chosen to install, other installers are automatically launched and run.
Database Creation Progress
The installer then displays the database creation progress:
Installing xMatters | 72
Install Complete
When the installation is finished, the Install Complete dialog box is displayed:
Installing xMatters | 73
To complete and exit the installation, click Done. If you installed the Voice Utilities, you will be asked to restart the
computer.
Note:
If the installation was unsuccessful, the information panel text provides a reason for the failure.
Console Installation
If you are planning a console install, it is recommended that you review the following sections before installing.
Introduction
After you launch the installer, the Introduction screen appears:
Installing xMatters | 74
The Introductory screen provides basic version and navigation instructions for the installation. Press Enter to continue to
the xMatters License Agreement.
License Agreement
Read the xMatters Licence Agreement (press Enter as necessary to move through the text):
If you do not accept the agreement, the installer prevents you from continuing.
Choose Install Folder
If you want to use an installation path other than the displayed default, type a different target folder:
Installing xMatters | 75
Ensure that you have sufficient disk space to install xMatters at the specified location, and that the user
running the installer has read/write permissions for the destination folder.
Installing xMatters | 76
Allow installer to automatically create: Select to create the User/Schema automatically. Note that you cannot
automatically create the database over an existing database. To install to an existing database, select Skip this step,
items already exist.
Generate .SQL Script for manual creation: Select to create the User/Schema manually.
o
After the scripts are generated, and then run by your DBA, you must restart the installer and select the Skip
this Step, items already exist option (described next).
Skip this step, items already exist: Select if the User/Schema already exists.
The Upgrades will Archive All Runtime Data warning appears. This cautions you that upgrading from a previous
xMatters installation causes any current system events to be terminated and archived. Type 1 and press Enter to
proceed.
If required, select a database type and specify its settings (described in the table below).
Description
Hostname/IP
Port
Port number on the computer where the database is to be installed (typically 1521 for Oracle,
1433 for SQL, and 50000 for DB2).
SID
DB Admin Account
Database administrator user name. Required only if you are allowing the installer to create the
database and user/schema.
Installing xMatters | 77
Setting
Description
DB Admin Password Password for the DB Admin Account. Required only if you are allowing the installer to create
the database and user/schema.
Tablespace Name
(Oracle only) Name for the new tablespace. Required only if you are allowing the installer to
create the database and user/schema.
Tablespace Filepath
(Oracle only) Path and file name for the new database. Required only if you are allowing the
installer to create the database and user/schema.
(Oracle only) Initial size of the database tablespace. Required only if you are allowing the
installer to create the database and user/schema.
xMatters Account
Schema user account name. Note that on SQL Server: maximum length is 123 characters;
allowable characters are a-z, A-Z, 0-9, (_), (@), and (#); and, you cannot start the account name
with 0-9, (_), (@), or (#).
xMatters Password
Press Enter.
Merging Administrator Roles
If you are installing an xMatters database for the first time, you are given the option of merging the xMatters super
administrator and Company Administrator Roles in your xMatters deployment:
For deployments that do not require multiple Companies, merging these Roles can simplify system administration.
Note:
For more information about Roles, see "Permissions: functions and roles" on page 228.
Installing xMatters | 78
If you have chosen to install the optional xMatters web server and/or Node, specify the following:
Optional Components Settings Console Installation
Component Settings
Webserver
Node
Create New Node - Specify the settings for the new node as described in the "Node Settings" table
below.
Use Existing Node - Specify the name of the Node to use.
If applicable, select the type of node (Application Server or Notification Server) to install, and then specify the node
settings:
Installing xMatters | 79
Setting
Description
General
Name
Identifier for the node being installed (this name appears in the node
administration portion of the web user interface). Note that if you attempt to
use the name of an existing node, you will receive a message listing node
names that you cannot use, and you will be prompted to type a new name for
the node.
Host
The externally addressable name of the host where the node is being installed.
Used for inter-node communications.
Port
Port on which the node listens for messages from other nodes.
Type
Email Recipient
Email address that will receive a notification if a system health event occurs.
SMTP
Host of the email server that will route system health notifications.
Port
Execute
Full path of the executable that will be invoked if a system health event
occurs (note that the Health Monitor does not accept parameters).
Health Monitor
Installing xMatters | 80
Tab
Setting
Description
Target
xMatters target that the node will attempt to notify if a system health event
occurs. For example:
mmcbride User name
mmcbride | work email User name and Device
SysAdmins Group name
After you have finished specifying the component settings, installation begins.
Install Complete
When the installation is finished, the Installation Complete screen appears:
If the installation was unsuccessful, the information panel text provides a reason for the failure.
password
admin
administrator
sa
Installing xMatters | 81
sysadmin
uppercase letters
lowercase letters
numbers
Username
Password
Usage
Super Administrator
root
tree
Company Administrator
admin
complex
Note:
xMatters also includes a default Standard User with a web login ID of bsmith and a password of 1000.
You can change the password or login ID, or delete the default User in the web user interface.
Running the init-generator.sh script requires root account access and should be performed by a Unix system
administrator.
where "username" is the name of the user who will run the xMatters processes (if you do not provide a username to
the generator script, the user "nobody" is assumed).
Running Generated Scripts Automatically
The generated scripts can run automatically when the computer boots. Typically, this is done by copying the generated
"alarmpoint-*" scripts to the /etc/init.d directory and managing symbolic links between them and the /etc/rc.d runlevel
Installing xMatters | 82
directories.
However, script automation is platform-dependent and many platforms have programs to help manage these links. It is
recommended that you consult your documentation.
Failing to synchronize system time in xMatters deployment can result in unexpected failover behavior,
duplicated or lost notifications, inaccurate notification schedules and reports, etc.
The sections below describe how to set up NTP on Windows Server 2003 and RedHat Linux (other *nix operating
systems have similar configurations; for further details, contact your vendor or refer to the operating system's
documentation).
Note:
Although NTP is the recommended protocol for synchronizing system clocks over data networks, other
protocols can achieve the same end result. When using a different protocol, considerations should include
implementation across supported operating systems where xMatters components (including databases) will be
deployed.
It is strongly recommended that you back up the Windows Registry before carrying out these steps.
Peers is a placeholder for a space-delimited list of peers from which your computer obtains time stamps. Each
DNS name that is listed must be unique. You must append ,0x1 to the end of each DNS name (e.g.,
us.pool.ntp.org,0x1 ). If you do not append ,0x1 to the end of each DNS name, the changes made in the "Select
the poll interval" step below will not take effect.
TimeInSeconds is a placeholder for the number of seconds that you want between each poll. A recommended
value is 900 Decimal. This value configures the Time Server to poll every 15 minutes.
TimeInSeconds is a placeholder for a reasonable value, such as 1 hour (3600) or 30 minutes (1800). The value
that you select will depend upon the poll interval, network condition, and external time source.
TimeInSeconds is a placeholder for a reasonable value, such as 1 hour (3600) or 30 minutes (1800). The value
that you select will depend upon the poll interval, network condition, and external time source.
The following steps represent a basic NTP configuration; for more detailed NTP setup information, refer to the
man pages for ntpd and ntp.conf.
2. Using the following command, perform an ntpdate to update the local time (synchronization will not occur if the
initial times are too far out; this forces the times to be relatively close):
# ntpdate -u us.pool.ntp.org
3. Using the following command, turn on ntpd as a daemon for run levels 3, 4, and 5 (this ensures ntpd is started
when entering these run levels):
# chkconfig --level 345 ntpd on
Notes
xMatters licenses control access to xMatters features and define deployment parameters
such as the number of Notification Servers. You can enter and manage xMatters licensing
in the xMatters web user interface. For details, see "Licenses" on page 109.
Task
Notes
Configure Protocol
Providers
xMatters automatically installs Protocol Provider sample data. Edit this data and add new
providers as required. For details, see "Protocol providers" on page 157.
xMatters automatically installs User Service Provider sample data. Edit this data and add
new providers as required. For details, see "User service providers" on page 191.
Configure Device Engines xMatters automatically installs the Device Engine for Virtual Devices (Voice, Email,
Pager; for details, see "Virtual Devices" on page 89). You can add other Device Engines
as required; for details, see "Device engines" on page 118.
Define Companies, Sites,
and Clusters
xMatters automatically installs a default Company and Site, which you can edit and add
to as required. For details, see "Licenses" on page 109, "Sites" on page 242, and "Clusters"
on page 156.
Define Roles
Roles control each xMatters Users permissions and access to xMatters features. xMatters
automatically installs several Roles, including Super Administrator, Group Supervisor, and
Standard User. For details, see "Permissions: functions and roles" on page 228.
Define Users
xMatters automatically installs a Restricted User called restricted restricted for testing
purposes. Depending on choices made during installation, Super Administrator and
Company Administrator are also created. Edit and add Users as required. For details, see
the Supervising Users and Groups chapter of the xMatters user guide.
Define Groups
xMatters automatically installs a Group called Operations. Edit and add new Groups as
required. For details, see the Supervising Users and Groups chapter of the xMatters user
guide.
Configure Connection
Pool
You can tune xMatters for increased throughput by optimizing the connection pool
configuration for your deployment. For details, see "Configuring the Database Connection
Pool" on page 357.
Other Items
Depending on your xMatters deployment and licensing, you may be able to define many
other configuration and administration items, such as Authentication Processes (e.g.,
LDAP), Failover, Password Policy, Company Holidays, Subscriptions, and so on. For
details on these and other settings, it is recommended that you review the remaining
chapters in this document.
Text-To-Speech Engines
The following sections identify the supported Text-To-Speech(TTS)engines that you can use to enable voice capability
on your deployment., and provide instructions and guidelines for each engine.
Text-To-Speech Engines | 86
Microsoft Mary
Microsoft Mike
Microsoft Sam
Dialogic cards only support TTS language engines with a voice rate of 8kHz. As a result, languages that use a
higher frequency are not supported and will not work with xMatters (e.g., Korean uses 16kHz). However, higher
TTS language engine voice rates are supported on SIP (SIP Device Engines must use a TTS engine).
If xMatters was not installed using this account, run the SAPI_5_1_English.exe install file.
3. Using the Services applet, right-click xMatters node and select Properties.
4. Click the Log On tab, and then click the This Account radio button.
5. In the pop-up dialog box, click Browse, and then click the Look in drop-down list and select the local machine
name.
6. In the pane, select your login account and click OK.
7. Enter the password and click Apply to verify the entries.
8. Click OK to complete the setup.
9. If you have not already done so, log in using the account specified.
10. From the Windows Control Panel, launch the Speech applet.
11. On the Text to Speech tab, adjust the Voice Speed setting.
12. Click OK.
13. Restart the Node using the Services applet.
Text-To-Speech Engines | 87
NeoSpeech is supported on Windows using SIP or a Dialogic card; it is not supported on Unix/Linux. NeoSpeech is a
32-bit application; as a result, it is compatible only with 32-bit xMatters running on Windows 2008 R2.
Note:
If a TTS engine does not have a standalone installer, you must write software to access the engine based on the
vendors developer toolkit.
Installing NeoSpeech
The NeoSpeech Kate TTS voice is available for download from the xMatters Community web site (click download icon
> Product Downloads, or use to the search field to find NeoSpeech products). By default, xMatters provides licenses
enabled with the Kate voice, as it most closely matches the existing xMatters recordings. If you would prefer the Paul
voice, contact your xMatters representative or xMatters Support. Other voices are available directly from NeoSpeech.
Note:
Each NeoSpeech license is associated with a specific version and voice package.
Description
NeoSpeech_WinHostID
Retrieves the unique MAC address from your system so that NeoSpeech can supply a
license key for the system.
NeoSpeech_Kate
Female TTS voice (this is the default NeoSpeech voice provided by xMatters, as it most
closely matches the existing xMatters recordings).
NeoSpeech_Paul
Male TTS voice (contact xMatters if you would prefer to have this voice instead of the
Kate voice).
SAPI_5_1_English
The Microsoft SAPI installer, which xMatters automatically installs. However, if there is
already a similar version of the file installed on the system, you may need to run this
installer again manually.
You may need to enable pop-up windows for the NeoSpeech site.
4. Select File Download, enter the MAC address of the system where VoiceText will be installed, and then click
Next.
l
When entering the MAC address, omit any dashes and spaces.
Text-To-Speech Engines | 88
C:\Program Files\VW\VT\Kate\M16-SAPI5\data-common\verify
Note:
Sign on as an Administrator, click the Admin tab, and then click the Nodes and Device Engines menu item.
In the All Nodes table, click the Device Engines link for the Node on which you installed NeoSpeech.
In the All Components for Node table, click the link for the Phone Device Engine.
Note that the first TTS phrase spoken by xMatters after a system restart can have several seconds of delay while
the TTS engine initializes. This is normal, and can be addressed by calling in to xMatters after a system restart,
and ensuring that the script used to answer the phone plays at least one voice phrase using text-to-speech.
Dictionary Editor
The NeoSpeech Dictionary Editor allows you to change the way certain words are pronounced. The Dictionary Editor is
provided as part of each voice installation. The Dictionary Editor is named UserDicEng.exe and can be found in the
lib directory.
Double-click UserDicEng.exe to start the program, and then click File > Open and select your user dictionary. By
default, the dictionary file is located at the following path:
n
C:\Program Files\VW\VT\Kate\M16-SAPI5\data-common\userdict
Refer to the NeoSpeech documentation or help file for assistance with selecting, modifying, and saving phrases.
Note:
You may need to restart the xMatters node before the change takes effect.
Reissuing a License
If you upgrade your system or change the network interface card, you may require a replacement license. For information
about obtaining a replacement license, send an email message to xMatters Support (support@xmatters.com).
You may need to enable pop-up windows for the NeoSpeech site.
Virtual Devices
The main xMatters installer includes Virtual Devices (Email, Pager, Phone (Text), Phone (Voice)) that can be used for
training, testing, and troubleshooting.
Virtual Devices | 89
On Windows systems, all Virtual Devices are automatically configured during the installation process and will appear
when notifications are sent to them (note that the Virtual Phone (Voice) requires a sound card). On Unix, all Virtual
Devices except the Phone (Voice) are installed. The Virtual Phone (Voice) will appear only on the Window-based
computer that runs the Voice Engine.
Note:
You can use either the Virtual Phone (Voice) Device or live Dialogic lines, but you cannot use both
simultaneously. When a notification is sent to a Voice (Phone) Device for a person, xMatters will automatically
use the Virtual Phone or real Dialogic lines based on what is configured in the system.
The Virtual Phone (Voice) will always work only on the Windows Voice Engine.
On Windows, click Start and navigate to AlarmPoint Systems > xMatters Virtual Device Control Center.
On Unix, navigate to the installation directory (default is /opt/alarmpoint/alarmpoint_vdevice) and run the
VDevice.sh start shell script.
2. In the xMatters Virtual Device Control Center dialog box, click System > Configuration.
3. In the Virtual Device Configuration dialog box, specify the following settings:
Virtual Device Configuration Settings
Setting
Description
Listen Port
Specifies the port number on which the Virtual Devices should listen for notifications. Note that this
must match the Port setting of the Virtual Device Protocol Provider, as described below.
Auto Reply
No GUI
When selected, specifies that the Virtual Devices will not be displayed when notifications are
received. This setting is meant to be used in conjunction with Auto Reply when testing system
performance under simulated load.
4. Click Save.
Virtual Devices | 90
Description
JDBC_USERNAME=
xMatters user login (schema) name. In Oracle, this can be any name;
in SQL Server, this name must be the same as the database name.
JDBC_PASSWORD=
JDBC_DRIVER_CLASS_NAME=
The JDBC driver used to connect to the database. This string must
match the value for its database type:
o
o
Oracle: oracle.jdbc.driver.OracleDriver
SQL: net.sourceforge.jtds.jdbc.Driver
Oracle: jdbc\:oracle\:thin\:@<server>\:<port>\:<sid>
SQL: jdbc\:jtds\:sqlserver\://<server>\:<port>
Using APSecure
To modify these properties after installation, you must first decrypt the common.properties file using the APSecure tool,
which is included with the xMatters installation.
The command line syntax for running APSecure is as follows:
n
Description
<operation>
<infile>
<outfile>
File that is the target for the decrypted or encrypted file; mandatory.
If you are deploying against a production grade database, such as Oracle 11g or SQLServer, you can improve
performance by adjusting the database connection pool configuration as described in "Configuring the Database
Connection Pool" on page 357.
After configuring the database connection pool, you can further optimize throughput by distributing Device
Engine threads based on how much traffic each protocol supports. For more information, see "Configure concurrent
threads" on page 120.
You can adjust the maximum session size for Protocol Providers to specify the number of notifications that are
transacted within a single session. For more information, see "Set maximum session size" on page 160.
Note:
If required by your environment, see also "High Bandwidth Configuration for a Heavily Loaded Web Server"
on page 355.
Before using command-line instructions to start and stop xMatters components in Windows, use the Windows
Services tool to ensure that the related Service is stopped.
xMatters Nodes
To start or stop an xMatters node from a command line, navigate to the xMatters install directory and use the command
appropriate for the operating system:
Windows
node start
node stop
Note:
The xMatters installer creates an xMatters node entry in the Windows Service Manager that is set to start the
node automatically on bootup.
The xMatters installer creates an init.d reference to start the node automatically on bootup (see "If you are
installing Dialogic voice cards, install them before installing xMatters, as it will be easier to troubleshoot any
system problems." on page 63).
The xMatters installer creates an xMatters web server entry in the Windows Service Manager that is set to
start the web server automatically on bootup.
The xMatters installer creates a sample init.d reference (used to start the web server automatically on bootup).
You may need to modify this script for your environment (see "If you are installing Dialogic voice cards, install
them before installing xMatters, as it will be easier to troubleshoot any system problems." on page 63).
If direct access to the xMatters web server is not possible (e.g., due to firewalls or other browsing restrictions), see
"Fronting the xMatters web server" on page 348.
Uninstalling xMatters
The xMatters installation includes an automated uninstaller (Windows and console) that you can use to remove xMatters
and its components from a computer. The uninstaller can also be configured to remove all components except for the
xMatters database. Removing the database requires the proper database credentials to be specified during the uninstall
process.
Windows Uninstall
It is recommend that you stop the node and web server before starting the uninstall process.
Uninstalling xMatters | 93
3. Click Next.
4. Specify whether to delete the xMatters database and its associated data.
l
If you are uninstalling the database, you must specify its connection settings.
5. Click Uninstall.
6. Select a restart option, and then click Done.
l
Note:
The changes will take effect after the computer has been restarted.
Uninstalling the main xMatters application does not uninstall the xMatters Phone Engine Runtime Library,
SAPI 5.1 English, or the Sentinal System Driver. Use the Add or Remove Programs tool to remove these
applications.
Console Uninstall
Before running a console uninstall, ensure that you have stopped xMatters and the Java Client.
To perform a console xMatters uninstall:
1. Navigate (cd) to the Uninstall xMatters directory within the installation directory.
2. Run the following command (where x is the version number):
./Uninstall_AlarmPoint_x -i console
Uninstalling xMatters | 94
Licenses: explains how Licenses work in xMatters, and how to add them.
Nodes: describes the two types of xMatters nodes, and how to add and define them.
Device Engines: explains how to add and define Device Engines, which control how users send and receive
notifications, and describes the different types available.
Resources: describes the different types of Node Resources, and how to manage them.
Protocol Providers: explains how to define the Protocol Providers that determine how xMatters communicates
with service providers.
User Service Providers: describes how to create and manage the service provider accounts available to users when
creating their Devices.
Authentication Process: explains the authentication methods through which users can access xMatters, and how to
configure them.
Global Configuration: describes how to set the default logging and Health Monitor settings for the xMatters
system.
Constants:explains how to create and configure scripting and other values that can be shared across the system,
within Companies, or limited to a single event source.
Schedule Jobs: explains how to schedule system tasks to take place automatically.
This chapter also includes example walk-throughs of some common configuration processes.
Note:
This guide is current to xMatters version 4.1 patch 022. Note that xMatters patches and updates are
cumulative; for more information about the changes in this release and previous updates, refer to to the 4.1
patch 022 release notes on the xMatters Community site at community.xmatters.com.
Login to xMatters
The web user interface allows administrators to configure and maintain the features and components of their xMatters
deployment. This section describes how to access the web user interface via the login page.
To access the xMatters web user interface, you will need a web browser, the IP address or hostname of the web server on
which xMatters was installed, and the port on which xMatters can be accessed.
To access the xMatters web user interface:
http://<IP or hostname>:<port>/xmatters/
For example, if you wanted to access the xMatters interface using a browser installed on the same machine as the
xMatters web server, you would type the following into your browser's address bar:
http://localhost:8888/xmatters/
Companies
Companies represent the highest level of organization in xMatters. As an xMatters super administrator, you can create,
modify, and manage Companies through the xMatters web user interface.
In a multiple-Company deployment, some system components are common to the xMatters infrastructure and controllable
only by the Super Administrator. These components are not Company-specific, and include Nodes, Device Engines,
Protocol Providers, and Clusters. Other features viewable only by the Super Administrator include Component Status
Reports, Scheduled Jobs, and Clear Runtime History. Where appropriate, this document identifies whether components
are Company-specific in the section introducing and describing each component.
In an xMatters deployment with multiple Companies, each integration agent or Java Client <agent_client_id> must be
unique across the deployment (i.e., not just unique across a Company), because agent client IDs are not qualified by
Company. This restriction is the responsibility of the host Company, and is not enforced by the xMatters application. If
this restriction is violated, external service requests and messages may not be routed properly.
Note:
Companies | 97
Companies page
Note:
To modify an existing Company, click the name of the Company in the list to view its Company Details. For
more information about editing Company Details, see "Define company details", below.
To remove a Company from the list, select the check box next to the Company or Companies you want to
remove, and then click Remove Selected. For more information, see "Delete a company" on page 100.
To create a new Company, click the Add New link, and specify the Company details for the new Company,
as explained in the Company Details settings table below. Click Save to create the Company.
When you add a new Company to a multiple-Company deployment, xMatters automatically creates the default
out-of-box Event Domains, script packages, Sites, and other required settings for the new Company.
Changes to these fields may take up to five minutes to take effect. Consider this delay when attempting to finetune any settings, especially those that involve timing during outbound phone calls.
Once the company is created, configure a login page so the companys users can access it via the xMatters web user
interface. For more information, see "Create company login pages" on page 104.
You can also create a company administrator, who can then create sites, and assign countries, time zones, and languages.
For more information, see "Company administrators" on page 239.
To modify Company details:
1. On the Companies page, in the Current Companies table, click the name of the company you want to modify.
2. On the Company Details page, enter the following information into the form:
Companies | 98
Description
State
Specifies the current state of the company and controls access; select one of the following
options:
o
o
o
o
o
Active
Test
Maintenance
Assigned
Terminated
For more information about these options, see "Change company states", below.
Name
Description
Call In Number
Specifies the companys call-in number. This number appears in notifications as the number
Users should call when responding to notifications or calling in to check for Alerts.
Note: When using SIP, if the specified Call In Number is set to a valid extension found in the
Asterisk Server configuration, callouts will fail with a 403 forbidden error.
Companies | 99
Setting
Description
Short Code
Compliance
Select an option to specify when xMatters should send a notification explaining terms of
service to each SMSDevice:
l
None: xMatters will not send a notification to the Device when it is added, modified, or
activated.
Send Welcome:xMatters will send a Welcome notification to an SMSDevice when it is
added, modified, or activated. (The content of this message is defined in the
SMSCONFIRMMSG Constant.)
Send Custom: xMatters will send a Custom notification to an SMSDevice when it is
added, modified, or activated. (The content of this message is defined in the
SMSFIRSTMMSG Constant.)
Send Welcome and Custom: Sends both the Welcome and the Custom messages.
In addition to modifying the content of the custom message, you can modify its behavior and
other properties using the xMatters scripts. For example, you could extend the functionality of
the custom message to include a validation request, and then select the "Send Welcome and
Custom" option. Whenever a user added a new device, xMatters would send a Welcome
message containing the standard terms and conditions, and then automatically send a
validation request to the Device three seconds later.
Note that specific content for these messages may be required by local regulations or your
SMSprovider; for more information about specifying their content, see "SMSConfirmation
and First Alert Messages Constants" on page 213.
Allow Single Sign On When selected, permits Users accessing xMatters through an authorized portal to bypass the
xMatters Sign In screen. For more information, see "Configure Single Sign On" on page 107.
Note that xMatters does not support SSO for multiple-Company deployments.
Clusters
Specifies which Clusters are available for this Company. For more information, see "Clusters"
on page 156.
3. When you are satisfied with the information you have provided, click Save.
Delete a company
When you delete a company from xMatters, all company-specific objects (groups, users, events, etc.) and data are also
deleted from the database.
Note that companies are not removed from the system immediately. Instead, they are marked as "Delete Pending" (which
is similar to the "Terminated" state), and deleted during the next scheduled removal of runtime and archive data.
Companies | 100
Active
When a Company is Active, all authenticated Users, SOAP activities, event processing, and voice calls can access and
use the Company normally.
Test
When a Company is in Test state, only Company Administrators and Developers can access it via the web user
interface or through voice call-in; SOAP activities and event processing occur normally.
Maintenance
When a Company is in Maintenance state, all logins are disabled except for the Company Administrator. SOAP
activities, events, and voice call-ins are rejected with appropriate error messages and logging functions. No data is
purged from the system.
Assigned
A Company is in the Assigned state when it has been created and assigned (or branded) to a particular customer; this
is the default state when creating a new Company. Only Company Administrators and Developers can access the
Company via the web user interface or voice call-in. All messaging panel events, SOAP activities, and Java Client inputs
are rejected with appropriate error messages and logging. For testing purposes, the Quick Messaging panel can send
events and Web Services are enabled.
Terminated
Terminated Companies cannot be accessed via the web user interface; all event, SOAP, and call-in inputs are rejected
with appropriate error messages and logging; data is purged based on a manual or scheduled purge. Note that Terminated
Companies count against the Company licensing count and Company Quotas.
In multiple-Company deployments, Super Administrators can use the Company Quotas page to assign
resources to separate Companies in the system, as described in "Assign company quotas", below.
Companies | 101
The page displays the following information for the current Company:
n
Maximum number of Groups, Users, and Mobile Users available according to the current licenses.
The number of Groups, Users, and Mobile Users currently in use, and how many are remaining.
The page also displays the following information for the system:
n
Maximum number of Event Domains, custom Subscription Panels, and Integration Services available according to
the current licenses.
The number of Event Domains, Subscription Panels, and Integration Services currently in use.
Companies | 102
3. Specify the maximum number of Users, Groups, etc. for each Company in the system.
l
The table displays the number of each item you have already allocated to each Company, and the maximum
number you can have based on your licenses.
l
l
l
l
l
l
Note:
When a Company receives SIP calls, the lines are allocated from the quota configured in the In column. Any calls
received over that quota will use the pool values specified by the In/Out column.
When a Company makes SIP calls, the lines used are those reserved by the In/Out column.
If the Company uses more lines than the reserved quota for In or In/Out SIP lines, incoming and outgoing calls
will attempt to use any SIP voice lines or appearances not reserved by another Company:
If no outbound unreserved lines are available, outbound calls will be delayed.
If no inbound reserved and unreserved lines are available, callers will receive a busy signal and can try again in a
few minutes.
As calls are completed, existing calls are considered to be working out of the Companys reserved quotas.
If the system capacity drops below the reserved quota limits, the system logs the error and ignores the quotas; any
inbound and outbound calls will be serviced on a first-come, first-served basis.
The total quota count is determined independently of the Company state; i.e., the quotas set for a Terminated
Company still count against the total SIP lines reserved.
Example:
A multiple-Company deployment has two Companies, A and B, with a total licensed capability of 20 SIP lines, split
evenly between two Notification Servers. Each Company has reserved one In line and four In/Out lines, leaving ten
unassigned SIP lines. Consider the following scenarios:
l
Company A is using one inbound line and four outbound lines while Company B is not using any. If Company A
requires another outbound line, the line used is assigned from the 10 unreserved lines.
Company A is using five inbound lines and ten outbound lines while Company B is not using any. If Company A
requires another outbound line, the dispatch is delayed because the only available lines are reserved by Company
Companies | 103
B. If Company A requires another inbound line, the caller receives a busy signal.
l
One of the Notification Servers is taken offline temporarily. Company A is using eight outbound lines while
Company B is using two outbound lines. The quota limits are not observed.
2. Create a new subfolder in the login directory that identifies the Company for which you are creating the login
page. Note the following requirements:
l
Use lower-case characters only, and do not include any spaces in the folder name. This is important as
different operating systems do not process white spaces and upper-case characters in the same way.
The directory name will appear as part of the web user interface path for the Company. For example, if you
create a subfolder named company_a, the URL to access the web user interface for that Company would
resemble the following (note that if you want to use the classic AlarmPoint user interface, replace "xmatters"
with "alarmpoint" in the URL):
http://company.com:8888/xmatters/company_a/SignOn.do
3. Open the ../alarmpoint/jsp/login/default directory, and copy the following files from that folder into your
new Company folder:
Note:
SystemMessage.xml
SignOn.jsp
Disclaimer.xml
4. In your new Company folder, open the SignOn.jsp file in a text or Java Script editor, and locate the following
parameter:
<signon-page companyName=""
5. Insert a value between the quote marks to match the name of the Company you created within xMatters. For
example:
<signon-page companyName="Company A"
Note:
If you change the name of the Company (e.g., via the xMatters web user interface), you must also update this
parameter in the SignOn.jsp file.
Companies | 104
2. To add a system message, open the SystemMessage.xml file in an XML editor, and add your message text after
the <div id="sign-on-system-message"> tag.
3. To add a disclaimer, open the Disclaimer.xml file in an XML editor, and add your disclaimer text after the <div
id="sign-on-disclaimer"> tag.
4. Save and close the file.
Note:
If you want to change the appearance of the system message and disclaimer text, you can format the font using
standard XML parameters and the alarmpoint.css file located in the
<xMHOME>/webserver/webapps/cocoon/alarmpoint/css/ folder.
If the file exists, xMatters automatically displays the file within the login dialog on the login page for that Company.
To display an image on the login page, rename your image file to customer-logo.gif (use an image editor to convert the
file format if necessary) and copy it into the default directory on the xMatters web server. Note the following
recommended guidelines:
n
File size: There are no restrictions on the file size of the image, but larger files may affect the loading time of the
login page, depending on the available resources and number of concurrent logins.
Image size and resolution: For best results, use a high-resolution image 70 to 80 pixels tall and 80 to 100 pixels
wide. Because the image is relatively small, the higher resolution should not adversely affect the size of the file,
and loading times will not be an issue. Images larger than 80x100 pixels may displace other login page elements
and result in misaligned components.
To use a different image name or file type, open the /alarmpoint/jsp/login/<Company Name>/SignOn.jsp file and
locate the following code:
<div class="sign-on-logo-container">
<% if (application.getResource("/alarmpoint/" + loginPath + "/customer-logo.png") != null) {
%>
<table class="alarmpoint-logo">
<tr>
<td class="small-logo">
<img class="customer-logo" src="<%="/static/" + loginPath + "/customer-logo.png"%>"
/>
</td>
...
Companies | 105
</tr>
</table>
<% } else {%>
</div>
Change both occurrences of customer-logo.png to the file name of the image you want to display on the login page.
Add page header graphics
By default, xMatters looks for an image file named customer-logo2.gif in the following directory on the web server:
<xMHOME>/webserver/webapps/cocoon/alarmpoint/jsp/login/<Company Name>/
If the file exists, xMatters automatically displays the file within the page header of all pages for that Company.
The page header graphic is automatically scaled to 29x29 pixels, which may cause your image to distort if it is not
square.
To use an image wider than 29 pixels, you can edit the
<xMatters>/webserver/webapps/cocoon/alarmpoint/css/alarmpoint.css file. Locate the following section:
div.customer-banner-logo img {
z-index: 100;
position: absolute;
left: 6px;
top: 45px;
height: 29px;
width: 29px;
}
Edit the width line to specify the width of your image; for example, if you want to use an image that is 100 pixels
wide, change the line to the following:
width: 100px;
It is recommended that you do not use an image taller than 29 pixels, as larger images will skew the alignment of the
other header components.
To use a different image name or file type, open the /alarmpoint/sitemap.xmap file and locate the following code:
<map:action name="add-customer-logo"
src="com.invoqsystems.apex.web.cocoon.actions.AddCustomerLogoAction">
<map:parameter name="imageName" value="customer-logo2.gif"/>
</map:action>
Change the value for the map:parameter to the file name and type of the image you want to use.
To modify the title of the message, replace the signon.title.not.found key with the appropriate text.
To modify the message replace the signon.error.not.found key with the appropriate text.
Companies | 106
xMatters does not currently support SSO with xMatters on demand or xMatters enterprise deployments with
multiple Companies.
An HTTP Request passes HTTP headers (usually via a proxy server) containing the users web login ID and
authentication status to xMatters.
The user ID included in the HTTP header must exist in the xMatters database and be authorized to access
xMatters.
Note:
Before configuring SSO, ensure that the Allow Single Sign On check box is selected on the Company's details
page in the web user interface.
The HTTP_ portion of the header lines is optional, but all three lines must use the same convention.
When the criteria have been met, users can directly access any page that is normally accessed via the main xMatters
menus on the left side of the screen. For example, a user authenticated with SSO can navigate directly to their Active
Alerts page using the following URL:
<xMattersIP>/xmatters/Alerts/ActiveAlerts/ActiveAlerts.do
Note that the semi-colon and the session information that follows in the URL shown in your browser is not included in
the URL initially used to load a page using SSO.
To reach the Sign In page and log in to xMatters as a different user when an SSO deployment portal is in place, click the
Sign Out link at the top of any page. You can then sign in using any authorized xMatters web login ID and password.
xMatters also redirects to the default Sign In page in any of the following circumstances:
n
The user web login ID specified in the HTTP header does not exist in the xMatters database.
A user has been authenticated via SSO, but the Company is not configured to permit SSO access.
If the user authenticated by SSO does not have permission to view the page specified in the URL, xMatters redirects
them to a standard access denied page. If the user accesses xMatters through the default URL, xMatters redirects them
automatically to their home page.
These steps must be carried out on all web servers in your xMatters deployment.
Companies | 107
sso.config.authenticateHeader=SM_AUTHENTIC
sso.config.authorizedHeader=SM_AUTHORIZED
sso.config.userHeader=SM_USER
2. Modify the value entries as necessary and save the file as custom.properties.
Note:
Do not overwrite, delete, or modify the default.properties file; make changes to the custom.properties
file only.
Tenant Company Users who are mapped to a Service Provider Support User in the host Company cannot have
Devices assigned to them.
While the Service Provider Support Role cannot be assigned to a Company Administrator, MPS Users in the host
Company can be mapped to Company Administrators in a tenant Company, provided the Company Administrator does
not have any Devices assigned to them.
To map Service Provider Support Users to tenant Company Users:
1. Log in to the host Company as a Company Administrator, or a User with the Service Provider Admin Role, and
then click the Users tab.
2. Create a new User with the Service Provider Support Role, or assign the ServiceProvider Support Role to an
existing User that you want to be able to log into a tenant Company.
3. On the User's details page, in the Common Tasks menu, click Tenant Company Users.
l
Companies | 108
Start typing the name of a tenant Company User in the Add User field; when the User's name appears, click
it to assign the User mapping.
Click the Advanced Search link to specify a Company and then use the User Search dialog to locate the
User you want to assign.
5. To remove a mapping, select the check mark for the mapping, and then click Remove Selected.
The mapped host Company User can now use the Log In As User feature to log into the tenant Company as the tenant
Company User. For more information about this feature, see ."Log in as another user" on page 241
Licenses
You can view and add xMatters licenses using the Active Licenses page. Licenses determine what features are available,
how many users can access the system, the number of available Nodes, and so on.
For more information about Licenses and their function in xMatters, see "xMatters Products, Licensing, and Deployment
Options" on page 20.
If you apply a multiple-Company deployment license to an xMatters installation that has merged Administrator accounts,
the merged accounts are converted to Company Administrator accounts and a new Super Administrator account is
created. Note that a merged Administrator account can receive and respond to notifications, and counts towards the
license limit of Users in the system. With non-merged accounts, the Super Administrator cannot be notified and does not
count towards the license limit.
Note:
All Users in the xMatters database count towards the license limit. This means that Users not set as Active (i.e.,
on their User Details page) are still counted for licensing purposes. For further details on xMatters licensing,
contact xMatters Sales.
Licenses are distributed by xMatters in one of two ways: a short string of numbers and letters, which is used to add a
single feature, or a text file containing a list of strings, which is used to add a number of features or to upgrade the
deployment to a new version; e.g., upgrading from xMatters lite to xMatters workgroup.
To apply a license file:
1. Log in to xMatters as a Super Administrator.
2. Click the Admin tab, and then click Active Licenses.
l
Licenses | 109
To add a license code for a single feature, click the Add New link. On the Add License page, type the
license key into the License Code field, and then click Save.
To add license codes from a file, click the From File link. On the Add License page, click Browse, and
locate the license file on your machine or network. Click Open, and then click Upload to apply the license
file. After the license file or license key is applied, xMatters displays an updated Licenses list.
To export your list of active licenses to a spreadsheet (e.g., to send to xMatters Support for help when
troubleshooting an issue), click the Export link. xMatters will export the licenses to an Excel spreadsheet
and the browser will then prompt you to save it to your local computer.
Nodes
There are two kinds of nodes in xMatters:
Nodes | 110
Node Types
Node Type
Description
Application
Server
Receives events and converts them into notifications. Application server nodes may also contain
device engines.
Notification
Server
Contains device engines, solely responsible for delivering notifications and receiving responses
from devices.
Note:
For deployments with multiple nodes, the time zone for the operating system must be synchronized across all
application server nodes and web servers. For more information, see "Multiple Node Deployment
Considerations" on page 34
Failover
Depending on its licensing, an xMatters installation can include up to three application server nodes. When multiple
application servers nodes share the database, they are considered to be in failover configuration. Note that Clusters do
not affect failover; they are used strictly to specify message routing preferences.
Node failure detection
Every 10 seconds, each Application Server timestamps the database. At the same rate each application server examines
the timestamps of other application. If the last timestamp of a node is more than 30 seconds old, that node is considered
to have failed. The node that detects this assumes ownership of the processes of the failed node.
Undelivered Alerts
Alerts within the xMatters system are stored only in the database. If an Application Server Node fails, its Alerts remain
in the database until the Application Server Node restarts, or another Node detects its failure.
Note:
Whenever failover occurs, an email Alert is automatically sent to the recipient specified in the Health Monitor
settings. For more information, see "Global Configuration" on page 198.
Nodes page
Nodes | 111
3. Note the Status column that indicates whether the Node is active (green check mark), or inactive (red 'x'); an
inactive Node cannot process notifications.
4. In the All Nodes list, do any of the following:
l
To modify an existing Node, click the name of the Node in the list to view its Node Details. For more
information, about editing Node Details, see "Define node details", below.
To remove a Node from the list, select the check box next to the Node you want to remove, and then click
Remove Selected.
To view and manage the list of Device Engines for a Node, click the Device Engines link in the View
Components column. For more information about adding and managing Device Engines, see "Device
engines" on page 118.
To view and manage the Resources for a Node, click the Resources link in the View Resources column. For
more information about adding and managing Resources in Nodes, see "Resources" on page 150.
To add a new Node, click the Add New link, and then select the type of Node you want to add from the
drop-down list. Click Continue to specify the details for the new Node. For more information about the
types of Nodes, and the specific details for each type, see the tables in "Define node details", below.
Nodes must be installed using the xMatters installer. You can add a Node in the web user interface before
installing it, but you must still run the installer against the target machine using the "Use Existing Node"
option; for more information, see "Installing xMatters" on page 63.
Note:
Activity states
The list identifies the possible values for the All Nodes table's "Activity States"column, and provides an explanation of
what each value means.
n
Running:Indicates that the Node is active, and maintaining its scheduled heartbeat activity with the xMatters
database.
Stopping:Indicates that the Node is in the process of completing required tasks in preparation for shutting down.
This status is usually the result of stopping the Node manually.
Stop: The Node has been successfully stopped or shut down, and is no longer processing notifications or
communicating with the database.
Warning:The Node is still running, but has not successfully completed a heartbeat with the database for more
than 30 seconds.
Unreachable:The Node has not successfully completed a heartbeat with the database for more than 60 seconds.
At this point, xMatters no longers considers the Node to be active, and will change its status to Inactive. Should
the heartbeat function resume, xMatters will reactivate the Node automatically.
Nodes | 112
2. On the Application Server Node Details page, enter the following information into the form:
Application Server Node details
Detail
Description
Callback Number
Type the phone number Users should call when responding to notifications sent by this Node.
Nodes | 113
Detail
Description
Active
Select this check box to activate the Node, or clear the check box to disable the Node.
Identifier
Type a unique identifier for the Node to be stored in the configuration database.
Description
Select Cluster
Specify the Notification Server Cluster which will contain this Node. For more information, see
"Clusters" on page 156.
Client Connections
Maximum number of Java Clients that can connect simultaneously. This value is licensecontrolled.
Host
Specify the externally-addressable hostname or IP for this Node. (Used for inter-node
communications.)
Port
Hub Port
LOGGING
For an explanation of the Logging settings for Nodes, see "Configure node logging" on page
117.
Executable
Fully-qualified path to an executable file to launch whenever a Health Monitor event occurs
("C:\Working Folder\myScript.bat" will run a batch file; on a Linux node computer,
"/home/user/myScript.sh" runs a shell script). Note that the Health Monitor does not accept
parameters. For more information on the Health Monitor and the conditions that trigger an event,
see "About the Health Monitor" on page 198.
3. When you are satisfied with the information you have provided, click Save.
Defining a Notification Server Node
Notification Server Nodes contain Device Engines, which are responsible for sending notifications and receiving
responses via service providers and device protocols.
Note:
For more information about Device Engines, see "Device engines" on page 118.
Nodes | 114
2. On the Notification Server Node Details page, enter the following information into the form:
Detail
Description
Callback Number
Type the phone number Users should call when responding to notifications sent by this Node.
Note: If a Call In Number is specified for the Company (as described on "Companies" on page
97), that number will take precedence over this setting.
Active
Select this check box to activate the Node, or clear the check box to disable the Node.
Identifier
Type a unique identifier for the Node to store in the configuration database.
Description
Select Cluster
Specify the notification server cluster which will contain this Node.
Host
Specify the externally-addressable hostname or IP for this Node. (Used for inter-node
communications.)
Port
Nodes | 115
Detail
Description
Logging
For an explanation of the Logging settings for Nodes, see "Configure node logging" on page
117.
Executable
Fully-qualified path to an executable file to launch whenever a Health Monitor event occurs.
For more information on the Health Monitor and the conditions that trigger an event, see "About
the Health Monitor" on page 198.
3. When you are satisfied with the information you have provided, click Save.
When a Notification Server Node is created using the web user interface, the displayed node status may remain
listed as "Not Deployed". To resolve this, delete the Node in the web user interface and recreate it using the
xMatters installer.
Note:
The Active Licenses control the maximum number of threads allowed, and the number of threads per Device
Engine.
Nodes | 116
If this event is not of interest, this portion of the script should be removed. For more information about scripting in
xMatters, refer to the xMatters Online Developer's Guide.
Configuration levels
There are three configuration levels within xMatters: Global, Node, and Device Engine. Most configuration settings
apply to only one level, but logging settings are an exception. Logging settings affect multiple levels, and changes on
one level may interact with or affect settings on another level.
Interactions between log settings take one of two forms: inherit or override. Lower-level components inherit the log
settings of higher-level components; that is, Device Engines inherit log settings from the Node to which they belong,
and Nodes inherit log settings from the global configuration. If you change the log level settings for a lower-level
component, you override the settings inherited from the higher-level component. If you then change a log setting at a
higher level, the change affects only the higher-level component.
For example, if you set a Nodes log level to Normal, all Device Engines for the Node inherit the Normal log level. If
you change the log level for a specific Device Engine to Detailed, then the log setting for the Device Engine overrides
the setting inherited from the Node. If you then turn off the global logging, the log settings for the Node and Device
Engine remain unchanged.
You can specify the logging settings for each Node independently when you add a Node or modify the details for an
existing Node. The settings described in the following table are available on the Details page for each Node:
Node Logging Settings
Detail
Description
Log Directory
Default location to store log files created by logging within scripts. Some scripts
may override this location.
Nodes | 117
Detail
Description
Log Level
o
o
o
o
The logs record any messages flagged with the specified severity level or higher.
For example, if you select Info, the logs will include all messages flagged with
Info, Warn, Error, and Fatal.
Note that more detailed log levels produce log files that cover a shorter time
period.
Detailed Statistics Logging
Includes detailed component statistics, such as queue size and average execution
times, in the log files. Note that enabling this feature can negatively impact
performance.
The node also has redirection for the STDOUT and STDERR streams into special log files, but they cannot
currently be output in XML format.
Device engines
Device engines are components that deliver notifications to different types of devices and, where applicable, receive and
process two-way replies and relay them to xMatters.
Each device engine implements a different protocol, and each protocol requires a dedicated device engine. When the
device engine is started, the protocol will be passed as a parameter and the device engine runs in that protocol mode.
The Node Components page displays a list of any Device Engines assigned to that Node.
To modify an existing Device Engine, click the name of the Device Engine in the list to view its details. For
more information about editing Device Engine details, see the following section, "Device Engine Types" on
page 120.
To remove a Device Engine from the list, select the check box next to the Device Engine you want to
remove, and then click Remove Selected.
To add a new Device Engine, click the Add New link, and then select the type of Device Engine you want
to add from the drop-down list. Click Continue to specify the details for the new Device Engine. For more
information about the types of Device Engine, and the specific details for each type, see the tables in the
following section, "Device Engine Types" on page 120.
You can see the current status of each component in the Activity State column.
Description
Generate Separate Log File Generates a separate log file for the current Device Engine.
Level of detail required for the log files.
Log Level
Note that more detailed log levels produce log files that cover a smaller window of time.
Expanded MAPI Logging
To assist in troubleshooting MAPI issues, additional logging has been added for the library file used by MAPI Device
Engines. Any activity that occurs in alarmpoint_mapi.dll is written to a log file located at:
<xMatters>/logs/mapi_dll_log.txt
The maximum size for this log file is 10MB, after which it is rolled over into a single backup file named mapi_dll_
log1.txt.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
The following steps have to be applied to each of the Event Domains you want to use with xMatters and BES
notifications.
3. If you upgraded from a version prior to xMatters 3.1, add the following code to each of the presentation scripts (If
you are working with a new installation, skip this step.):
ELSE-IF ($content.deviceclassification == "bes")
@recipient = @event::getRecipient($content.recipient_target)
$recipientCategory = @recipient::getRecipientCategory()
IF ($recipientCategory == "DEVICE")
@person = @event::getRecipient($recipient.owner)
$userId = $person.id
ELSE
$userId = $recipient.id
ENDIF
$content.subject = "xMatters Message: " & $event.incident_id
$content.message = "Message"
#Fill the html part for BES device
#Note: content.pushurl must be present, even if url is invalid
$content.pushurl = "http://localhost:8888/static"
$content.pushtitle = $content.subject
$content.htmlmessage = $content.htmlmessage & "<table width=\u0022100%\u0022
border=\u00221\u0022>"
$content.htmlmessage = $content.htmlmessage & "<tr><td><b>Situation</b></td><td>" &
$content.situation & "</td></tr>"
$content.htmlmessage = $content.htmlmessage & "<tr><td><b>Device</b></td><td>" &
$content.device & "</td></tr>"
$content.htmlmessage = $content.htmlmessage & "<tr><td><b>Time of Incident</b></td><td>" &
$userTime & "</td></tr>"
$content.htmlmessage = $content.htmlmessage & "</table>"
IF (EXISTS($content.choices))
$content.htmlmessage::add("<br>Your response choices are:")
#Change the URL to point to your web server
$content.htmlmessage::add("<FORM
action=\u0022http://localhost:8888/jsp/ProcessNotificationResponse.jsp\u0022
method=\u0022post\u0022>")
$content.htmlmessage::add("<P><SELECT name=\u0022responseChoice\u0022>")
FOR ($choice : $content.choices)
$content.htmlmessage::add("<OPTION>")
$content.htmlmessage::add($choice)
$content.htmlmessage::add("</OPTION>")
ENDFOR
$content.htmlmessage::add("</SELECT><br />")
$content.htmlmessage::add("<input type=\u0022hidden\u0022 name=\u0022notificationId\u0022
value=\u0022" & $content.notification_key &"\u0022>")
$content.htmlmessage::add("<input type=\u0022hidden\u0022 name=\u0022userId\u0022
value=\u0022" & $userId & "\u0022>")
$content.htmlmessage::add("<input type=\u0022hidden\u0022 name=\u0022deviceType\u0022
value=\u0022BES\u0022>")
$content.htmlmessage::add("<br><INPUT type=\u0022submit\u0022
value=\u0022Respond\u0022><INPUT type=\u0022reset\u0022></P></FORM>")
ENDIF
Note:
The above code applies to the default script package. For other script packages refer to the out-of-the-box
script packages delivered with xMatters.
4. In each of the presentation scripts, locate the following line and change localhost in the URL to the fully
qualified domain name of the xMatters web server.
#Change the URL to point to your web server
$content.htmlmessage::add("<FORM
action=\u0022http://localhost:8888/jsp/ProcessNotificationResponse.jsp\u0022
method=\u0022post\u0022>")
Note:
The URL must be in this form so a Blackberry Device can access it from its browser.
5. Save and validate the script, update the version number, and check in the script package.
6. Repeat steps 3 to 6 for each of the script packages you are planning to use in xMatters.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
You can use remote antennas, as there may not be cellular reception in the data center.
GSM often has the lowest priority on a network, and message delivery can be substantially delayed (perhaps for
hours).
SMPP, SNPP, and WCTP are preferred methods of supporting two-way SMS, if the cellular provider supports these
protocols.
Many of the cellular service providers do not support two-way communications with other cellular service
providers, particularly providers in the United States. Select the provider for your GSM modem based on the
people with whom you need to communicate.
During implementation, delivery and response times have been unpredictable. Single delivery, and turnaround time
for a two-way message, has taken anywhere from a minute to several hours. SMS provides no confirmation on
receipt, meaning the message can get "lost" (without the sender being told) and can take hours to deliver. This
must be taken into consideration if you plan to use this as a method of critical event notification.
The Notification Polling setting specifies how often the Device Engine should check for new notifications. The
Polling Interval setting specifies how often the Device Engine should check for responses. If the Device Engine
attempts to do both at the same time, it causes a resourcing conflict, and the GSM modem cannot send any
messages. You can avoid this conflict by configuring the polling intervals so they do not overlap. For example, the
default setting for Notification Polling is 10 seconds. If you want to keep this default setting, the recommended
Polling Interval setting for the first serial device is 13 seconds.
Description
Name
Description
Notification
Polling (sec)
How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300. (See related point in
GSM modem technical issues, above.)
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Session Timeout
(min)
Length of time in minutes before the session times out. To have every session time out, enter 0.
To have sessions never time out, enter a negative value.
Carrier Wait
Time
How long, in seconds, to wait for provider to prepare before commencing transmission of
notifications.
Response Wait
Time
Detail
Description
Notification Key
String included in the body of the notification that identifies the original alert or notification to
which the User is responding.
Normally this key is enclosed with delimiting characters; e.g., the default value,
<%Notification Key%>.
If the delimiting character sequence is not guaranteed to be unique, the Device Engine may make
an incorrect match, causing an exception and response failure.
If you have configured simple SMSreplies, as described in "Configure simple SMS replies" on
page 143, this field is disabled.
If no delimiters are present, the first word of the response will be used as the notification key. If
the delimiters occur more than once in the body of the notification, the first instance is used as
the notification key.
Response Key
String included in the body of the notification that identifies the beginning of the response
portion of the Users return message.
If you have configured simple SMSreplies, as described in "Configure simple SMS replies" on
page 143, this field is disabled.
Choice Message
Response Message
Detail
Description
Serial Devices
This area displays an editable list of serial device resources available to the GSM Modem Device
Engine. Click Add New Device to create a new serial device, and specify the following settings:
o
o
o
o
o
o
o
o
o
o
Serial Port: Port to use to connect to the GSM modem (e.g., Windows: COM1, COM2,
etc.; Unix: /dev/ttyS0, /dev/USB0, etc.)
Init String: Initialization string or code required for the GSM modem.
Baud Rate: GSM modems baud rate.
Databits: GSM modems databits setting.
Stop Bits: GSM modems stop bits setting.
Parity: GSM modems parity setting.
Flow Control: GSM modems flow control setting.
Sim Pin: If required, the personal identification number for the SIM card in the GSM
modem.
Mode: Messaging mode supported by the GSM modem.
Polling Interval: How often, in seconds, the Device Engine polls the modem for responses
to notifications. (See related point in GSM modem technical issues, above.)
To remove a serial device, select the check box next to the device you want to remove, and then
click Remove Selected Devices.
Known Good Configurations
The following represent known good configurations for the indicated GSMmodems. Settings marked "Deploymentspecific" should be configured to reflect the needs of your deployment.
Note:
These known good configurations are only meant to provide examples of working deployments; your
deployment may require different configuration values.
Wavecom Fastrack GO
Setting
Configured Value
Name
(Deployment-specific)
Description
(Deployment-specific)
10
Logging
(Deployment-specific)
-1
120
Notification Key
(Deployment-specific)
Setting
Configured Value
Response Key
(Deployment-specific)
Choice Message
(Deployment-specific)
Response Message
(Deployment-specific)
Serial Devices
o
o
o
o
o
o
o
o
o
o
HTTPClient Device Engines support HTTPGETand HTTPPOST operations, which allow you to create requests
consisting of name/value pairs and send to them to a protocol provider.
The Device Engine does not include a separate or dedicated web server. It uses the xMatters web server to handle
responses.
Responses and other settings are configured using the related HTTPprotocol providers:
l
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
(sec)
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Details
Description
Response Message
This field should inform Users that when responding to a plain-text alert, they should type
the keyword RESPONSE in the subject line, followed by a single space, and then one of
the options listed. For example, they might respond with "RESPONSE ACCEPT".
Also note that this response should be the only text in either the subject of the email, or
the first line in the body of the email message.
If you have configured simple SMSreplies, as described in "Configure simple SMS replies"
on page 143, this field should be changed to reflect the new response process. The
recommended value is "Reply %ResponseChoices%".
If you are configuring this Device Engine to work with a fax provider (e.g., Phaxio), the
response instructions should indicate that Users should not attempt to fax their response
back to xMatters, but should instead call in, or log in to the web user interface, to respond.
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Logging
HTTPVoice Device Engines support HTTPGETand HTTPPOST operations, which allow you to create requests
consisting of name/value pairs and send to them to a protocol provider.
The Device Engine does not include a separate or dedicated web server. It uses the xMatters web server to handle
responses.
Responses and other settings are configured using the related HTTPprotocol providers:
l
Description
Name
Description
Notification Polling
How often (in seconds) the Device Engine polls the notification node for new alerts. Must be
a whole number greater than or equal to 10 and less than or equal to 300.
Concurrent Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page
119.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Server Address
Server Port
Account
Password
SSL Flag
Indicates whether the service provider uses Secure Socket Layer (SSL) encryption.
When using MAPI with Microsoft Outlook, ensure that you install the latest patches for Outlook, available
from the Microsoft web site. If you are using Microsoft Outlook 2007, ensure that you have applied Service
Pack 1 (SP1).
For most protocols, the connection is transient, and each notification contains the required provider information. MAPI
providers are different in that they require that connections are constantly established. In xMatters, this means that the
provider configuration must be performed at the Device Engine level, rather than the Protocol Provider level.
Expanded MAPI Logging
To assist in troubleshooting MAPI issues, additional logging has been added for the library file used by MAPI Device
Engines. Any activity that occurs in alarmpoint_mapi.dll is written to a log file located at:
<xMatters>/logs/mapi_dll_log.txt
The maximum size for this log file is 10MB, after which it is rolled over into a single backup file named mapi_dll_
log1.txt.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Profile
Your MAPI mail profile. (To configure profiles in Windows, click Start > Settings > Control
Panel > Mail.)
Note: It is strongly recommended that the profile specified for this account be used by only one
xMatters deployment; the contents of the Inbox for this account may be deleted without
warning.
Password
Mailbox Polling
Interval (sec)
How often, in seconds, the Device Engine checks the mailbox for responses.
Notification Key
String included in the body of the notification that identifies the original alert or notification to
which the User is responding.
Normally this key is enclosed with delimiting characters; e.g., the default value,
<%Notification Key%>.
If the delimiting character sequence is not guaranteed to be unique, the Device Engine may
make an incorrect match, causing an exception and response failure.
If no delimiters are present, the first word of the response will be used as the notification key. If
the delimiters occur more than once in the body of the notification, the first instance is used as
the notification key.
Response Key
String included in the body of the notification that identifies the beginning of the response
portion of the Users return message.
Choice Message
Portion of notification message describing the Users response options. This field should not
contain a valid response phrase, or any phrase that might be mistaken for a User's reply.
Detail
Description
Response Message
Portion of the notification message that contains the response instructions. This field should not
contain a valid response phrase, or any phrase that might be mistaken for a User's reply.
NOTE:
This field should inform Users that when responding to a plain-text alert, they should type the
keyword RESPONSE in the subject line, followed by a single space, and then one of the
options listed. For example, they might respond with "RESPONSE ACCEPT".
Also note that this response should be the only text in either the subject of the email, or the first
line in the body of the email message.
When creating the Profile, ensure that the Use Cached Exchange Mode check box is clear.
3. Start Outlook and confirm that you can send and receive email using the newly created profile (you must be able
to send and receive email with Outlook before xMatters will be able to use the new profile to do so).
4. Click Start > Control Panel > Mail > Show profiles and verify the Profile name (required for for xMatters).
5. Create the MAPI Device Engine in xMatters using the Profile name verified in the previous step.
6. Create a Protocol Provider of type MAPI, specifying your desired settings.
7. Create a User Service Provider that contains the Protocol Provider.
8. Stop the xMatters node service, and then set the Log On properties to log on as the Domain account used in steps
1 to 3.
9. Start the Node Service.
10. To test the MAPI setup, create an xMatters User with an Email Device, and then send a validation message to the
Device.
The following figure illustrates the required setting in the Domino Server Setup program:
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Server Address
Account
Detail
Description
Password
If necessary, the password for the user account on the Domino server.
For Java IIOP session authentication, this value is specified in the Internet password field of
the users Person document.
Mailbox
Two Way
Use SSL
Specifies whether to use SSL when communicating with the Domino server.
Mailbox Polling
Interval
How often (in seconds) the Device Engine polls the mailbox for a response.
Notification Key
String included in the body of the notification that identifies the original alert or notification to
which the User is responding.
Normally this key is enclosed with delimiting characters; e.g., the default value,
<%Notification Key%>.
If the delimiting character sequence is not guaranteed to be unique, the Device Engine may
make an incorrect match, causing an exception and response failure.
If no delimiters are present, the first word of the response will be used as the notification key. If
the delimiters occur more than once in the body of the notification, the first instance is used as
the notification key.
Response Key
String included in the body of the notification that identifies the beginning of the response
portion of the Users return message.
Choice Message
Portion of the notification message that defines User options. This field should not contain a
valid response phrase, or any phrase that might be mistaken for a User's reply.
Response Message
Portion of the notification message that contains the response instructions. This field should not
contain a valid response phrase, or any phrase that might be mistaken for a User's reply.
NOTE:
This field should inform Users that when responding to a plain-text alert, they should type the
keyword RESPONSE in the subject line, followed by a single space, and then one of the
options listed. For example, they might respond with "RESPONSE ACCEPT".
Also note that this response should be the only text in either the subject of the email, or the first
line in the body of the email message.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Virtual Phone
Toggles between virtual and actual phone lines. Note that the Virtual Phone does not require a
Dialogic card, and is intended for demonstration and testing purposes only. Changing this
setting requires a restart of the Notification Server Node.
Number of Lines
Number of phone lines supported by installed Dialogic cards and licensed with dongles.
Machine Detection
Threshold
Length of time (in seconds) xMatters waits before considering the recipient of a phone call to be
a machine. Typically, a person answers with a brief response, such as Hello while an
answering machine response is relatively long. If the salutation is longer than this value after the
phone is picked up and the voice speaks, xMatters treats the answerer as a machine. The default
recommended value is 2.
Default Play/Date
Format
Default format to use when playing current time and date to Users as specified by the language
file using the index file for phrases. The following tokens are supported: yyyy, yy, MM, DD,
HH, mm, and ss; by default, the value is:
mm/dd hh:nn.
Global Call
Protocol
TTS Engine
Personality
Personality or voice to use when playing Text-To-Speech (TTS). This setting can also be
changed in the xMatters script.
TTS engines typically provide several different voices, like a male and female, but may also
provide different languages. This requires that one or more TTS Engines are installed; SAPI is
installed by default.
For more information about installing and configuring TTS Engines, see "Text-To-Speech
Engines" on page 86.
Name of an installed Automatic Speech Recognition (ASR) engine. ASR Engines must be
installed separately.
Default Initial
Country
With Default Initial Language setting, determines the regional language settings to use when
playing a language.
Default Initial
Language
With Default Initial Country setting, determines the regional language settings to use when
playing a language.
Detail
Description
Default PhoneLine
Class
Specifies the Phone Line Class to use by default, unless otherwise specified in the script or
Phone Line details.
Default Call-in
Script
Low2Ring
Minimum
Minimum long low duration of double ring, in milliseconds. This should be used in areas such
as the United Kingdom for double rings on the ringback tone.
Maximum Answer
Maximum allowable length of a salutation (greeting), in 10ms units. If this value is reached
during a salutation, the system will assume a connection with a machine and continue with the
script. The default of 1000 is equivalent to 10 seconds.
Required Prompt
Silence (ms)
Maximum silence period allowed between words in a salutation, in milliseconds. The default
value of 1500 is equivalent to 1.5 seconds.
For more information about creating and using scripts, refer to the xMatters Online Developer's
Guide.
After defining the Phone Device Engine details, click Continue. On the Phone Line Details page, specify the following
settings to define the phone lines for the Device Engine to use:
Phone Line details
Detail
Description
Callout
Specifies whether xMatters can use this line to call out. Clearing this check box reserves the line
for call-in only.
Line Number
Answer on Ring
Number
Call-in Contact
Script
Specifies the script to run when a User calls in to this phone line. This setting overrides the callin script specified in the Device Engine details. In multiple-Company deployments, this setting
can be used to automatically identify the call-in Users Company.
For more information about scripts in xMatters, refer to the xMatters Online Developer's Guide.
Initial Country
Initial Language
Specifies the Phone Class to use for this phone line; if changed, overrides the default Phone Line
Class for this Device Engine specified in the Device Engine details.
For more information about Phone Classes, see "Phone Class Resources" on page 153.
Click the Add New Phone Line button to add more phone lines, and specify the details for each one.
The Dialogic card used in your deployment may not support all of the potential call progress results available
in the CTADE library used by xMatters to handle the call process. This may affect the error messages returned
by the CTADElibrary; for example, you may receive a "NO_RINGBACK"message instead of "NO_DIAL_
TONE" when no dial tone was detected. For more information about handling call progress results, see the
xMatters Online Developer's Guide.
There are some defaults in the system that assist in determining whether the connection has been established with a
human or a machine. The following settings can be adjusted on the Phone Device Engine page:
Machine Detection Threshold
This setting compares the salutation section of the above diagram. If the salutation is longer than the Machine Detection
Threshold setting, then xMatters results in a MACHINE DETECT. If the salutation is shorter, xMatters results in a
VOICE DETECT. Both of these values are tested in the default voice scripts so they can branch accordingly. (Default
setting is 2 seconds.)
Low2Ring Minimum
This value is the minimum long low duration of double ring, in milliseconds. This setting should be used in areas such
as the United Kingdom, for double rings on the RINGBACK tone. (Default setting is 2250, or 2.25 seconds.)
Maximum Answer
This value is the maximum allowable length of a salutation, in 10ms units. If this value is reached during a salutation,
the system will assume a connection with a machine, and continue with the script. (Default setting is 1000, or 10
seconds.)
Required Prompt Silence
After the salutation is complete, xMatters waits for the length of time specified by this setting before beginning to speak
(or leave a message). (Default setting is 1500 in milliseconds, or 1.5 seconds.)
Note that making this parameter too short can cause problems. For example, if you set this value to 50 (half of a second)
and the persons voicemail greeting has a half-second pause in the middle, xMatters will start leaving a message before
the greeting is complete. In some environments, this setting may work better with a one-second delay, while other
configurations may require two seconds.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
(sec)
whole number greater than or equal to 10 and less than or equal to 300.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
xMatters deployments that will experience high volumes of SIP traffic must have SIP Device Engines
configured on dedicated xMatters notification server Node computers (i.e., the xMatters notification server
Node must reside on a computer that is separate from other xMatters components such as web servers,
application servers, and the database). For further system requirement details, see "Software Requirements" on
page 25.
This protocol allows xMatters to make voice calls through a company PBX or SIP Gateway using Voice Over IP (VOIP)
rather than lines from the telephone company.
Note:
For general information about SIP Caller ID, see the SIP FAQ at http://www.egyed.com/faq/sip_
faq.html#callerid.
SIPextension dialing
Secondary call progress is not supported for SIPDevices because the call progress results does not handle Machine
Detect or No Answer returns; all results are treated as Reached a Person (or VOICE_DETECT). Without access to
machine detection, you will have to configure the waitForSilence script method (available in all xMatters deployments
after version 4.0 patch 008) to time the duration properly so that the recipient will have time to answer. Even with the
most precise timing, however, xMatters may still occasionally leave a message to a ringing or dead line.
SIP Device Engine details
Detail
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
(sec)
whole number greater than or equal to 10 and less than or equal to 300.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Number of Line
Appearances
Total lines available for outgoing and incoming SIP calls. The number of lines available for
outgoing calls is the total number of line appearances less those reserved for incoming calls.
Reserved for
Incoming Calls
Default Play/Date
Format
Default format to use when playing current time and date to Users as specified by the language
file using the index file for phrases. The following tokens are supported: yyyy, yy, MM, DD,
HH, mm, and ss; by default, the value is:
mm/dd hh:nn.
TTSEngine
TTS Engine
Personality
Personality or voice to use when playing Text-To-Speech (TTS). This setting can also be
changed in the xMatters script.
TTS engines typically provide several different voices, like a male and female, but may also
provide different languages. This requires that one or more TTS Engines are installed; SAPI is
installed by default.
For more information about installing and configuring TTS Engines, see "Text-To-Speech
Engines" on page 86.
ASR Engine
Personality
Personality or voice to use when playing Automatic Speech Recognition (ASR) methods. The
default setting is Microsoft English Recognizer V5.1.
TTSEngine Server
Detail
Description
TTSEngine Port
TTSVersion
Default Initial
Language
Call-in Silence
Threshold
The threshold used to determine silence on the line. Larger values are less sensitive to static.
Valid values are from 0 to 65535; the default value is 256.
Codec List
The codec list supported by the Device Engine. Select one of the following options:
Ulaw: standard telephone codec for North American calls.
Alaw: standard telephone codec for European calls.
Default Call-in
Script
Name of the script used to handle the communication for incoming calls. Note that this value
overrides the "Sip Call In Script"setting on the Company details page.
Inbound SIP
Registration List
This area displays an editable list of inbound SIP registrations available to the SIP Device
Engine. Click Add New Inbound SIP Registration to create a new registration, and specify the
settings as described in the table "Inbound SIP Registration settings", below.
To remove a registration, select the check box next to the registrations you want to remove, and
then click Remove Selected Inbound SIP Registrations.
Description
SIP Server Address IP address of the SIP server with which xMatters will register.
SIP Server Port
Local port to which the Device Engine will bind and which the SIP Server will use to
communicate with xMatters.
IP address that the Device Engine will bind to and listen for SIP calls.
Detail
Description
SIP Domain
Domain used by the SIP server; this domain name will be included in the SIP messages.
SIP Outbound
Proxy Address
SIP Outbound
Proxy Port
The lower limit to the port number on which RTP is allowed (default is 1025). If you are using a
firewall, you must also open a range of ports based on the RTP Port (min) and RTP Port (max).
The upper limit to the port number on which RTP is allowed (default is 65535). If you are using
a firewall, you must also open a range of ports based on the RTP Port (min) and RTP Port (max).
DTMF Payload ID
The default value is 101, though some SIP Server environments may require a different value.
Contact your SIP Server Administrator for more information. Note that the xMatters SIPDevice
Engine supports only RFC2833 for DTMF tones.
Registration
Attempts
How many times the Device Engine should attempt to register with the SIP server.
Registration
Timeout
How long, in seconds, the Device Engine should wait before timing out on a registration
attempt. The default is 60.
Session Timeout
How long, in seconds, the Device Engine should wait to timeout a SIP session. The default is
3600.
User Name
Password
The password, if required, for the user name on the SIP server.
Display Name
The xMatters SIPDevice Engine supports only RFC2833 for DTMF tones.
By default, SMPPDevice Engines can handle only one socket connection. You can manually configure the number of
socket connections handled by the SMPPDevice Engine by editing the configuration file.
To set the number of SMPPsocket connections:
2. Locate the smppConfigurationAgent bean, and change the value for the numberConnections setting from 1 to
the maximum number of connections that the SMPPService Provider allows.
3. Save and close the file.
4. Restart the web server.
SMPPDevice Engine Details
Many of the settings required for the SMPP Device Engine may be specified by your SMPP service provider.
SMPP Device Engine details
Detail
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Server Address
Server Port
Connection Mode
Specifies how the Device Engine should connect to the SMPP provider. Select Tranceiver to
send and receive messages over the same connection, or select Transmitter/Receiver to use
separate connections for sending and receiving.
System ID
System Password
System Type
Address Range
Range of addresses to use for SMPP messages, if provided by your SMPP service provider.
Address Range
TON
Type Of Number (TON) required for the address range as supplied by your service provider.
Address Range NPI Numbering Plan Identity (NPI) required for the address range as supplied by your service
provider.
Detail
Description
Source Address
Number associated with your SMPP account; used to indicate the sender for outgoing messages.
This setting may be overridden by the Source Address setting on the SMPPProtocol Provider
details.
Source Address
TON
Your SMPP accounts TON to be used during the server session. This setting may be overridden
by the Source Address setting on the SMPPProtocol Provider details.
Source Address
NPI
Clients NPI required by your service provider for the source address. This setting may be
overridden by the Source Address setting on the SMPPProtocol Provider details.
Default Dest
Address TON
TON required by your service provider for the default destination address. This setting may be
overridden by the Source Address setting on the SMPPProtocol Provider details.
Default Dest
Address NPI
NPI required by your service provider for the default destination address. This setting may be
overridden by the Source Address setting on the SMPPProtocol Provider details.
Session Timeout
Length of time in minutes before the session times out. To have every session time out, enter 0.
To have sessions never time out, enter a negative value.
Notification Key
String included in the body of the notification that identifies the original alert or notification to
which the User is responding.
Normally this key is enclosed with delimiting characters; e.g., the default value,
<%Notification Key%>.
If the delimiting character sequence is not guaranteed to be unique, the Device Engine may
make an incorrect match, causing an exception and response failure.
If no delimiters are present, the first word of the response will be used as the notification key. If
the delimiters occur more than once in the body of the notification, the first instance is used as
the notification key.
If you have configured simple SMSreplies, as described in "Configure simple SMS replies" on
page 143, this field is disabled.
For more information about how xMatters handles SMSmessages, see the section, "Configure
SMS messages and replies", below.
Response Key
String included in the body of the notification that identifies the beginning of the response
portion of the Users return message.
If you have configured simple SMSreplies, as described in "Configure simple SMS replies" on
page 143, this field is disabled.
Choice Message
Detail
Description
Response Message
Enquire Interval
Time in seconds between enquire packets sent to the SMPP service provider. Value must be a
multiple of 10, and cannot be less than 10 seconds.
Support Status
Report
Specifies whether the Device Engine should support incoming status reports from service
providers. When enabled, the status reports are displayed in the xMatters Reports and recorded
in the Node log.
Message ID
Location or
Delimiter
Indicates a method to identify the message ID within the incoming status report. This value can
be expressed in one of three ways:
o
<delimiter>: indicates the delimiter that identifies the message ID; e.g., mess_id:.
<delimiter> (<length>): indicates the delimiter that identifies the message ID, and the
expected length of the ID; e.g., the default setting, id: (10).
Status Location or
Delimiter
Indicates a method to identify the status of the notification within the incoming status report.
This value can be expressed in the same three ways as the Message ID Location or Delimiter
field; the default value is stat: (7).
Error Code
Location or
Delimiter
Indicates how to identify the error code within the incoming status report. This value can be
expressed in the same three ways as the Message ID Location or Delimiter field; the default
value is
err: (3).
Delivery Word
Specifies the Status string value within the incoming status report that indicates the notification
message was delivered to the recipients Device; the default is DELIVRD.
Read Word
Specifies the Status string value within the incoming status report that indicates the notification
message was read by the recipient.
Failed Word
Specifies a list of Status string values within the incoming status report that indicate the
notification message has failed; the default list is EXPIRED;DELETED;UNDELIV;UNKNOWN. Note
that list values must be delimited with semi-colons.
The following sections explain some different configuration options for replies to be accepted and processed correctly by
xMatters. In each of the following examples, the Response Key specified in the Device Engine settings is "RES".
Example One:
The following response includes the notification key as the first entry in the reply message (and therefore it does not
require delimiting characters); the User's response is contained on a separate line at the end of the message:
359055 SMPP 02 Reply <ID> , "Clear", "Ignore"
RES Acknowledge
xMatters would be unable to process the above message, due to the User's response being indistinct from the body of the
message. To resolve the issue, and make the above message acceptable, a carriage return must be inserted after the User's
response:
359067 RES Acknowledge
Security Breach - Data Center 4 - SMPP 04 Reply <ID> RES "Acknowledge"
The User responding to this notification could respond with "1", and the event would be marked as acknowledged.
Because SMS is "stateless"and does not contain hidden information that can be used to link related messages together,
xMatters uses the phone number of the text phone Device to associate the response with the correct notification.
When simple SMSreplies are enabled, xMatters maintains a mapping of SMS Device numbers and response options,
retaining the information for 72 hours. Because a Device may receive multiple notifications for different events, the
integers used for the response options will change for each notification on a Device based on the number of response
choices and the number of active events.
For example, a User might receive a notification prompting them to respond with 1 to acknowledge or 2 to ignore. The
next notification, for a separate event, may prompt them to respond with 3 to acknowledge, and 4 to ignore. This
incrementing would continue based on the number of notifications received, possibly into double or triple digits as
required. Integers would not be reused until the event associated with them is no longer in an active or created state, and
is at least 72 hours old. The waiting period helps to reduce the possibility that Users could accidentally respond to an
active event by responding to old SMS messages (related to closed events) that may be waiting in their phone message
queues or inbox.
Note that this makes it impossible to accurately predict the specific integers required for an anticipated event, such as a
Scheduled Message.
Before implementing the simple SMSreplies feature, please note the following:
n
xMatters uses the country assigned to the Site with which a Device is associated to determine its country code. For
example, Devices associated with a Site based in Australia will have a country code of 61.
If the validation pattern and template specified on the Global Configuration page are not correctly configured,
notification responses will be ignored; for information about any ignored responses, review the xMatters logs.
The phone numbers specified in the Device details must be formatted consistently across all Devices for the
validation patterns and templates to work properly; if the validation results do not match a number in the system
(due to inconsistent formatting), responses may be ignored.
POP account: incoming email messages are checked for validity, processed, and then deleted from the server.
IMAPaccount: incoming email messages are checked for validity, processed, and then moved to the "Deleted
Items"folder. Thiscan result in significant storage space being required to store deleted email messages. To avoid
this, ensure that you configure your email server's storage policies and mailbox database defaults to periodically
purge the "Deleted Items"folder.
Description
Name
Details
Description
Description
Notification Polling
How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Incoming Protocol
Note: If you specify a POP or IMAP Incoming Protocol, xMatters prompts you to specify the following additional
details for the SMTP Device Engine. The page with these settings will load after you click Continue.
Email Account
field of the Bounced Mail Settings area on the Global Configuration page. It is also strongly
recommended that the email address specified for this account be used by only one xMatters
deployment; the contents of the Inbox for this account may be deleted without warning.
Email Format
Specifies which of the following formats is used by the POP/IMAP server to authenticate and
display email accounts in notification messages from xMatters:
o
o
o
user@domain
user
user
Note that different formats are required by different POP/IMAP servers; consult your providers
documentation to determine the correct format.
Password
Incoming Email
Server
Incoming Server
Port
SSL Flag
Specifies whether the protocols SSL flag is enabled or disabled. When selected, the encryption
key supplied by the server as part of SSL is used for encryption; there is no need to install a
client certificate.
Note: The implementation of SSL in xMatters also supports Transport Layer Security (TLS).
Mailbox Polling
Interval (sec)
Indicates how often (in seconds) the Device Engine polls the mailbox for a response.
Details
Description
Notification Key
String included in the body of the notification that identifies the original alert or notification to
which the User is responding.
Normally this key is enclosed with delimiting characters; e.g., the default value,
(%Notification Key%).
If the delimiting character sequence is not guaranteed to be unique, the Device Engine may
make an incorrect match, causing an exception and response failure.
If no delimiters are present, the first word of the response will be used as the notification key. If
the delimiters occur more than once in the body of the notification, the first instance is used as
the notification key.
Response Key
String included in the body of the notification that identifies the beginning of the response
portion of the Users return message.
Default Message
Choice Message
Portion of the notification message that defines User options. This field should not contain a
valid response phrase, or any phrase that might be mistaken for a User's reply.
Response Message
Portion of the notification message that contains the response instructions. This field should not
contain a valid response phrase, or any phrase that might be mistaken for a User's reply.
NOTE:
This field should inform Users that when responding to a plain-text alert, they should type the
keyword RESPONSE in the subject line, followed by a single space, and then one of the
options listed. For example, they might respond with "RESPONSE ACCEPT".
Also note that this response should be the only text in either the subject of the email, or the first
line in the body of the email message.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Details
Description
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Serial Ports
This area displays an editable list of serial ports available to the Device Engine. Click Add New
Port to specify a new serial port, and then type the port number in the field provided.
To remove a serial port from the list, select the check box beside the port or ports you want to
delete, and then click Remove Selected Ports.
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Incoming Port
The port for the Virtual Device Engine to receive incoming requests.
Detail
Description
Email Notification
Key
String included in the body of the notification that identifies the original alert or notification to
which the User is responding.
Normally this key is enclosed with delimiting characters; e.g., the default value,
<%Notification Key%>.
If the delimiting character sequence is not guaranteed to be unique, the Device Engine may
make an incorrect match, causing an exception and response failure.
If no delimiters are present, the first word of the response will be used as the notification key. If
the delimiters occur more than once in the body of the notification, the first instance is used as
the notification key.
Email Response
Key
String included in the body of the notification that identifies the beginning of the response
portion of the Users return message.
Email Default
Message
Email Choice
Message
Email Response
Message
Portion of the notification message that contains the response instructions. This field should not
contain a valid response phrase, or any phrase that might be mistaken for a User's reply.
NOTE:
This field should inform Users that when responding to a plain-text alert, they should type the
keyword RESPONSE in the subject line, followed by a single space, and then one of the
options listed. For example, they might respond with "RESPONSE ACCEPT".
Also note that this response should be the only text in either the subject of the email, or the first
line in the body of the email message.
Text Phone
Notification Key
String included in the body of the notification that identifies the original alert or notification to
which the User is responding.
Normally this key is enclosed with delimiting characters; e.g., the default value,
<%Notification Key%>.
If the delimiting character sequence is not guaranteed to be unique, the Device Engine may
make an incorrect match, causing an exception and response failure.
If no delimiters are present, the first word of the response will be used as the notification key. If
the delimiters occur more than once in the body of the notification, the first instance is used as
the notification key.
Text Phone
Response Key
String included in the body of the notification that identifies the beginning of the response
portion of the Users return message.
Detail
Description
Text Phone
Response Message
Description
Name
Description
Notification Polling How often (in seconds) the Device Engine polls the notification node for new alerts. Must be a
(sec)
whole number greater than or equal to 10 and less than or equal to 300.
Concurrent
Threads
Number of requests or tasks that this Device Engine can run at the same time. Your Active
Licenses control the maximum number of available threads.
Logging
For an explanation of Device Engine logging, see "Enable device engine logging" on page 119.
Resources
Node Resources define the serial devices, proxy settings, and phone line settings available to the Device Engines within
the node.
To view and manage Resources:
1. Click the Administration tab.
2. In the Administration menu, click Nodes & Device Engines.
3. In the All Nodes table, in the View Resources column, click the Resources link for the Node you want to modify.
l
Resources | 150
xMatters displays the Resources for Node page, which lists all of the Resources available to that Node.
To modify an existing Resource, type the new settings in the fields for that Resource. For an explanation of
the fields, see the following section, "Resource types" on page 151.
To remove a Resource, select the check box next to the Resource you want to delete, and then click Remove
Selected.
To add a new Resource, click the Add New button for the type of Resource you want to add. xMatters
creates a blank Resource on the page; you can then type the settings for the new Resource in the fields. For
more information about the fields and the available settings, see the following section.
Resource types
There are three types of Resources that you can assign to Nodes in xMatters:
Resources | 151
Node Resources
Resource Type
Description
Serial Devices
Serial Device Resources represent serial ports with attached modems/phone lines which are used
by devices engines for implementing dial-out protocols like TAP, DTMF, UCP, etc.
Socket Proxies
Socket Proxies identify any proxies required by the Device Engines to communicate with
external resources that are not directly accessible.
Phone Classes
Phone Classes specify the destination number and other information that phone lines need to dial.
Description
Carrier Wait How long to wait, in seconds, before beginning transmission after contacting the provider. Note that
Time
this setting applies to all serial device resources.
Response
Wait Time
How long to wait, in seconds, for a response. Note that this setting applies to all serial device
resources.
Serial Port
Init String
No error control options (for some US Robotics modems, the init string may require &M0)
No data compression (for some US Robotics modems, the init string may require &K0)
Resources | 152
Description
Protocol
Protocol to use when communicating with the proxy. xMatters supports the following
protocol proxy protocols:
o
o
o
o
o
o
o
IMAP/POP: SOCKS5
SMPP: SOCKS5
SNPP: SOCKS5
SUCP: SOCKS5
WCTP: HTTP
HTTP:HTTP
Jabber: SOCKS5
Note that the proxy protocol is assigned automatically and does not need to be specified in
the Web User Interface.
Proxy Server Address Address of the proxy server.
Proxy Server Port
Login ID
Password
Resolve Server
Address Locally
Specifies whether to resolve the server address locally or by proxy. (The SOCKS5 protocol
allows hostnames rather than IP addresses to be sent in requests. This setting controls whether
the hostnames should be sent to the proxy server as names or should be resolved locally.)
Resources | 153
Detail
Description
Name
Description
Country
Country in which the phone line is located. This setting is used to determine how to dial outside
the country.
Area/Std Code
Area or STD (Subscribers Trunk Dialing) code in which the phone line is located.
Local Dialing
Method
Method for the Phone Class to use when making local calls. For more information, see Dialing
Methods below.
Long Distance
Dialing Method
Method for the phone class to use when making long-distance calls.
International
Dialing Method
Method for the Phone Class to use when making overseas or international calls.
Phone Class
Exceptions
Phone Class exceptions define special dialing methods for certain Area/STD Codes. Click Add
New Phone Class Exceptions Setting to add a new exception, and then enter the following
information into the fields provided:
o
o
o
o
For an example of how to create a phone class exception, see "Phone Class Exceptions Examples"
on page 155.
Dialing Methods
xMatters supports and dials as is standard dialing codes, which include the following:
Standard Dialing Code
Dialing
Result
Code
0-9, *,
#
Pauses.
&
Issues a hook flash (also known as a "recall"), that simulates quickly hanging up and then picking up again.
This can signal the telephone exchange to perform a function such as switching to an incoming call, or
indicating a request for voice conferencing.
Note that a hook flash is not currently supported over T-1 lines.
Resources | 154
Result
For pagers, dials the contents of the Phone Number field in the Protocol Provider settings. If that field
is blank, dials the contents of the Override Phone Number in the Device details for the User (numeric
pagers).
For phones, dials the contents of the Phone Number field in the Device details for the User.
For pagers, dials the contents of the Area Code field in the Protocol Provider settings. If that field is
blank, dials the contents of the Override Area Code field in the Device details for the User.
For phones, dials the contents of the Area Code field in the Device details for the User.
c
Dials the Country code associated with the User, or the Country Code Override defined on the Users
Phone Device.
eN
Dials the last N digits in the phone number associated with the User.
For example, a long distance dialing method may be defined as 1an, while an international dialing method may be
defined as 011can.
The Number Definition is the number you want to evaluate. You can express the number as an, which represents
the area code and phone number as explained in the Special Dialing Codes table above.
The Match Expression represents what the system should look for in the number definition. For example, you
might specify the area code 925, and a prefix of 555.
The Dialing Method represents what is actually dialed. To dial only the last four digits of the number, you would
enter e4.
The settings for your phone class exception would then resemble the following:
If the number that enters the system is 925-555-0320, the phone class exception matches the area code and prefix, and
the system dials only 0320.
Example Two
Assume that you need to create an exception for a situation where xMatters is on the same PBX as the User, and can dial
the Users extension.
Resources | 155
The Number Definition can be expressed as an, which represents the area code and phone number.
The Match Expression should look for the main number so xMatters will dial an extension when the number
matches, rather than an entire number.
The Dialing Method would be expressed as x, which represents the Users assigned extension.
The settings for your phone class exception would then resemble the following:
If the number that enters the system is 925-555-0300, the phone class exception matches the area code and number,
and the system dials the Users extension.
Clusters
Clusters represent logical collections of one or more xMatters notification servers, which may be distributed around the
world. xMatters can manage multiple Clusters, each with multiple xMatters notification servers.
Using Clusters, xMatters routes alerts locally and around the world, using customized routing methods. This results in
cost savings on long distance charges, and provides the ability to load balance notifications across the system.
Typically, xMatters is installed in a single location, with multiple Notification Servers strategically located based on the
geographical profile of the organization. It is recommended that Clusters are named according to their location (e.g., by
city: MelbourneCluster, LondonCluster, TokyoCluster, LosAngelesCluster, etc.).
In a multiple-Company deployment, Clusters are part of the global data and can be created and assigned to Companies
only by Super Administrators. Company Administrators can specify a primary Cluster for a Sites to specify the preferred
routing of notifications, but cannot create Clusters or specify which Clusters are available for each Site.
Note:
Manage clusters
You can manage Clusters using the Clusters page.
To view and manage Clusters:
1. Click the Admin tab.
2. On the Administration menu, click Clusters.
l
Clusters | 156
Clusters page
To modify an existing Cluster, click its name in the list to view Clusters Details. For more information about
editing Cluster Details, see Defining Cluster Details, below.
To remove a Cluster from the list, select the check box next to the Cluster or Clusters you want to remove,
and then click Remove Selected.
To create a new Cluster, click the Add New link, and specify the Cluster Details for the new Cluster, as
explained in Defining Cluster Details, below. Click Save to create the Site.
Description
Name
Description
3. When you are satisfied with the information you have provided, click Save.
Protocol providers
Protocol Providers define how xMatters accesses servers for outgoing notifications. While User Service Providers restrict
protocol selection at the Company level, the Super Administrator can configure Protocol Providers that are available
throughout xMatters.
Supported protocols
xMatters supports the following industry-standard protocols:
DTMF, PSTN, and SIP
These are two-way protocols, used mainly for making and receiving voice calls, or interfacing with public address
systems:
DTMF: Dual Tone Multi-Frequency protocol, used for keypad signaling over a voice phone line.
SIP: Session Initiation Protocol, used to send notifications via SIP-enabled telephone sets and other voice-over-IP
(VOIP) devices.
Jabber
This is a one-way instant messaging platform, used to send messages to desktop computers, or to mobile Devices using
apps (e.g., Bejive on the iPhone).
HTTPProtocols
These protocols are used to send notifications or create conferencing sessions over a cloud-computing provider:
n
HTTP Conference: Protocol used to create conferencing sessions using a voice cloud provider other than
xMatters.
HTTP Generic: Protocol used to send SMS notifications via a cloud SMS provider other than xMatters.
HTTP xMattersConference: Protocol used to create conferencing sessions using the xMatters voice cloud.
HTTP xMatters SMS: Protocol used to send SMSnotifications via the xMatters SMS cloud.
HTTPBlackBerry Push:Used to send push notifications to the xMatters application on BlackBerry Devices.
MAPI: Messaging Application Programming Interface, used to send email notifications via Microsoft Outlook.
NOTES: Lotus Notes/Domino Protocol, used to send notifications via an IBM Lotus Domino server.
SMTP: Simple Mail Transfer Protocol, the de facto standard for transmitting email over the Internet.
These protocols are not recommended for sending SMSmessages to mobile phones as there is no guarantee that the
message will ever arrive on the intended Device. In the event that the message does arrive, it will usually result in a oneway message where no response is ever returned to xMatters. No tracking information is returned to xMatters during the
notification process, and a succession of email servers can be involved in each transmission.
BES
The BlackBerry Enterprise Server protocol can send two-way text messages to BlackBerry Devices as "Level
1"messages. These are not considered SMSor email messages; they are BES-specific messages that can be encrypted,
have a different ring tone or vibrate setting, and be replied to on the target Device.
SUCPand PUCP
These older, text-based protocols are less common, and typically used with pagers:
n
SUCP: Universal Computer Protocol, used to send notifications via an Internet socket.
PUCP: Universal Computer Protocol, used to send notifications via a serial port.
GSM
The Global System for Mobile Communications two-way protocol requires that xMatters have a GSMmodem attached
(this can be as simple as a mobile phone with a SIMcard built into a small box with an antenna). This allows xMatters
to send and receive text messages just as a User would from a mobile phone.
SMPP, SNPP, and WCTP
These protocols are the latest two-way network-based protocols for use with pagers and SMStext providers:
n
SMPP: Short Message Peer-to-Peer protocol, used to transmit SMS messages on text-enabled mobile phones.
SNPP: Simple Network Paging Protocol, used to send notifications to a pager over the Internet.
WCTP: Wireless Communication Transfer Protocol, used to send and receive responses over the network.
These protocols are recommended as the first protocols to use when xMatters is communicating with text Devices as
they provide a receipt IDfor each notification and, if the provider supports two-way notifications, xMatters can check
for responses from the target User on their Device.
Some providers also provide xMatters with additional information, such as read receipt information that can be logged
when the User reads the message on the Device, even if they do not respond.
TAPand TAPL
These one-way protocols are older, but can still provide a redundant option to get a text message out to an SMSphone
or pager:
n
TAP: Telelocator Alphanumeric Protocol, used to send pages or SMS messages via a serial modem.
TAPL: TAP Leased, used to send pages or SMS messages using the TAP protocol and a dedicated or leased line.
Even when a network is down, these protocols may still work because they use modems and analog phone lines. The
message displayed on the target Device can also include the call-in number for xMatters, so the User can call in and then
perform actions via two-way voice communication.
Other options
Another option when configuring protocols is to use an SMStext message aggregator company. xMatters can
communicate with these companies via a two-way protocol (typically SMPP/SNPP/WCTP) and will guarantee delivery
of the text message to a target mobile phone; in most cases, the aggregator will also handle all responses back into
xMatters. These aggregators charge for this service, but will provide service-level agreements for the message delivery
and response.
Any combination of the above protocols can be used with xMatters, and for each Service Provider, the Administrator can
define the preferred order of the protocols. xMatters will attempt to send the message out using the first protocol; if it
fails, the attempt is logged and xMatters moves on to the next protocol. The key to configuring xMatters for your text
message service providers is to find out what protocols they support, and to implement as many of them as possible so
that you have redundancy in place.
For details on configuring each Protocol Provider, see "Protocol Provider Details Reference" on page 161.
To modify an existing Protocol Provider, click its name in the list to view its details. For more information,
see "Define protocol provider details" on page 160 below.
To remove a Protocol Provider from the list, select the check box next to the Protocol Provider or Providers
you want to remove, and then click Remove Selected.
To add a new Protocol Provider, click the Add New link, click the Provider of Type drop-down list and
select a Provider Type, and then specify the Protocol Details. For settings details for each provider type, see
"Set maximum session size" on page 160, below.
If you are creating a new Protocol Provider, xMatters displays the Select Your Protocol Providers page. In the
Available Protocol Providers box, select the Protocol Providers you want to add to the User Service Provider,
and then click Add. To save your work and return to the User Service Providers list, click Save.
2. Click Save.
The session size represents the number of notifications transacted within a single session. For example, if you set the
maximum session size of an email Protocol Provider to 20, and there are at least 20 notifications to dispatch, the Device
Engine connects to the email server, sends 20 notifications, and then disconnects.
To tune the performance of Protocol Providers, ensure that the session size is as large as possible for each Protocol
Provider in use. For email providers in particular, a session size of 20 to 50 is recommended.
In this case, the appended text is discarded because it exceeds the Maximim message length setting. The User will
receive the entire message body of the notification because it is less than the Maximum message length, but will be
unable to reply because the appended text portion of the notification is missing.
Example Two
n
In this case, the entire appended text portion of the notification will be included, but the message body will be truncated
to 50 characters. The User will receive the notification and will be able to reply because the entire appended text portion
was included in the notification.
Description
Name
Description
Setting
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Access port of the MDS on the BES Server. The default is 8080.
Device Port
OSVersion
Specifies the BlackBerry OS used by the targeted Users' Devices. Select one of the following
options:
n
n
If your Users have a number of different OSversions, it is recommended that you create at least
two Protocol Providers, one for 4.x and 5.x and one for 6.0 and higher, and assign them to two
separate User Service Providers. When a User adds their Device to xMatters, they can then
specify their User Service Provider to ensure that they are ;using the correct OS version for their
BlackBerry.
Description
Name
Description
Maximum retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Maximum session
size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Setting
Description
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Country
Area Code
Phone Number
When the service provider uses a call center, this specifies the amount of time in seconds to
pause between either phone and PIN, or PIN and message.
When the service provider uses a call center, this specifies the amount of time in seconds to
pause before timing out the session.
Init String Override Specifies the initialization string for the modem used by this Protocol Provider. If not specified,
the provider uses the Init String defined in the Serial Device Resources list on the Resources for
Node page. For more information, see "Resource types" on page 151.
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry Interval
Maximum Session
Size
Setting
Description
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum Pin
Length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Executable Path
Wait Time
List of Arguments
Any arguments or switches to be passed to the executable when running the protocol provider
application.
Arguments can be in one of two forms:
$<value>: the argument is replaced by the corresponding value, in double quotes, from the
presentation scripts @content object. For example, $username would be replaced with the
contents of the $content.username variable in double quotes (e.g., bsmith).
The fixed exceptions are $message, which is replaced by the actual message, and $pin, which
is replaced by the actual Device PIN.
<value>: arguments not prefaced by the dollar sign ($) are passed directly to the executable
If the Generic provider returns a value of zero, the notification is treated as successful. Any other value is
treated as an error.
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Setting
Description
Retry Interval
Maximum session
size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Split Method
Specifies the concatenation mechanism used by the provider when splitting and reassembling
long SMSmessages. With concatenation, it is possible to send a single long message to a
mobile station as a series of several short messages, and to display them as one message on the
target Device.
Concatenation is performed at the Device itself, which uses additional information fields within
the messages to identify, sort, and join the content into a single message. Up to a maximum of
255 short messages (of less than 160 characters each)can be joined in this way. xMatters
provides the GSMUser Data Headers (UDH) method of concatenating messages.
Select one of the following options:
l
l
Indicates whether to add a plus symbol (+) to the beginning of each phone number sent to the
GSM engine.
This feature is available only on deployments where all text phone Devices were created after
4.1 patch 006 or later. If you have text phone Devices that were added prior to applying the
required patch, you must either delete the Devices (which will automatically enable this feature)
or work with xMatters Support to reconfigure your existing Devices.
If the Split Method field is set to None, the actual split size is 70 for 16-bit characters.
If the Split Method field is set to UDH, xMatters deducts more characters to leave room for the UDH header: 10
characters are deducted for 7- and 8-bit characters, and 5 characters are deducted for 16 bits. The payload size
after.splitting would then be 150 for 7-bit, 130 for 8-bit, and 65 for 16-bit characters.
Note:
If you are configuring this Protocol Provider to work with xMatters SMS, you must have simple SMSresponses
enabled, as explained in "Configure simple SMS replies" on page 143.
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry Interval
Maximum Session
Size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Setting
Description
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
APIURL
The target URL to which the Device Engine submits the HTTPPOST operation. initially (e.g.,
http://webapi.somecompany.com:8080).
Username
Typically, the username supplied by the web API provider; required if the URLuses HTTP
authentication.
Password
Typically, the password supplied by the web API provider; required if the URLuses HTTP
authentication.
Response URL
The URLof the xMatters web server to which the Device Engine forwards the web API's
response from the initial submission (e.g.,
http://<webserver>:<port>/services/clickatell or
http://yourwebserver/processResponse.jsp).
Note that the web server must be able to receive update information from the provider's server.
Request Parameters This area displays an editable list of HTTP request parameters available to this provider. This list
is typically specified by the web API.
Click Add New Name/Value Pair to create a new request parameter, and then specify a Name
and Value in the related fields. To remove a request parameter, select the related check box and
then click Remove Selected Name/Value Pair.
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10. (Note that some providers may have separate retry logic; for
example, even if you set Maximum Retries to 0, the provider may run through its own retry
paradigm. Further, be aware that increasing Maximum Retries by one increment may result in
more than one retry, as the provider will still carry out its retry logic based on the nature of the
previous call failure.)
Retry Interval
Maximum Session
Size
Setting
Description
APIURL
Username
Typically, the username supplied by the web API provider; required if the URLuses HTTP
authentication.
Password
Typically, the password supplied by the web API provider; required if the URLuses HTTP
authentication.
Response URL
Web server URL to which the Device Engine forwards the web API's response from the initial
submission (e.g., http://yourwebserver/exampleResponse.jsp).
Request Parameters This area displays an editable list of HTTP request parameters available to this provider. This list
is typically specified by the web API.
Click Add New Name/Value Pair to create a new request parameter, and then specify a Name
and Value in the related fields. To remove a request parameter, select the related check box and
then click Remove Selected Name/Value Pair.
The xMatters SMSservice requires that you have simple SMSresponses enabled, as explained in "Configure
simple SMS replies" on page 143.
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry Interval
Maximum Session
Size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Setting
Description
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
If you are using the SARconcatenation method, refer to the "HTTP xMatters SMSProtocol
Providers" note following this table for more information about this setting.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Short Code
Compliance
Select an option to specify when xMatters should send a notification explaining terms of service
to each SMSDevice:
l
None: xMatters will not send a notification to the Device when it is added, modified, or
activated.
Send Welcome:xMatters will send a Welcome notification to an SMSDevice when it is
added, modified, or activated. (The content of this message is defined in the
SMSCONFIRMMSG Constant.)
Send Custom: xMatters will send a Custom notification to an SMSDevice when it is
added, modified, or activated. (The content of this message is defined in the
SMSFIRSTMMSG Constant.)
Send Welcome and Custom: Sends both the Welcome and the Custom messages.
In addition to modifying the content of the Custom message, you can modify its behavior and
other properties using the xMatters scripts. For example, you could extend the functionality of
the Custom message to include a validation request, and then select the "Send Welcome and
Custom" option. Whenever a User added a new Device, xMatters would send a Welcome
message containing the standard terms and conditions, and then automatically send a validation
request to the Device three seconds later.
Note that specific content for these messages may be required by local regulations or your
SMSprovider; for more information about specifying their content, see "SMSConfirmation and
First Alert Messages Constants" on page 213.
After changing this value, you must restart any Device Engines using this Protocol Provider for
the changes to be applied.
APIURL
Username
Typically, the username supplied by the web API provider; required if the URLuses HTTP
authentication.
Password
Typically, the password supplied by the web API provider; required if the URLuses HTTP
authentication.
Setting
Description
From
The phone number to use as the caller IDthat identifies the source of outgoing messages. Must
be a valid outgoing caller IDfor your account.
Source TON
The type of number (TON) for the source address to be used during the server session.
Response URL
Web server URL to which the Device Engine forwards the web API's response from the initial
submission (i.e., http://yourwebserver/services/xmsms).
Request Type
Select one of the following options to specify how you want xMatters to create the
POSTrequest body:
Parameters: when selected, the page will display an editable list of HTTP request parameters
available to this provider. This list is typically specified by the web API. When the notification
request is submitted to the protocol provider, xMatters will build the POSTrequest body using
these parameters.
n
Click Add New Name/Value Pair to create a new request parameter, and then specify a
Name and Value in the related fields. To remove a request parameter, select the related
check box and then click Remove Selected Name/Value Pair.
For example, to add an APIID (as required by some providers to identify your account),
add an "api_id" parameter and set the value to your IDnumber.
Body:when selected, the page will display a Content Type and Content field that allow you to
create a custom string to use as the request body. For more information, see "Creating a custom
request body", below.
Country-Specific
Overrides
You can set country-specific overrides for the Protocol Provider's Source Address: if a country
override exists that matches the country specified for a User's text phone Device details, the
Protocol Provider will use the source address overrides.
To add a new country override, click Add New Country, and then select the country for which
you want to configure the override from the Country drop-down list. Select an option in the
Short Code Compliance if you want to send a welcome notification to Users whose Devices
match the specified country.
In the Source Address field, type the address you want to use for recipients in that country.
You can also specify a separate address to which recipients should send their responses. If you
specify an address in the Reply To field, the response portion of the SMSmessage includes
"Send reply to <address>." Note that this does not override or affect the original source of the
message; it provides a visual reminder to the recipient that they should respond to a different
address.
Note: This feature requires that you have configured simple SMS replies, as described in
"Configure simple SMS replies" on page 143.
Content Type
Type any valid MIMEtype (also known as Internet media type) to identify the format in which the content will be
submitted to the protocol provider; for example:
n
application/xml
text/html
text/javascript
applications/json
Note that xMatters does not perform any validation on this field; ensure that you have entered your MIMtype correctly.
Content
Type the body of the HTTPrequest in the field. You can include any of the following variables, which will be replaced
in the submitted request with the actual values:
n
$(from):the value specified in the From field on the Protocol Provider settings.
$(password):the value specified in the Password field on the Protocol Provider settings
$(source_ton):the value specified in the SourceTON field in the Protocol Provider settings
$(webserverurl):the URL of the xMatters web server. Note that this value is determined by the
WEBSERVERGlobal Constant
Example
The following example illustrates the request body required to connect with the OpenMarket SMS provider using the
application/xml MIMEtype and a demonstration account:
<?xml version="1.0"?>
<request version="3.0" protocol="wmp" type="submit">
<user agent="XML/SMS/1.0.0"/>
<account id="$(username)" password="$(password)"/>
<option charge_type="0" mlc="2" datacoding="UCS2" note="{ntfnId:$(ntfn_id), nodeId:$(node_
id)}"/>
<source ton="$(source_ton)" address="$(from)"/>
<destination ton="1" address="$(pin)"/>
<message data="$(message)"/>
<delivery receipt_requested="true" url="$(webserverurl)
/callbacks/openmarket/deliveryReceipt"/>
</request>
Note that you will need to modify the above settings to suit your production deployment. For more information, consult
your OpenMarket representative.
Description
Name
Description
Maximum Retries
Retry Interval
APIURL
Username
Typically, the username supplied by the web API provider; required if the URLuses HTTP
authentication.
Password
Typically, the password supplied by the web API provider; required if the URLuses HTTP
authentication.
From
The phone number to use as the caller IDthat identifies the source of outgoing messages.
Must be a valid outgoing caller IDfor your account and formatted using "+" and a country
code; e.g., "+16175551212".
To
Response URL
Web server URL to which the Device Engine forwards the web API's response from the
initial submission (i.e.., http://yourwebserver/voicexml/processResponse.jsp).
Web server URL at which the responses can access the interaction script.
Request Parameters
This area displays an editable list of HTTP request parameters available to this provider.
This list is typically specified by the web API.
Click Add New Name/Value Pair to create a new request parameter, and then specify a
Name and Value in the related fields. To remove a request parameter, select the related
check box and then click Remove Selected Name/Value Pair.
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry Interval
Maximum Session
Size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum Pin
Length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
When creating a MAPI Protocol Provider, you must specify an account in the Log On Properties for the
xMatters node Windows Service. The account name and password must match the owner of the Outlook profile
on the machine running the Notification Server Node. Restart the Windows Service after specifying the account
details.
Setting
Description
Name
Number of times to resend a notification before potentially using an alternate service provider; allowable
values are from 0 to 10.
Retry
interval
Setting
Description
Controls whether notifications that exceed the number of characters specified by the Split size setting are
split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This setting
applies only if the Split long message check box is selected.
Maximum
message
length
If enforced by this provider, the maximum number of characters allowed per notification. For more
information, see "Set maximum message length" on page 161.
Maximum
PIN length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is longer
than the maximum PIN length, the leading characters are truncated.For email Protocol Providers (i.e.,
SMTP, Lotus Notes, and MAPI), the maximum pin length applies only if all of the characters before the
@ symbol are digits. In this case, the Maximum PINLength setting controls how many digits are allowed
before the @ symbol.
Description
Name
Description
Maximum
Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Maximum
session size
Split long
message
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum
message length
If enforced by this provider, the maximum number of characters allowed per notification. For more
information, see "Set maximum message length" on page 161.
Setting
Description
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.For email Protocol
Providers (i.e., SMTP, Lotus Notes, and MAPI), the maximum pin length applies only if all of the
characters before the @ symbol are digits. In this case, the Maximum PINLength setting controls
how many digits are allowed before the @ symbol.
Reply To
Description
Name
Description
Maximum
Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Description
Name
Number of times to resend a notification before potentially using an alternate service provider; allowable
values are from 0 to 10.
Retry
Interval
Setting
Description
Split long
message
Controls whether notifications that exceed the number of characters specified by the Split size setting are
split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This setting
applies only if the Split long message check box is selected.
Maximum
message
length
If enforced by this provider, the maximum number of characters allowed per notification. For more
information, see "Set maximum message length" on page 161.
Maximum
PIN length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is longer
than the maximum PIN length, the leading characters are truncated.
Originator
Country
UCP Level UCP operation level required by the service provider; the default setting of 01 is implemented for
legacy operations.
Encoded
Select the method used to encode messages sent to the service provider: ENCODE_GSM will encode
messages using GSM 7-bits encoding, and ENCODE_HEX will encode messages using an ASCII-based
hex protocol.
Baud Rate
Specifies modem speed to match the paging service provider (many still use 1200 or 2400).
Databits
Stopbits
Parity
Flow
Control
Specifies the flow control between the modem and the serial port (similar to handshaking).
Init String
Override
Specifies the initialization string for the modem used by this Protocol Provider. If not specified, the
provider uses the Init String defined in the Serial Device Resources list on the Resources for Node page.
For more information, see "Resource types" on page 151.
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry Interval
When selected, the Protocol Provider uses the settings specified in the Inbound SIP Registration
List on the SIP Device Engine Details page. Clear this checkbox to use specific settings for this
Protocol Provider, as described in the following table, SIP Provider - Inbound Registration
settings.
Note that xMatters attempts to use the specified settings to send a notification once, and then
attempts to use the settings specified in the SIP Device Engine details. These two attempts count
as one try toward the maximum number of retries as specified above. If these attempts fail
beyond the maximum number of retries, then xMatters will attempt to use the next Protocol
Provider specified in the User Service Provider, if available.
Call-out Script
Phone Class Details Defines the Phone Class to use for this Protocol Provider. For more information about Phone
Classes and a description of these settings, see "Phone Class Resources" on page 153.
Initial Silence
Maximum duration (in milliseconds) of silence before the greeting. If this duration is exceeded,
then xMatters treats the answerer as a machine.
Greeting
Maximum duration (in milliseconds) of the greeting phrase. If this duration is exceeded, then
xMatters treats the answerer as a machine.
After Greeting
Silence
Maximum duration (in milliseconds) of the silence after detecting a greeting. If this duration is
exceeded, then xMatters treats the answerer as human.
Minimum Word
Length
Maximum Word
Length
Maximum Number
of Words
Maximum number of words in a greeting. If this value is exceeded, then xMatters treats the
answerer as a machine.
Setting
Description
Between Words
Silence
Minimum duration (in milliseconds) of silence after a word to consider the audio that follows as
a new word.
Silence Threshold
The threshold to use to determine silence on the line; larger values are less sensitive to static. If
the amount of "noise" on the line is larger than this value, then the inbound is treated as a voice;
otherwise, it is treated as silence. Valid values are from 0 to 65535; the default value is 256.
The silence threshold required for Protocol Providers may vary. Some phones attempt to amplify
the speaker's voice, which can also amplify any ambient noise and make the default value of
256 too low. Other phones may be designed to suppress the noise, and unintentionally suppress
the voice as well. To determine the appropriate value for phones in your system, you may need
to enable detailed logging and experiment using different values.
Total Analysis
Time
Maximum amount of time (in milliseconds) allowed for the algorithm to determine whether the
answerer is HUMAN or MACHINE.
Phone Class
Exceptions
Defines any Phone Class Exceptions for this Protocol Provider. For more information about
Phone Class Exceptions, see "Phone Class Resources" on page 153.
The following table describes the settings for SIPProvider Inbound Registration.
SIP Provider - Inbound Registration settings
Setting
Description
Local Port
Local port to which the Device Engine will bind and which the SIP Server will use to
communicate with xMatters.
SIP Domain
SIP Outbound
Proxy Address
SIP Outbound
Proxy Port
DTMF Payload ID
Number identifying the DMTF payload. The default value is 101, though some SIP Server
environments may require a different value. Contact your SIP Server Administrator for more
information.
Setting
Description
Registration
Attempts
Registration
Timeout
How long, in seconds, to wait before timing out on a registration attempt. The default is 60.
Session Timeout
How long, in seconds, to wait before timing out a SIP session. The default is 3600.
User Name
Password
Display Name
Note:
Due to resource-contention that can affect call quality and performance, xMatters SIP is not supported for
virtualized environments (see also "Virtual Machine Deployment Guidelines" on page 22).
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Maximum session
size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
If you are using the SARconcatenation method, refer to the "SARSplit Size" note following
this table for more information about this setting.
Setting
Description
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Split Method
Specifies the concatenation mechanism used by the provider when splitting and reassembling
long SMSmessages. With concatenation, it is possible to send a single long message to a
mobile station as a series of several short messages, and to display them as one message on the
target Device.
Concatenation is performed at the Device itself, which uses additional information fields within
the messages to identify, sort, and join the content into a single message. Up to a maximum of
255 short messages (of less than 160 characters each)can be joined in this way. xMatters
provides two methods of concatenating messages:GSMUser Data Headers (UDH) and SMPP
Segmentation and Reassembly (SAR).
Select one of the following options:
l
l
Indicates whether the Protocol Provider supports new line characters (line breaks).
Setting
Description
Short Code
Compliance
Select an option to specify when xMatters should send a notification explaining terms of service
to each SMSDevice:
l
None: xMatters will not send a notification to the Device when it is added, modified, or
activated.
Send Welcome:xMatters will send a Welcome notification to an SMSDevice when it is
added, modified, or activated. (The content of this message is defined in the
SMSCONFIRMMSG Constant.)
Send Custom: xMatters will send a Custom notification to an SMSDevice when it is
added, modified, or activated. (The content of this message is defined in the
SMSFIRSTMMSG Constant.)
Send Welcome and Custom: Sends both the Welcome and the Custom messages.
In addition to modifying the content of the Custom message, you can modify its behavior and
other properties using the xMatters scripts. For example, you could extend the functionality of
the Custom message to include a validation request, and then select the "Send Welcome and
Custom" option. Whenever a User added a new Device, xMatters would send a Welcome
message containing the standard terms and conditions, and then automatically send a validation
request to the Device three seconds later.
Note that specific content for these messages may be required by local regulations or your
SMSprovider; for more information about specifying their content, see "SMSConfirmation and
First Alert Messages Constants" on page 213.
After changing this value, you must restart any Device Engines using this Protocol Provider for
the changes to be applied.
Source Address
Number associated with your SMPP account. This number is used to indicate the sender for
outgoing messages. If specified, this value will override the Device Engine setting.
Source Address
TON
Your SMPP accounts TON to be used during the server session. If specified, this value will
override the Device Engine setting.
Source Address
NPI
Clients NPI required by your service provider for the source address. If specified, this value will
override the Device Engine setting.
Indicates whether to add a plus symbol (+) to the beginning of each phone number sent to the
SMPP engine.
This feature is available only on deployments where all text phone Devices were created after
4.1 patch 006 or later. If you have text phone Devices that were added prior to applying the
required patch, you must either delete the Devices (which will automatically enable this feature)
or work with xMatters Support to reconfigure your existing Devices.
Default Dest
Address TON
TON required by your service provider for the default destination address. If specified, this value
will override the Device Engine setting.
Default Dest
Address NPI
NPI required by your service provider for the default destination address. If specified, this value
will override the Device Engine setting.
Setting
Description
Dest Address
Subunit
Specifies where to store the message on the target Device (e.g., in a SIM card).
Deactivation Error
Codes
A comma-separated list of error codes that indicate a Device has been delisted or deactivated by
its service provider. If one of these codes is returned from the Protocol Provider, xMatters will
deactivate the targeted Device and, based on the selected option in the Notifiy Upon
Deactivation drop-down list, notify the User and their supervisors.
For more information about configuring this feature, see "Configure automatic SMS device
deactivation" on page 224.
Notify Upon
Deactivation
Specifies who should be notified when a Device has been marked as delisted or deactivated by
its service provider; select one of the following:
l
l
l
Supervisors and Device Owners:(default) notifies the User who owns the Device, their
direct supervisors, and the supervisor of any Groups to which the User belongs.
Device Owners:notifies only the User (or Users) who owns the Device.
Supervisors:notifies the direct supervisors and Group Supervisors for the User who owns
the Device.
Do Not Notify:does not send notifications.
Note that the notification will automatically be sent to the User or supervisor's email Device; if
the recipient does not have an email Device, the notification is sent to their default Device.
Add New
Tag/Value Pair
Allows you to define optional tag/value pairs that can be used to sort messages. For example,
XYZ Marketing, XYZ Sales, XYZ Data_Center.
When adding a new tag/value pair, select one of the following types:
n
n
n
n
n
Setting
Description
Country-Specific
Overrides
You can set country-specific overrides for the Protocol Provider's Source Address, Source
Address TON and Source Address NPIsettings. If a country override exists that matches the
country specified for a User's text phone Device details, the Protocol Provider will use the
source address overrides.
To add a new country override, click Add New Country, and select the country for which you
want to configure the override from the Country drop-down list. Select the Short Code
Compliance check box if you want to send a welcome notification to Users whose Devices
match the specified country. (Note that this setting takes precedence over the Protocol Provider
setting.)
Set the Source Address, Source TON, and Source NPIyou want to use. You do not need to
enter information into all of the fields; if a field is left blank, the override will use the default
settings configured for the Protocol Provider.
You can also specify a separate address to which recipients should send their responses. If you
specify an address in the Reply To field, the response portion of the SMSmessage includes
"Send reply to <address>." Note that this does not override or affect the original source of the
message; it provides a visual reminder to the recipient that they should respond to a different
address.
Note: This feature requires that you have configured simple SMS replies, as described in
"Configure simple SMS replies" on page 143.
This feature is available only on deployments where all text phone Devices were created after
4.1 patch 006 or later. If you have text phone Devices that were added prior to applying the
required patch, you must either delete the Devices (which will automatically enable this feature)
or work with xMatters Support to reconfigure your existing Devices.
SARSplit Size
The SARsplit mechanism for SMPPrequires that the actual message size be smaller than the pre-configured size (i.e., the
size specified in the Split Size field). The purpose of this size difference is to leave room for adding the SARheader. For
example, if you configure the Split Size setting to 160, the actual split size will be smaller than 160.
The precise size difference is determined by the type of characters within the message. There are three different character
types:7 bits for ASCII and GSM, 8 bits for western Europe, and 16 bits for the rest of the world. The size specified in
the Split Size field is for 7-bit characters.
For example, if the Split Size field is set to 160:
n
If the Split Method field is set to None, the actual split size is 140 for 8-bit characters, and 70 for 16-bit characters.
If the Split Method field is set to SAR, xMatters deducts more characters to leave room for the SAR header: 10
characters are deducted for 7- and 8-bit characters, and 5 characters are deducted for 16 bits. The payload size
after.splitting would then be 150 for 7-bit, 130 for 8-bit, and 65 for 16-bit characters.
For example, if the SMPP Service Provider does not support latin1 encoding:
CHANGE:
<property name="latin1Encoding">
<value>true</value>
</property>
TO:
<property name="latin1Encoding">
<value>false</value>
</property>
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Maximum session
size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Setting
Description
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.For email Protocol
Providers (i.e., SMTP, Lotus Notes, and MAPI), the maximum pin length applies only if all of
the characters before the @ symbol are digits. In this case, the Maximum PINLength setting
controls how many digits are allowed before the @ symbol.
Authenticate
Account
Password
Email Sender
Email address used to send notifications (appears in the From: field on email messages).
Reply To
Server Address
Server Port
Domain Name
Use SSL
Note:
The S/MIME (Secure/Multipurpose Internet Mail Extensions) standard is not supported for email responses.
Description
Name
Description
Maximum retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Setting
Description
Retry interval
Maximum session
size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Server Address
Server Port
Account
Password
Password, if required by your service provider; see note in Account field, above.
Two Way
Multiple
Notifications per
Session
When selected, the provider will process multiple notifications per connection session. If this
option is not selected, the provider must reconnect with the SNPPserver for each notification
processed.
Description
Name
Description
Setting
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Maximum session
size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Originator
User Name
Password
Server Address
Server Port
UCP Level
UCP operation level required by the service provider; the default setting of 01 is implemented
for legacy operations.
Encoded
Select the method used to encode messages sent to the service provider: ENCODE_GSM will
encode messages using GSM 7-bits encoding, and ENCODE_HEX will encode messages using
an ASCII-based hex protocol.
Description
Name
Description
Setting
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Maximum session
size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Country
Baud Rate
Specifies modem speed to match the paging service provider (many still use 1200 or 2400).
Databits
Stopbits
Parity
Flow Control
Specifies the flow control between the modem and the serial port (similar to handshaking).
Support CTL
Password
Init String Override Specifies the initialization string for the modem used by this Protocol Provider. If not specified,
the provider uses the Init String defined in the Serial Device Resources list on the Resources for
Node page. For more information, see "Resource types" on page 151.
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Maximum session
size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Country
Baud Rate
Specifies modem speed to match the paging service provider (many still use 1200 or 2400).
Databits
Stopbits
Parity
Flow Control
Specifies the flow control between the modem and the serial port (similar to handshaking).
Support CTL
Password
Description
Name
Description
Maximum retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Maximum session
size
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Port
Port number on the computer where the virtual device software is installed.
IP Address
Description
Name
Description
Maximum Retries
Number of times to resend a notification before potentially using an alternate service provider;
allowable values are from 0 to 10.
Retry interval
Maximum session
size
Setting
Description
Controls whether notifications that exceed the number of characters specified by the Split size
setting are split into multiple smaller messages or sent as a single message.
Split size
Determines the maximum number of characters per message sent to this Protocol Provider. This
setting applies only if the Split long message check box is selected.
Maximum message
length
If enforced by this provider, the maximum number of characters allowed per notification. For
more information, see "Set maximum message length" on page 161.
Maximum PIN
length
If enforced by this provider, the maximum number of characters allowed in a PIN. If the PIN is
longer than the maximum PIN length, the leading characters are truncated.
Server Address
Account
Password
Specifies how long, in seconds, the Device Engine should continue to poll the WCTPserver
every minute for responses to each notification; the default is 3600 (one hour). Note that this
setting does notspecify how often the WCTPserver should be polled.
xMatters displays a current list of User Service Providers for the Company.
To modify an existing Service Provider, click its name in the list to view its Service Provider Details. For
more information about editing Service Provider Details, see the following section, "Define user service
providers".
To remove a User Service Provider from the list, select the check box next to the User Service Provider or
Service Providers you want to remove, and then click Remove Selected.
To add a new User Service Provider, click the Add New link, and specify the User Service Provider details
for the new User Service Provider, as explained in the User Service Provider Details settings table below.
After you click Save to create the User Service Provider, xMatters displays the Select Your Protocol
Providers page. In the Available Protocol Providers box, select the Protocol Providers you want to add to the
User Service Provider, and then click Add. To save your settings and return to the User Service Providers list,
click Save.
Description
Name
Name of the Service Provider. This is the name that Users will see in the Provider drop-down list on the
Device Details page (e.g., Email Device Details page).
PIN Mask
How many characters of the Users PIN are used for this provider.
3. Click Save.
l
If you are creating a new User Service Provider, xMatters displays the Select Your Protocol Providers page.
In the Available Protocol Providers box, select the Protocol Providers you want to add to the User Service
Provider, and then click Add. To save your work and return to the User Service Providers list, click Save.
4. To prevent the User Service Provider from using a Protocol Provider when notifying a Device, select the Protocol
Providers you want to disable, and then click Disable Selected.
l
This does not disable the Protocol Provider in xMatters, but deactivates it within the User Service Provider.
5. To change the order in which the User Service Provider uses the Protocol Providers, click the Reorder link above
the Protocol Providers table. On the Order Protocol Providers page, use the Move Up and Move Down buttons to
change the order of the Protocol Providers, and then click Save to return to the User Service Providers details.
l
When delivering a notification, xMatters will attempt to deliver a notification to the first Protocol Provider
in the list for the number of times specified in the Maximum number of retries setting on the Protocol
Provider details page. If all of these attempts fail, xMatters will attempt to deliver to the next Protocol
Provider in the list.
LDAP servers
If your organization uses LDAP authentication, you can set the parameters for communication between xMatters and
your LDAP servers in the web user interface. Before configuring the LDAP options, it is recommended that you discuss
requirements with your LDAP administrator.
In a multiple-Company deployment, LDAP servers and domains are Company-specific, and Company Administrators
must specify their LDAP settings separately for each Company in xMatters.
To view and manage LDAP servers:
1. Log in to xMatters.
2. On the Administration tab, in the Configuration menu, click LDAP Servers.
l
To modify an existing LDAPserver, click its name to view its details. For more information about the
required settings, see "Define LDAP server details", below.
To remove a server from the list, select the check box next to the servers you want to remove, and then click
Remove.
To create a new LDAPserver, click the Add New link above the table, and specify the settings for the new
server on the LDAPServer Details page. For more information about the required settings, see "Define LDAP
server details", below.
To reorder the servers in the list, select the Move Up or Move Down button for the server you want to move.
When a User is logging in, and has the "ALL"option selected for the LDAPServer field for their web login
settings, xMatters attempts to authenticate the User against the listed LDAPservers beginning with the first
server, and continuing down the list.
To test the configuration for an LDAPserver, click the Authentication Test button in the Actions column for
the server you want to test. In the LDAPAuthentication Test dialog box, type a User Login and User
Password for a user in the target LDAPsystem. If the LDAPserver is properly configured, the dialog box
displays a confirmation message that the authentication was successful.
Description
Name
The name of the LDAPserver used to identify the server on the LDAPServers page, and in Users'
Web Login details.
Description
Primary Host
Primary Port
Port number xMatters should use to communicate with the primary LDAP Server. (The default
port for LDAPis 389; the default port for LDAPover SSLis 636.)
Use SSL
When selected, uses the Secure Sockets Layer protocol when communicating with the primary
LDAP server.
Secondary Host
IP address of the secondary (failover) LDAP Server for xMatters. For more information about the
secondary LDAPserver settings, see "Secondary LDAPServers", below.
Secondary Port
Port number xMatters should use to communicate with the secondary LDAP Server. (The default
port for LDAPis 389; the default port for LDAPover SSLis 636.)
Use SSL
When selected, uses the Secure Sockets Layer protocol when communicating with the secondary
LDAP server.
Detail
Description
LDAP Type
n
n
Base DN
Simple: Creates a template using the User's xMatters Web Login ID and sends it to the
LDAPdirectory for verification.
Anonymous: Queries the LDAPdirectory for the User's LDAPcredentials.
Bound: Queries the LDAPdirectory for the User's LDAPcredentials using a bound
distinguished name and password.
For simple LDAPservers, this value specifies the distinguished name (DN) when it is known, and
allows the user web login to be referenced directly as part of the DN by using the special
substitution token, %UID% within a template. For example, %UID%@company.com would replace
the token %UID% by the Web Login ID from each Users profile details, effectively using the
User's corporate email address as the LDAPlogin template.
For anonymous or bound LDAPservers, this value specifies the base DNof the FDAPdirectory
branch from which all searches should begin. At a minimum, this value should be set to the top of
your LDAPdirectory tree. For example,
ou=directory,dc=company,dc=com,o=users,ou=mycompany.
Search Filter
Specifies the user search filter, which must be a valid LDAPsearch filter. This parameter provides
greater flexibility in searching because it allows you to put the User Login ID(represented by the
special substitution token, %UID%) in any location within the search filter. For more information
about this field, see "Create LDAP search filters", below.
Required for anonymous and bound LDAPservers.
Bind DN
Distinguished name used in conjunction with the password value to bind to the server when
searching for entries.
Required for bound LDAPservers only.
Bind Password
Password used in conjunction with the bindDN parameter. Since the bind password is probably
sensitive data, it should be properly protected using APSecure. (For more information about using
APSecure, see "Using APSecure" on page 91).
Required for bound LDAPservers only.
in attempts.
Secondary LDAPServers
In xMatters, the secondary LDAPserver settings provide redundancy for failover situations. The secondary server is
contacted only if there is a connection failure with the primary server; otherwise, responses from the primary server are
considered authoritative.
The following use cases provide examples of how and when xMatters contacts the secondary server.
Distinguished Name: If you know the format in which Distinguished Names are stored in your LDAP directory,
you can enter the DN format directly in the template field; for example,
dc=com,dc=company,ou=directory,uid=%UID%
Windows Domain: If you are using a Windows Active Directory Server for your LDAP server, then you will
typically use a template in the following format: DOMAIN_NAME/%UID%
Internet format: If you are using a Linux/Unix LDAP Server, then you will typically use a template in Internet
format: %UID%@company.com
Note:
If the User's Web Login ID is not part of the Distinguished Name, you must create either an anonymous or
bound LDAPserver to query the LDAP directory and bind the DN to the User. For more information, see
"Create LDAP search filters", below.
Note:
Most LDAP servers support LDAP search filters; however, since LDAP servers are not created equal, the type of
LDAP search filter provided should be compliant with your LDAP server. For more information, see your
LDAP server documentation.
To specify a prefix, you could enter the following into the Search Filter field on the LDAPServer Details page:
sAMAccount=%UID%
Match attributes
The following example illustrates how you could match for users distinguished by two objectClass attributes (one equal
to 'person' and another to 'user'):
(&(objectClass=person)(objectClass=user))
Notice the ampersand symbol (&) symbol at the start. Translated, this means: search for objectClass=person AND
object=user. Alternatively, you could use:
(|(objectClass=person)(objectClass=user))
Translated, this means: search for objectClass=person OR object=user. The pipe symbol (|) denotes 'OR'. As this is not a
special XML character, it should not need escaping.
Use wildcards
The following illustrates the use of wildcards:
(&(objectClass=user)(cn=*Marketing*))
This means: search for all entries that have objectClass=user AND a cn that contains the word 'Marketing'.
Exclude attributes
To exclude entities which match an expression, use an exclamation point (!). For example, the following will find all
Chicago groups except those with a "Wrigleyville" OU component (note the extra parentheses around the expression to
exclude):
(&(objectClass=group)(&(ou:dn:=Chicago)(!(ou:dn:=Wrigleyville))))
Global Configuration
You can set the logging and Health Monitor options for the entire xMatters system using the Global Configuration page.
Note that the settings on the Global Configuration page apply to the main xMatters logs and Health Monitor. Individual
components such as Nodes and Device Engines also have log settings to create and maintain separate log files. For more
information about logging configuration levels, see "Configure node logging" on page 117.
Monitoring includes detection of hardware failure, software defects, mis-configuration, and system resource
deficiencies.
Notification includes all the standard notification mechanisms provided by xMatters, and a set of default
notification mechanisms provided by the Health Monitor itself.
The Health Monitor triggers an Alert when any of the following conditions are met:
n
The latter list is not comprehensive; for detailed information about the conditions under which Health Monitor messages
are generated, see "Health monitor messages" on page 204.
Note:
When a disconnected database or Node is reconnected, the Health Monitor sends a notification indicating the
successful resolution.
Sending an email
Executing a program
Generating a notification
The Health Monitor generates two types of messages: detailed and terse. Detailed messages are used for emails sent by
the Health Monitor, and terse messages are used when sending a notification to non-email text Devices. All detailed
messages are also included in the xMatters log files.
Note:
The Health Monitor generates two messages for inter-node communication errors: one message that includes
the entire stack trace, and one that includes a simplified (terse) message. You can eliminate the stack trace
message by opening the hmApplicationContext.xml file (located at
node/assets/resources/spring/integration) in a text editor and setting
notifyNodeCommunicationExceptions to "false". After making the change, restart the node.
3. On the Global Configuration page, use the descriptions of the fields provided in the tables below to specify the
required information.
4. Click Save to apply your changes.
Description
Mail Host
Name of the mail host to use for email messages generated by the Health Monitor.
Mail Port
Mail Sender
Email address that appears in the From field of the notification email message.
Mail Recipient
Notification Target
If available, the user name of the Company Administrator the Health Monitor should attempt
to notify via xMatters in the event of a system health event.
Integration Agent
Heartbeat Failure
Threshold
Specifies how many consecutive "heartbeats" an Integration Agent can miss before the Health
Monitor sends a warning message. The value must be between 1 and 9999; the default is 5.
Notification Processing
Setting
Description
Notification
Processing Timeout
Length of time, in minutes, that a notification can remain in a serviceable state before it is
automatically delinked. The default setting is one hour.
Note that a live notification could remain serviceable but undispatched for several reasons.
For example, if a live notification for WCTP is created but the only configured WCTP engine
goes down for a period longer than the specified timeout, the notification will be delinked.
Specifying a value that is too short (e.g., five minutes) could result in notification delivery
failure if the Device Engines cannot process the number of notifications quickly enough. If
this happens, increase the Notification Processing Timeout setting, or increase the number of
available threads on your affected Device Engines.
Description
Enable Notifications
Threshold
Number of failures per Check Period that must be met or exceeded to trigger a notification. To
prevent the Health Monitor from sending any notifications, enter 0.
Check Period
How often, in minutes, to check whether the conditions for provider failure have been met.
Suppression Period
Description
xMatters uses the Bounced Mail Settings to respond to emails that are not related to a notification. xMatters sends
a message using the Bounced Mail Settings to indicate that the email was invalid.
Mail Host
Name of the mail host to use for email messages responding to invalid
responses.
Mail Port
Mail Sender
Email address that appears in the From field of the invalid response
notification email message.
Note: This email address must not be the same as the email account used to
Description
Sample Frequency
Specifies how often in seconds node network application layer latency is measured. This
setting is used by the Node Network Statistics Report and the Health Monitor. To minimize
impact on system resources, set this parameter to a larger value. To increase resolution when
diagnosing node network communication issues, set this parameter to a smaller value.
Default=30, Min=30, Max=300
Aggregation Period
Specifies how often in minutes node network application layer latency and network drop
statistics are calculated from the data collected. Latency data is averaged, and network drops
are totalled. This setting is used by the Node Network Statistics Report and the Health
Monitor. To minimize impact on system resources, set this parameter to a larger value. To
increase resolution when diagnosing node network communication issues, set this parameter
to a smaller value.
Default=1, Min=1, Max=30
Round Trip
Threshold
Network Drop
Threshold
Specifies the acceptable maximum number of dropped connections between nodes that can
occur during the specified Aggregation Period. This setting is used by the Node Network
Statistics Report and the Health Monitor; an alert is sent when this threshold is exceeded.
Default=1, Min=0, Max=5
Description
Enable SMS Response When enabled, xMatters will validate that each incoming SMS response using atext phone
Validation
protocol is from an authorized xMatters User. This option must be selected to enable the
remaining SMS Response Validation Settings.
SMS Validation
Pattern
Specifies the validation pattern to use when validating incoming SMS responses. This pattern
uses regular expressions to define how xMatters should recognize incoming SMStext phone
numbers and compare them to the Device numbers stored in xMatters.
The pattern must contain one or more groups, defined by parentheses. For more information
and examples, see "Specify SMS validation patterns and templates", below.
SMS Validation
Template
Specifies the validation template to use when validating incoming SMS responses. The
template must contain one or more instances of "$n", where n is a digit corresponding to a
group defined in the pattern. For more information and examples, see "Specify SMS validation
patterns and templates", below.
Indicates whether you want xMatters to accept simple SMSresponses to notifications. These
simple replies require Users to enter only a single digit as a response to a notification, rather
than entering a phrase that includes the notification key.
xMatters replies to invalid response messages with the message "<response choice>is not a
valid response."
For more information and examples, see "Configure simple SMS replies" on page 143.
If the validation pattern or template is not configured correctly, xMatters will ignore the responses. To check
whether responses are being ignored, review the application server and notification server logs.
You can use the following examples as a guideline for specifying your validation pattern and template. In each of the
examples, the Device's phone number is stored in xMatters as "5551234567" with a country code of 44.
Example One
n
The inbound phone number (from the Protocol Provider) is +44 555 123 4567
Set the SMS Reply Validation Pattern to +(\d+) (\d+) (\d+) (\d+)
Example Two
The following example illustrates how to specify the validation pattern and template for deployments using Clickatell:
n
Example Three
n
The inbound phone number comes back as 5551234567 (note the absence of the country code in the returned
number).
The exact text and availability of a Health Monitor message are dependent on the version of your xMatters
deployment; the text of the messages displayed on your system may not be identical to the message examples
described below.
Component Misconfigured
Device Engines report the following message when a configuration change has been applied that prevents notification
delivery (where possible, more detail about the source of the problem is included).
n
The xMatters Health Monitor on node <node name> has detected that the <device engine name> has been
misconfigured and can no longer function. Message: <detailed message>. Consult the node logs for further details.
Node Failure/Recovery
Nodes periodically update their database record with a timestamp. If a Health Monitor on a running node detects that
another node has failed to update its timestamp, the first message below is sent. When a node has failed, the processing
it was responsible for at the time of failure will be recovered by another running node (if there is one).
When a node that has previously failed (i.e., its heartbeats stopped) resumes its heartbeats, the second message below is
sent.
Messages
n
The xMatters Health Monitor on node <running node name> has detected that node <failed node name> has
stopped sending heartbeats. Ensure that the node process is still running and can access the database.
The xMatters Health Monitor on node <running node name> has detected that node <recovered node name> has
recovered.
Multi-Node Communication
In some cases, node-to-node communication can fail (e.g., due to regular maintenance, network outages, faulty
equipment, socket exhaustion, etc.), generating a Health Monitor message.
n
The xMatters Health Monitor on node <node name> has detected that communication with an xMatters node has
been lost: <node name>.
The xMatters Health Monitor on node <node name> has detected <communication defect> communication with
AlarmPoint node <node name> over the last <number of seconds> seconds. The affected nodes will not exchange
messages until bidirectional communication is established, which may result in apparent loss of service. Corrective
action should be taken to allow bidirectional communication between the affected nodes. Consult the logs of the
affected nodes for further details on communications errors.
The xMatters Health Monitor on node <node name> has detected that communication between <node name1> and
<node name2> has been interrupted <number of times> times for the last <number of minutes> minutes. If this
consistently occurs on a specific node, ensure that the node process is active. If this occurs erratically and/or
frequently, there may be networking issues affecting inter-node or node-to-database communication. Consult the
logs of the affected nodes for further details.
The xMatters Health Monitor on node <node name> has detected that communication between <node name1> and
<node name2> is too slow. For the last <number of minutes> minutes, the average round trip latency was <number
of milliseconds> ms.
This may be caused by a networking problem, or the load on the servers or the network may be reaching capacity.
The following messages are sent when application layer latency has recovered to within the specified parameters:
n
The xMatters Health Monitor on node <node name> has detected that communication between <node name1> and
<node name2> is recovered. Symmetric (i.e., bidirectional) communication has been restored.
The xMatters Health Monitor on node <node name> has detected that communication between <node name1> and
<node name2> is recovered. For the last <number of minutes> minutes, the communication interruption time has
been below the configured threshold.
The xMatters Health Monitor on node <node name> has detected that communication between <node name1> and
<node name2> is recovered. For the last <number of minutes> minutes, the average round trip latency was
<number of milliseconds> ms.
Startup of <node name> has been aborted because the number of active nodes would have exceeded the licensed
limit. Contact support @xmatters.com to obtain a license that allows more nodes.
The xMatters Health Monitor has detected that the internal clock for this node has deviated <number of
milliseconds>ms from the database's internal clock. As a result, messages may be lost. Adjust the node or database
clock to match. To avoid having to manually adjust the clock, consider, automatically synchronizing system
clocks against an NTPserver.
Unhandled Exception
The following message is sent when an unexpected error occurs.
Message
n
The xMatters Health Monitor on node <node name> has detected an error: <error>.
Consult the node logs for further details.
Example
The xMatters Health Monitor on node SISC_APP_NODE1 (10.10.60.78) has detected an error: No row
with the given identifier exists:
[com.invoqsystems.foundation.interpreter.invoqscript.persistance.
ScriptObjectProxy#214410]; nested exception is org.hibernate.
ObjectNotFoundException: No row with the given identifier exists:
[com.invoqsystems.foundation.interpreter.invoqscript.persistance.
ScriptObjectProxy#214410].
Consult node logs for further details.
Troubleshooting
To troubleshoot an unhandled exception alert, analyze the logs on the node that caused the exception:
1. Search the log for the exception detailed in the Health Monitor email.
2. Each log entry contains a thread number. Search the log for the entries corresponding to the thread number that
generated the exception, and look for an Event ID or a target name (Recipient) in those log entries.
l
In the following example, the thread numbers are in bold, the Event ID is italicized, and the recipient is
underlined:
3. If a recipient is found, log in to the xMatters web user interface and search for that recipient. You may find issues
with the Users Devices.
4. If an Event ID is found, log in and look at reports for that Event ID.
l
The Event Reports may contain explanations for the error in the log.
The xMatters Health Monitor on node <node name> has detected an error during message processing. This may
indicate that a non-redundant system component (node or device engine) was stopped or has failed.
Additional details:
Company:<Company name>
Message Type:<Message>
Message ID:<Message>
Source Component:<component>
Source Node:<node name>
TargetComponent:<component>
Target Node: <node name> (<details>)
Time Posted:<time>
Time-to-Live: <number> ms.
The xMatters Health Monitor on node <node name> has detected that database communication has failed.
Check the database server status and whether the node can ping the database server's host. Consult the node logs
The xMatters Health Monitor on node <node name> has detected that database communication has been restored.
The xMatters Health Monitor on node <node name> has detected that the <provider name> User Service Provider
from Company <Company name> has no active protocol providers; as a result, notifications have not been
delivered.
Configure at least one Protocol Provider and a corresponding Device Engine to send messages to Devices that use
this User Service Provider.
The xMatters Health Monitor on node <node name> has detected that notification to <recipient target name> of
company <company name> has failed because all Protocol Providers have been attempted and failed for User
Service Provider <provider>.
If this occurs whenever a message is sent to this provider, the most likely cause is a configuration problem with the
provider or its corresponding Device Engine. If this happens consistently only for this Device, the Device is likely
invalid or misconfigured. If none of the latter conditions apply, this may be a transient problem with the provider
or the network. Consult the node logs for further details.
The xMatters Health Monitor on node <node name> has detected that notification to <User> of Company
<Company name> on <User Device name> has failed because all protocol providers have been attempted and
failed for user service provider <Service Provider name>. Consult the node logs for further details.
The xMatters Health Monitor on node <node name> has detected that the <protocol provider type> Protocol
Provider of Company <Company name> has failed beyond the configured threshold. The most recent failure
occurred on node <node name> with message <message text>. The service provider may be unavailable or the
Protocol Provider may be incorrectly configured. Consult the node logs for further details.
There is no Device Engine to process the notifications that target the Protocol Provider <Protocol Provider name>.
Configure at least one Device Engine that can handle the protocol.
The xMatters Health Monitor on node <node name> has detected that <Protocol Provider Name> protocol
provider has failed. Message <message text>. Consult the node logs for further details.
The xMatters Health Monitor on node <node name> has detected that the <SIP Service Provider name> SIP service
provider has failed beyond the configured threshold. The most recent failure occurred on node <node name>.
Ensure that the provider is operational and that the node is properly configured to use it. Consult the node logs for
further details.
The xMatters Health Monitor on node <node name> has detected that the <Phone Service Provider name> phone
service provider of Company <Company name> has failed beyond the configured threshold. The most recent
failure occurred on node <node name>. Ensure that the phone line is operational and that the node is properly
configured to use it. kConsult the node logs for further details.
The xMatters Health Monitor on node <node name> has detected that the <Device Engine name>has failed for
<#> consecutive registration attempts.
Message:<message>
Consult the node logs for further details.
The xMatters Health Monitor on node <node name> has detected that the <Device Engine name>has failed to
register with its associated server.
Check the configuration logs and network connectivity.
Consult the node logs for further details.
The xMatters Health Monitor on node <node name> has detected that the <Device Engine name>has recovered.
The xMatters Health Monitor on node <node name> has detected that SIP Device Engine protocol provider has
failed. Message Failed to register to SIP server <SIPSever IP address and port>
The xMatters Health Monitor on node <node name> has detected that its host node is nearing its maximum
capacity. Incoming message acceptance may slow if the current load is maintained.
Startup of <node name> has been aborted because the number of active nodes would have exceeded the licensed
limit.
The xMatters integration agent has its own Health Monitor and related notifications, which are summarized in
the xMatters integration agent guide.
Messages
n
At <timestamp>, No connection could be made between Integration Agent <URL> and any of the primary or
secondary xMatters Web Servers. The Integration Agent will continue sending heartbeats, and a notification will
be sent when the heartbeat recovers.
At <timestamp>, Integration Agent <URL> successfully sent a fully accepted heartbeat to primary xMatters Web
Server <URL>. The Integration Agent is fully functional. A notification will be sent if the heartbeat status
changes.
At <timestamp>, A connection was made between Integration Agent <URL> and primary xMatters Web Server
<URL>, but the heartbeat generated the following error: The xMatters Server at <URL> rejected the
heartbeat/registration with the following reason: AUTHENTICATION_ERROR. The Integration Agent will
continue to send heartbeats to the primary servers, but Integration Agent functionality may be limited until the
heartbeat is fully accepted. A notification will be sent when the heartbeat is fully accepted. Consult the Integration
Agent log for further details.
At <timestamp>, No connection could be made between Integration Agent <URL> and any of the primary
xMatters Web Servers. The heartbeat was fully accepted by secondary xMatters Web Server <URL>. The
Integration Agent is fully functional in failover mode. The Integration Agent will continue to send heartbeats to
the secondary servers. A heartbeat to the primary servers will be reattempted every 600 seconds (0 indicates
indefinitely), or if the secondary heartbeat fails. A notification will be sent when the primary heartbeat recovers.
At <timestamp>, No connection could be made between Integration Agent <URL> and any of the primary
xMatters Web Servers. A connection was made to secondary xMatters Web Server <URL>, but the heartbeat
generated the following error: The xMatters Server at <URL> rejected the heartbeat/registration of the following
Integration Services: Domain: ping, Name: ping, Reason: UNKNOWN_SERVICE . The Integration Agent will
continue to send heartbeats to the secondary servers, but Integration Agent functionality may be limited until the
heartbeat is fully accepted. A heartbeat to the primary servers will be reattempted every 600 seconds (0 indicates
indefinitely), or if the secondary heartbeat fails. A notification will be sent when the primary heartbeat recovers or
the secondary heartbeat is fully accepted. Consult the Integration Agent log for further details.
The xMatters Health Monitor on node <node name> has detected that an invalid event to Company <Company
name> has been received on the <domain name>Event Domain with an incident IDof <ID>. This is a summary
report; more invalid events may be rejected.
General Troubleshooting
When troubleshooting Health Monitor error messages, you may find the following reports useful:
n
Submitted Notifications Report: this report displays all notifications sent by the system across multiple events
during a specific time period. For more information, see "Submitted Notifications Report" on page 317.
Live Notifications Report: this report displays all notifications currently in progress. For more information, see
"Live Notifications Report" on page 319. Note that two-way pager notifications sent via SCTP and SNPP appear in
the Live Notifications Report for one hour after the notification is sent. This is due to the mechanism used by these
protocols to query for delivery updates and replies.
Application Audit Report: this report lists all changes made to any type of object within the system, such as Users,
Groups, Devices, Schedules, etc. For more information, see "Application audit report" on page 327.
Constants
xMatters uses constants in scripting in a manner similar to variables (i.e., the constant name is abstracted from the
constant value). Constants can be Global, applying across all Companies in an xMatters multi-tenancy deployment, or
Company-specific, applying only to the Company for which they are defined. They can also be defined for use within a
single Event Domain.
Constants | 209
Example
An xMatters administrator creates a constant named "BES_URL" with a value representing the current BlackBerry
Enterprise Server URL. The constant is then used in several xMatters scripting packages (i.e., the constant is used rather
than the actual BESURL). If the server's URL changes, the administrator can simply modify the value of the BES_URL
constant. The change will then be propagated to all instances of the BES_URLconstant in the scripting packages.
Constant Names
If a Global Constant and a Company Constant have the same name, the value of the Company Constant overrides the
value of the Global Constant for that Company. Additionally, Company Constants have independent values between
Companies; multiple Companies can define a constant with the same name, but different values.
Similarly, if an Event Domain Constant has the same name as a Company Constant or a Global Constant, the value of
the Event Domain Constant overrides the value of the other constants. Event Domain Constants also have independent
values between Event Domains; multiple Event Domains in the same Company can define a constant with the same
name, but assign different values.
Note:
When an existing constant is modified, it takes five minutes for the change to be reflected in the scripts.
Global Constants
xMatters super administrators can define Global Constants that will be available in scripting for all Companies in the
xMatters deployment.
Note:
If a Global Constant and a Company Constant have the same name, the value of the Company Constant
overrides the value of the Global Constant for that Company.
Constants | 210
To modify an existing Global Constant, click its name in the list to view its details. For information about
the fields and values, see "Defining Global Constant Details" below.
To remove a Global Constant, select the check box next to it in the Global Constants list, and then click
Remove Selected.
To add a new Global Constant, click the Add New link above the list, and then specify the details on the
Add New Global Constant page. For information about the fields and values, see "Defining Global Constant
Details" below.
Name: the name of each Global Constant must be unique within the xMatters system, and will automatically be
converted to all upper-case when the constant is created. Constant names are limited to 100 characters or less, and
can contain only alphanumeric characters, underscores, and spaces (no punctuation or other special characters).
Value: Global Constant values are limited to a maximum of 1000 characters from the ASCII character set
(Decimal: 32 - 126).
Company Constants
Company Administrators can define Company Constants that will be available in scripting for the Company that they
administrate.
Note:
If a Global Constant and a Company Constant have the same name, the value of the Company Constant
overrides the value of the Global Constant for that Company. Additionally, Company Constants have
independent values between Companies; multiple Companies can define a constant with the same name, but
different values.
To modify an existing Company Constant, click its name in the list to view its details. For information about
the fields and values, see "Defining Company Constant Details" below.
To remove a Company Constant, select the check box next to it in the Company Constants list, and then
click Remove Selected.
Constants | 211
To add a new Company Constant, click the Add New link above the list, and then specify the details on the
Add New Company Constant page. For information about the fields and values, see "Defining Company
Constant Details" below.
Name: the name of each Company Constant must be unique within the Company, and will automatically be
converted to all upper-case when the constant is created. Constant names are limited to 100 characters or less, and
can contain only alphanumeric characters, underscores, and spaces (no punctuation or other special characters).
Value: Company Constant values are limited to a maximum of 1000 characters from the ASCII character set
(Decimal: 32 - 126).
To modify an existing Constant, click its name in the list to view its details. For information about the fields
and values, see "Defining Event Domain Constant Details" below.
To remove a Constant, select the check box next to it in the Event Domain Constants list, and then click
Remove Selected.
To add a new Constant, click the Add New link above the list, and then specify the details on the Add New
Event Domain Constant page. For information about the fields and values, see "Defining Event Domain
Constant Details" below.
Constant Name: the name of each Event Domain Constant must be unique within the Event Domain, and will
automatically be converted to all upper-case when the constant is created. Constant names are limited to 100
characters or less, and can contain only alphanumeric characters, underscores, and spaces (no punctuation or other
special characters).
Value: Event Domain Constant values are limited to a maximum of 1000 characters from the ASCII character set
(Decimal: 32 - 126).
Available Constants
The following sections identify the pre-configured constants within xMatters. To use these constants, add the constant
name to the xMatters web user interface and assign a value to it; the scripts will apply the values automatically.
Constants | 212
Description
SMSCONFIRMMSG
Defines the confirmation message displayed to Users when they create, modify, or activate a
text phone Device in xMatters. To meet the best practices requirements of the Mobile
Marketing Association (MMA), this message should include the following information:
l
Details on how to opt out of the service. xMatters accepts the following stop codes:
STOP, END, QUIT, CANCEL, UNSUBSCRIBE, STOP ALL, and DISABLE.
Example:
Welcome to xMatters; the number of alerts you will receive varies with
usage. Send HELPfor more info; send STOPto opt out. Message & data
rates may apply.
SMSFIRSTMSG
Defines the text of the custom message displayed to Users when they create or modify a text
phone Device in xMatters. To meet the best practices requirements of the MMA, this message
should include the same information as the confirmation message; for example:
This is a sample message from xMatters. Send HELP for more information,
or send STOPto opt out. Message & data rates may apply.
Note that the behavior and content of this message can be further modified using the initial
process script of the sms_confirmation Event Domain. For more information about working
with scripts, see the xMatters Online Developer's Guide.
SMSHELPMSG
Defines the text of the message xMatters should send when a User responds to an xMatters
notification with HELP. To meet the best practices requirements of the MMA, this message
should include the following:
l
l
Opt-out information.
Example:
xMatters has been authorized to send notifications to this text phone.
The number of messages you receive may vary, and prices are determined
by your phone service provider. For more information, call 1-888-5555555. To opt-out, reply to this message with STOP.
Constants | 213
Constant
Description
SMSSTOPMSG
Defines the text of the message xMatters should send when a User responds to an xMatters
notification with STOP; for example:
Your Device will no longer receive SMS messages from the xMatters
notification service.
Description
EMAILLOGOURL
Defines the URLat which the logo used at the top of the e-mail message is stored. If no
URLis defined, xMatters uses the following default path:
<xMHOME>/webserver/static/images/logos/xmatters_email.gif
If the value specified in the constant is not a fully qualified URL(i.e., it does not begin with
http://), xMatters will prepend the location of the xMatters web server, as defined by the
WEBSERVERURLGlobal Constant.
EMAILCSS
Defines the cascading style sheet (CSS)to use when formatting e-mail messages. If no CSSis
defined, messages are formatted using the default xMatters layout and styles.
EMAILFOOTER
Defines the message contained in the footer added to the bottom of each e-mail message. If no
message is defined, the default footer is "Powered by xMatters".
Note:
These constants replace the custom login page functionality from previous versions of xMatters.
Description
SHOWPERSONPROFILES
When set to true, displays the Person Profiles options and functionality on
the Admin and Users tabs.
SHOWGROUPPROFILES
When set to true, displays the Group Profiles options and functionality on
the Admin and Groups tabs.
Constants | 214
Constant
Description
REPORT_CARD_PASS_PERCENT
Specifies the percentage required for an event to Pass or Fail on the Report
Card tab of the Event report. If this is not defined, the Report Card will use
100% as the default Pass value. Note that this constant accepts both integer
and float values; e.g., both "88"and "87.5" are acceptable values.
POP_RESPONSE_INSTRUCTIONS
Schedule Jobs
Super Administrators can use the Schedule Jobs feature to configure xMatters to perform specific administration tasks at
regular, pre-determined intervals.
Note:
Scheduled Job
Description
Allows you to configure how and when expired data is removed from the xMatters
system. For more information about the settings, see "Schedule a Process Expired Data
job" on page 216.
To schedule a job:
1. Click the Admin tab.
2. In the Configuration section of the Administration menu, click Schedule Jobs.
xMatters displays the Schedule Job Selection page.
3. In the Select schedule job drop-down list, select the job you want to schedule, and then click Continue.
l
4. Specify a start time for the job, the days of the week on which you want xMatters to perform the job, and how
often the job should occur.
Note:
The Start Time for the job is automatically adjusted by xMatters to correspond with your time zone.
Description
Runtime data
Typically includes data such as events, notifications, and script objects. Data older than
the retention time will be moved to the corresponding archive tables. This data is used
for most reports, including most Activity Reports.
Archive data
Includes data moved from the corresponding runtime tables. Data older than the
retention time will be permanently removed. This data is used by reports that allow you
to select Runtime or Archive data (e.g., Event Activity).
Coverage data
Includes One-Time Coverages and Recurring Coverages that have an end date, and any
non-reusable Teams associated with these Coverages. Data older than the retention time
will be removed. Also includes data used in reports such as the Who's On Duty Report,
and Group Details.
Revision data
Typically includes data such as Users, Devices, Groups, Teams, and Roles. Data older
than the retention time will be removed. This data is used by the Application Audit
reports
Low-use User
This data is used by the Low-Use User report (for details, see "Low-use user report" on
page 328).
Description
This data is used by the User Performance and Group Performance Reports. For details
on these reports, refer to the xMatters user guide.
Statistics data
This data is used by the Node Network Statistics Report. For details on this report, see
"Node network statistics report" on page 330.
Security Audit
This data is used by the Security Audit Report. For details on this report, see "Security
audit report" on page 331.
3. In the Select schedule job drop-down list, select Process Expired Data, and then click Continue.
l
4. In the Runtime data retention time field, type the number of days that you want xMatters to retain runtime data.
5. In the Archive data retention time field, type the maximum number of days xMatters should retain archived data,
based on the creation date of the event. For example, specifying a value of "21" means that xMatters will purge all
data from the archive that is older than three weeks, regardless of how long the data was stored in runtime.
6. In the Coverage data retention time field, type the number of days that you want xMatters to retain expired
Coverages.
l
Note that when a Coverage is removed, the associated Team is also removed if the Team is not re-usable and
not being used by other active Coverages.
7. In the Revision data retention time field, type the number of days that you want xMatters to retain expired
application audit data.
8. In the Low-use User retention time field, type the number of months that you want xMatters to retain information
on Low-use Users.
9. In the Performance Report Data retention time field, type the number of months that you want xMatters to retain
information for the User and Group Performance Reports.
10. In the Security Audit retention time field, type the number of days that you want xMatters to retain Security
Audit information (the default value is 90 days).
11. In the Schedules table, click the name of a Schedule to set the times at which you want xMatters to run the Process
Expired Data job.
l
12. Specify a start time for the job, the days of the week on which you want xMatters to perform the job, and how
often the job should occur.
13. When you are satisfied with your choices, click Save.
Note:
The Start time for the job is automatically adjusted by xMatters to correspond with your time zone.
4. Click the Select Purge Type drop-down list, and select one of the following options:
l
Delete All Runtime Data: removes current (i.e., unratified) information about Events, Alerts, Notifications,
etc.
Delete All Runtime Data and Historical Data: removes current and archived information about Events,
Alerts, Notifications, etc.
The Clear Runtime/History feature does not remove expired Coverages or revision data.
Overview
The HTTP protocol allows you to send and receive voice and text notifications and responses via HTTP requests. The
xMatters SMS feature uses the HTTPprotocol to provide global coverage of SMSand simple SMS replies. The service is
available on a subscription basis to xMatters customers; contact your xMatters Sales or Client Assistance representative
for more information.
Configuring external access
Note that you can also configure your system to receive inbound SMSresponses to your xMatters server without
exposing the web user interface to the Internet by reverse proxying a small portion of the xMatters URLspace. The
required syntax is as follows:
<protocol>://<domain>:<port>/services/xmsms
Note that the <protocol>should ideally be "https", and <domain> must be a fully qualified domain name that is
resolvable from the Internet. The <port>is required only if it does not match the specified protocol. For example:
https://myserver.xmatters.com:8443/services/xmsms
Note:
For more information about proxying your xMatters web server, see "Fronting the xMatters web server" on
page 348.
Get started
The first step in preparing your deployment for xMatters SMS is to contact the xMatters Client Assistance team and set
up your xMatters SMS account. The configuration settings in the xMatters web user interface will require your account
information.
Once you have your account information, perform the following steps to configure the xMatters SMS feature on your
deployment:
1. Create an HTTP-Client Device Engine.
2. Configure the HTTP-XM-SMSProtocol Provider to connect to the xMatters SMS service.
3. Create a new User ServiceProvider for xMatters SMS.
4. Configure SMSvalidation and simple SMSresponses in the Global Configuration settings.
5. Add a User and a text phone Device.
xMatters displays the HTTPClient Device Engine details page (for more information about the specific
settings on this page, see "HTTPClient Device Engines" on page 126).
5. On the Device Engine Details page, accept the default settings and click Save.
xMatters displays the HTTPxMatters SMSService Provider Details page (for more information about the
specific settings on this page, see "HTTP xMatters SMSProtocol Providers" on page 168).
APIURL: Type the URLprovided by xMatters Client Assistance as the location of the xMatters SMS
service.
Username: Type the user name associated with your xMatters SMS account.
From: Type the number xMatters should use as an outgoing caller ID; this must be a valid phone number
associated with your xMatters SMS account, and will be provided by xMatters Client Assistance.
Response URL: Type http://<xMattersIP:port>/services/xmsms (replace <xMattersIP:port>with
the IPaddress and port of your xMatters web server).
Note:
If you were configuring a different provider for your HTTPSMSmessages, you would need to add Request
Parameters, depending on the service. The Request Parameters for the xMatters SMS feature are already
configured.
4. Click Save.
6. Click Save.
7. Log out of the web user interface.
This feature is available in xMatters version 5.0 (patch 004 and later) and version 4.1 (patch 014 and later).
Before you can configure this feature, you will need to obtain some information from your SMPP service provider:
n
The keywords present in a status report from the service provider that indicate the related message has failed.
The error codes contained within the message that indicate the reason for the failure was a delisted or deactivated
device.
To configure an existing SMPPDevice Engine, click its name in the Device Engines table.
To configure a new SMPPDevice Engine, click the Add New link above the All Components table. In the
drop-down list, select SMPP Device Engine, and then click Continue.
4. On the SMPPDevice Engine details page, ensure that the Support Status Report check box is selected.
l
This feature relies on the status reports to determine when a Device has been delisted by a service provider;
if this option is not selected, you will not be able to use the automatic Device deactivation feature.
5. In the Error Code Location or Delimiter field, specify how the Device Engine should parse an incoming status
report to identify an error code.
l
For example, the default setting is err:(3). Using this setting, xMatters will inspect an incoming status
report for a portion of the message that begins with "err:", and then use the three characters that follow as the
error code; e.g., a message containing the phrase "err: 023" would translate as the error code "023".
6. In the Failed Words field, specify the status string value that can be found within the incoming status report and
indicate the notification message has failed due to a delisted Device. (Use a semi-colon to separate multiple
values.)
l
Note that this status is identified using the Status Location or Delimiter field in the same way as the error
codes in the previous step. The default of stat:(7) inspects the status report for the phrase "stat:", and
then compares the seven characters that follow with the list of failed words.
7. Click Save.
To configure an existing Protocol Provider, click its name in the Protocol Providers table.
To configure a new Protocol Provider, click the Add New link at the top of the table. On the Add New
Protocol Provider page, in the Provider of Type drop-down list, , select SMPP, and then click Continue.
3. On the SMPPProvider Details page, in the Deactivation Error Codes field, specify the error codes that indicate a
Device has been delisted.
l
4. In the Notify Upon Deactivation drop-down list, select Supervisors and Device Owners.
5. Click Save.
When xMatters sends a notification to this Protocol Provider and receives a status report indicating that the targeted
Device has been delisted or otherwise not registered with the service provider, it deactivates the Device, and sends
notifications to the Device owner, their direct supervisor, and to the supervisors of any Groups to which they belong.
Note that xMatters sends the deactivation notifications to the recipients' email Devices; if a recipient has no email
Device available, xMatters sends the notification to their Default Device.
226 |
Permissions, Functions, and Roles: explains how to use permissions to define Roles that control how your users
can access xMatters.
Company Administrators: describes how to create and manage Company Administrator accounts.
Clusters: describes how to add and define Clusters to distribute and route notifications.
Sites: explains how to create and manage Sites, and assign Countries, Time Zones, and Languages.
Company Holidays: describes how to define holidays for Sites and Companies, and how to create customized
holidays.
Custom User Information: explains how to create customized information to help find and organize Users.
Password Policy: describes how to set a company-wide password policy to apply to all xMatters Users.
Device Types: explains how to manage the list of Devices that Users are allowed to use.
Event Domains: describes how to configure Event Domains, which handle incoming messages from other sources
and management systems.
Subscriptions: explains how to configure the Subscription Domains required for Users to subscribe to different
kinds of Alerts.
Import Data: describes how to import information from Microsoft Office Excel 2003 XML spreadsheets.
Phone Recordings: explains how to create voice phrases, record names, and how to re-record system voice pieces.
Note:
This guide is current to xMatters version 4.1 patch 022. Note that xMatters patches and updates are
cumulative; for more information about the changes in this release and previous updates, refer to to the 4.1
patch 022 release notes on the xMatters Community site at community.xmatters.com.
xMatters product version and licensing control Role availability and modification privileges. It is
recommended that you discuss Roles and licensing requirements with your xMatters representative prior to
deployment.
Manage functions
Company Administrators can manage Functions on the Functions page in the xMatters web user interface.
Note:
The ability to create and define Functions is available only in xMatters enterprise deployments.
Functions page
To modify an existing Function, click the name in the list to view its details. For more information about the
settings, see "Define function details", below.
To remove a Function from the list, select the check box next to the Function or Functions you want to
remove, and then click Remove Selected.
To create a new Function, click the Add New link, and specify the Custom Field details for the new
Functions, as explained in the "Function Details" table below. Click Save to create the Function, and then
add the appropriate permissions.
For more information about Role Details, see "Define role details" on page 234.
Enter the following information into the form, and then click Save:
Function details
Setting
Description
Name
Description
Note:
To add permissions, select the permissions you want to add in the Available Permissions box, and then
click Add.
To remove permissions, select the permissions you want to remove in the Selected Permissions box, and
then click Remove.
To view a description of a Permission, hover the mouse pointer over its name.
Permissions page
Roles
Roles are User attributes that represent one or more Functions. For example, a Role called BCP Officer might include
Functions called Basic User and BCP User. In addition, Roles have another set of associated permissions that define
whether and how Roles can act on themselves and other Roles; for details, see "Manage role permissions", below.
xMatters includes the following predefined Roles (availability is based xMatters licensing):
Role
Read-Only User
Cannot edit their profile information, but are able to respond to alerts.
Cannot act on other Roles or send messages via messaging panels in xMatters.
No Access User
Cannot access or use the xMatters web user interface, but can be assigned to Groups and Teams,
and can respond to alerts on Devices.
Standard User
Can maintain their profile, respond to alerts, self-subscribe to Subscriptions, and send messages.
Can send messages to all users except Developers and the Super Administrator.
Role
Scenario Initiator
Can view and launch Advanced Messaging Scenarios (when specified as an initiator in the
Scenario details).
Cannot access or use the xMatters web user interface unless combined with another Role with
appropriate permissions.
Scenario Tester
Scenario
Supervisor
Can create, edit, manage, test, and launch Advanced Messaging Scenarios.
Subscription
Supervisor
Web Service
Supervisor
Developer
Cannot access or use the xMatters web user interface unless combined with another Role with
appropriate permissions.
Full permissions to act on Standard Users, Read-Only Users, Person Supervisors, and Group
Supervisors. Can view, edit, and send messages to Subscriptions Supervisors. Can view and send
messages to Full Access Users. Can send messages to Company Administrators.
Cannot act on other Roles or send messages via messaging panels in xMatters unless combined
with another Role with appropriate permissions.
Can send messages to Company Administrators. Can edit, view, and send messages to Developers.
Full Access User
Role
Support User
Can access, view, edit, and delete all Users, Teams, Dynamic Teams, and Groups within a single
Company. Can edit any locked data value, and access all Company-specific reports. Can log in
as another user (via the Login As User feature). Note that Users with the Support User Role
cannot edit or delete other Users that also have the Support User Role.
Service Provider
Support
Company
Administrator
Can maintain and administrate a Company, with full permissions for company administrative
tasks, including data locking configuration for their Company.
Can log in to a tenant Company as a tenant Company User from the host Company via the Login
as Agent link on the Users tab.
Can maintain and administrate the xMatters system; cannot configure external data locking.
Full permissions to act on Company Administrators (but not other Users). Can view all integration
agents on the Component Status Report.
Manage roles
You can manage roles using the Roles page.
To view and manage roles:
1. Click the Admin tab.
2. On the Administration menu, click Roles.
l
Roles page
To modify an existing Role, click its name in the list to view Role Details. For more information about
editing Role Details, see "Define role details", below.
To remove a Role from the list, select the check box next to the Role or Roles you want to remove, and then
click Remove Selected.
To create a new Role, click the Add New link, and specify the details for the new Roles, as explained in
theRole Details settings table. Click Save to create the Role.
Description
Role Name
Description
3. Specify the Role Permissions. For more information, see "Define role details" on page 234, below.
l
To modify the Functions assigned to the Role, click Assign Functions to this Role in the Common Tasks
pane. For more information, see "Assigning Functions to Roles", below.
4. When you are satisfied with the information you have provided, click Save.
The following table provides further details and examples using the Person Supervisor Role:
Role Permission Types
Type
Description
Permissions Specifies the Permissions for the current Role that apply to all users assigned to this Role. For example,
Within this all Users who have the Person Supervisor Role will be able to take these actions on other Person
Role
Supervisors. If no Permissions are selected, then Person Supervisors would not be able to take any actions
on Users with the Person Supervisor Role, unless those Users had another Role that could be acted upon
by a Person Supervisor.
Permissions Specifies the Permissions for the current Role that apply to other Roles. For example, if you are
on Other
configuring Permissions for the Person Supervisor Role, the Permissions specified here define the actions
Roles
that Person Supervisors can take on the other Roles in the system.
Permissions Specifies the Permissions other Roles have that apply to the current Role. For example, by default a
Other
Group Supervisor Role has the following abilities to act on the Person Supervisor Role:Add Person and
Roles Have Use Person. This means that by default Group Supervisors can add the Person Supervisor Role to Users
and can see the names (but not the details) of Users with the Person Supervisors Role so that they can be
added to Groups or sent messages.
Note: it is recommended that this table be used only as a convenient summary of the permissions that
other Roles have on the current Role. If you want to change how a given Role actions on another Role,
use the former's Role Details page to define its "Permissions on Other Roles" settings.
To manage Role Permissions:
1. Navigate to the Role Details page for the Role for which you want to set permissions.
l
If you are adding the first Role for the Company, only the Permissions Within this Role settings are
available.
Description
Add Person
Indicates whether the current Role can add Users to target Role.
Edit Person
Indicates whether the current Role can edit existing Users associated with the target Role. Note:
Users can always be edited by their Supervisor, regardless of this setting. Further, if Edit Person is
enabled, selecting (or clearing) View Person and Use Person has no effect.
Delete Person
Indicates whether the current Role can delete existing Users associated with the target Role. Note:
Users can always be deleted by their Supervisor, regardless of this setting.
Setting
Description
View Person
Indicates whether the current Role can view the details of Users associated with the target Role.
Note: if View Person is enabled, selecting (or clearing) Use Person has no effect.
Use Person
Indicates whether the current Role can see the names (but not the details) of Users associated with
the target Role to add them to Groups or send them messages.
Manage
Subscriptions
Indicates whether the current Role can manage Subscriptions associated with the target Role.
You can also remove Functions from the Role by selecting Functions in the Selected Functions list, and then
clicking Remove.
Users who have a Role that includes the Data Lock Override function are not affected by the External Data
Lock settings (e.g., by default, the Company Admin (hidden) and Support User Roles have this function, and
thus are not affected). Even if a User has the Data Lock Override function, external data cannot be deleted via
the xMatters web user interface.
You can configure the following Object Types on the External Data page:
n
Person (User)
BES Device
Email Device
Generic Device
Voice Device
Group
Team
Each Object Type has configurable sub-properties; for example, the Group Object Type allows you to configure the
following properties: Active, Name, Description, Time Zone, Use Default Device, and Allow Duplicates.
In a multiple-Company deployment, data locking must be configured independently for each Company.
Note:
The Custom Attributes and Custom Fields Property settings appear on the Persons Locked Properties page. To
be able to lock these settings, they must be flagged as externally owned separately from the Persons object
during the Data Synchronization process. For example, if the Persons object is not set as externally owned, but
the Custom Attributes object is, then you can lock the Custom Attributes setting. Alternatively, if Persons was
flagged as externally owned, but Custom Fields Property was not, you cannot lock the Custom Fields Property
setting.
xMatters displays the selected objects Locked Properties settings; the Group Object Type is shown here.
4. Select or clear the check box in the Locked column for each Object Property as required.
5. Click Save.
Administrators
There are two kinds of Administrators in xMatters:Super Administrators capable of configuring Nodes and Node
components, and Company Administrators capable of controlling Company-specific data and maintenance tasks.
Note that these Administrative Roles must be separated in a multiple-Company deployment; in deployments with a
single Company, these roles may be merged during installation, as described in "Installing xMatters" on page 63.
Super administrators
In xMatters, Super Administrators are a purely administrative role; they cannot be assigned to Groups, targeted by
notifications, or respond to messages. They are responsible for configuring all non-Company-specific components within
an xMatters deployment, including the following:
n
Company Quotas
Licenses
Clusters
Schedule Jobs
Protocol Providers
To modify an existing Super Administrator, click a name in the list to view its Details. For more information
about editing Super Administrators Details, see "Defining Super Administrator Details", below.
To remove a Super Administrator from the list, select the check box next to the Super Administrator or
Administrators you want to remove, and then click Remove Selected.
Administrators | 238
To create a new Super Administrator, click the Add New link, and specify the details for the new Super
Administrators as explained in the "Super Administrator Details settings" table below. Click Save to create
the Super Administrator.
Description
Active
Select this check box to make the Super Administrator active (i.e., able to log into
xMatters) when you save the details. If you do not want to activate this Super
Administrator immediately, clear this check box.
User ID
Type the User ID for the Super Administrator (e.g., 5102 or Admin2).
First Name
Last Name
Language
Select the language with which you want to associate this Super Administrator.
Time zone
Select the time zone with which you want to associate this Super Administrator.
Web Login
Type the login name for this Super Administrator to use when logging in to xMatters.
(If you are modifying an existing Super Administrator, click the Change Web Login
link in the Common Tasks pane to access theWeb Login and Password settings.)
Web Password
Verify Password
Re-type the login password for this Super Administrator. This helps to prevent
mistakes and typing errors.
Company administrators
After Super Administrators, Company Administrators have the greatest level of permissions in xMatters. Company
Administrators typically carry out configuration and maintenance tasks such as defining Device protocols and managing
Users. The following components and data are Company-specific, and controlled by Company Administrators:
n
Sites
Administrators | 239
Note:
In an xMatters service provider (i.e., multiple Company) deployment, Super Administrators provide global
host administration and Company Administrators are restricted to administrating a single Company or
tenant (see also "Multiple-Company Deployments" on page 15).
To modify an existing Company Administrator, click a name in the list to view its Details. For more
information about editing Company Administrators Details, see "Define company administrator details" on
page 241, below.
To remove a Company Administrator from the list, select the check box next to the Company Administrator
or Administrators you want to remove, and then click Remove Selected.
Administrators | 240
To create a new Company Administrator, click the Add New link, and specify the details for the new
Company Administrators as explained in the "Company Administrator Details settings" table below. Click
Save to create the Company Administrator.
Description
Active
Select this check box to make the Company Administrator active (i.e., ready to
receive notifications) when you save the details. If you do not want to activate this
Company Administrator immediately, clear this check box.
User ID
Type the User ID for the Company Administrator (e.g., 5102 or Admin2).
First Name
Last Name
Site
Select the Site with which you want to associate this Company Administrator. The
available choices are limited to those associated with the related Company.
Language
Select the language with which you want to associate this Company Administrator.
The available choices are limited to those associated with the related Company.
Time zone
Select the time zone with which you want to associate this Company Administrator.
The available choices are limited to those associated with the related Company.
Web Login
Type the login name for this Company Administrator to use when logging in to
xMatters. (If you are modifying an existing Company Administrator, click the Change
Web Login link in the Common Tasks pane to access these settings.)
Web Password
Verify Password
Re-type the login password for this Company Administrator. This helps to prevent
mistakes and typing errors.
Administrators | 241
Note:
Service Provider Support Users can also use this feature to log into tenant Companies as their mapped tenant
Company User.
While you are logged in as another User, the following conditions apply:
n
The footer on each page identifies the User you are logged in as beside your own account name.
You can access and modify only those settings and features available to that User.
The Security Audit Report tracks your activities as this User in the On Behalf Of column.
When you log out, both accounts will be logged out of xMatters; to access xMatters, you must sign in again.
xMatters displays the Home Page for that User (note that the status text at the bottom right of the page
indicates who is logged in as whom).
Sites
Every user in xMatters belongs to a site. Each site represents a physical location and relates to users, clusters, and
companies as follows:
n
Each user belongs to a single site, which controls some of the choices available on each users details page, such
as language and time zone.
Each site can have a primary cluster associated with it. When a primary cluster is defined for a site, xMatters
attempts to route notifications through that cluster first.
Note:
It is strongly recommended that you do not use Sites as a substitute for Custom Attributes or Custom Fields
when defining Dynamic Teams (for more information, see "Custom user information" on page 251). As a best
practice, Sites should be used for larger concepts such as Building 5 or San Francisco Campus;
conversely, Sites should not be used for defining relatively small groupings such as Marketing Office or
Fifth Floor East.
Manage sites
You can create, manage, and modify Sites using the Sites page in the xMatters web user interface.
To view and manage Sites:
1. Click the Admin tab.
2. On the Administration menu, click Sites.
3. If more than one Company exists, click the Select A Company drop-down list and select a Company, and then
click Continue.
l
Sites | 242
Sites list
To modify an existing Site, click its name in the list to view Site Details. For more information about editing
Site Details, see "Define site details" on page 243, below.
To remove a Site from the list, select the check box next to the Site or Sites you want to remove, and then
click Remove Selected.
To create a new Site, click the Add New link and specify the Site details for the new Site, as explained in
the"Site Details settings table below. Click Save Changes to create the Site.
Description
Enabled
Select this check box to make the Site active (i.e., ready to receive notifications) as soon as the
Details are saved. If you do not want this Site to be immediately active, clear the check box.
Note: Users assigned to an inactive Site cannot log in to xMatters or receive notifications.
Name
Type a descriptive name for the Site. This name is used to identify the Site throughout xMatters.
Language
Select a language to associate with this Site from the list. The choices available are limited to
those associated with the related Company.
Time Zone
Select a time zone from the drop-down list to associate it with this Site. The choices available
are limited to those associated with the related Company.
Cluster
Address 1
Address 2
Sites | 243
Setting
Description
City
State/Province
Country
Select a country to associate with this Site from the list. The choices available are limited to
those associated with the related Company.
Zip/Postal Code
Countries
Countries are components of sites, and cannot be deleted when they are associated with at least one site. The country
setting determines dialing codes, toll free numbers, and default languages.
Manage countries
You can use the Countries page to determine the countries you want to appear in xMatters.
To view and manage countries:
1. Click the Admin tab.
2. On the Administration menu, click Countries.
3. If there is more than one Company in the system, select the Company for which you want to manage the
Countries, and then click Continue.
l
Sites | 244
To add Countries to the Selected Countries list, select them in the Available Countries box and then click
Add.
To remove Countries to the Selected Countries list, select them in the Selected Countries box and then click
Remove.
Time zones
Each site has a default time zone. When a user is assigned to a site, their default time zone is set to match that of the
site. You can also assign other time zones, from which users can choose if they want to override the default time zone
setting.
To add Time Zones to the Company, select them in the Available Time Zones list and then click Add.
To remove Time Zones from the Company, select them in the Selected Time Zones list and then click
Remove.
Sites | 245
Languages
Languages are associated with sites, and countries have default languages. When configuring a users details, the
languages available are based on the company to which the user belongs.
Manage languages
You can manage languages on the Languages page in the xMatters web user interface.
To view and manage languages:
1. Click the Admin tab.
2. On the Administration menu, click Languages.
3. If there is more than one Company in the system, select the Company for which you want to manage the
Languages, and then click Continue.
l
To add Languages to the Company, select them in the Available Languages list and then click Add.
To remove Languages from the Company, select them in the Selected Languages list and then click
Remove.
Sites | 246
Note:
During voice notifications, the default voice recording scripts prompt Users to select from a list of available
languages. This list is not updated automatically when you adjust the list of languages available in a
Company, but must be manually changed in the xMatters scripts. For more information about modifying
scripts, see the xMatters Online Developer's Guide.
Company holidays
Each country has a specific set of predefined holidays that you can modify to reflect company requirements.
Note:
For an example of how company, site, and custom holidays can be configured for a company, see
"Example:Create company holidays" on page 249.
xMatters displays a list of the current Company Holidays for the Company.
To remove a Company Holiday from the list, select the check box next to the Company Holiday or
Company Holidays you want to remove, and then click Remove Selected.
To add a new Company Holiday, click the Add New link, and then use the Find Holidays Search tool to
filter holidays. Select the holiday or holidays that you want to add in the Search Results box, click Add, and
then click Save.
Custom holidays
In addition to company holidays, you can create recurring or one-time custom holidays for companies.
xMatters displays a list of the current custom holidays for the company.
To modify an existing custom holiday, click a name in the list to view its details. For more information
about editing custom holiday details, see "You can define the details for each custom holiday using the
Custom Holiday Details page.", below.
To remove a custom holiday from the list, select the check box next to the holidays you want to remove, and
then click Remove Selected.
To use an existing custom holiday as a template to create a new custom holiday, click Copy Custom
Holiday.
To create a new custom holiday, click the Add New link, and specify the details for the new custom holiday,
as explained in "You can define the details for each custom holiday using the Custom Holiday Details
page.", below. Click Save to create the custom holiday.
Description
Holiday Name
Type the name for the custom holiday. This name will be used to identify the custom
holiday throughout the company.
Description
Country
Select the country to associate with this custom holiday. The available choices are
limited to those countries associated with the related company.
Frequency
Define by day of Month: select this option if the holiday occurs on the same
calendar day every year, and use the Every Year on drop-down list and field
to specify the date.
Define by day of Week: select this option if the holiday occurs on the same
day every year (e.g., first Monday in September), and use the drop-down lists to
specify the date.
One time only: select this option if the holiday is non-recurring, and use the
Once On drop-down list and field to specify the date.
Site holidays
You can adjust the company holidays, including any custom holidays, for each site.
To modify site holidays:
1. Click the Admin tab, and then, in the Administration menu, click Sites.
2. In the Current Sites list, click the name of the site for which you want to modify the holidays.
3. On the Site Details page, in the Common Tasks menu, click Site Holidays.
l
4. To adjust the holidays, click the Modify link above the Site Holidays table.
Select the holidays you want to add to the site from the Available Holidays list, and then click Add.
Select the holidays you want to remove from the site from the Selected Holidays list, and then click
Remove.
6. Click Save to apply your changes and return to the Site Holidays page.
A Company with two Sites (one in New York and one in Los Angeles) wants to have a professional development
day added each year for all of their employees to take advantage of an out-of-office seminar with the CEO.
Because the CEOneeds to attend both seminars, each Site must observe the holiday on a different day. The New
York Site will have their professional development day on the first Thursday in April, while the Los Angeles Site
will have theirs one week later.
Country:United States
5. In the Frequency section, select Define by day of week, and then use the drop-down lists to specify the first
Thursday of April.
6. Click Save.
7. On the Custom Holidays page, click the Add New link.
8. On the Custom Holiday Details page, enter the following information into the form:
l
Country:United States
9. In the Frequency section, select Define by day of week, and then use the drop-down lists to specify the second
Thursday of April.
10. Click Save.
Both of the professional development days should now be listed on the Custom Holidays page.
The new holidays are also automatically added to the list of holidays for the Company.
Add custom holidays to a site
Once you have created the custom holidays, the next step is to add them to the Sites.
To assign holidays to a site:
1. On the Custom Holidays or Company Holidays page, in the Common Tasks menu, click Set Holidays for a Site.
2. On the Select Site Holiday page, in the Select the Site drop-down list, select New York.
The Pro Dev Day - NYcustom holidays is added to the Selected Holidays list.
5. Click Save.
6. In the Location section of the menu on the left side of the screen, click Sites.
7. On the Sites page, in the Current Sites table, click Los Angeles.
8. On the Site details page, in the Common Tasks menu, click Site Holidays.
9. On the Site Holidays page, click the Modify link.
10. On the Active Holidays page, in the Available Holidays list, select Pro Dev Day - LA, and then click Add.
l
The Pro Dev Day - LA custom holidays is added to the Selected Holidays list.
Custom attributes: Custom attributes are groups of user details that can be assigned to users by administrators or,
depending on their assigned permissions, by users themselves. Custom attributes are useful for creating dynamic
teams based on similar skills or details.
Custom fields: Custom fields appear on each users details page, and can be flagged as optional or mandatory.
Useful as a means to store additional information about users or their preferences, custom fields can be text fields,
lists, check boxes, passwords, or numeric values, and used to create dynamic teams or find users.
The main difference between custom attributes and fields is that users can select multiple custom attribute values (i.e.,
from each category), but can select only a single value for each custom field.
view.screen.AddCustomAttributes
view.menuitem.CustomAttributes
view.screen.CustomAttributes
view.screen.CustomAttributeDetails
To give another role the ability to create custom fields, you must add the following permissions to it:
n
view.menuitem.CustomFields
view.screen.CustomFields
view.screen.CustomFieldDetails
For example, if you want to provide group supervisors with the ability to create custom attributes and fields, you can
add the permissions above to the Supervise Groups function (the latter function is one of several that define what a user
with the group supervisor role can do within xMatters). If you plan to add these abilities to several roles, the best
practice would be to create a new function (e.g., "Create custom user information") that you could add to as many roles
as required.
To learn more about the relationship between permissions, roles, and functions, and how to modify them, see
"Permissions: functions and roles" on page 228.
Custom attributes
Custom attributes are additional details that can be associated with Users in the system, and used to organize or search
for Users. xMatters groups custom attributes into custom attribute categories for easier management.
For example, you can create a custom attribute category called Medical Training, with available custom attribute
choices of CPR, Basic First Aid, and Advanced First Aid. You can then assign the custom attributes to
appropriately-trained personnel through each users Custom Attributes page.
To modify an existing custom attribute category, click a name in the list to view its details. For more
information about editing custom attribute details, see "Define custom attributes and categories", below.
To remove a custom attribute category from the list, select the check box next to the custom attribute
categories you want to remove, and then click Remove Selected.
To create a new custom attribute category, click the Add New link, and specify the details for the new
category, as explained in "Define custom attributes and categories", below. Click Save to create the category.
2. On the Custom Attributes Details page, type a name for the category in the Category Name field.
3. Do one of the following:
l
To add a custom attribute, type a name into the New Attribute field, and then click Add Attribute. Repeat
until all required attributes have been added to the category.
To remove custom attributes, select the attributes you want to remove in the Attributes list, and then click
Remove Selected Attribute(s).
4. Click Save.
Custom fields
Administrators can define custom fields to store additional information on each users details page. Custom fields can be
mandatory or optional, and can also be used when searching for a user in the system.
Note:
Custom field names cannot be identical to the names of xMatters objects such as device types and groups.
To modify an existing item, click its name to view its details. For more information about editing items in
the Custom Fields table, see "You can define custom fields on the Custom Fields Details page.", below.
To remove an item from the list, select the check box next to the custom fields you want to remove, and then
click Remove Selected.
To create a new custom field, click the Add New link, and specify the details for the new custom field, as
explained in "You can define custom fields on the Custom Fields Details page.", below. Click Save to create
the custom field.
Description
Mandatory
When selected, indicates that each user must supply the information required by the field. Clear this
check box if you want the custom field to be optional.
Field Name
Name for the custom field, which is displayed on each users details page as the label for the field.
Setting
Description
Type
Text: creates a field for entering alphanumeric text. You can use the Min and Max fields to
specify the minimum and maximum length for the text.
Check box: creates a check box with two possible states: selected or cleared. When selected,
the Field Name statement is true. For example, the Field Name beside a check box might be
Available on Weekends.
Decimal: creates a field for entering a numeric value that can include a decimal. You can use
the Min and Max fields to specify the minimum and maximum value.
Integer: creates a field for entering a numeric value that cannot include a decimal. You can
use the Min and Max fields to specify the minimum and maximum value.
List: creates a drop-down list from which users can select a value. Select List and click Save
to view an Add/Remove List Values area. To add values, type a name in the New List Value
field and click Add List Value. To remove values, select the values in the List Values box,
and click Remove Selected Values.
Password: creates a field for entering alphanumeric text that is hidden under an asterisk mask.
When displayed on a users details page, the field is automatically paired with a second field,
prompting the user to re-enter the data to verify it.
Note: You cannot change the Type of a custom field after creating it.
3. To save the custom field details, click Save.
Password policy
You can set the password requirements for a company using the Password Policy page. The settings on this page
determine the rules each user in a company must follow when creating a login password. The password policy for each
Company must be set independently.
To set the password policy:
1. Click the Admin tab.
2. On the Administration menu, click Password Policy.
l
Description
Unique
History
Specifies how many passwords xMatters stores for each user. Users cannot reuse a password until they
have consecutively created as many unique new passwords as indicated in the field.
Minimum
Length
Required
Specifies how complex users passwords must be; select one of the following options:
Complexity
n None: no specific complexity is required.
n Non-Alpha: passwords must have at least one non-alphabetic character, such as a numeric digit or
a symbol (e.g., !, $, #, %, @).
n Strong: passwords must be at least six characters long, may not include any part of the Users
account name, and must include characters from at least three of the following four categories:
l
English upper-case letters
l
Base-10 digits
Maximum
Age
How long (in days) each password will remain valid before the User must create a new password. If a
User's password has expired, they will be prompted to create a new one the next time they log into the
web user interface.
Minimum
Age
How long (in days) a User is required to use their password before they can change it again.
Field
Description
Lockout
Threshold
Specifies the maximum number of consecutive invalid logins a User can attempt before their account is
'locked out', preventing them from accessing the xMatters web user interface. To disable this feature and
grant Users an unlimited number of invalid login attempts, enter zero (0). The maximum value for this
field is 50.
xMatters administrators can manually unlock User accounts by navigating to the Change Web Login
page for the User and clicking Unlock.
Lockout
Duration
Specifies how long (in minutes) a User is prevented from accessing xMatters after they exceed the
number of invalid login attempts specified by the Lockout Threshold.
Lockout
Reset
Period
Specifies how many minutes must elapse after a User attempts an invalid login before the failed login
attempt count is reset to zero. This value must be equal to or less than the Lockout Duration.
Display
Last Login
When selected, displays the time and date of the Users previous login when the User logs in to
xMatters.
The password policy settings apply to User web logins only; they are not enforced for web services users, or
users added via the Data Synchronization and Import Data features. Super Administrators for merged and nonmerged accounts cannot be locked out. .
Device types
xMatters supports the following device types for notifications:
n
Voice (Phone)
Text Phone
Text Pager
Numeric Pager
BES(BlackBerry)
Fax
You can specify at the company level which device types users can configure. For example, if Company XYZ does not
use email devices to send notifications, you can remove these devices from the available devices for the company; Users
within the company will not see these devices in the "Select the Type of Device" drop-down list on the Add New
Device page.
List of device types (your deployment may not support all types shown)
To add or remove device types, click the Modify link, select one or more entries in the Available Device
Types or Selected Device Types boxes, click Add or Remove as appropriate, and then click Save.
To modify an existing device type, click its name in the list. For more information, see "Manage device
names" on page 258.
To remove a device name, select the check box next to the device names you want to remove, and then click
Remove Selected.
To add a device name, click the Add New link to view the Device Name Details page. Specify a Name and
Description, and then click Save.
To modify an existing device name, click its name in the table to view its details. Modify the name and
description, and then click Save.
Note that if you are adding an email device name, you can also specify a list of acceptable domain names, as described
in "Specify a whitelist of email domains", below.
If you do not specify a list of domain names for an email device name, users can use any domain name they choose.
To specify domains names for an Email Device Type:
1. On the Device Types page, in the Name column of the All Device Types table, click EMAIL.
2. On the Add Device Names for EMAIL page, do one of the following:
l
l
To specify domain names for an existing device name, click the name you want to modify.
To add a new email device name with a list of approved domains, click the Add New link, and then specify
a name and description for the new email device name.
3. On the Device Name Details page, in the Email Domain field, type the domain names you want users to be able
to select for this device name; for example, "xmatters.com".
l
Type a comma or press Enter after each domain to separate the entries in the list.
If you want to include the same domain with different extensions, you must type each domain and extension
pair separately; i.e., "xmatters.com, xmatters.org, xmatters.net".
You can specify up to approximately 250 domains (4000 characters).
Note that xMatters will automatically sort the list of domains alphabetically.
Event domains
An event domain is like an event resolution blueprint; all events that come into xMatters have a few pieces of
information that are always required (i.e., predicates). Each source of Events, such as a management system, requires a
separate event domain.
When you add a new Company to a multiple-Company deployment, xMatters automatically creates the following
default out-of-box event domains (and their associated script packages) for the new Company:
Out-of-box event domains
Name
advanced_messaging
This event domain is used to handle all notifications required by scenarios in the
Advanced Messaging component. For more information about this feature, refer to the
xMatters user guide.
default
This event domain handles all events that are injected without a domain, or with a
domain that xMatters does not recognize.
devicevalidation
This event domain handles all messages and responses that involve validating user's
devices.
error_responses
This event domain is responsible for generating and handling responses when
notifications encounter an error; for example, when a User attempts to respond to a
notification for which the event has already been terminated.
generic_responses
Thisevent domain is responsible for handling any incoming responses that do not
explicitly target any other event domain.
messaging
This event domain handles all notifications and responses for the Quick Message panel.
ping
sms_confirmation
This event domain is used to send confirmation, help, and welcome messages to
SMSdevices in compliance with MMAregulations.
sms_deactivation
This event domain is used to send messages to SMSdevice owners and supervisors when
a device is deactivated or delisted by a service provider. For more information about this
feature, see "Configure automatic SMS device deactivation" on page 224.
voicerecordings
This event domain handles all calls and scripts required to manage the voice recordings.
constants for an event domain to an XML file. For more information about this feature, see "Import and export event
domain information" on page 261.
Note:
The number in the Version column refers to the version number of the integration associated with that event
domain; this number is usually assigned by the xMatters integration developer, and will not generally apply to
the default event domains.
To modify an existing event domain, click its name in the list to view its details. For more information, see
"Define event domain details", below.
To delete an event domain, select the check box for the Domains you want to delete, and then click Remove
Selected.
To export event domain information, click the Export Integration button for the event domain you want to
export. For more information, see "Import and export event domain information" on page 261.
To create a new event domain, click the Add New link, and then specify its details on the Event Domain
Details page, as explained in "Define event domain details", below.
xMatters will export the information to an XML file, and save it according to your browser settings; depending on your
configuration, this might include a dialog box prompting you to specify the location to which you want to save the file,
or your browser might automatically save the file directly to your hard drive.
Note:
The name of the event domain and the date and time at which it was created are included in the file name.
Once you have exported the event domain information, you can then use the web user interface to import it into another
deployment.
To import event domain information:
1. Copy the exported XML file to a location on the server to which you want to import it.
2. Log in to the web user interface on the target deployment and navigate to the Event Domains page.
3. Above the Event Domains table, click Import New.
4. On the Import Integration page, click the Choose File button.
5. Use the dialog box to locate and select the XMLfile you want to import.
6. On the Import Integration page, click Upload.
xMatters will create a new event domain and import the scripts and constants contained in the XML file. If an event
domain of the same name already exists in the target system, xMatters will add a number to the new domain; the
existing domain will not be changed in any way.
Description
Default
Name
Name of this event domain. This name identifies the event domain in a drop-down list when creating
subscription domains.
Description
Detail
Description
Script Package
Identifies the package of business scripts that should be run in response to a particular event.
If you are on a multiple-company deployment, do one of the following:
l
To use a company-specific script package for this event domain, select the Use <Company
Name>Script Package radio button, and then select the script package you want to use from
the drop-down list.
To use the script package from the system's template scripts, select the Use Template Script
Package radio button, and then select the template script package you want to use from the
drop-down list.
When you create a new company, xMatters automatically creates the default event domains, and
assigns the appropriate template script package to each new domain. Before you can assign a custom
script to an event domain, you must create a company-specific set of scripts using the event domain
export feature, as described in "Import and export event domain information", below, and then import
the created package back into your company. You can then modify the scripts using the xMatters
Developer IDE, and specify the scripts you want to use in the Use Template Script Package field.
For more information about script packages, consult the xMatters Online Developer's Guide.
Predicates
List of predicates available in this event domain. For more information about defining predicates, see
"Define predicates" on page 264.
Responses
List of response contributions used for statistical analysis in reports. For more information about
defining response contributions, see "Define response contribution values", below.
3. Click Save.
To manage predicates:
1. On the Event Domains page, click the name of the event domain for which you want to manage predicates.
2. On the Event Domain details page, do any of the following:
l
To reorder predicates, click the Reorder link above the predicates list. On the Order Event Domain
Predicates page, select a predicate in the list and then click Move Up or Move Down. When you are
satisfied with your changes, click Save.
To remove predicates from the list, select the check box next to the predicates you want to remove, and then
click Remove Selected.
To edit a predicates details, click the name of the predicate you want to edit. On the Event Domain
Predicates page, retype the predicate name or select or clear the Important check box. Note that you cannot
change a predicates type; you must delete the predicate and create it again. Click Save to apply the changes
and return to the event domain details.
3. Click Save.
Note:
The predicate order on the Event Domain Details page affects the order in which predicates flagged as
Important are listed in the Event Activity Report, as explained in "Define predicates" on page 264.
affect resolution. This feature can help administrators perform statistical analysis on how events are resolved or delayed.
The default contribution values available to assign to a response are:Positive, Negative, and Not Applicable (N/A). The
contribution value for each response received is stored in the xMatters database and included in the event reports.
Note that the response contribution values defined on this page do not determine the response choices available to users.
Response choices are configured using the xMatters Action Scripts, as detailed in the xMatters Online Developer's
Guide.
To assign contribution values for responses:
1. On the Event Domains page, click the name of the event domain for which you want to define contribution
values.
2. On the Event Domain details page, do any of the following:
l
To add a new response contribution value, click the Add New link in the Response section. In the Response
field, type the text of the user response you want to add. In the Contribution field, select the contribution
value you want to assign to the response. Repeat for each response contribution setting you want to add.
To edit a response contribution, modify the values in the Response and Contribution fields for the response
you want to edit.
To remove a response contribution, select the check box next to a response, and then click Remove Selected.
Note that this will not affect responses and response contribution values already in the database.
The scripts for the event domain must still allow for responses with annotations, or the response may not be
recognized as a valid response choice.
This also means that response choices that begin with the same text as another response choice may not map to the
correct contribution value. For example, "ACCEPT"and "ACCEPT AND TERMINATE" will map to the response
contribution value specified for "ACCEPT", even if the two responses are set to different contribution values.
This is also the case if the short text of a response (followed by a space) matches the beginning of the long text of
another response; for example, if "ACC" is the short form of the "ACCEPT" response, and another response is "ACC
AND ESCALATE". Even if your scripts do not allow responses with annotations, you should ensure that none of the
responses with defined contribution values begin with the same text or text-and-space combination.
Define predicates
You can define the list of predicates for each event domain independently, and edit or add predicates at any time. Note
that if you are defining predicates for use with Scenarios (e.g., adding to the "advanced_messaging"domain), you will
also need to add the predicates to the related Message Domain (as described in "Define message domain details" on page
285), after you have added them to the event domain.
To add predicates to an event domain:
1. On the Event Domains page, click the name of the event domain for which you want to add a predicate.
2. On the Event Domain details page, click the Add New link above the predicates list.
l
Description
Predicate Name Name of the predicate, as displayed in event domain details and on Subscription panels.
Important
Required
When selected, any injected event that does not contain this predicate will be rejected by the
system, and no notifications will be sent. xMatters will also send out a Health Monitor message
about the failure; for details about the failure, review the event details reports for the event.
Note:This feature is still in Beta release.
Detail
Description
Validate
When this option is selected, the system will compare each incoming predicate against either a
specified pattern for text predicates or the list entries for list predicates.
If the predicate value does not match the pattern, or if a list item does not match one of the
specified list values, the event will be rejected and no notifications will be sent. xMatters will also
send out a Health Monitor message about the failure; for details about the failure, review the event
details reports for the event.
To set the validation criteria for text predicates, specify the following settings:
n
Pattern Library:specifies a common input type against which the predicate value should be
compared.
Pattern:specifies the Java regular expression to compare against the incoming predicate
value.
For a list of the available pattern libraries and their default patterns, see "Validation patterns",
below. You can also select a pattern library and then modify the regular expression for custom
behavior.
Note:This feature is still in Beta release.
Type
Note that you cannot change the predicates type after it has been created; you must delete the
predicate and create it again.
4. Click Save.
Validation patterns
The following table lists the available pattern libraries and the default regular expression for the validate feature. Note
that you can also select a pattern library and then modify the pattern using Java regular expression syntax for custom
behavior.
Pattern library options
Pattern Name
Default Value
Letters only
[A-Z,a-z]*
Numbers only
\d*
5 Numbers only
\d{5}
[-\+]?\d+\.?\d
Pattern Name
Default Value
\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}
\d{4}\-\d{2}\-\d{2}T\d{2}:\d{2}(:\d{2})?(Z)?
Boolean (case-insensitive)
(?i:true|false|yes|no)
.{0,10}
Other - Manual
Subscriptions
With subscriptions, xMatters can automatically notify Users whenever an event matches a predefined set of criteria. For
example, when a certain type of error occurs on a specific asset or service, xMatters can notify a particular Group.
Subscriptions allow users and managers to be notified every time an event occurs that matches specific criteria, even if
that person would not normally be notified for that event. For example, a building manager might want to know every
time a problem occurred in a specific building, even if they were not on duty at the time, or a product owner might want
to be informed of any customer issue that involved a particular model number.
Subscriptions can be used in one of two ways: managed, or self-managed. With self-managed subscriptions, Users with
proper permissions can create their own subscriptions for informational types of events and alerts. With managed
subscriptions, supervisors can define subscriptions and assign them to Groups or Users, who can then see what has been
assigned to them. You can also create subscriptions that are both self-managed and managed; supervisors can assign
them to Users, or Users can subscribe to them on their own.
Subscriptions terminology
The following are terms used by xMatters when referring to subscriptions and the relevant processes.
Subscription Terms
Term
Definition
Event Domain
Event Domains are used to identify the source of incoming events or incidents, and to indicate
which important information is included in the event. This information is then defined as a
predicate, or name/value pair.
Predicate
The important information in an event, presented to Users as name/value pairs when they are
subscribed to a Subscription Domain.
Note that different combinations of predicates make up the pattern for a Subscription Domain, but
the predicates must first be defined in the Event Domain.
Subscriptions | 267
Term
Definition
Subscription
Domain
Subscription Domains specify which Event Domain is associated with the events to which you
want to subscribe. They also allow you to control who can create subscriptions, how (and whether)
recipients can respond to subscription notifications, and which Event Domain predicates or form
properties can be used to create a subscription.
Roles
The Administrative Roles specified on each Subscription Domain identify which Users have
permission to act on Subscription Domains, and create or edit subscriptions for those domains.
Preparing Subscriptions
Before you can create and use Subscriptions, you will need to prepare by configuring the Event and Subscription
Domains and modifying the script package for the Event Domain.
The following steps must be repeated for each Event Domain for which you want to create Subscriptions.
To prepare Event and Subscription Domains:
1. Create an Event Domain for the source of the events to which you want to subscribe, and add predicates to the
Event Domain.
l
For more information about Event Domains and defining predicates, see "Event domains" on page 260.
2. Configure the Subscription Domain and define the details as described in the sections "Configuring Subscription
Domains" and "Specifying Administrative Roles", below.
3. Modify the script package for the Event Domain to ensure it is configured for Subscriptions, as explained in the
following section, Modifying Script Packages for Subscriptions.
4. To test the Subscription, create a Subscription on the new Subscription Domain as described in "Managing
Subscriptions" on page 275, and then inject a test event in the Event Domain.
The default Script Package is configured to handle subscriptions out-of-the-box; no changes are necessary
if you are using the default Event Domain.
Add the following section to the PROCESS - initial script, immediately after the
@alert::performNotification() method:
Subscriptions | 268
3. Ensure the response handler script exists and is configured to handle the responses defined in the two-way
responses section of the subscription.
l
Any handler script can be used for this purpose, as long as the @subscriptionAlert::setHandlerScript
() method is calling the correct script.
4. Ensure the messaging presentation script exists and generates the correct content.
l
Any presentation script can be used for this purpose, as long as the
@subscriptionAlert::setPresentationScript() method is calling the correct script.
To modify an existing Subscription Domain, click its name in the Subscription Domains list to view its
details. For more information, see the Subscription Domain details table, below.
To delete a Subscription Domain, select the check box next to the domains you want to delete, and then
click Remove Selected.
To add a new Subscription Domain, click the Add New link, and then specify its details on the Subscription
Domain details page as explained in the following section.
To modify an existing Subscription Domain, in the Subscription Domains for Company table, click the name
of the Subscription Domain you want to edit.
Subscriptions | 269
To create a new Subscription Domain, click the Add New link. On the Add Subscription Domain page, in
the Event Domain drop-down list, select the Event Domain or on which you want to create the Subscription
Domain, and then click Continue.
2. On the Subscription Domain Details page, enter the following information into the form:
Subscription Domain details
Detail
Description
Name
Name of this Subscription Domain. This name should be descriptive enough so that
the nature of the issues caught by the domain is clear. For example, assume that you
want to create a Subscription Domain based on an Event Domain named Help Desk
with predicates of Software, Hardware, and Network. Your new Subscription Domain
will be limited to the Software predicate and its values (e.g., OS, Upgrades,
Applications, etc.). As a result, you name the new Subscription Domain Help Desk
Software Tickets.
Description
One Way
When selected, indicates that alerts generated by this Subscription Domain are
informational only, and will not accept or require a response from Users. If this not
selected, you must specify response choices as described below.
Type of Management
Select one of the following options to specify who can manage subscriptions to this
domain:
l
If you are not using the default Subscription panel, use this setting to specify the
location and file name of the custom subscription interface for this domain. This path
must be relative to the <xMHOME>/webserver/webapps/cocoon/alarmpoint
directory.
For example, if you created a new CustomSubscription.jsp file and stored it in
the <xMHOME>/webserver/webapps/cocoon/alarmpoint/jsp/
subscription/custom/ folder, the Custom Page URL would be:
jsp/subscription/custom/CustomSubscription.jsp
For more information about creating custom Subscription panels, see the xMatters
Online Developer's Guide.
Subscriptions | 270
Detail
Description
Suppressed Subscription Fields Specifies the elements that you do not want to appear as overrides on subscriptions
for this domain. Items that are not excluded here appear on the default Subscription
panel in the "Overrides" section, and allow subscription creators to modify
subscription notification handling. For example, if you want to ensure that
subscription creators cannot change escalations between Groups or specify that
Device delays should be ignored, you would select Group Escalation and Ignore
Device Delay here; as a result these settings would not appear as options in the
Overrides section of the default Subscription panel
Select the check box next to any of the following options to suppress them:
l
Group Escalation
Notification Delay
You can specify default values for the Override Device Timeframe, Ignore Device
Delay, and Override Device Severity settings in the Subscription Defaults area, as
explained below.
Suppressed Devices
Specifies the names of Devices that will not be available to select as targets on the
Subscription Details page.
Subscription Defaults
Specifies the default settings for Subscriptions created on this domain. Select the
check box next to any of the following options to set a default value:
l
Note that unless these settings are suppressed using the Suppressed Subscription
Fields as explained above, subscription creators can override the defaults on the
Subscription Details page. For more information, see "Defining Subscription Details"
on page 276.
3. Click Continue.
l
If you selected to create a one-way Subscription Domain, continue to Step 6 to add predicates. If you are
creating a two-way Domain, xMatters displays the Response Choices page.
Subscriptions | 271
Note:
To add a response choice, type it in the Enter Response field, and then click Add Response.
To delete a response choice, select it in the Responses field, and then click Remove Selected Response.
If you add new subscription responses, you must modify the corresponding handler script. For more
information, see "Updating Subscription Response Handler Scripts" on page 274.
5. Click Continue.
l
xMatters displays the Select Predicates page, where you can specify (or exclude) predicates that are relevant
to the subscription you are creating. For example, if you are creating a Subscription Domain that focuses on
software problems and predicates such as Windows, Oracle, and SAP are available, you will likely want to
include these in your Subscription Domain. Conversely, for the same domain you may want to exclude
potentially irrelevant predicates such as Hardware and Medical from the Applied Predicates list.
Subscriptions | 272
To add predicates to the Subscription Domain, select them in the Available list, and then click Add.
To remove predicates from the Subscription Domain, select them in the Applied list, and then click Remove.
If you are creating a new Subscription Domain, be sure to assign Administrative Roles, as explained below.
For information on creating Roles and assigning users to them, see "Permissions: functions and roles" on page
228.
Subscriptions | 273
To assign an Administrative Role, select the role you want to assign in the Available Roles list, and then
click Add.
To remove an Administrative Role, select the role you want to remove in the Applied Roles list, and then
click Remove.
4. Click Save.
Subscriptions | 274
Managing Subscriptions
xMatters administrators (and Subscription Supervisors) can assign Subscriptions to Users, and manage Subscriptions in
the xMatters web user interface.
Note:
For information about how Users subscribe to Alerts, or Self-managed Subscriptions, see the xMatters user
guide.
xMatters displays a list of the Subscriptions you manage for the domain listed in the Subscription Domain
drop-down list, with a summary of the conditions and recipients for each Subscription:
Subscriptions | 275
To modify an existing Subscription, click its name to view its Subscription Details. For more information
about editing Subscriptions, see the following section, "Defining Subscription Details".
To view, add, and edit the Groups or Users to which a Subscription is assigned, click the Recipients link in
the Subscription summary. For more information about assigning and editing subscribers, see "Managing
Subscribers" on page 282.
To remove a Subscription, select the check box beside the Subscription or Subscriptions that you want to
remove, and then click Remove Selected.
To create a new Subscription, specify the type of Subscription you want to create by selecting a Subscription
Domain from the drop-down list, and then click the Add New link. (If you have already created a
Subscription on this domain, you can choose to copy the new Subscription from an existing one.) Specify
the Subscription details as explained in the "Subscription details table below. Click Save, and then specify
the Users, Groups, or Teams you want to assign to the Subscription as explained in section "Managing
Subscribers" on page 282.
To view the Subscription list for a different Subscription Domain, select a domain in the Subscription Domain
drop-down list. Note that this option is visible only when other Subscriptions Domains are available.
To change the number of Subscriptions displayed at one time, select a number in the Results per page drop-down
list, and then click Apply.
If there are more values specified for a predicate than can be shown in the table, xMatters displays an ellipsis at the
end of the row. Mouse over the row to view a pop-up containing a list of all values that apply.
If there are more recipients than can be displayed in the Recipients row, xMatters displays an ellipsis at the end of
the row. Mouse over the row to view a pop-up containing a list of all recipients.
Predicate names longer than 18 characters are truncated. You can view full predicate names on the Subscription
Details page.
Each Subscription shows up to five predicates, with those predicates flagged as Important shown at the top of
each list. If a Subscription contains more than five predicates, click the More information link to view all
subscribed predicates.
2. On the Subscription Details page, enter the following information into the form.
Note:
Depending on the settings for the Subscription Domain, some of the subscription details may be suppressed
and not visible or editable on the Subscription Details page.
Detail
Description
Name
Subscriptions | 276
Detail
Description
Attributes
Details within each alert to which you can subscribe. The available Attributes are based on the
predicates included in the Subscription Domain. Do one of the following:
l
For text-type attributes, select an operator from the drop-down list, and then type the text
string to match against in the Value field.
For list-type attributes, select a value (or use Ctrl-click to select multiple values) for each
attribute in the list beside it.
Any alerts that have a matching value for the specified attributes will be sent to subscribers as part
of the subscription.
For more information about specifying the available attributes for subscriptions and the expected
behavior, see the following section, "Specifying attributes and values in subscriptions" on page
278.
Devices
In the Devices area, specify the names of the Devices to which you want to send subscription
notifications. If the recipients you assign to this subscription do not have a Device with the
specified name, they will not receive notifications.
Select All Devices to send subscription notifications to any Devices configured for the recipients
in xMatters. (This is also the default behavior if you do not select any of the other check boxes.)
Note that if you add or change a Device name, you will need to update the subscription if you
want to receive notifications for the subscription on that Device.
Start Date
Date on which the subscription should begin; the default is the current date.
Start Time
Time of day at which the subscription begins, followed by the length of time, in hours and
minutes, for the subscription to last each day.
On the following
days
Time Zone
Group Escalation
Escalation string (comma-delimited values) to use for any Groups subscribed to the subscription.
Note that this will override any existing escalation values set for Group recipients.
For example, a Group Escalation field value might resemble the following:
0,10,5
In this example, xMatters would immediately notify the first member of any Groups subscribed to
this Subscription. Ten minutes later, xMatters would begin notifying the next Group member, and
five minutes after that, would begin notifying the third.
xMatters uses the last value specified as the escalation value for any remaining Group members. In
the example above, xMatters would wait five minutes between notifications to all Group members
after the first three.
Subscriptions | 277
Detail
Description
Override User
Device
Timeframes
Select this check box to use the subscription timeframe instead of User-defined timeframes.
Ignore Device
Delays
Override Device
Select this check box to ignore any User-defined severity restrictions on the selected Device type.
Severities and Use
All
Notification
Delay
Specify the length of time, in minutes, that you want xMatters to wait before sending an alert for
this subscription.
Note that the delay is calculated from the point that xMatters receives the original event. For
example, if you specify a Notification Delay of ten minutes, and an event is submitted to xMatters
at 4:51pm, xMatters will treat the event as though it was received at 5:01pm. The delay you
specify for your subscription does not affect any other subscriptions or alerts in the system.
To assign subscribers for this Subscription, click the Add Users, Add Groups, Add Devices, or Add
Dynamic Teams link and specify the recipients you want to add (note that xMatters ignores scheduling and
User preferences when notifying Devices added as subscription recipients).
To remove subscribers from this subscription, select the check box next to the recipients you want to remove,
and then click Remove Selected.
4. Click Save.
l
If you want other Users to be able to view and edit the subscription, assign Subscription Managers as
explained in "Setting Subscription Managers" on page 282.
Subscription Criteria
Match
ANY
Yes
Subscriptions | 278
Attribute in Event
Subscription Criteria
Match
A, B, C
Yes
Yes
Yes
No
ANY
Yes
A, B, C
No
A, ANY
Yes
NULL
Yes
No
Subscription Criteria
Match
A, B, C
Yes
A, B, C
A, C
Yes
A, B, C
A, Z
Yes
A, B
B, C, Z
Yes
A, B, C,
No
An event containing a Service value of C and a Severity value of Sev1 does not result in a match.
An event containing a Service value of B and a Severity value of Sev3 results in a match.
Subscriptions | 279
Subscription Criteria
Match
Unspecified
Non-empty
No
Unspecified
Empty
Yes
Unspecified
ANY
Yes
Non-empty
No
Empty
Yes
ANY
Yes
Specified
Yes
Specified
No
Specified
Empty
Yes
Specified
ANY
Yes
Example
Assume that an incoming event contains the following tokens and values:
subject = Undeliverable: ServiceDesk Severity 4 ticket TKT14113460 assigned; SD_Global_SOXA_
BVL_HRDWQueries_Access
impact = Customer Broadband
market = Albuquerque,Charleston,Colorado Springs
os = AIX,Linux,Windows
The following table defines potential subscription parameters, the operators used, and whether the subscription would
match the event.
Subscription Details
Result
Match
subject CONTAINS"Severity4"
Subscriptions | 280
Subscription Details
Result
subjectCONTAINS"ServiceDesk ANDassigned"
Match
impact MATCHES"CustomerBroadband"
impact MATCHES"Broadband"
Match
market = Albuquerque
Match
Match
Match
Subscriptions | 281
Subscription Managers
To add a manager for the subscription, click the Modify link. On the Find Managers page, use the search
tools to locate the User you want to add. Select the User in the Available Subscription Managers list and
then click Add. Click Save to apply your changes and return to the View Managers page.
To remove a manager from the subscription, select the check box next to their name in the Subscription
Managers table, and then click Remove.
5. When you are satisfied with your changes, click Back to Details in the Common Tasks pane.
Managing Subscribers
Once you have created a subscription, you can assign it to Groups, Users, Devices, or Dynamic Teams. You can also edit
the list of subscribers to existing subscriptions.
To modify subscribers:
1. On the Subscriptions page, in the Subscriptions list, click the Recipients link for the Subscription you want to
modify.
l
To add subscribers to this subscription, click the Add Users, Add Groups, Add Devices, or Add Dynamic
Teams links. Use the search pages to find and specify the subscribers you want to add, and then click Save
to return to the subscribers page.
To remove a subscriber from the list, select the check box next to the subscribers you want to remove, and
then click Remove Selected.
Subscriptions | 282
2. Select a domain from the Subscription Domain drop-down list, and then click Select.
l
In the Value field for each predicate, type the value or list of values for which you want to search. If you are
searching for a list of values, type the character you use to separate list values in the Delimiter field. (Note
that you must specify all of the Predicate Values for an existing Subscription, or no results will be returned.)
To search for all Subscriptions based on the Subscription Domain, leave the Value fields blank.
4. Click Search.
l
xMatters displays the Subscriptions By Domain page, which lists all Subscriptions matching your criteria.
Subscriptions | 283
To adjust the number of Subscriptions displayed at a time, select a number from the Results per page dropdown list, and then click Filter.
To change the details of a Subscription, click its name in the Subscription column.
To add, edit, or remove a Subscription s managers, click the link in the Managers column.
To search for Subscriptions for a specific User, click the Search By Users link.
To search for Subscriptions for a specific Group, click the Search By Group link.
3. Use the search criteria to find the User or Group for which you want to view Subscriptions, and then click the
name in the Results table.
4. Do any of the following:
l
To adjust the number of Subscriptions displayed at a time, select a number from the Results per page dropdown list, and then click Filter.
To change the details of a Subscription, click its name in the Subscription column.
To add, edit, or remove a Subscriptions managers, click the link in the Managers column.
Message domains
Message domains are used by the Advanced Messaging feature to create and initiate scenarios based on a specific event
domain. For example, the default scenarios use the "Scenario" message domain to create scenarios based on the
"advanced_messaging" event domain.
You can use multiple message domains on the same event domain to limit the predicates available in the scenarios
associated with that domain. You can also specify which roles can create scenarios using each message domain.
Note that message domains are not used in conjunction with messaging panels; Custom messaging panels are a separate
feature, explained in "Custom messaging panels" on page 286, and discussed in detail in the xMatters Online
Developer's Guide.
To modify an existing message domain, click its name in the list to view its details. For more information,
see "Define message domain details", below.
To delete a message domain, select the check box next to the domains you want to delete, and then click
Remove Selected. Note that you cannot remove a message domain for which scenarios have already been
created. Delete the scenarios first, and then remove the message domain.
To add a new message domain, click the Add New link, and then specify its details.
Description
Name
Name of the message domain. This name is displayed in the Message Domain drop-down list on
the Scenario Details page when creating a scenario, and on the Message Domains page.
Description
Brief description of the message domain; this description appears in the list of message domains
displayed in the "Message Domains for <Company>" table.
Event Domain
Select the Event Domain on which this message domain will base its scenarios. Note that the
Event Domain's associated script package must have the appropriate handling configuration for
notifications that use the Advanced Message feature.
You cannot change the Event Domain for an existing message domain; you must create a new
message domain.
3. Click Continue.
l
xMatters displays the Select Appropriate Predicates page, where you can specify (or exclude) predicates that
are relevant to the scenarios you want to create. For example, if you are creating scenarios intended to assist
in disaster response, and predicates such as Medical Assistance, Location, and Event (Disaster Type) are
available, you will likely want to include these in your message domain. Conversely, for the same domain
you may want to exclude potentially irrelevant predicates such as Software Version from the Selected
Predicates list.
4. Do any of the following:
l
l
To add predicates to the message domain, select them in the Available Predicates list, and then click Add.
To create a new event domain predicate, click the Add New button to specify the predicate details; when
you are finished, xMatters will create the new predicate on the event domain, and automatically add it to the
Selected Predicates list.
To remove predicates from the message domain, select them in the Selected Predicates list, and then click
Remove.
5. Click Continue.
6. On the Select Appropriate Roles page, click Save.
Note:
The functionality that was controlled by the Roles assigned to a message domain has been replaced by the
Scenario Initiators page, and you can define these permissions when creating a scenario. Only roles that
include scenario in the name can use the Advanced Messaging feature.
7. Click Save.
To view this example in the xMatters web user interface, log in as an xMatters administrator, and click the
Messaging tab. xMatters displays the default Quick Message panel (if deployed).
xMatters displays the Messaging Panels page. In a new or default deployment, the Quick Message panel is
the only one listed.
To modify an existing panel, click its name in the list to view its details. For more information, see "Define
custom messaging panel details", below.
To remove an existing panel from xMatters, select the check boxes for the panels you want to delete, and
then click Remove Selected. Note that you must have at least one messaging panel configured; you cannot
remove all messaging panels from xMatters.
To change the order in which panels are listed, click Reorder. On the Order Messaging Panels page, select a
panel in the list box and then use the buttons to reorganize the list. When you are finished, click Save to
return to the Messaging Panels page. For more information about reordering messaging panels, see the
following section, "Change the default messaging panel".
To create a new custom messaging panel, click the Add New link, and then specify the Event Domain you
want to associate with the new panel by selecting an event domain from the drop-down list. Click Continue,
and then specify the custom messaging panel details. Click Save, and then specify the roles you want to
have access to the new panel. Click Save to create the panel and return to the Custom Messaging Panels
page.
Description
Name
Name of the panel. This name is displayed in the Custom Messaging Panel menu on the Messaging
tab.
Description
Detail
Description
Page URL
Relative path and file name of the custom messaging panel, based on the location of the JSP file. The
path must be relative to the <xMHOME>/webserver/webapps/cocoon/ alarmpoint/jsp/custom
directory.
Examples
Assume that you create a custom messaging panel named MyCustomPanel.jsp:
l
Custom pages
You can add custom pages to provide a mechanism for users to see external content within the xMatters web user
interface. For example, you could create a list of frequently asked questions that explains how users should interact with
xMatters and your management system, and make it available from within xMatters as a custom page.
To view and manage custom pages:
1. Click the Developer tab.
2. In the Customization menu, click Custom Pages.
l
To modify an existing page, click its name in the Custom Pages list to view its details. For more information,
see "Define custom page details", below.
To remove an existing page from xMatters, select the check boxes for the pages you want to delete, and then
click Remove Selected.
To create a new custom page, click the Add New link and then specify the details as explained in "Define
custom page details", below. Click Continue, and then specify the roles you want to have access to the new
page. Click Save to create the page and return to the Custom Pages page.
Description
Name
Name of the custom page. This name is displayed to users when they view the custom page from
their profile.
Description
Page URL
Relative path and file name of the custom page, based on the location of the JSP file. The path
must be relative to the <xMHOME>/webserver/webapps/cocoon/alarmpoint/ directory.
For example, if you created a new FAQ-xMatters.jsp file and stored it in the
<xMHOME>/webserver/webapps/cocoon/alarmpoint/jsp/mypages/ folder, the Page URL
would be:
jsp/mypages/FAQ-xMatters.jsp
3. To set or change the roles allowed to use the custom page, click Assign Roles in the Common Tasks pane, and
then use the Add and Remove buttons to adjust the roles.
4. Click Save to apply the changes and return to the Custom Pages page.
Import data
You can use the xMatters web user interface to import XML spreadsheets of user information or other data directly into
the xMatters database. The Import Data feature provides a quick way to import records without having to enter data into
the system manually, one record at a time.
If you need to import large amounts of data (i.e., in excess of 1,000 records), it is recommended that you use the Data
Synchronization feature. For more information, see "Data Synchronization" on page 377.
You can use the Import Data feature to import the following information from the spreadsheet:
n
User information: User ID, first and last name, site, role, phone ID, and up to five devices, including the service
provider for each device.
The following sections explain how to use the Import Data feature, including how to format the data for import and how
to correct any errors in the imported data.
Note:
In multiple-Company deployments, you can use the Import Data feature to add data to only one Company at a
time.
Format spreadsheets
The Import Data feature loads data into xMatters from Microsoft Office Excel 2003 XML spreadsheets. To load
correctly, each spreadsheet must have a consistent, specific format, as outlined in the following tables.
Persons Sheet
The following table explains the columns and fields on the Persons sheet in the spreadsheet.
Column
Description
UserID
The User ID for the user you want to add. All entries in this row apply to this User ID.
Operation
Specifies whether you want to Add this Item or Remove this Item. The default is to add the
user.
FirstName
LastName
Authentication
To indicate the authentication to use for this user, select one of the following options:
l
LDAP: uses the users web login ID to authenticate against the LDAP servers.
WebLoginID
The web login ID to assign to this user. If not specified, xMatters assigns a default login ID
using the users first and last names in lower case and separated by a period (i.e.,
firstname.lastname).
WebLoginPwd
The web login password to assign to this user. If not assigned, xMatters assigns the uiser ID for
this user as a default web password.
Note that this field displays the password in clear text, but the Import Data feature stores an
encrypted version in the database.
LDAPDomain
If required, the name of the LDAP domain to authenticate for this user. For more information
about naming LDAP domains, see "LDAP servers" on page 193.
PhoneLoginID
The phone login ID to assign to this user. The contents of this field must be all integers, or the
Import Data operation will return an error.
If no value is specified, the phone credential for this user is not created, and the contents of the
PhoneLoginPwd field are ignored.
PhoneLoginPwd
The phone login Password to assign to this user. The contents of this field must be all integers,
or the Import Data operation will return an error.
If no password is specified, xMatters assigns the PhoneLoginID for this user as a default phone
password.
Site
The site to which the new user should be assigned. The choices available in this drop-down list
are based on the Sites column on the Admin sheet.
Role
The users primary role. The choices available in this drop-down list are based on the roles
column on the Admin sheet.
Column
Description
DeviceName1-5
The name of each device you want to add for this User. The choices available in these dropdown lists are based on the Devices column on the Admin sheet.
Note that all devices are added with a default 24x7 Timeframe, and you can add up to five
devices for each user.
ServiceProvider1-5
The service providers for each new device you want to add. The choices available in these
drop-down lists are based on the Service Providers column on the Admin sheet.
Note that in the example spreadsheet, Phone Engine should be used for voice phone devices;
either MAPI EMail or SMTP Email should be used for email devices.
DeviceAddress1-5
Extensions and other details, such as country codes, must be entered using the xMatters web
user interface.
Groups Sheet
The following table explains the columns and fields on the Groups sheet in the spreadsheet.
Column
Description
GroupName The name of the new group. All entries in this row apply to this group. Note that all groups are created
with a default 24x7 coverage.
Description
Timezone
The time zone to assign to this group. The choices available in this drop-down list are based on the
Timezones column on the Admin sheet.
Operation
Specifies whether you want to Add this Item or Remove this Item. The default is to add the group.
GroupMembers Sheet
The following table explains the columns and fields on the GroupMembers sheet in the spreadsheet.
Column
Description
GroupName The name of a group to which you want to assign a user. The choices in this drop-down list are based
on the GroupName column on the Groups sheet.
UserID
The user you want to add to the group. The choices in this drop-down list are based on the TargetID
column of the Persons sheet.
Admin Sheet
The following table explains the columns and fields on the Admin sheet in the spreadsheet.
Import data | 291
Column
Description
Sites
The entries in this column determine the choices available in the Site drop-down list for each user
entered on the Persons sheet.
Roles
The entries in this column determine the choices available in the Role drop-down list for each user
entered on the Persons sheet.
Devices
The entries in this column determine the choices available in the DeviceName drop-down lists for each
user entered on the Persons sheet.
Timezones
The entries in this column determine the choices available in the Timezone drop-down list for each
group entered on the Groups sheet.
Service
Providers
The entries in this column determine the choices available in the ServiceProviders drop-down list for
each user entered on the Persons sheet.
Note:
The information on the Admin sheet is not imported into xMatters. The information on the Admin sheet is used
only to populate the fields and drop-down lists on the first three sheets.
Spreadsheet template
xMatters includes a pre-formatted Excel 2003 XML spreadsheet you can use as a template when entering your data. The
template is named DataLoad_Example.xml, and is stored by default in the <xMHOME>\webserver\examples subfolder
of your xMatters installation folder.
3. On the Import Data page, enter the following information into the form:
Import Data page details
Detail
Description
Import
Name and location of the Excel 2003 XML spreadsheet you want to import. Type a path and a
file name into the field, or click Browse to locate a spreadsheet file on your system.
Default Site
Site to which all users will be assigned, unless otherwise specified in the spreadsheet.
Default Role
Role to which all users will be assigned, unless otherwise specified in the spreadsheet.
Default LDAP
Domain
LDAP domain to which all users will be assigned (this setting is available only if there is at least
one LDAPdomain defined).
Default Time Zone Time zone to which all groups will be assigned, unless otherwise specified in the spreadsheet.
Default Observer
Role
Observer role which will be assigned to all groups, unless otherwise specified in the spreadsheet.
l
l
xMatters attempts to upload the data and import it into the database. If the import process is successful,
xMatters displays a success message at the top of the Import Data page.
If the import process failed for any reason, xMatters displays a failure message.
You can click the Download Results button to generate and view an Excel 2003 spreadsheet with more
information about the errors.
Phone recordings
You can use the Manage Recordings and Add Recordings pages to manage and create voice recordings that are used in
scripts that target voice (phone) devices. For example, you can record specific phrases for specific situations and
locations such as Fire, Flood, Email server down, ... in Building Seven, etc. You can also re-record system voice
pieces such as numbers, months, days of the week, and so on.
Note:
Before creating voice recordings, ensure that a supported Dialogic card has been installed, or that SIP has
been properly configured. To play back VOX recording files within Firefox, you must have Apple QuickTime
installed (Windows Media Player will not play VOX files within Firefox).
Propagation Details
There is no need to propagate your recordings across xMatters nodes manually. If you create or modify recordings in one
of the Recordings subfolders, xMatters automatically propagates the recordings to all nodes. The following section
describes the propagation process in detail.
(Where <org_id> is the Company database identifier available on the Company details page)
When a node starts, the staging area is scanned for voice recordings that are not represented in the database. If a
recording is missing from the database, it is added together with its descriptive recording phrase (if an associated
properties file is present; a recordings properties file has the same name as the recording, except that its postfix extension
is properties instead of vox). Phrase descriptions are located in the english\phrases subdirectory.
At regular time intervals, the database is scanned to ensure that all recordings defined are distributed to the runtime area.
Similarly, the runtime area is scanned for recordings not represented in the database. If new recordings or newer versions
of recordings are detected, the recording is added and the version is updated in the database. The version is represented
by an incremental number in the database and by a suffix appended to the name represented by a dash followed by the
number (for example, the recording severity version 3 is represented in the runtime area by severity-3.vox).
The voice recordings are also regularly scanned for resources that can expire. These represent recorded voice messages
associated with a given event, such as a recorded comment. By default, these recordings expire after 24 hours, after
which they are removed from the database and all runtime areas.
The Resource Broker on each node is responsible for synchronizing voice recording resources between the database and
its local runtime area. To do so, it implements the regular (i.e., time-based) polling functionality described above; and, it
uses a subscription mechanism to ensure resource changes are communicated to all nodes in a timely fashion. Each node
in a multi-node deployment subscribes to resource changes and is informed when the change event occurs, allowing the
node to update its resources. As a result, when communication problems occur or a node is temporarily offline, the timebased synchronization verification acts as a backup to ensure propagation.
Example
Assume that the xMatters web user interface has been used to create a new recording. The recording script is run on the
node creating the recording. After recording is complete, a message is sent to the Resource Broker, which then updates
the database with the change. In turn, Resource Brokers that maintain other nodes are informed and subsequently update
their local resources.
Alternatively, you can add the recordings to the staging area of one of the nodes and then restart that node. The benefit
of this approach is that if the associated properties files are included, the phrase descriptions are added to the database
and made available for display in the web user interface.
Deleted recordings
When you delete a recording using the web user interface, the recording file is removed, and the file reference in the
database is marked as deleted. If you attempt to restore the recording by manually copying it into the staging area, the
node will automatically remove the file and it will not be propagated to any other nodes in the system. You must re-add
the recording using the web user interface, which will also update the database reference.
Add a recording
You can create a voice recording using a voice device and the xMatters web user interface. Once you have specified the
details of the recording in the web user interface, "Add a recording" on page 296xMatters will call your Voice (Phone)
Device to make the recording. You can also upload an existing recording file (as a new recording, or to overwrite a
recording that is already in xMatters).
You must have an active voice (phone) device to create new recordings. Acceptable formats for uploaded
existing recordings are PCM 8000kHz, 8bit, Mono WAV or m-law 8000kHz, 8bit, Mono VOX.
Note:
To create a recording:
1. Do one of the following:
l
To add a recording for a specific company, sign in to xMatters as a Company Administrator, and then click
the Developer tab.
To add a global recording that will be available to all Companies within the xMatters Deployment, log in as
the Super Administrator, and then click the Developer tab.
Description
Recording
Phrase
The name of the phrase to be recorded. The name must be fewer than 100 characters long and may
include the following characters: " * < > | \ / ? : %. These characters are translated into %HEX (a percent
sign followed by a hexadecimal number).
Detail
Description
Event
Domain
The event domain to which you want to save the recording (default is ). If you logged in as a Super
Administrator, this option is automatically set to Global.
xMatters automatically assigns the new recording an ID number and adds it to the Phone Recordings page.
5. Click Manage Recordings on the left-hand menu item and locate the new voice recording in the phone recordings
list.
8. In the Add Phone Recordings pop-up, click the Language drop-down list and select the language for which the
recording is intended (this setting is shown only if the Company uses multiple languages).
9. Do one of the following:
l
l
To add an existing recording, click Browse, navigate to the file, and then click Save.
To create a new recording, click the Phone Devices drop-down list to select the phone on which you want
to be called, and then click Initiate Callout. When you receive the call, follow the instructions and record
your message.
10. To listen to a recording, click its associated green and white play icon. Allow several seconds for the playback
application to start and the recording to load. If you do not have a playback application installed, you will
automatically be prompted to install one.
11. To remove the recording in all languages, click Delete Recording; to delete only specific language versions of the
recording, select their associated check boxes, and then click Remove Selected.
Record user names
You can use a similar process to create voice recordings for user names.
To create a recording for a user name:
1. Record the user name as described in Creating a Recording, above (e.g., Mary McBride).
2. Specify the users ID as the Recording Phrase (e.g., mmcbride).
3. Save the file to the following directory:
<xMatters>\node\phone-engine\Datastore\domains\common\recordings\names
Note:
By default, this directory already contains a file called bsmith.vox for default user Bob Smith.
The Phone Recorder utility works only on Windows, using a Dialogic card (i.e., it does not work on SIP). After
a system recording is re-recorded, it is propagated automatically throughout a multi-node deployment.
Select Phone Number, specify the number of the phone to be called for recording, and then click OK.
If you want the utility to automatically play back the recording once you have recorded it, select Playback
Recording.
If you want the utility to automatically remove any extra silence from the beginning and ending of the
recording, select Trim Silence (if you find that the ends of recordings are trimmed too closely, clear this
checkbox).
4. In the ISI Phone Recorder dialog box, navigate to the Recordings folder (default path is AlarmPoint
Systems\AlarmPoint\node\phone-engine\Datastore\common\Recordings).
5. In the Recordings folder, select a language folder (e.g., English US) for the language you want to record.
6. Double-click the IPF file (e.g., English_US.ipf) to display the individual system recording files.
7. Click Connect, and wait for the Phone Recorder to call you.
8. Once you are connected, select a system recording file (e.g., "Seven") that you want to hear or re-record, and then
click Play or Record (note that you can re-record multiple files in series).
9. When you have finished re-recording the desired system files, click OK.
10. Close the Phone Recorder utility.
xMatters displays the Phone Recordings page, as shown in "Phone recordings" on page 294 above.
Note:
Modify the settings on the Edit Phone Recording Details page, as described in the "Phone Recording
General Details" table, above. Click Save to apply your changes and return to the Phone Recordings page, or
click Reset to discard your changes and start over.
To re-record a recording, click the Phone Devices drop-down list to select the phone on which you want to
be called, and then click Initiate Callout. When you receive the call, follow the instructions and record your
message.
To replace a recording with an existing file, click Browse, navigate to the file, and then click Save.
(Acceptable formats for uploaded existing recordings are PCM 8000kHz, 8bit, Mono WAV or m-law
8000kHz, 8bit, Mono VOX.)
To listen to a recording, click the associated green and white play icon. Allow several seconds for the
playback application to start and the recording to load. If you do not have a playback application installed,
you will automatically be prompted to install one.
When you re-record or replace a recording for a given language, the version number of that recording will
increase by one. The version number of an existing recording is displayed on its Details page.
Chapter 5: Reporting
About reporting
xMatters provides a number of web-viewable reports for system monitoring and troubleshooting. The reports include logs
of incoming messages, actions taken within xMatters, notification status messages, component status, and other
interactions.
The following table summarizes some key terms used in xMatters Reports:
Key Reporting Terms
Term
Description
Incident
Represents one or many events. For example, a management system can use a single incident ID to span
multiple events.
Event
Events originate when the management system sends a message to the integration agent, or when the
event is generated from a messaging panel. Events represent the starting point and highest level of
internal tracking in xMatters. The event ID is assigned within xMatters.
Notification Generated based on events, and can target one or many recipients (users, groups, and devices).
Notifications are delivered based on the users settings (schedules, escalations, overrides, and so on) and
the business logic of the script used to process the event.
Access reports
To access xMatters reports, log in to the xMatters web user interface and click the Reports tab. The left menu displays
links to all available reports.
Note:
Permissions control access to xMatters reports. If you do not see a Reports tab when you log in to xMatters,
your Rrole does not include permissions to access reports. If you require access to reports, contact your
xMatters administrator.
Chapter 5: Reporting
Note:
Wild cards are not supported in the type-ahead style Search fields, such as the feature on the events report.
Returns
filter_value
Items containing filter_value. When no percent symbol is present, xMatters searches for items
containing filter_value.
filter_value%
%filter_value
%filter_value%
Items containing filter_value. This returns the same result as not using a percent symbol.
All items.
%%
All items.
<nothing>
All items (i.e., leaving the search field blank returns all items).
Note:
Clear Runtime / History:for details, see "Clear runtime and historical data" on page 219
For example, the default Schedule Jobs settings specify that data is runtime for the first 7 days it exists, archive for the
next 21 days, and deleted after a total of 28 days.
Note:
This setting also appears on the Past Alerts and Past Groups Alerts search pages.
Saving the change to the Refresh Delay rate resets the delay only for while you are on the page. If you browse
to another page, the rate is no longer saved.
In some situations, you may want to pause an event manually (e.g., to add to or change it, to allow certain Users to
respond, to check for false alarms, etc.). You can use the Suspend Selected and Resume Selected button (on the available
reports) to suspend and resume events. For more details about what happens when you suspend and resume events, see
About Suspending and Resuming Events, below.
To suspend one or more events, select the check boxes next to the events you want to suspend, click Suspend Selected,
and then click OK (the Status column will indicate a state of Suspended when the page is refreshed).
Similarly, to resume previously suspended events, select the check boxes next to the suspended events you want to
resume, click Resume Selected, and then click OK (the Status column will indicate a state of In Progress when the
page is refreshed).
When an Event is suspended, no new work is sent to device engines for processing. However, notifications that have
already been sent to a device engine will be processed. All message responses that occur after an event is suspended will
still be valid and executed.
When an event is resumed, processing will continue from the point at which it was initially suspended. However, the
current date and time will be used for processing. Note that if a suspended event is terminated by another application or
mechanism (e.g., via a Management System), resuming the event will not result in any further activity.
Example: Suspend an event
Ten users are notified via a single event, and then the event is immediately suspended. If an email notification was
submitted to a user prior to the event being suspended, and the user response is CLEAR or some other job control, the
requested activity will still be executed.
Example:Resume an event
An event causes Group1 (available 9am 4pm on business days) to be notified at 3pm, and then the event is
immediately suspended. The event is resumed at 8:30pm. No additional notification will occur until the next business
day at 9am.
DTMF notifications
The DTMF protocol cannot relay failure messages back to xMatters. As a result, if a DTMF message fails for any reason,
xMatters will not recognize the failure. For reporting purposes, this means that all DTMF notifications xMatters sends are
Chapter 5: Reporting
Available reports
xMatters includes many predefined reports with search criteria designed to help administrators and other users understand
the applications runtime status, historical performance and auditing capabilities. Users permission settings control their
access to reports.
The following table summarizes the available reports and provides a brief description of each:
Available Reports
Category
Report
Description
Activity
Events Activity
Returns event details for a specific user based on a date and time range.
Returns event details for a specific group based on a date and time range.
Submitted Notifications
Returns all notifications sent within a specified date and time range.
Live Notifications
Company
Reports
System
Reports
Notification Throughput This report returns all notifications the system has submitted, sent, and
Details
received based on a date and time range.
Domain Summary
Returns all notifications the system has delivered based on a date and
time range, and sorted by the specified event domain.
Synchronization Report
Application Audit
Report
Low-Use Users
Component Status
Node Network Statistics Returns data regarding the number of network interruptions, application
layer latency between nodes, and whether the network connection was
symmetric for a specified period. By default, this Report is available only
to xMatters Super Administrators.
Audit
Category
Performance
Report
Description
For more information about Performance Reports, see the xMatters user guide
Group Performance
Report
User Performance
Report
Trending Reports
(Average Response
Times)
The Trending Reports (available from within the Performance Reports) for
Groups and Users allow Administrators and Supervisors to view statistics
about how their Groups and supervised Users have responded to
notifications over a specified period of time. The reports, which provide a
breakdown of average response times, can be used to identify trends in
responding performance over time.
In the sections that follow, reports are sorted and ordered by their web user interface menu category.
All Event reports (Events Activity, Events for User, Events for Group)
Submitted Notifications
Live Notifications
Domain Summary
Synchronization Report
Activity reports
The activity reports allow you to analyze events submitted to the system and notifications that the system generates.
You can also drill down and view detailed reports on key criteria (for more information, see "Event Details Reports" on
page 311).
Note:
The activity reports include a Kill Selected button that allows you to select currently live events and terminate
them. If the event is not live (or you do not have the required Permissions), no selection box appears.
Chapter 5: Reporting
Events Activity
Submitted Notifications
Live Notifications
This report is the typical entry point when searching for data within the system, and is particularly useful when
attempting to find a specific Event or Incident ID within a certain time period. For example, you could use an Events
Activity Report to determine what happened with a particular management system ticket (based on an Incident ID), and
then use the links within the Report to branch into more detailed information about specific notifications or Events. You
can also suspend and resume events via this report.
Note:
Due to the way xMatters resolves Groups (i.e., calculating schedules for Groups within Groups), the numbers
on the Event Activity Report may not be accurate while an event is being processed.
To limit the Report results to a particular time of day, enter the hours to include in the Start Time and End
Time fields.
4. To specify the number of results to display on each page of the Report, select a number from the Results per page
drop-down list.
5. Click the Select From drop-down list to specify the data type on which to search (for details, see "Choose runtime
and archive data" on page 303).
6. Click Search to generate the Report.
l
The following table describes the information that appears in each column:
Displays
Time
Incident
Identifier that allows an Incident to be tracked. This ID is generated or assigned by the management
system or originator of the incident; when no ID is provided, xMatters assigns an ID. One Incident
can have many associated Events.
Event
Domain
Sender
If the message originates from the xMatters web user interface, the Sender is the User who is logged
in when the message is sent. If the message comes from a Java Client, the Sender is the Agent ID
for that Java Client.
Status
Notification
Summary
Link to notification details. For more information, see "Event Details Reports" on page 311.
Event Summary
Link to Event details. For more information, see "Event Details Reports" on page 311.
Exhaustive
Link to the Exhaustive summary. For more information, see "Event Details Reports" on page 311.
Detail 1-3
Custom information specified with a predefined system token or predicate. These columns are
displayed only if they are populated and marked as "Important"on the Event Domain Details page;
for more information, see "Define predicates" on page 264.
7. Refine or organize your Report results using the methods described in "Work with reports" on page 302.
Chapter 5: Reporting
Like Event Activity, this Report is another entry point into the system when searching for information about a particular
User or Event, but can be especially useful when you do not know a specific Event or Incident ID.
To run an Events for User Report:
1. Log in as a Company Administrator, and click the Reports tab.
2. On the Reports menu, click Events for User.
l
3. Use the search feature on the Find User for Event Report page to locate the User for whom you want to generate a
Report.
Note:
This search page is identical to the Find Users page described in detail in the Supervising Users and Groups
chapter of the xMatters user guide.
4. Click the name of a User to display the Events for User Report page.
l
The following table describes the information that appears in each column.
Displays
Time
Incident
Identifier that allows an Incident to be tracked. This ID is generated or assigned by the management
system or originator of the incident; when no ID is provided, xMatters assigns an ID. One Incident can
have many associated Events.
Event
Domain
Sender
If the message originates from the xMatters web user interface, the Sender is the User who is logged in
when the message is sent. If the message comes from a Java Client, the Sender is the Agent ID for that
Java Client.
Column
Displays
Status
Notification Link to notification details. For more information, see "Event Details Reports" on page 311.
Summary
Event
Summary
Link to Event details. For more information, see "Event Details Reports" on page 311.
Exhaustive
Link to the Exhaustive summary. For more information, see "Event Details Reports" on page 311
Detail 1-3
Custom information specified with a predefined system token. These columns are displayed only if they
are populated.
5. Refine or organize your Report results using the methods described in "Work with reports" on page 302.
Like Event Activity, this Report is another entry point into the system when searching for information about a particular
Group or Event, but can be especially useful when you do not know a specific Event or Incident ID.
To run an Events for Group Report:
1. Log in as a Company Administrator, and click the Reports tab.
2. On the Reports menu, click Events for Group.
l
3. Use the search feature on the Find Group for Event Report page to locate the Group for which you want to
generate a Report.
Chapter 5: Reporting
Note:
This search page is identical to the Find Groups page described in detail in the Supervising Users and
Groups chapter of the xMatters user guide.
4. Click on the name of a Group to display the Events for Group Report page as illustrated above.
l
The following table describes the information that appears in each column.
Displays
Time
Incident
Identifier that allows an Incident to be tracked. This ID is generated or assigned by the management
system or originator of the incident; when no ID is provided, xMatters assigns an ID. One Incident can
have many associated Events.
Event
Domain
Sender
If the message originates from the xMatters web user interface, the Sender is the User who is logged in
when the message is sent. If the message comes from a Java Client, the Sender is the Agent ID for that
Java Client.
Status
Notification Link to notification details. For more information, see "Event Details Reports" on page 311.
Summary
Event
Summary
Link to Event details. For more information, see "Event Details Reports" on page 311.
Exhaustive
Link to the Exhaustive summary. For more information, see "Event Details Reports" on page 311
Detail 1-3
Custom information specified with a predefined system token. These columns are displayed only if they
are populated.
To specify the details displayed in these columns, predicates must be defined as Important when
created in an Event Domain. For more information, see "Define event domain details" on page 262.
5. Refine or organize your Report results using the methods described in "Work with reports" on page 302.
Event Summary
Click link in the Event Summary column to display the Event Summary Report for the related entry.
Event Summary
For a description of the values in the Event Summary's "Details" column, see "Notification statuses", below.
Note:
If you receive a The notification is in process, please try again later error message, wait a few moments and
then refresh your browser window. The error is transient, and the report will display once the notification has
been resolved.
Description
# of people to contact
Total number of Users who might be contacted for the Event, including Groups within
Groups and Temporary Replacements. Some Users included in this number may not be
contacted for this event because their schedules do not match the notification period.
# failed
Number of Users that xMatters attempted to contact, but could not. This count is based
on results from the Device Engines. If, for example, a Paging Engine has failed, this
count will be affected. Additionally, Users with no active Devices configured, and Users
with Devices with Timeframes that do not fall within Coverages typically contribute to
this value
Chapter 5: Reporting
Term
Description
# success 1-way
# success 2-way
Number of Users in # of people to contact figure that have not been sent a notification.
You can use the Replay Event link on the Event Summary Report to run an Event again; for more information, see
"Replaying an Event" on page 316.
Notification Summary
Click link in the Notification Summary column to display the Notification Summary Page for the related Event.
Notification Summary
For a description of the values in the Notification Status's "Status" column, see "Notification statuses", below.
Exhaustive Report
Click link in the Exhaustive column to display the Exhaustive Report for the related Event.
Chapter 5: Reporting
Exhaustive Report
Note:
If you receive a The notification is in process, please try again later error message, wait a few moments and
then refresh your browser window. The error is transient, and the report will display once the notification has
been resolved.
The Exhaustive Report displays each key transaction in the formation, delivery, and termination of the Event. By default,
the report displays a hierarchical view that can be toggled with a chronological view by clicking the Show
Chronological (or Show Hierarchical) button.
Notification statuses
The "Status"column on the Notification Summary report and the "Details"column on the Event Summary report indicate
the changing state of each notification attempt. The following table identifies and explains the possible values for these
columns.
Notification Summary Statuses
Value
Description
CANCELLED
NOTIFYING
DELIVERED
DEVICE_DELIVERED
The notification has been delivered directly to a targeted Device; i.e., the notification was
sent to the Device directly and not to the User.
Value
Description
DEVICE_READ
The notification has been delivered to a Device and read by the User; note that this status
is available only on Devices and service providers capable of sending a "message read"
status back to the system.
RESPONDED
FAILED
The notification could not be delivered to the Device; for more information, consult the
xMatters logs.
HAS_REPLACEMENT
The targeted User has a scheduled Temporary Replacement who will be notified on their
behalf.
NOT_DELIVERED
Replaying an Event
The Replay Event link on the Event Summary report allows you to launch an existing event again. This feature aids in
troubleshooting notifications or diagnosing delivery problems.
You can modify some event details before replaying it; the properties displayed on the Replay Event page depend on
the original event and event domain.
Note:
When replaying an event, xMatters treats the replay as a new, separate event, and will notify all recipients
using their devices; ensure that you do not accidentally duplicate a real emergency.
To replay an Event:
1. Click the Reports tab, and then click the event that you want to replay.
2. On the Event Report Summary page, click the Replay Event link.
l
Chapter 5: Reporting
3. On the Replay Event page, in the New Value column, modify the values to match the properties you want to
inject when replaying the event.
4. Click Replay to create a new event using the specified values.
Modify event properties
The Replay Event page displays a list of event properties you can modify before replaying the event, including the value
for each property on the original event.
The properties available to modify depend on the details of the Event you are replaying. For example, if you are
replaying an event based on a message sent from the default Quick Message panel, the Replay Event page would
include the message details, a recipients list, the name of the messaging panel, the name of the sender, etc.
Properties that can contain multiple values, such as a recipients list, have a related property that includes the term
"delimiter". These properties identify the symbol or punctuation mark (the default value is a comma) used to separate
items in the list.
This Report is helpful if you are trying to find specific content that has been sent out to a Device. It also allows you to
narrow down the content to a specific Event. For example, if a User is trying to understand why they received a message
containing certain content, you can use the Submitted Notifications Report to track the notification back to the
originating Event, which will then allow you to view the detailed links.
To generate a Submitted Notifications Report:
1. Log in as a Company Administrator, and click the Reports tab.
2. On the Reports menu, click Submitted Notifications.
3. Enter a date range in the Start Date and End Date.
l
To limit the Report results to a particular time of day, enter the hours to include in the Start Time and End
Time fields.
4. To specify the number of results to display on each page of the Report, select a number from the Results per page
drop-down list.
5. Click the Select From drop-down list to specify the data type on which to search (for details, see "Choose runtime
and archive data" on page 303).
6. Click Search to generate the Report.
l
The following table describes the information that appears in each column:
Displays
Time
Chapter 5: Reporting
Column
Displays
Incident
Identifier that allows an Incident to be tracked. This ID is generated or assigned by the management system
or originator of the incident; when no ID is provided, xMatters assigns an ID. One Incident can have many
associated Events. Click the link in this column to generate an Event Activity Report on this Incident ID.
Event
xMatters-generated unique identifier for this Event. Click the link in this column to generate an Event
Activity Report on this Event ID.
Domain
Recipient Identifies the recipient of the notification. Note that terms in the filtering field are applied only to User IDs.
Message
7. Refine or organize your Report results using the methods described in "Work with reports" on page 302.
This report can be used to monitor system activity during periods of load. The report contains data when the system is
busy creating and delivering notifications. The lifecycle of a Device notification is as follows (displayed in the Status
column of the report):
CREATED > SERVICEABLE > DISPATCHING > DELIVERED or FAILED
For Voice Device notifications the lifecycle is as follows:
CREATED > SERVICEABLE > DISPATCHING > PROCESSING > DELIVERED or FAILED
Note:
The final states of DELIVERED and FAILED are not displayed in the Status column of the Live Notifications
Report.
For two-way network paging protocols (e.g., SNPP and WCTP), the report displays notifications created for querying the
paging provider for status updates and responses. The lifecycle of these notification queries is as follows:
CREATED > QUERY_PROVIDER > DISPATCHING >DELIVERED_DEVICE or DEVICE_ READ or
RESPONDED
Note:
The final states of DEVICE_READ and RESPONDED are not displayed in the Status column of the Live
Notifications Report for two-way paging protocol notifications.
If you are logged in as a Super Administrator, on the System Reports menu, click Total Live Notifications.
3. To specify the number of results to display on each page of the Report, select a number from the Results per page
drop-down list.
4. Click Start to generate the Report.
l
If you are logged in as a Super Administrator, click the name of a Company to view the live notifications for
that Company.
The following table describes the information that appears in each column of the report:
Displays
Notification
Person Info
Device Info
Status
Time Created
Retries
Number of times the system has attempted to send the notification after sending the original
notification.
5. Refine or organize your Report results using the methods described in "Work with reports" on page 302.
Note:
Two-way pager notifications sent via SCTP and SNPP appear in the Live Notifications Report for one hour
after sending. This is due to the mechanism used by these protocols to query for delivery updates and replies.
The following table explains the entries in the Status column of the Live Notifications Report:
Live Notifications Report Status Column Entries
Status Entry
Description
CREATED
SUSPENDED
Chapter 5: Reporting
Status Entry
Description
SERVICEABLE
RETRY
Notification has been attempted but could not be delivered. An internal event will occur
in the future to requeue this notification for delivery.
PROCESSING
QUERY_PROVIDER
Similar to the SERVICEABLE, but notifications in this state are waiting for Device
Engines to query a provider for delivery status (i.e., not waiting to send out a notification,
as in the SERVICEABLE state).
DELIVERED_
PROVIDER
QUEUED_PROVIDER
Notification has been successfully delivered to a provider, but is currently queued at the
provider awaiting delivery to a Device. (note that this status applies only to two-way
paging protocols).
DELIVERED_DEVICE
Notification has been successfully delivered to a Device (note that this status applies only
to two-way paging protocols).
VIEWED_DEVICE
Notification has been successfully delivered to a Device and the notification has been
viewed (note that this status applies only to two-way paging protocols).
RECEIVED_
RESPONSE
DISPATCHING
Notification is being sent to a Device Engine. Notifications are expected to transition from
this state within a configured threshold (default is 5 minutes); otherwise, they will be
moved back to SERVICEABLE for requeue.
Company reports
By default, only company administrators have access to the company reports. In multiple-Company deployments, Super
Administrators can access the Notification Throughput Report for all Companies in the system.
Company reports include the following:
n
Domain Summary
Synchronization
Application Audit
The Notification Throughput Report provides an overview of the Events and notifications for a Company handled by the
system for the specified time. This Report is useful for determining prime load times and how much the system is
handling at different times.
Super Administrators can view a Notification Throughput Report that includes all Companies in xMatters.
To generate a Notification Throughput Details Report:
1. Log in to xMatters as a Company Administrator or Super Administrator, and click the Reports tab.
2. On the Reports menu, click Notification Throughput Details.
l
If you are logged in as a Super Administrator, on the System Reports menu, click Notification Throughput.
To limit the Report results to a particular time of day, enter the hours to include in the Start Time and End
Time fields.
4. To specify the number of results to display on each page of the Report, select a number from the Results per page
drop-down list.
5. Click Search to generate the Report.
l
If you are logged in as a Super Administrator, click the name of a Company to view specific details about its
notification throughput.
6. Refine or organize your Report results using the methods described in "Work with reports" on page 302.
Total Events Submitted Table
The Total Events Submitted table breaks down all of the submitted events into their respective sources as follows:
n
If the Event was injected by the integration agent, the Source column will contain the Event Domain and the
Integration Service name, separated by a pipe; e.g.: "default|helpdesk"
Chapter 5: Reporting
If the Event was injected by the APAgent (i.e., the Java Client), the Source column contains only the Event
Domain name; e.g.: "company_a"
If the Event was injected by a message panel (including Custom Messaging Panels), the Source column contains
the User ID of the User who sent the message; e.g., "bsmith"
If the Event was injected via web services, the Source column contains the User ID of the web service user used to
inject the event; e.g., "IA_User"
Domain Summary Reports are useful for knowing what each part of the system is being used in a specific time period.
For example, if you wanted to determine the relative load that the ticketing system is putting through the system as
compared to the xMatters Messaging component, you could generate a Domain Summary Report to review the
information.
Assuming that they are on the specified event domain and within the specified date range, live notifications are included
in the Total Notifications Sent column:
n
When an xMatters business script delinks or delivers a notification (i.e., when the script triggers a DELIVEREDor
DELINKED state)
To limit the Report results to a particular time of day, enter the hours to include in the Start Time and End
Time fields.
6. Refine or organize your Report results using the methods described in "Work with reports" on page 302.
Synchronization report
This report returns the results of data synchronization processes run on the deployment.
Note:
For more information about the Data Synchronization feature, see "Data Synchronization" on page 377.
Chapter 5: Reporting
3. Click the link of a specific data synchronization run to display success/failure summaries for each table.
4. If failures are displayed, you can click the related Synchronizer Name link to display the Synchronization Failure
Summary for that row entry in the table.
Similarly, a SUCCESS result in a Synchronization Table Report does not mean that there were no failures of individual
objects, while a FAILURE result indicates one of the following errors:
n
Failure Counts
The Failure Count result indicates the number of rows (objects) that failed to synchronize with xMatters; click the link
in the Synchronizer Name column to view more details on a failure.
Failure counts may be incremented by the following errors:
1. Missing a value for a required field.
l
Note:
Forexample, if IS_EXTERNALLY_OWNEDis null (or not Yor Nfor an Add or Update operation),
SITENAMEis null for DS_SITES, or WEB_LOGIN_TYPEis null for DS_USERS
For a comprehensive list of required fields, refer to "Data Synchronization" on page 377.
For example, attempting to remove the last supervisor of a Group, or removing the last active Device that is
marked as the default Device for a User. (These rules are the same as those enforced in the web user
interface.)
For example, if the User referenced by DS_USER_CUSTOM_VALUESis missing, or if the Event Domain
referenced by DS_EVENT_DOMAIN_PREDICATEis invalid.
For example, if the SITENAMEin DS_SITES,the USER_ID if DS_USERS, or the DEVICE_NAME in any
of the DS_%_DEVICES already exists in xMatters.
5. Adding or updating an object to have a property that is invalid or references something that does not exist.
l
For example, if the GROUP_KEY in DS_TEAMSdoes not reference an existing Group, or if the SITE_
LANGUAGE or SITE_TIMEZONE in DS_SITES does not reference existing values in xMatters.
Chapter 5: Reporting
3. Including a team member in the DS_TEAM_MEMBERSHIPStable who does not exist in xMatters.
The application audit report is an exhaustive and comprehensive accounting of the behavior of users within
the system. As a result, the level of detail can be overwhelming for anyone unfamiliar with the xMatters data
model, and therefore difficult to interpret. It is recommended that you contact xMatters Support and
Professional Services to assist you when conducting an audit of this nature.
To limit the report results to a specific time of day, enter the hours to include in the Start Time and End
Time fields.
4. To specify the number of results to display on each page of the report, select a number from the Results per page
drop-down list.
5. In the Select Audit Report drop-down list, select the component for which you want to generate the report.
6. Click Search to generate the report.
7. Refine or organize your results using the methods described in "Work with reports" on page 302.
Depending on a customer's licensing agreements, a low-use user is defined by one of the following metrics:
n
Notification:this method sets a maximum threshold for the number of notifications a user can receive and still
qualify as a low-use user. For example, a licensing agreement might define a low-use user as any user that is
targeted by fewer than 5 notifications per quarter (a three-month period).
Response: this method sets a maximum threshold for the number of replies a user sends to xMatters in response to
a notification. For example, a licensing agreement might define a low-use user as any user that responds to 2 or
fewer notifications within a quarter.
Device:this method sets a maximum threshold for the number of device types on which a user can receive
notifications. For example, a licensing agreement might define a low-use user as any user that received
notifications on only one device type; a user who received notifications on two separate email addresses would
qualify as a low-use User, while a user who received notifications via email and a phone would not.
Notification
Response
Device
5. In the Threshold field, type the maximum number of notifications, responses, or device types a user can have and
still be considered a low-use User. This value must be a positive integer.
6. Click Generate to generate the report.
7. Click Export to save the report to a spreadsheet (Microsoft Excel) file.
Note:
This report is capable of generating low-use user statistics only from the time at which this feature was
enabled (i.e., the date of upgrade to xMatters 4.1). Attempting to generate a report that predates that date will
result in inaccuracies.
Chapter 5: Reporting
System reports
By default, only the xMatters Administrator has access to the system reports. Note that for Super Administrators, the
Notifications and Throughput History Reports are considered System Reports. For details on these reports, see
"Notification Throughput Details Report" on page 321 and "Live Notifications Report" on page 319, respectively.
Super Administrators can also use the Component Status Report to view any integration agents that are providing
integration services to a company-specific event domain.
To generate a Component Status Summary Report:
1. Log in to xMatters as a Super Administrator, and click the Reports tab.
l
3. Refine or organize your Report results using the methods described in "Work with reports" on page 302.
The latency data captured in this report refers to application layer latency, which can be unrelated to network
latency. Additionally, to avoid reporting on the application layer latency associated with server startup, data
collection begins after the node has started.
By default, this report is available only to xMatters Super Administrators, who can also configure data parameters for this
report(see the Node Network Monitor settings described in "Global Configuration" on page 198).
Report Purpose
The purpose of this report is diagnostic: it is meant to provide a visual representation of historical node network
communication performance. It is not intended for the real-time monitoring of node network communication.
Further, this report is typically used by xMatters support to evaluate and assist with troubleshooting network
communication issues. If you are experiencing node network issues, you may be asked to supply xMatters support with a
screenshot of this report.
If it is suspected that the system is experiencing network layer issues, it is recommended that you use network
troubleshooting utilities or applications (e.g., Ping, Telnet, netstat) to resolve them.
To generate the node network statistics report:
1. Log in as a Super Administrator, and click the Reports tab.
2. On the Reports menu, click Node Network Statistics.
Chapter 5: Reporting
To limit the report results to a particular time of day, enter the hours to include in the Start Time and End
Time fields.
Audit reports
You can use the audit configuration page to enable and disable security and web services auditing.
To specify audit settings:
1. Log in as a company administrator, and click the Admin tab.
2. On the Administration menu, click Audit.
3. To disable auditing, clear the Security Audit Enabled check box, and then click Save (by default, auditing is
enabled).
Note:
To specify how long the system should retain Security Audit data, use the settings on the Schedule Jobs page.
For more information, see "Schedule Jobs" on page 215.
To limit the report results to a specific time of day, enter the hours to include in the Start Time and End
Time fields.
4. To specify the number of results to display on each page of the report, select a number from the Results per page
drop-down list.
5. Click Search to generate the report.
6. Refine or organize your report results using the methods described in "Work with reports" on page 302.
Chapter 5: Reporting
To limit the report results to a specific time of day, enter the hours to include in the Start Time and End
Time fields.
4. To specify the number of results to display on each page of the report, select a number from the Results per page
drop-down list.
5. Click Search to generate the report.
6. Refine or organize your results using the methods described in "Work with reports" on page 302.
334 |
This chapter covers advanced or special xMatters administration topics and is intended for experienced administrators or
technical personnel. It is recommended that you consult with your xMatters Technical or Professional Services
representative to plan and implement advanced deployment options.
Overview
A typical xMatters enterprise Disaster Recovery deployment consists of the following:
Primary site:
n
Considerations
There are several points to consider when planning an xMatters Disaster Recovery deployment:
n
The deployment requires that the latency between Application Servers, Web Servers and the Database Server
within one site is less than 50ms for a 1,024 bytes (1 KB) packet round trip.
There are no specific latency requirements between the satellite sites on one side and primary and Disaster
Recovery sites on the other.
Database replication should be configured between the primary and Disaster Recovery databases. The bandwidth
between the sites hosting the two database servers should be sufficient to handle transferring the replication data
between the two sites. Another option is to configure frequent database backups of the primary database, and ship
them continuously to the Disaster Recovery site.
The database under replication (DR site) must be in a mode that prevents it from accepting connections (i.e.,
NONRECOVERED for SQL Server; STANDBY for Oracle). When the DR database is promoted to production, the
mode must be changed to allow connections (i.e., switched out of NONRECOVERED on SQL Server; mounted
without the STANDBY clause on Oracle).
For replication under Oracle, it is recommended that Data Guard is used in Physical Standby mode.
The Primary Site database and the Disaster Recovery Site database must be the same type: i.e., both SQL Server or
both Oracle.
Operating system time zones must be synchronized across all Application Server Nodes and web servers. For more
information, see "Multiple Node Deployment Considerations" on page 34.
Note:
Configuring database replication and database backup/restore procedures is not in scope for this section. It is
assumed that these tasks are implemented by properly trained database administrators.
Before proceeding with the following steps, ensure that your xMatters license key allows the combined number
of Application Servers (primary and DR) to be installed.
The first time you run the installer, it creates the xMatters database. The installers in the following steps will
use the database created in this step.
3. Install the xMatters application servers and Notification Servers in the Disaster Recovery site, using the xMatters
database created in Step 2.
l
If this is an All-in-One xMatters deployment, also install the xMatters web servers in the Disaster Recovery
site (i.e., using the Disaster Recovery xMatters database). You can then skip step 7.
4. Install the xMatters notification servers in all satellite sites, using the primary xMatters database server created in
Step 2.
Note:
All Nodes in the Disaster Recovery and satellite sites must be installed using the primary database. This is
because each node has a unique identifier, and they all need to be in the same database for the Disaster
Recovery process to function properly.
This database can be Oracle or SQL Server, but must be the same as installed in Step 1.
6. Back up the primary xMatters database and restore it on the Disaster Recovery database server.
l
7. Using the Disaster Recovery xMatters database, install the xMatters web servers in the Disaster Recovery site.
l
If this is an All-in-One xMatters deployment and you have already installed the xMatters web servers in the
Disaster Recovery site during step 3, you can skip this step.
8. Stop the Application Servers, Notification Servers, and Web Servers in the Disaster Recovery site. At this point
you have a fully functional system, with the following components running:
l
xMatters database in Disaster Recovery Site (on stand-by; used only for replication)
10. Reconfigure Disaster Recovery Application Server nodes to connect to the Disaster Recovery xMatters database, as
described in "Disaster Recovery Procedures" on page 339.
11. Configure all Satellite Notification Servers for failover, as described in "Configuring xMatters nodes for Failover"
on page 340.
12. Configure database replication, or set up a database backup/restore mechanism between the primary and Disaster
Recovery xMatters databases. (The detailed procedures for these tasks are outside the scope of this section.)
Note:
The standby database should not accept client connections when acting as the Warm Standby. Instead, the
standby database should be put into a state that allows connections only after failover occurs.
On SQL Server, the standby database must be in the NONRECOVERED state when acting as the Warm
Standby. If replication is implemented using Log Shipping, the standby database must be in the
NONRECOVERED state, and the NO RECOVERY mode should be used, ensuring that no connections can be
made. After failover occurs, take the database out of the NONRECOVERED state.
On Oracle, the standby database must be mounted in the STANDBY mode when acting as Warm Standby. After
failover occurs, the standby database must be shut down, then mounted and opened without the STANDBY
clause.
13. Java Client Agents or integration agents can be installed at different locations. Ensure that they are reconfigured
and restarted when the system is switched to the Disaster Recovery site and when it is switched back to Primary.
7. Reconfigure DR Application Server nodes to connect to the DR xMatters database, as described in "Configuring
xMatters to connect to a different database" on page 340.
8. Configure database replication, or set up a database backup/restore mechanism between the primary and DR
xMatters databases.
9. Start all production components.
Switching the system from the primary to the Disaster Recovery site
The need for switching to the Disaster Recovery site may be determined by a complete site failure, or by a failure of the
primary database server. Any other xMatters components (Nodes) have failover capabilities, so if the deployment was
properly designed, they should not trigger a switch from the primary to the Disaster Recovery site.
To switch the xMatters deployment to the Disaster Recovery site:
1. Do one of the following:
l
l
If replication is used, stop the replication process between the primary and Disaster Recovery.
If using backup/restore, restore the most recent backup of the primary xMatters database on the Disaster
Recovery database.
After failover occurs, the standby database must put into a state that allows it to accept connections: on SQL
Server, take the database out of the NONRECOVERED state; on ORACLE, the standby database must be shut
down, then mounted and opened without the STANDBY clause.
4. Start the Application Servers and the Web Servers in the Disaster Recovery site. These have been installed or
reconfigured to use the Disaster Recovery database; therefore, no additional configuration should be required.
5. When the Satellite Notification Servers, which have been configured for failover, are unable to connect to the
Primary Site database, they will attempt to connect to the Disaster Recovery Site database.
6. Using the web user interface in the Disaster Recovery Web Servers, log in as a Super Administrator and ensure that
all Nodes are running, except for the Primary Application Server Nodes, which will be in either Stop or
Unreachable state.
After executing the Disaster Recovery procedure, the Health Monitor sends a notification regarding the failure of the
Primary Node. This is expected and is normal behavior.
Also, the following error may be written to the xMatters node log file:
ERROR - MisfireHandler: Error handling misfires
Switching the system from the Disaster Recovery site back to Primary
When the primary site is operational again, perform the following steps to revert the xMatters deployment to the Primary
Site:
1. Shut down all xMatters components.
2. Back up the Disaster Recovery xMatters database and restore it on the Primary database.
3. Shutdown the Disaster Recovery Site database.
4. Start the Primary Site database.
l
All Nodes should detect that they are unable to connect to the Disaster Recovery Site database, and will
attempt to reconnect to the Primary Site database.
5. Using the web user interface in the Primary Web Servers, log in as a Super Administrator and make sure all Nodes
are running, except for the Disaster Recovery Application Server Nodes, which will be in Stop state.
Secondary database details are not retained during xMatters upgrades and must be reapplied. It is
recommended that you record your settings.
When you are reconfiguring to connect to the Disaster Recovery database, the only entry that needs to be changed is
JDBC_URL (in this case, you would replace 192.168.168.55 with the IP address or host name of the Disaster
Recovery database).
The same utility can be used to change the password for the xMatters database user.
Note:
It is recommended that you prepare two versions of the common.properties file (common.properties.primary and
common.properties.dr), and have them ready in advance on all the Nodes that may need to be switched. When
the system needs to be switched one way or the other, the only task will be to copy the appropriate predefined
file over common.properties and restart the Node.
Failover Configuration:
n
The Disaster Recovery Configuration and Failover Configuration must be added to the common.properties file.
The node.properties file is located in <xMHOME>/node/assets/config. The file is encrypted; to modify it, you must
decrypt the file, make the modifications, and reencrypt the file. For decrypting/encrypting files, use the utility named
APSecure located in the <xMHOME> directory.
To replace node.properties with the new version of the encrypted file:
1. From the <xMHOME> directory, run the following command to use APSecure to create an unencrypted file named
node.txt:
APSecure.sh decrypt ./node/assets/config/node.properties node.txt
One Application Server Node (Disaster Recovery mode, configured to use the Disaster Recovery database, not
started when San Francisco site is operational)
One Web Server (Disaster Recovery mode, configured to use the Disaster Recovery database)
Database replication is configured between the San Francisco Primary database and London Disaster Recovery database.
This process ensures that the data in the London database is no more than 10 minutes behind the San Francisco database.
In the event of an outage that renders the San Francisco site unavailable, the following steps must be taken to switch the
system to the London site:
1. Stop the replication process on the London database.
2. Start or enable the London database.
3. Stop the San Francisco database.
4. Start the London Application Server Node and web server.
l
The Notification Server Nodes in Tokyo and London detect the Primary Site database failure and connect to
the Disaster Recovery Site database.
5. Reconfigure the London integration agents to point to the London Application Server, and then restart them.
Failover in xMatters
Failover is a design method that ensures continuous operation of a particular system or service. It may refer to a need to
keep a system available to its users during scheduled downtime, to keep it available despite single- or multiple-point
hardware failures, or even to keep availability during to the disruption of an entire site in the case of power loss,
network outage, or natural disaster.
n
xMatters has been designed to meet the requirements of high availability strategies, including the following
elements:
The Java Client or integration agent supports automatic failover between a primary and secondary Application
Server.
The xMatters application servers are load balanced with automatic failover of events and their processes if an
Application Server fails. They can also be configured at a secondary location that can take over if the primary fails.
The xMatters notification servers are similarly load balanced with automatic failover of notifications.
The xMatters web server provides everything necessary to use the standard web server failover abilities of load
balancers, a common component in deploying web applications.
The database layer of xMatters is designed to integrate into your database environment where there are many
options available for database failover.
Considerations
When planning for failover, the expense of implementation, the recovery time after failure, and the disruptive impact on
users and the business must all be balanced. The expense is not measured only by the initial implementation cost of a
particular strategy, but also by the on-going cost of supporting it during regular operation of the system.
After considering these factors, business managers should define a specific Service Level Agreement (SLA) that sets
acceptable boundaries and expectations for IT operations. IT departments can then manage and budget for systems to
meet these standards.
The following table describes various failover approaches and the attributes of each:
General Approach
Recovery Time
Human Intervention?
General Expense
User Impact
No Failover
Unpredictable
Yes
High
Cold Failover
Hours
Yes
Moderate
Moderate
General Approach
Recovery Time
Human Intervention?
General Expense
User Impact
Warm Failover
Minutes to
Seconds
Possibly
Moderate to high
Low
Seconds
No (automatic)
High
None
Each of these approaches for availability is implemented with specific technologies in the different layers of xMatters:
n
The Java Client or integration agent can be deployed on many systems, with management systems configured to
send events to several of them. Each Java Client can be configured to communicate with a primary and secondary
Application Server, automatically failing over to the secondary if the primary becomes unavailable.
The xMatters application server has been designed for hot failover by default. If one of the application servers
detects that another application server has stopped processing events, it picks up the unhandled events, even if
their processes were already in progress, and ensures they are fulfilled. This is referred to as Highly Available
Production Application Servers.
The xMatters notification server has been designed for hot failover by default. If one of the Notification Servers
detects that another Notification Server has stopped sending notifications that were assigned to it, the detecting
Server automatically takes control of those notifications and delivers them. (For strategies to avoid duplicate
notifications due to servers with temporary down time, see "Configuring Notification Dispatching Periods" on page
344, below.)
The xMatters web user interface can be deployed with high availability by running a load balancer in front of
multiple xMatters web servers. Failover of this portion is warm, as the load balancer will detect a failure of one of
the web servers and automatically reroute traffic to the other web server. It may have some impact on users (they
will have to log in again), but otherwise the change-over is transparent. The load balancer can also be configured
to start sending sessions to the failed web server once it detects that the server is up again.
The xMatters application servers can be duplicated at another location and manually switched on if the primary
servers fail for any reason. This is called an xMatters Mirror site.
From a failover perspective, the database component of xMatters is the most complicated. xMatters can integrate
into your database environment or you can use the database that comes bundled with the product, Microsoft's SQL
Server Express. The bundled database does not provide failover services, so if you want to implement a failover
strategy for the database tier you will need to do it with a database product you purchase separately.
In short, the xMatters servers have been designed from the ground up to ensure that events are always handled properly.
They allow you to support several complementary failover mechanisms so that many possible scenarios can be handled.
Configuring Notification Dispatching Periods
xMatters has a number of retry mechanisms to ensure the delivery of notifications. The dispatching period is a
configuration setting for one of these retry mechanisms. After a notification is dispatched to a Device Engine, the
dispatching period is the length of time xMatters waits for confirmation from the Notification Server before attempting to
send the notification again.
By default, the dispatching period is set to five minutes. If a server goes down after the notification is delivered but
before the results are returned to the Application Server, a short dispatching period setting may result in the Application
Server sending the notification again. Use the following steps to configure the dispatching period for your deployment
to reduce the chances of this occurring.
To configure the dispatching period:
1. On the xMatters server, locate the<xMHOME>/node/assets/resources/spring/integration/ folder:
2. Open the ndApplicationContext.xml file, and locate the following section:
<bean name="notificationDispatcher"
Failover in xMatters | 344
...
<property name="dispatchingPeriod">
<value type="long">300000</value>
</property>
3. Change the value to the length of time, in milliseconds, you want to set the dispatching period.
4. Save and close the file, and then restart the xMatters node.
Database Components
Dealing with failover of the database layer is complex and has many different options. Because the other layers of
xMatters already provide failover strategies, the remainder of this section discusses the different strategies available for
implementing database failover.
There are three major database elements that need to be considered with respect to failover:
n
The database server itself, composed of the hardware and the database software.
The network communication channels between the application and the database, the storage area networks, and the
networks between database servers.
The data controlled by the database server, which is typically stored on hard drives.
Failover is achieved by building redundancy into each of these components, and eliminating all single points of failure.
Database servers can be mirrored or clustered to provide redundancy at both the hardware and software level. In the case
of a failure, existing connections and workload simply fail over to a surviving server. Several such strategies are
described later in this section.
Networks can be teamed or bonded. For each required network, two identical networks are built using duplicate
interface cards, cables, switches and so on. Network bonding or multi-pathing software is then used to treat the two
physical networks as one, load balancing across the two and routing all traffic to one in the case of a single failure.
Data Storage
Data storage may be provided in one of three possible ways:
n
Data may be stored on hard drives that are local to the database server machine; this is called Direct Attached
Storage (DAS).
Data may be stored on hard drives that are remote from the local machine and accessed across a network. The
drives could be part of another computer that acts as a file server, or they could be part of a Network Attached
Storage (NAS) device that manages many drives and has its own Ethernet connection.
Data may be stored on hard drives that are attached to a Storage Area Network (SAN) device similar to a NAS, but
accessed across a Fibre Channel network requiring a proprietary Host Bus Adapter (HBA) to be installed on each
server.
Regardless of the data storage method, one of the most straightforward failover strategies for data is a RAID array. The
key issue to consider with RAID is that all hard drives in a particular array are kept together at one site. This works well
in the event of individual drive failures, but offers no protection in the event of a site failure or if the array controller
fails.
In addition to RAID, a Logical Volume Manager can be used to duplicate or mirror data on two or more RAID arrays,
preferably at different physical locations. In the event of any one site or controller failure, the other sites immediately
provide an exact copy of the data and continue processing. Many vendors offer this technology, including Veritas
Volume Replicator, Oracle ASM, EMC SRDF, Network Appliance Snap Mirror, and FalconStor.
Strategies
The most commonly used strategies for database failover fall broadly into five categories: backup/recovery, log file
transfers, replication/data mirroring, clustering/shared disk, and point in time recovery. These categories are not mutually
exclusive, and many true high availability strategies rely on a combination of them. Each of these strategies is discussed
in the following sections.
Note:
These terms can vary from one database vendor to another, and will often be used as marketing terms for a
particular feature offered by a database. The terms are used here in a generic sense.
Backup / Recovery
A valid, tested backup-and-recovery procedure is a mandatory part of any production database, and may well be
governed by law. Backup copies should be stored both on- and off-site to facilitate easy restoration to the primary
database, and safety in the case of a site disaster. The privacy and security of the backups may also be a significant issue.
In addition, by taking the regular backups from a primary production site and restoring them to another database at a
remote site, a backup server is available to take on duties as required. The restoration may be done as part of the backup
process, or it may be done manually when an outage is detected.
This strategy covers the range from no failover to cold failover. It is relatively easy to implement, and allows data to be
reliably restored from an earlier point in time in the case of user or system induced data errors or corruptions. However, it
also has the major disadvantage that data added or altered since the last backup may be lost when failover occurs.
Backup / Recovery options:
n
Microsoft SQL Server provides several types of backup and recovery, including Simple, Bulk Logged, and Full.
The Oracle database provides the Recovery Manager (RMAN), which offers this failover strategy at various levels.
Microsoft SQL Server provides Log Shipping as its mechanism for providing this failover strategy. This is also
used for Microsofts Data Mirroring in High Performance mode.
For the Oracle database, Data Guard provides for the transferring of transaction logs between databases, and offers
both synchronous and asynchronous modes, as well as other options.
Microsoft SQL Server provides Data Mirroring in High Safety mode, and offers replication through a variety of
means, including Transactional Replication and Merge Replication.
Oracle offers Streams, Materialized Views and Advanced Replication for table level replication, and Data Guard in
synchronous mode for entire database replication.
Microsoft SQL Server provides Failover Clustering that assumes a Shared Disk.
Oracle provides Real Application Clusters (RAC) and Automatic Storage Management (ASM) to implement this
strategy.
Oracle offers various forms of Flashback technology to restore rows, tables, transactions or the entire database to a
pre-existing state. Oracle also offers Log Miner to recreate transactions from the log files.
Summary
Out of the box, xMatters provides a robust, fault-tolerant solution to high availability strategies. The Java Client or
integration agent supports automatic failover between servers and the xMatters application servers are load balanced
with automatic failover of events and their processes if an Application Server fails. The Application Servers can also be
configured for cold failover using a secondary site as an xMatters mirror site.
The Notification Servers are also load balanced with automatic failover of notifications, and the xMatters web server
provides the necessary support for a load balancer to failover from one web server instance to another. Finally, the
database layer of xMatters is designed to integrate with the various failover options available within the database
environment.
On xMatters enterprise deployments, web servers must be fronted with Apache or Microsoft IIS.
This section provides methods for configuring the Apache HTTP Server and Microsoft Internet Information Services (IIS)
to forward web requests on to the xMatters web server, and for them to return the HTML to the Users' browsers as if it
had originated from them.
Note:
Customizations to the jetty.xml file are not retained during xMatters upgrades and must be reapplied. It is
recommended that you record your changes.
You can also use URL Rewriting or the AJP Protocol to provide access. For information on these methods,
consult the Apache documentation.
The following versions of the Apache HTTP Server have been tested with the xMatters web server:
n
Apache 2.2.2
Apache 2.2.3-31
Although more recent versions of Apache may work, they have not been tested; it is recommended that you use the
latest version listed above.
Once your server has access to the proxy module, you can add the proxy directives to your configuration. The insertion
point for these lines depends on the specific configuration of your Apache instance. In the default installation, the lines
can be inserted at the end of the httpd.conf file.
The host name (i.e., internal-host) below should be changed to reflect the actual host name; localhost should be used if
the xMatters web server and the fronting server are on the same computer.
Also, if you are using cookie-based session tracking for xMatters, and you have other applications running on your
Apache HTTP server under a different path (or your Apache HTTP server also proxies other applications under a
different path), you must add the following line to those indicated in the sections below:
ProxyPassReverseCookiePath / /alarmpoint/
To front the xMatters web user interface, insert the following lines:
ProxyPass /xmatters/ http://internal-host:8888/xmatters/
ProxyPassReverse /xmatters/ http://internal-host:8888/xmatters/
ProxyPass /rest/ http://internal-host:8888/rest/
ProxyPassReverse /rest/ http://internal-host:8888/rest/
ProxyPass /alarmpoint/ http://internal-host:8888/alarmpoint/
ProxyPassReverse /alarmpoint/ http://internal-host:8888/alarmpoint/
ProxyPass /static/ http://internal-host:8888/static/
ProxyPassReverse /static/ http://internal-host:8888/static/
ProxyPass /jsp/ http://internal-host:8888/jsp/
ProxyPassReverse /jsp/ http://internal-host:8888/jsp/
ProxyPass /ua/ http://internal-host:8888/ua/
ProxyPassReverse /ua/ http://internal-host:8888/ua/
ProxyPass /sp/ http://internal-host:8888/sp/
ProxyPassReverse /sp/ http://internal-host:8888/sp/
Note that each prefix listed above represents a different area of the web server that serves different types of information.
Each area has a different context path to ensure that requests can be routed correctly, and the context paths listed above
are mandatory for fronting the web user interface. The following sections identify optional context paths for other
features.
To front the xMatters web services, insert the following lines:
ProxyPass /api/services/ http://internal-host:8888/api/services/
ProxyPassReverse /api/services/ http://internal-host:8888/api/services/
To test your changes on Linux, run "apachectl configtest". If everything is configured correctly, you should see the
message "Syntax OK".
On Windows, restart Apache HTTP Server. If restart fails, read the comments in \logs\error.log.
After restarting your Apache HTTP Server, every request to http://your.publichost.com/alarmpoint/*,
http://your.publichost.com/static/* and
http://your.publichost.com/api/services/* will get passed through to xMatters, while all other content will be
served by your Apache instance.
Note:
Currently, it is not possible to use URL proxy-spaces other than the three specified by xMatters: "alarmpoint",
"static", and "api/services.
Enabling IISFronting
In xMatters 5.0, IIS fronting in Jetty is disabled by default. To configure your xMatters deployment for IISfronting,
locate the <xMHOME>\webserver\etc\jetty-ajp.xml.tmpl file, and rename it to jetty-ajp.xml before performing
any of the configuration processes described in these sections.
Note that you will need to restart your web server for this change to take effect.
Pre-installation considerations
Before installing the IIS plug-in, machine- or system-specific information in the runme.reg and Default Website
Overwrite.xml files should be changed because values that contain paths to resources in the file system might not
match paths on other computers. Change all paths in these files to the path used by the computer on which you want to
install the plug-in. You should also search for other paths in the import files before using them.
Additionally, the Default Website Overwrite.xml file includes a ServerBindings property that is used to configure
the port number for a site. This property may need to be modified to reflect the settings on the new computer.
Locate the following line and change localhost to the IP address of the web server you want to front:
worker.alarmpoint.host=localhost
Note:
Port 8899, which is specified in the worker.properties.minimal file for the ajp13 packets, should not be
confused with port 8888, which is used for the HTTP listener.
If you are using IIS6.0 and you do not have any configurations for your Default Web Site, follow the directions in
"Step 4A: Configuring IIS 6.0 for a new configuration", below.
If you are using IIS6.0 and you already have configurations for your Default Web Site, following the directions in
"Step 4B: Configuring IIS 6.0 for an existing configuration" on page 352.
If you are using IIS 7.0 or 7.5, follow the directions in "Step 4C: Configuring IIS 7.x" on page 352.
In the New Filter dialog box, type jakarta in the Filter Name field.
For the Executable field, browse to the /bin subfolder of your installation directory and specify the isapi_
redirect.dll file.
Click OK to save the values, and ensure that you now have a jakarta entry in the list of filters.
4. Right-click Default Web Site, select New, and then select Virtual Directory.
5. Click Next.
6. Type jakarta as the Alias.
7. Type C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\bin\ as the path (the
trailing \ is needed)
8. Select the Read, Run scripts and Execute check boxes and select Next.
9. Click Finish.
10. Right-click on Default Web Site, and select Properties.
11. Click the Home Directory tab.
12. Select the Script Source Access check box and select Scripts and executables from the Execute Permissions dropdown list.
13. Click Apply.
14. Select Jakarta from the Child Nodes list and select OK.
15. Click OK.
Step 4C: Configuring IIS 7.x
Use the following steps to configure IIS7.0 or IIS 7.5.
To configure IIS7.x:
1. Open the IIS 7x Manager Interface.
2. If you do not have a Web Site defined, or would like to create a new one for fronting the xMatters web server do
the following:
l
In the Connections pane, right-click Sites, and then click Add Web Site.
Specify a Site name and Physical path. Note that any valid path will work; typically this is set to
C:\inetpub\wwwroot
Note:
If a Default Web Site already exists, please note that the default port number (80) may already be in use. The
rest of the instructions assume a port number of 80.
Right-click the web site, and then select Add Virtual Directory.
Type jakarta in the Alias field; do not alter this name as it must match the name added to the registry
earlier.
In the Physical path field, specify the location of the isapi_redirect.dll file, and then click OK; the path
should resemble the following:
4. Give the new Virtual Directory execute permission to run the DLL:
l
If the ISAPI-dll entry is disabled, click Edit Feature Permissions in the Actions pane.
In the Edit Feature Permissions dialog box, ensure that all 3 checkboxes (Read, Script, and Execute are
selected, and then click OK. The ISAPI-dll entry should now be enabled.
In the Add ISAPI Filter dialog box, type jakarta in the Filter name field.
In the Executable field, specify the location of the isapi_redirect.dll file; the default location should
be: C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\bin\isapi_
redirect.dll
Click OK to save the values, and ensure that you now have a jakarta entry in the list of filters.
Navigate to the Server Home (the top level of the navigation tree in the Connections pane).
In the center pane, double-click the ISAPI and CGI Restrictions icon.
In the Add ISAPI or CGI Restriction dialog box, in the ISAPI or CGI path field, specify the same path to the
isapi_redirect.dll file you used in the previous step.
Click OK to save the values, and ensure that you now have an ISAPI Redirect entry in the list of
restrictions.
Before all changes take effect, you may also need to restart the IIS Admin service.
IISversion 6.0
The following instructions apply to IIS6.0 users.
To restart your website:
1. Click OK to close the Properties dialog box.
2. Right-click the default web site, and then click Stop.
3. Right-click the web site again, and then click Start.
4. Right-click it a third time, and then click Properties.
5. Click the ISAPI Filters tab and ensure that the jakarta filter is operating, as indicated by a green arrow in the
Status column.
If you are using IIS6.0, once you have added the jakarta entry and restarted the web site, you must also allow access to
the filter through the Web Service Extensions component.
To set extension status:
1. Open the IIS Manager and, under the appropriate server, click Web Service Extensions.
2. Under Tasks, click Add a new Web service extension.
3. Name the new extension jakarta.
4. Browse to the installed isapi_redirect.dll file, and select Set extension status to Allowed.
5. Click OK.
6. Ensure that both the Default web site and DefaultApp pool are running.
IISversion 7.x
The following instructions apply to IIS7.0 and 7.5 users.
To restart your web site:
1. In the Connections pane, select the Default Web Site.
2. In the Actions pane, click Stop.
3. Click Start.
You should see a page on your browser with the line Worker Status for alarmpoint; if you do not, then the IIS has not
been configured correctly.If the filter is not active, you will need to restart your web site. When you change the
configuration to correct it, ensure that you restart the web server and not just the web site. To restart the web server,
open your Services Manager and stop the World Wide Web Publishing service, and then start it again.
Use one of the following URLs.
To test web user interface fronting, use:
http://localhost/xmatters/
Note:
If you can log in successfully, then IIS is configured properly. If you see the login page, but no logo and no styling, then
the /static portion of the uriworkermap.properties file is not configured properly.
To test web services fronting, use:
http://localhost/api/services/AlarmPointWebService?wsdl
This process shuts HTTP off for both the xMatters web user interface and web services.
In the /etc subfolder in the xMatters web server installation directory, open the jetty.xml file in an XML editor. The
jetty.xml file contains three sections that start with the following tag:
<Call name="addConnector">
There is one section for the HTTP listener, one for the HTTPS SSL listener, and a third for the AJP listener. The HTTP
listener contains the following tag:
<New class="org.mortbay.jetty.nio.SelectChannelConnector">
Comment out the entire section, including the <Call> and </Call> tags, for that listener, and restart xMatters. It should
no longer respond to port 8888.
Note:
You may also want to remove the section for the HTTPS SSL connection. Do not remove the AJP listener
section in the jetty.xml file.
Note that both Expires and Cache-Control headers will be inserted into the affected responses.
Despite the user-friendliness of the GUI, it is time-consuming to set up different cache control policies for different
categories of files on IIS. This becomes a greater challenge if the sites files are not neatly segregated into directories
based on their expiration times.
If you have designed your site with caching in mind, and put different classes of files in different directories (such as
/images/dynamic, /images/static, /images/navigation, etc.), it is relatively easy to set up caching policies via the
Microsoft management console. However, if you have not done this, or if you are working to optimize an existing site,
you may need to literally set the policy on each file. There is also no easy way in IIS to delegate authority to developers
to set cache policy, as modification of the required settings requires MMC access.
Deriving optimal performance from the xMatters web server depends partly on your environment. It is
recommended that for each of the changes described below, you run a benchmarking tool to ensure that the
implemented change has a measurable effect. If not, you may need to investigate your environment to isolate
the service request bottleneck.
Note that you must replace <xMatters> with the directory in which xMatters is installed, and that the slashes that
follow <xMatters> must match the platform ("\" for Windows systems; "/" for all others). The port number on the
ProxyPass and ProxyPassReverse lines should match the port on which you installed the xMatters web server to run. If
you need to be more specific about who can connect to these static resources, change the "Order" and "Allow" options in
the Directory section.
"Fronting the xMatters web server" on page 348 mentions four lines to include in your httpd.conf file. As shown in the
list above, you do not need the two lines that refer to "/static/", but you still need the ProxyPass and ProxyPassReverse
lines for "/alarmpoint/".
You can specify any number of "minutes", "hours", or "days". Configuring the cache expiry for more than a few days is
not recommended, as your users may see unexpected behavior after an upgrade.
To cache content with Microsoft's IIS Server:
1. From the Internet Information Server's configuration tool, open the Default Web Server and locate the "static"
folder you added above.
2. Right-click static and then click Properties.
3. Select the HTTP Headers tab and click Expire after.
4. Use the two drop-down lists on the right to specify the expiry time.
5. Click OK.
Testing Caching
After you have added caching, you can test whether it is working by monitoring the log files for the web server:
1. Load a set of pages in xMatters using the caching web server.
2. Now look at the request log files for the caching web server and note the time.
3. Return to the browser and load exactly the same set of pages.
l
The lines added after the noted time to the web server's request log should contain only URLs that begin
with "/alarmpoint/".
Database connection pool customizations are not retained during xMatters upgrades and must be reapplied.
High Bandwidth Configuration for a Heavily Loaded Web Server | 357
Connection pool parameters are configurable in xMatters by modifying the c3p0.properties file (found at
<xMatters>/node/assets/resources/spring/integration/), as summarized in the following table:
Connection Pool Parameters
Setting
Description
acquireIncrement
checkoutTimeout
idleConnectionTestPeriod
When greater than 0, specifies how often in seconds that xMatters will test all
idle, pooled connections that are not checked out.
maxIdleTime
Specifies the number of seconds the connection can remain pooled but unused
before being discarded. Zero (0) means idle connections never expire.
minPoolSize
maxPoolSize
initialPoolSize
Specifies the number of connections the connection pool tries to acquire during
startup (this number should be between the minPoolSize and the maxPoolSize).
testConnectionOnCheckout
Specifies whether xMatters should test the pool connection on each checkout.
On high-capacity systems, set the value to false to reduce the number of roundtrips to the database.
minPoolSize=5
maxPoolSize=15
Locate the default-config element, and change the value for maxPoolSize. Save the file, and then restart the
xMatters web server.
xMatters web services
To change the maximum number of database connections available to the xMatters web user interface, modify the c3p0config.xml file in the following directory:
<xMHOME>/webserver/webapps/axis2/WEB-INF/classes
Locate the default-config element, and change the value for maxPoolSize. Save the file, and then restart the
xMatters web server.
mobile access component
To change the maximum number of database connections available to the xMatters web user interface, modify the c3p0config.xml file in the following directory:
<xMHOME>/webserver/webapps/mobilegateway/WEB-INF/classes
Locate the default-config element, and change the value for maxPoolSize. Save the file, and then restart the
xMatters web server.
200: the database connections are available; at least one connection is available to service requests.
503: the database connections are exhausted; the connection pool has reached its limit and all connections are
busy.
Special parameters
You can pass two special request parameters in the query string of the above URL:
n
debug (true or false; default is false): if true is specified, the JSP page generates log messages to the system
console containing information on the status of the connection pool (e.g., total connections, number of idle
connections, etc.).
wait (positive integer; default is 5: the number of seconds to wait to obtain a connection before aborting the
request. Under normal load, the check out of a connection should be relatively rapid, and this threshold may
change as load increases.
Sample Request:
http://<IP_Address>:8888/jsp/PingStatus?debug=true&wait=10
USER_NAME:the name of the User currently logged into the web server.
USER_AGENT: contains information about the User's browser and operating system; the exact content is
determined by the browser.
Note that the data contained in the database table is dependant on the web server's handling of sessions.
2. Open the web.xml file in an XML editor, and locate the following lines:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
3. Edit the <session-timeout> value to indicate how long, in minutes, xMatters should keep a web session open
without activity before it times out.
4. Save and close the web.xml file.
5. Restart the web server.
l
Repeat these steps for each web server in your xMatters deployment.
expirations-check.offset is the length of time to wait before the first check (after the application has started)
3. Modify the continuations-manager settings as required, and save and close the core.properties file.
4. Restart the web server.
l
Repeat these steps for each web server in your xMatters deployment.
To re-enable HTTP, uncomment or add the lines above back into the jetty.xml file.
Also, these steps pertain to the xMatters web user interface, xMatters web services, and the mobile access component
(these components are all contained within Jetty).
To enable HTTPS:
1. Navigate to the directory where the web server is installed.
2. Open the etc directory.
3. Rename the jetty-sslengine.xml file to jetty-ssl.xml.
4. Restart the web server.
5. To ensure that the site is properly configured, use a web browser and navigate to
https://<host>:8443/<site_name> (where host is the website domain name or IP address, and site_name is
the site context with a default of alarmpoint).
Note:
Node
This section describes how to enable and disable JMX on xMatters nodes (Unix and Windows).
To enable JMX on a Unix system:
1. Navigate to the directory where the node is installed.
2. Open the node.sh file and uncomment or add the following line:
MANAGED_PARAMS="-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.port=9498"
To disable JMX again, comment or remove the line above from the node.sh file.
To disable JMX again, comment or remove the lines above from the node-start.conf file.
Web Server
This section describes how to enable and disable JMX on xMatters web servers (Unix and Windows).
To enable JMX on a Unix system:
Navigate to the directory where the web server is installed.
1. Open the etc directory.
2. Rename the jetty-jmx-template.xml file to jetty-jmx.xml.
3. In the web server installation directory, open the webserver.sh file and uncomment or add the following line:
MANAGED_PARAMS="-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.port=9498"
To disable JMX again, change the name of the jetty-jmx.xml file back to jetty-jmx-template.xml, and
comment or remove the line above from the webserver.sh file.
To disable JMX again, change the name of the jetty-jmx.xml file back to jetty-jmx-template.xml, and
comment or remove the line above from the webserver-start.conf file.
mobilegateway-websphereX.war: contains the mobile access component application files and folders
Each of the three archives is formatted to comply with WebSphere requirements, and can be installed separately, or
together with one or more of the other files.
The following processes explain how to deploy an xMatters WAR file on a WebSphere application server. Where
necessary, steps specific to one of the files are included as part of the overall process.
These instructions have been validated with WebSphere running under Windows Server 2003; your deployment may
vary. For complete WebSphere details, refer to its documentation.
To deploy an xMatters WAR file on WebSphere:
1. Start the WebSphere Application Servers Administrative console.
2. Log in as an administrator.
3. In the menu on the left side of the screen, expand Applications, and then click Install New Application.
4. Specify the file path, or click Browse to navigate to the WAR file you want to install.
5. In the Context Root field, do one of the following:
l
If you are deploying cocoon-websphereX.war , type / (i.e., forward slash). Note that WebSphere has
exclusive use of / in this context; you may need to modify settings in other applications to reflect this.
6. Click Next.
7. On the Select installation options page, replace the text in the Application name field with one of the following
entries:
l
8. Click Next.
9. On the Map modules to servers page, accept the default settings and click Next.
10. On the Map virtual hosts for Web modules page, accept the default settings and click Next.
11. On the Summary page, click Finish.
12. After a successful installation is indicated, click the Save link.
After installing the new application within WebSphere, you can specify the settings for the modules.
To specify the module settings in WebSphere:
1. In the menu on the left side of the screen, expand Applications, and then click Enterprise Applications.
2. Click the name of the application you are modifying.
3. Under the Detail Properties heading, click the Class loading and update detection link.
4. Under Polling interval for updated files, type 0 in the Seconds field.
l
Do NOT select the Reload classes when application files are updated check box.
5. Select Classes loaded with local class loader first (parent last).
l
Ensure that the WAR class loader policy is set to Class loader for each WAR file in application.
6. Click OK.
7. Under Modules, click the Manage Modules link.
8. Click the name of the WAR file you installed.
9. Click the Class loader order drop-down list and select Classes loaded with local class loader first (parent last),
and then click OK.
10. On the left-hand menu, expand Applications and click Enterprise Applications.
11. Click the name of the application you are modifying.
l
If you are modifying the mobile access component, skip to step 16.
12. Under Web Module Properties, click the Session Management link.
13. Under General Properties, select the following check boxes:
l
14. Under General Properties, clear the Enable cookies check box.
15. Click OK.
16. Under Modules, click Manage Modules.
17. Click the name of the WAR file you installed.
18. Click the Session Management link.
19. Ensure that the Override session management check box is cleared, and then click the Save link at the top of the
page.
Instructing the WebSphere web container
The following steps instruct the WebSphere web container not to add additional information to the jsession id. This
may affect applications that need this additional information.
Note that the following steps are not required for the mobile access component. If you are installing the mobile access
component, you can skip the following steps and proceed to the next section, Copying xMatters files.
To instruct the WebSphere web container:
1. On the menu on the left side of the screen, expand Servers, and then click Application servers.
2. On the Application Servers page, click the name link for the server on which you installed the new xMatters
WebSphere application.
3. On the Configuration tab, under Container settings, expand Web Container Settings, and then click the Web
container link.
4. Under Additional Properties, click the Custom Properties link.
5. Click New.
6. Under General Properties:
l
7. Click OK.
8. Click the Save link at the top of the page.
l
Do not close the WebSphere console; it must be open for the following steps.
<xMHOME>: refers to the xMatters installation folder; for example, the default installation folder on Windows is
C:\Program Files (x86)\xMatters
$WEBHOME: refers to the web application's installation directory on the WebSphere application server
To copy the xMatters files (repeat for each installed web application):
1. Copy the following files from xMatters to WebSphere:
l
File:
<xMHOME>/webserver/webapps/cocoon/WEBINF/classes/resources/spring/integration/hibernate.properties
l
To:
$WEBHOME/WEB-INF/classes/resources/spring/integration
l
File:
<xMHOME>/webserver/webapps/cocoon/WEBINF/classes/resources/spring/integration/quartz.properties
l
To:
$WEBHOME/WEB-INF/classes/resources/spring/integration
l
File:
<xMHOME>/common/common.properties
l
To:
$WEBHOME/WEB-INF/classes
l
File:
<xMHOME>/common/dbPatchVersion.properties
l
To:
$WEBHOME/WEB-INF/classes
2. If you are deploying either xMatters or the mobile access component, do the following:
l
Select the check box for the component you are deploying, and then click Start.
3. If you are deploying xMatters web services, update the keystore files as follows:
l
l
4. For all WebSphere deployments, locate the /java/jre/lib/ subfolder of the WebSphere's AppServer installation
directory; the default is <WebSphere Install Folder>\AppServer.
5. If it does not already exist, create a file named jaxp.properties in the subfolder, and add the following lines:
javax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl
javax.xml.xpath.XPathFactory=org.apache.xpath.jaxp.XPathFactoryImpl
javax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl
javax.xml.parsers.DocumentBuilderFactory=org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
Note:
If the jaxp.properties file already exists in this directory, add the lines to the existing file.
Testing
After you have configured xMatters on WebSphere and copied the appropriate files, you can test the configuration.
To test an xMatters deployment:
1. Select Application Servers > server1 > Ports, and check the port number for WC_defaulthost
2. Using a web browser, navigate to: http://<IP>:<port>/xmatters/signOn.do
To test a mobile access component deployment:
1. Select Application Servers > server1 > Ports, and check the port number for WC_defaulthost
2. Using a web browser, navigate to: http://<IP>:<port>/mg
If you are deploying an xMatters component on a WebSphere Application Server that already has an xMatters
component installed, an exception may be thrown. If this occurs, do the following:
1. Open the WebSphere Application Server Administrative console, navigate to Servers > Application Servers >
server_name_link (typically, server1) > Java and Process Management > Process Definition > Java Virtual
Machine.
2. Set Generic JVM arguments to -Xverify:none
3. Restart the WebSphere Application Server.
Troubleshooting WebSphere Deployment
This section includes troubleshooting tips for common issues that may arise when deploying xMatters on WebSphere.
Issue:
Restarting an xMatters WAR file in WebSphere causes a bean creation error. To resolve this error, restart the WebSphere
application server.
Issue:
The following errors have no effect on xMatters, and can be ignored:
n
When using cookie-based session management, only one user may log in to xMatters per browser. You cannot
use tabs or other browser windows (of the same browser) to log in multiple users.
To switch to cookie-based session management, you must uncomment a line in the web server configuration file, and
then restart the web server. There are two available configuration options:
n
Try to use cookie-based session management first and if not available, use URL-based session management
(default)
The steps below describe how to configure each cookie-based management option.
To enable cookie-based session management:
1. On the xMatters web server, open the web server configuration file in a text editor:
l
2. If you want to try to use cookie-based session management first and if not available, use URL-based session
management, ensure that the following lines are not commented out (i.e., delete the '#' at the beginning of each
line):
l
On Windows:
-Djetty.use.cookies=true
On Unix:
USE_COOKIES="-Djetty.use.cookies=true;"
3. If you want to use cookie-based management only, uncomment (i.e., delete the #) from the following lines, and
ensure that the URLparameter is set to none:
l
On Windows:
-Djetty.use.cookies=true
-Djetty.session.url=none
On Unix:
USE_COOKIES="-Djetty.use.cookies=true"
USE_COOKIES="${USE_COOKIES} -Djetty.session.url=none"
4. If you want to disable cookie-based session management and use only URL-based session management, comment
out the above lines, or set the values to false; i.e.:
l
On Windows:
#-Djetty.use.cookies=false
On Unix:
#USE_COOKIES="-Djetty.use.cookies=false;"
If you want to use a fronting server and you need to secure cookies, it is strongly recommended that you use
Apache httpd 2.2 (or higher) with xMatters (there is currently no solution on IIS).
2. To use the mod_header module to add the secure attribute, open the httpd.conf file in a text editor and add the
mod_header to the module list at the top of the file:
LoadModule headers_module modules/mod_headers.so
For more information about SMSconfiguration in xMatters, see "SMPP Device Engines" on page 139, and its
related topics, "Configure SMS messages and replies" on page 142, and "Configure simple SMS replies" on page
143.
For more information about SMSlanguage encoding, see "SMPP Protocol Providers" on page 179 and "SMPP
language encoding" on page 183.
For a complete overview of SMSin xMatters, and an example of how to configure thappre xMatters SMS feature,
see "Configure xMatters SMS" on page 220.
Additionally, with validation on, Users can only validate a Device from that Device (i.e., the Device cannot be validated
from another Device simply by keying in the correct notification identifier).
To configure SMS responder validation:
1. In a text editor, open the nrpApplicationContext.xml file (located at node/assets/
resources/spring/integration/).
2. Locate the following bean:
<bean id="notificationResponseProcessorTarget" ...
3. Modify the pattern, template, and validation properties as required (for details, see "SMS Response Validation
Properties" below.
4. Save and close the file.
OFF: no SMS responder validation occurs (OFFis the default mode for both new installations and upgrades).
LOG: the configured regular expression is used to match the outbound Device phone number with the inbound
Device phone number. If these numbers match, a log message is written.
ON: when the inbound/outbound Device phone numbers match, the behavior is the same as LOG; when the
numbers do not match, the response is ignored and the rejected response is logged.
When set to LOG or ON, the following two properties control how validation is applied to the numbers:
n
template:variable corresponding to the groups specified in the pattern property (e.g., "1$2$...")
Example
Assume the following configuration in which validation has been set to ON:
<property name="pattern">
<value>.* (\d+) (\d+) (\d+)</value>
</property>
<property name="template">
<value>$1$2$3</value>
</property>
<property name="validation">
<value>ON</value>
</property>
The following list summarizes SMSresponder validation processing for phone number (555) 555-1212:
1. A notification is sent to phone number (555) 555-1212 (the outbound number).
2. An SMS response that matches the notification IDis received from phone number +1 (555) 555-1212 (the inbound
number).
3. xMatters preprocessess the outbound number, stripping out non-number characters and whitespace.
4. xMatters pattern matches the inbound number against the specified pattern (.* (\d+) (\d+) (\d+)).
5. Each of the back references specified in the template string are replaced with the pattern match groupings (each
back reference is identified by $X, where X is s number corresponding to a grouping in the pattern).
6. The results of steps 3 and 5 are then compared for equality.
7. In this case, the number will match and a validation message will be written to the log.
HELP: xMatters sends instructions about how to contact support to the SMS Device.
l
l
Locates all Users whose SMS Device (i.e., Text Phone Device) corresponds to the source SMS Device.
Sends an SMS confirmation messages to the Device (this message is configurable either in scripting or in a
text file).
Disables the SMS Device for all Users who have this Device address configured.
Notifies all the affected Users' Supervisors and all their immediate Group Supervisors (excluding nested
Groups and Dynamic Teams) for Groups in which they belong that the Users' SMS Devices were remotely
disabled. Note that if the Supervisor has Email Devices configured, only these Devices will be notified. If no
Email Devices are configured, the Default Device will be notified (excluding Fax Devices).
To enable SMSHELPand STOPResponses, you must create a new Event Domain called generic_responses for the
related Company. You can modify the HELPand STOP responses by loading and editing the generic_responses script
package in the xMatters Developer IDE.
Web application
In the Web application, the SMS-related messaging files are stored in the following folder:
<xMHOME>/webserver/webapps/cocoon/alarmpoint/translations/
The messages.xml file, located in the above folder, contains the English versions of the SMStext. The associated
language bundles, which xMatters uses to update the required MMA text, are stored in the custom subfolder. These files
must be named with the desired translation locale.
For example, to provide French translations, copy the messages.xml file to the custom subfolder, and rename it
messages_fr.xml. Open the file in a text editor, and then replace the values for the message keys from the English
bundle with the appropriate French translations.
When configuring a new Text Phone Device, xMatters uses the following keys (see the accompanying figures for an
illustration of where each key is represented in the SMSmessaging):
l
SMS.MMA.HEADING
SMS.MMA.OPT.OUT
SMS.MMA.HELP
SMS.MMA.RATE.WARNING
SMS.MMA.AUTH
SMS.MMA.TOS.TITLE
SMS.MMA.TOS.CLOSE
SMS.MMA.TOS.OPT.OUT.TITLE
SMS.MMA.TOS.OPT.OUT.1
SMS.MMA.TOS.OPT.OUT.2
SMS.MMA.TOS.HELP.TITLE
SMS.MMA.TOS.HELP.1
SMS.MMA.TOS.HELP.2
SMS.MMA.TOS.PRICING.TITLE
SMS.MMA.TOS.PRICING.1
SMS.MMA.TOS.CARRIERS.TITLE
SMS.MMA.TOS.CARRIERS.1
Note that all SMSkeys are prefixed with "SMS.MMA"; these prefixes have been omitted for legibility in the following
diagrams.
When a Company is configured with a Short Code Compliance option enabled, xMatters uses the following keys to
configure the TermsAndConditions.xml file, which is shown in the "About" dialog box:
l
SMS.MMA.TAC.OPT.OUT.1
SMS.MMA.TAC.OPT.OUT.2
SMS.MMA.TAC.HELP.1
The initial process script in the generic_responses script package defines and checks the list of supported MMA
keywords in various languages; $isHelp and $isStop variables attached to the underlying Alert object are available for
processing in other scripts (i.e., primarily the handler and presentation scripts). This list is not exhaustive, and can be
customized to include other synonyms in any language. In order to function correctly for SMS responses, the keywords
must match those sent from message content in the sms_confirmation Event Domain and associated scripts.
SMS MMA Required Messages
The sms_confirmation Event Domain contains handling for sent messages related to MMA, including the initial message
sent to a new SMS Device, help content requested by an SMS Device's User, and the confirmation text sent when a User
deactivates a Device.
The $supportedLanguages variable contains a list of supported languages for which a client has provided translations,
and is specified in the "initializePreferredLanguage" script, which then sets the $preferredLanguage variable based
upon whether the User's preferred language or Site language is in the list of supported languages (in that order). In all
cases, English will be used as the default if no language is specified as supported in this script, or if the supported
languages do not match the User's preferred language or the Site language.
The English content can also be specified in the Constants: SMSFIRSTMSG, SMSHELPMSG, SMSSTOPMSG, and
SMSCONFIRMMSG (for more information, see "SMSConfirmation and First Alert Messages Constants" on page 213). If
these Constants are not defined, the scripts contain default content.
To enable internationalization of messaging, set the $supportedLanguages variable to a list of the language names for
which translations will be provided, as defined in the Company Languages configuration in the web user interface. For
example, to indicate that content will be provided for English, French and, German:
$supportedLanguages = "English, French, German"
You can consult and modify the $preferredLanguage variable in any presentation script to adjust the message content
appropriately. The only requirement is that if you require support for responses of type STOP or HELP, the messages sent
to the User regarding this functionality must specify keywords that are contained in the $stopString or $helpString
variables defined in the generic_responses initial script. Generally, this pattern should resemble the following block of
scripting code:
# Retrieve the preferred language for the notification
CALL initializePreferredLanguage
IF ($notification.isHelp)
IF ($preferredLanguage == "French" )
$preferred_language_message = "xMatters: # alerts varie en fonction de l'utilisation. Pour
plus d'info par courriel Support@xmatters.com. Rponse de QUITTER de se retirer. MSG & donnes
de taux peuvent s'appliquer. "
ELSE-IF ($preferredLanguage == "German" )
$preferred_language_message = "xMatters: Warnungen variiert je nach Nutzung. Fr mehr
Infos per e-Mail Support@xmatters.com. Antwort DEAKTIVIEREN zum opt-out. Msg & Daten Preise
anfallen."
ELSE
$preferred_language_message = @event::getProperty("SMSHELPMSG", "xMatters: # alerts varies
with usage. For more info email Support@xmatters.com. Reply STOP to opt out. Msg & data rates
may apply.")
ENDIF
$content.message = $preferred_language_message
ELSE-IF ($notification.isStop)
IF ($preferredLanguage == "French" )
$preferred_language_message = "Votre priphrique ne recevront plus SMS travers le
Service de Notification de xMatters."
ELSE-IF ($preferredLanguage == "German" )
$preferred_language_message = "Ihr Gert erhalten SMS nicht mehr durch die xMattersBenachrichtigungsdienst."
ELSE
$preferred_language_message = @event::getProperty("SMSSTOPMSG", "Your device will no
longer receive SMS through the xMatters Notification Service")
ENDIF
$content.message = $preferred_language_message
ELSE
$content.message = $event.response & " is not a valid response."
Advanced SMS administration | 375
ENDIF
Introduction
Organizations deploying xMatters can regularly synchronize data between xMatters and existing systems. This chapter
describes how data can be synchronized with one or more external systems that are the data custodians for information
that xMatters uses (e.g., Users, Devices, Groups, Teams).
Using xMatters Data Synchronization, data administrators can bulk load and synchronize data in the xMatters System.
Additionally, system integrators can use the information in this chapter as a guide for integrating xMatters with existing
data sources.
Note:
If your xMatters deployment has more than one Company requiring data synchronization, see "MultipleCompany Environments" on page 438.
The Data Synchronizer installer requires connection settings for the xMatters database. If you do not know
these values, contact your xMatters system Administrator (Super Administrator).
If you do not know these values, contact your xMatters system Administrator (Super Administrator).
If you do not know these values, contact your xMatters system Administrator (Super Administrator).
Introduction | 378
Note:
To uninstall the Data Synchronizer, in Windows use Add/Remove Programs, and under Unix use the following
command: ./Uninstall_AlarmPoint_3_Data_Synchronizer -i console
Staging Area
Configuration File
Log Files
The following sections describe each component and provide details about its use.
Note:
In some cases, you may want to prevent the Data Synchronization tables from becoming large. Deleting the
tables may not be advisable if the EXTERNAL_KEY cannot be re-generated exactly the same for all records (i.e.
because removing the records means that new users will be added when they synchronize). If records can be regenerated, then you can truncate or delete the tables, but be aware that with truncate there are no rollbacks.
Staging Area
The Staging Area consists of database tables in which data is placed to make it available for data synchronization.
xMatters currently supports up to 19 Staging Area tables, which can include tables for the following data:
n
Users
Devices (BlackBerry, Email, Generic, Instant Messaging, Numeric and Text Pagers, Text and Voice Phones)
Groups
Device Timeframes
Teams
Team Membership
Sites
Custom Fields
Custom Attributes
Requirements
The database must be reachable using JDBC. In addition, only SQL Server and Oracle databases are currently supported.
SQL Equivalent
VARCHAR2
VARCHAR
TIMESTAMP(6)
DATETIME
Standard Fields
The following table summarizes the standard fields in the Staging Tables:
Staging Tables Standard Fields
Field Name
Description
alarmpoint_action
is_externally_owned
last_sync_date
external_key
Unique identifier for all tables, except Membership and the join_ tables
(DS_USER_JOIN_ATTRIBUTES and DS_CUSTOM_FIELD_JOIN_
VALUES).
alarmpoint_action Field
The alarmpoint_action field specifies the action Data Synchronization module should take on the record. It also specifies
information about whether a previous synchronization was successful. Prior to processing, the alarmpoint_action field
should be set to one of the following values (if it is not set to one of these values, the row will be ignored):
User Values for the alarmpoint_action Field
Value
Description
Specifies that this record should be processed. If a matching record exists in the database, that record
is updated to match this record. If no match exists, a new record is inserted.
Specifies that this record should be removed from the database. If a matching record exists in the
database, it is removed. If no match exists, no action is taken.
Note: this action completely removes the Users Details, Devices, and Team Memberships from the
database, even if there are active notifications or scheduled escalations for the User in the system.
During processing, the Data Synchronization module sets the alarmpoint_action field for records matching the latter
values to one of the following values:
Data Synchronization for the alarmpoint_action Field
Value
Description
Temporary value indicating that the record is being processed. Although this value is normally visible
only during processing, if the synchronization process is halted, the value may appear in the Staging
Tables.
Indicates that a record marked 'R' has been successfully removed from the xMatters database (or that it
never existed).
Indicates that the record was successfully inserted into or updated in the xMatters database.
Indicates that the record was not successfully inserted into, updated in, or deleted from the xMatters
database (for further information, see "Synchronization Report (Web User Interface)" on page 437).
is_externally_owned Field
xMatters objects have an associated ownership. xMatters can own objects (i.e., internal ownership) or they can be owned
externally. This flag specifies the ownership type for this synchronized object (value is Y or N). When objects are in
an externally owned state, you can use the External Data page in the xMatters web user interface to control which
externally owned data fields Users can change (for details, see "Permissions: locking external data" on page 236).
Note:
You cannot use the web user interface to remove objects that have been synchronized as externally owned.
last_sync_date Field
When the data synchronization process begins, it obtains the current date and time from the computer on which it is
running. The data synchronization process brands every record with this date and time information.
external_key Field
The data synchronization process uses the external_key field to identify the record in the xMatters database that matches
this record (the external_key value must be unique within the table). Because this comparison is case sensitive,
performing case-insensitive comparisons requires that strict case consistency be used when inserting or changing records
in the Staging Area.
The external_key field is also used to establish relationships between records in the Staging Area. As a result, to specify
a User as a Group Supervisor, that Users external_key value must appear in the Group Supervisor list.
List Fields
For fields that accept a comma-delimited list, the following special token can be used to specify an empty list:
<<<NONE>>>
This token causes the Data Synchronization process to create an empty list and assign it to that field. Note that a
"NULL" value in a list field that has control of optional is equivalent to setting overwrite=false.
Note that required fields will not take an empty list as value (e.g., the role_list for Users). However, there are some
situations that you may wish to use an empty list. For example, when setting the Person Supervisor relationship for a
User, you might want to use the synchronization update to specify that the User has no supervisors.
Note:
Users created using the Web User Interface do not have any external key association in the xMatters database.
If you have existing records in the database and want to use the Data Synchronization tool, you must first
export the records using data synchronization export. During the export process, records that were created
within the web user interface are assigned an external key.
ds_attribute_categories Table
The ds_attribute_categories table contains information necessary to create and maintain Custom Attribute Categories in
xMatters:
ds_attribute_categories Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
CATEGORY_NAME
VARCHAR2 (100)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_attributes Table
The ds_attributes table contains information necessary to create and maintain Custom Attributes in xMatters:
ds_attributes Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
ATTRIBUTE_NAME
VARCHAR2 (100)
ATTRIBUTE_CATEGORY_KEY
VARCHAR2 (250)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_bes_devices Table
The ds_bes_devices table contains information necessary to create and maintain BES (BlackBerry Enterprise Server)
Devices in xMatters:
ds_bes_devices Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
ADDRESS
VARCHAR2 (100)
USER_KEY
VARCHAR2 (250)
DEVICE_NAME
VARCHAR2 (100)
Column Name
Null
Data Type
Comments
SERVICE_PROVIDER_NAME
VARCHAR2 (100)
STATUS
VARCHAR2 (30)
DEFAULT_DEVICE
CHAR (1)
DEVICE_ORDER
VARCHAR2 (38)
DELAY
VARCHAR2 (38)
LOCK_24x7
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_custom_field_join_values Table
The ds_custom_field_join_values table contains information necessary to create and maintain Custom Fields in xMatters:
ds_custom_field_join_values Table
Column Name
Null
Data Type
Comments
FIELD_EXTERNAL_KEY
VARCHAR2 (250)
FIELD_VALUE
VARCHAR2 (200)
Note:
To associate Users with their Custom Field values, refer to the"ds_user_custom_values Table" on page 407.
ds_custom_fields Table
The ds_custom_fields table contains information necessary to create and maintain Custom Fields in xMatters:
ds_custom_fields Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
CUSTOM_FIELD_NAME
VARCHAR2 (100)
CUSTOM_FIELD_TYPE
VARCHAR2 (100)
CUSTOM_FIELD_MANDATORY
CHAR (1)
CUSTOM_FIELD_MAX
VARCHAR2 (38)
Column Name
Null
Data Type
Comments
CUSTOM_FIELD_MIN
VARCHAR2 (38)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_device_timeframes Table
The ds_device_timeframes table contains information necessary to create and maintain Device Timeframes in xMatters:
Column Name
Comments
EXTERNAL_KEY
VARCHAR2 (250)
DT_OWNING_DEVICE_KEY
VARCHAR2 (250)
DT_OWNING_DEVICE_TYPE
VARCHAR2 (250)
DT_NAME
VARCHAR2 (100)
DT_OWNING_DEVICE_NAME
VARCHAR2 (250)
DT_OWNING_DEVICE_OWNER_UID
VARCHAR2 (250)
START_TIME
VARCHAR2 (5)
Column Name
Comments
DT_DURATION
VARCHAR2 (77)
DT_DAY_PATTERN
VARCHAR2 (62)
DT_EXCLUDE_HOLIDAYS
BOOLEAN
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
By the Device Name and the Device Owner's User ID: dt_owning_device_name and dt_owning_device_owner_
uid, respectively
Note:
It is recommended that you use only one of these methods for each record. If both are present, the first method
will be tried first; if it fails, the second method will be attempted.
Imports
Recommended usage involves modifying the configuration file for the style of identification you plan to use. For
example, if you are using method the first method above (i.e., by the Device External Key), then the <device_timeframe>
element in the configuration file should be similar to the following:
<device_timeframe>
<external_key control="required"/>
<dt_owning_device_key control="required"/>
<dt_owning_device_type control="required"/>
<dt_owning_device_name control="not-present"/>
<dt_owning_device_owner_uid control="not-present"/>
<dt_name control="required"/>
<dt_start_time control="required"/>
<dt_duration control="required"/>
<dt_day_pattern control="required"/>
<dt_exclude_holidays control="required"/>
</device_timeframe>
The latter specifies that the owning device external key is a required field, and ignores the Device name and owner user
ID.
Alternately, if you are using the second method above (i.e., by the Device Type and Device Name), the same element
should be similar to the following:
<device_timeframe>
<external_key control="required"/>
<dt_owning_device_key control="not-present"/>
<dt_owning_device_type control="required"/>
<dt_owning_device_name control="required"/>
<dt_owning_device_owner_uid control="required"/>
<dt_name control="required"/>
<dt_start_time control="required"/>
<dt_duration control="required"/>
<dt_day_pattern control="required"/>
<dt_exclude_holidays control="required"/>
</device_timeframe>
Exports
Because xMatters includes all Device information, you can leave the configuration file as delivered; the <device_
timeframe> element would be similar to the following:
<device_timeframe>
<external_key control="required"/>
<dt_owning_device_key control="optional"/>
<dt_owning_device_type control="required"/>
<dt_owning_device_name control="optional"/>
<dt_owning_device_owner_uid control="optional"/>
<dt_name control="required"/>
<dt_start_time control="required"/>
<dt_duration control="required"/>
<dt_day_pattern control="required"/>
<dt_exclude_holidays control="required"/>
</device_timeframe>
ds_email_devices Table
The ds_email_devices table contains information necessary to create and maintain email devices in xMatters:
ds_email_devices Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
ADDRESS
VARCHAR2 (100)
USER_KEY
VARCHAR2 (250)
Column Name
Null
Data Type
Comments
DEVICE_NAME
VARCHAR2 (100)
SERVICE_PROVIDER_NAME
VARCHAR2 (100)
STATUS
VARCHAR2 (30)
DEFAULT_DEVICE
CHAR (1)
DEVICE_ORDER
VARCHAR2 (38)
DELAY
VARCHAR2 (38)
Column Name
Null
Data Type
Comments
LOCK_24x7
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_event_domain_predicates Table
The ds_event_domain_predicates table contains information necessary to create and maintain Event Domain Predicates
in xMatters:
ds_event_domain_predicates Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
EVENT_DOMAIN_KEY
VARCHAR2 (250)
PREDICATE_NAME
VARCHAR2 (100)
PREDICATE_TYPE
VARCHAR2 (100)
RANKING
VARCHAR2 (38)
IMPORTANT
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_generic_devices Table
The ds_generic_devices table contains information necessary to create and maintain Generic Devices in xMatters:
ds_generic_devices Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
PIN
VARCHAR2 (100)
USER_KEY
VARCHAR2 (250)
DEVICE_NAME
VARCHAR2 (100)
SERVICE_PROVIDER_NAME
VARCHAR2 (100)
STATUS
VARCHAR2 (30)
DEFAULT_DEVICE
CHAR (1)
DEVICE_ORDER
VARCHAR2 (38)
Column Name
Null
Data Type
Comments
DELAY
VARCHAR2 (38)
LOCK_24x7
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_groups Table
The ds_groups table contains information necessary to create and maintain Groups in xMatters:
ds_groups Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
GROUP_NAME
VARCHAR2 (100)
DESCRIPTION
VARCHAR2 (200)
STATUS
VARCHAR2 (30)
Column Name
Null
Data Type
Comments
USE_DEFAULT_DEVICES
CHAR (1)
TIMEZONE
VARCHAR2 (100)
GROUP_SITE_NAME
VARCHAR2 (100)
OBSERVED_BY_ALL
CHAR (1)
OBSERVER_LIST
VARCHAR2 (2000)
SUPERVISOR_LIST
VARCHAR2 (2000)
ALLOW_DUPLICATES
VARCHAR2 (30)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_holiday_coverages Table
The ds_holiday_coverages table contains information necessary to create and maintain Holiday Only Coverages in
xMatters::
ds_holiday_coverages Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
OWNING_GROUP_KEY
VARCHAR2 (250)
COVERAGE_NAME
VARCHAR2 (100)
START_DATE
VARCHAR2 (10)
START_TIME
VARCHAR2(5)
DURATION
VARCHAR2 (77)
RECURRENCE_END
VARCHAR2 (38)
WORK_TEAM_KEY
VARCHAR2 (250)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_im_devices Table
The ds_im_devices table contains information necessary to create and maintain instant messaging Devices in xMatters:
ds_im_devices Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
ADDRESS
VARCHAR2 (100)
USER_KEY
VARCHAR2 (250)
DEVICE_NAME
VARCHAR2 (100)
SERVICE_PROVIDER_NAME
VARCHAR2 (100)
STATUS
VARCHAR2 (30)
DEFAULT_DEVICE
CHAR (1)
Column Name
Null
Data Type
Comments
DEVICE_ORDER
VARCHAR2 (38)
DELAY
VARCHAR2 (38)
LOCK_24x7
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_numeric_pager_devices Table
The ds_numeric_pager_devices table contains information necessary to create and maintain numeric pager Devices in
xMatters:
ds_numeric_pager_devices Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
COUNTRY
VARCHAR2 (100)
Column Name
Null
Data Type
Comments
PIN
VARCHAR2 (100)
AREA_CODE
VARCHAR2 (100)
PHONE_NUMBER
VARCHAR2 (100)
USER_KEY
VARCHAR2 (250)
DEVICE_NAME
VARCHAR2 (100)
SERVICE_PROVIDER_NAME
VARCHAR2 (100)
Column Name
Null
Data Type
Comments
STATUS
VARCHAR2 (30)
DEFAULT_DEVICE
CHAR (1)
DEVICE_ORDER
VARCHAR2 (38)
DELAY
VARCHAR2 (38)
LOCK_24x7
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_person_supervisor Table
The ds_person_supervisor table contains information necessary to associate Users with their Supervisors:
ds_person_supervisor Table
Column Name
Null
Data Type
Comments
USER_EXTERNAL_KEY
VARCHAR2 (250)
PERSON_SUPERVISOR_LIST
VARCHAR2 (2000)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_recurrent_coverages Table
The ds_recurrent_coverages table contains information necessary to create and maintain Recurrent Coverages in
xMatters:
ds_recurrent_coverages Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
OWNING_GROUP_KEY
VARCHAR2 (250)
COVERAGE_NAME
VARCHAR2 (100)
START_DATE
VARCHAR2 (10)
START_TIME
VARCHAR2(5)
Column Name
Null
Data Type
Comments
DURATION
VARCHAR2 (77)
DAY_PATTERN
VARCHAR2 (62)
FREQUENCY
VARCHAR2 (10)
INTERVAL
VARCHAR2 (38)
INCLUDE_SITE_
HOLIDAYS
BOOLEAN
RECURRENCE_END
VARCHAR2 (38)
WORK_TEAM_KEY
VARCHAR2 (250)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_sites Table
The ds_sites table contains information necessary to create and maintain Sites in xMatters:
ds_sites Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
Column Name
Null
Data Type
Comments
SITENAME
VARCHAR2 (100)
SITE_STATUS
VARCHAR2 (30)
SITE_LANGUAGE
VARCHAR2 (100)
SITE_TIMEZONE
VARCHAR2 (100)
SITE_ADDRESS_01
VARCHAR2 (100)
SITE_ADDRESS_02
VARCHAR2 (100)
SITE_CITY
VARCHAR2 (100)
SITE_COUNTRY
VARCHAR2 (100)
SITE_REGION_NAME
VARCHAR2 (100)
SITE_MAIL_CODE
VARCHAR2 (10)
SITE_CLUSTER_01
VARCHAR2 (100)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_team_memberships Table
The ds_team_membership table contains information necessary to create and maintain Team memberships in xMatters:
Data Synchronization Components | 401
ds_team_memberships Table
Column Name
Null
Data Type
Comments
TEAM_KEY
VARCHAR2 (250)
MEMBER_KEY
VARCHAR2 (250)
MEMBER_TYPE
VARCHAR2 (30)
MEMBER_SUB_TYPE
VARCHAR2 (30)
MEMBER_SEQUENCE_NUMBER
VARCHAR2 (38)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_teams Table
The ds_teams table contains information necessary to create and maintain Teams in xMatters:
ds_teams Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
Column Name
Null
Data Type
Comments
GROUP_KEY
VARCHAR2 (250)
SUB_TARGET_NAME
VARCHAR2 (100)
DESCRIPTION
VARCHAR2 (200)
USE_DEFAULT_DEVICES
CHAR (1)
ESCALATION_SCHEDULE
VARCHAR2 (100)
IS_ROUND_ROBIN
CHAR (1)
ADD_24X7_COVERAGE
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
Column Name
Null
Data Type
Comments
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
Note:
Data Synchronization supports only Basic and Event Round Robin Teams; Rotation Teams are not supported.
ds_text_pager_devices Table
The ds_text_pager_devices table contains information necessary to create and maintain text pager Devices in xMatters:
ds_text_pager_devices Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
PIN
VARCHAR2 (100)
IS_TWO_WAY
CHAR (1)
USER_KEY
VARCHAR2 (250)
DEVICE_NAME
VARCHAR2 (100)
Column Name
Null
Data Type
Comments
SERVICE_PROVIDER_NAME
VARCHAR2 (100)
STATUS
VARCHAR2 (30)
DEFAULT_DEVICE
CHAR (1)
DEVICE_ORDER
VARCHAR2 (38)
DELAY
VARCHAR2 (38)
LOCK_24x7
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_text_phone_devices Table
The ds_text_phone_devices table contains information necessary to create and maintain text phone Devices in xMatters:
ds_text_phone_devices Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
TARGET_NUMBER
VARCHAR2 (100)
COUNTRY_CODE
VARCHAR2 (3)
USER_KEY
VARCHAR2 (250)
DEVICE_NAME
VARCHAR2 (100)
SERVICE_PROVIDER_NAME
VARCHAR2 (100)
STATUS
VARCHAR2 (30)
Column Name
Null
Data Type
Comments
DEFAULT_DEVICE
CHAR (1)
DEVICE_ORDER
VARCHAR2 (38)
DELAY
VARCHAR2 (38)
LOCK_24x7
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_user_custom_values Table
The ds_user_custom_values table contains information necessary to create and maintain relations between User and
Custom Field values in xMatters:
ds_user_custom_values Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
CUSTOM_USER_KEY
VARCHAR2 (250)
FIELD_KEY
VARCHAR2 (250)
Column Name
Null
Data Type
Comments
CUSTOM_VALUE
VARCHAR2 (100)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
ds_user_join_attributes Table
The ds_user_join_attributes table contains information necessary to associate User with User Attributes:
ds_user_join_attributes Table
Column Name
Null
Data Type
Comments
USER_EXTERNAL_KEY
VARCHAR2 (250)
ATTRIBUTE_EXTERNAL_KEY
VARCHAR2 (250)
ds_users Table
The ds_users table contains information necessary to create and maintain Users in xMatters:
ds_users Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
SITE_NAME
VARCHAR2 (100)
Column Name
Null
Data Type
Comments
ROLE_LIST
VARCHAR2 (2000)
STATUS
VARCHAR2 (30)
LAST_NAME
VARCHAR2 (100)
FIRST_NAME
VARCHAR2 (100)
LANGUAGE_OVERRIDE
VARCHAR2 (100)
TIMEZONE_OVERRIDE
VARCHAR2 (100)
Column Name
Null
Data Type
Comments
RECORDED_NAME
VARCHAR2 (100)
WEB_LOGIN_TYPE
VARCHAR2 (100)
WEB_LOGIN
VARCHAR2 (100)
WEB_PASSWORD
VARCHAR2 (100)
LDAP_DOMAIN
VARCHAR2 (100)
Column Name
Null
Data Type
Comments
PHONE_LOGIN
VARCHAR2 (100)
PHONE_PASSWORD
VARCHAR2 (30)
USER_ID
VARCHAR2 (100)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
HAS_MOBILE_ACCESS
CHAR (1)
ds_voice_devices Table
The ds_voice_devices table contains information necessary to create and maintain voice Devices in xMatters:
ds_voice_devices Table
Column Name
Null
Data Type
Comments
EXTERNAL_KEY
VARCHAR2 (250)
COUNTRY
VARCHAR2 (100)
AREA_CODE
VARCHAR2 (10)
PHONE_NUMBER
VARCHAR2 (30)
EXTENSION
VARCHAR2 (10)
USER_KEY
VARCHAR2 (250)
DEVICE_NAME
VARCHAR2 (100)
Column Name
Null
Data Type
Comments
SERVICE_PROVIDER_NAME
VARCHAR2 (100)
STATUS
VARCHAR2 (30)
DEFAULT_DEVICE
CHAR (1)
DEVICE_ORDER
VARCHAR2 (38)
DELAY
VARCHAR2 (38)
LOCK_24x7
CHAR (1)
IS_EXTERNALLY_OWNED
CHAR (1)
ALARMPOINT_ACTION
CHAR (1)
LAST_SYNC_DATE
TIMESTAMP (6)
alarmpoint-synchronization Element
The alarmpoint-synchronization element is the base element in the configuration file. This element has a list of company
Elements and two attributes, summarized in the following table:
alarmpoint-synchronization Element Attributes
Attribute
Mandatory
Description
target
Specifies what area (Staging Area or xMatters database) the data synchronization
affects. The accepted values are "alarmpoint" and "staging".
failure_limit
company Element
The system supports one company element, which contains directions for synchronizing a Company. The following table
summarizes the attributes for the company element:
company Element Attribute
Attribute
Mandatory
Description
name
Specifies the name of the organization that is the target of the synchronization
process. This case-sensitive value must exactly match the name of the organization
in the xMatters database.
one_db
user
Specifies which User will be logged as responsible for all actions taken by the
synchronization process. This attribute should take on a value that corresponds to
an external key or target name of an existing User within xMatters
The company element can also include the optional staging_area element (for details, see "staging_area Element",
below), followed by a list of table elements. At least one table element must appear, in the following order:
<site>
<attribute_category>
<attribute>
<custom_field>
<user>
<user_custom_value>
<person_supervisor>
<email>
<im>
<text_pager>
<numeric_pager>
<voice>
<text_phone>
<generic_device>
<bes_device>
<group>
<team>
<team_membership>
<recurrent_coverages>
<holiday_coverages>
<device_timeframe>
<event_domain_predicate>
Only table elements specified in the configuration file will be synchronized; remaining tables elements and their
associated staging tables will be ignored.
staging_area Element
This element should be present only when one_db is set to false.
If the staging_area element is present, then you must specify the properties_file attribute. The path and file name must
have the following syntax:
<staging_area properties_file="assets/config/alarmpoint-synchronizer.properties" />
Note:
Due to classpath concerns, the name common.properties is reserved and unexpected behavior will occur if a
name of common.properties is entered here.
The alarmpoint-synchronizer.properties file contains the information necessary to connect to the Company
staging area, as summarized in the following table:
alarmpoint-synchronizer.properties Settings
Setting
Mandatory
Description
JDBC_DRIVER_CLASS_NAME=
JDBC_URL=
Setting
Mandatory
Description
JDBC_USERNAME=
JDBC_PASSWORD=
Note:
By default, the alarmpoint-synchronizer.properties file is not encrypted. If you would like to encrypt the
file for security reasons, you can use the APSecure.bat tool (see the next section for details).
To point this file to a different staging area, replace the %%%JDBC_CLASS%%%, %%%JDBC_URL%%%, and so on
with values that point to the desired staging area.
Encrypting/Decrypting alarmpoint-synchronizer.properties
By default, the alarmpoint-synchronizer.properties file is not encrypted. However, you can use the APSecure
tool to encrypt and decrypt this file.
The command line syntax for running APSecure is as follows:
n
Description
<operation>
<infile>
<outfile>
File that is the target for the decrypted or encrypted file; mandatory.
Mandatory
Description
stage_table
Allows the use of a staging table (or updatable view) other than the default.
The following table gives the default table name for each table element:
The Configuration File | 416
site
DS_SITE
attribute_category
DS_ATTRIBUTE_CATEGORIES
attribute
DS_ATTRIBUTES
custom_field
DS_CUSTOM_FIELDS
user
DS_USERS
user_custom_value
DS_USER_CUSTOM_VALUES
person_supervisor
DS_PERSON_SUPERVISORS
DS_EMAIL_DEVICES
im
DS_IM_DEVICES
textpager
DS_TEXT_PAGER_DEVICES
numeric_pager
DS_NUMERIC_PAGER_DEVICES
voice
DS_VOICE_DEVICES
text_phone
DS_TEXT_PHONE_DEVICES
generic_device
DS_GENERIC_DEVICES
bes_device
DS_BES_DEVICES
group
DS_GROUPS
team
DS_TEAMS
team_membership
DS_TEAM_MEMBERSHIPS
recurrent_coverages
DS_RECURRENT_COVERAGES
holiday_coverages
DS_HOLIDAY_COVERAGES
device_timeframe
DS_DEVICE_TIMEFRAMES
event_domain_predicate
DS_EVENT_DOMAIN_PREDICATES
The list of field elements for each table has a fixed order; however, some field elements may not appear.
Field elements
Each field element may have up to four attributes that control field behavior during synchronization: control, overwrite,
stage_name, and default.
Control Attribute
The control attribute must be present on every field element, and can have one of three values, as summarized in the
following table:
Field Element control attribute meanings
control value
Description
required
Indicates that a value must be present for this field in every row during synchronization, either
in the staging table or a default value from the field element.
optional
Indicates that a value may be present for this field during synchronization, either in the
staging table or a default value from the field element.
If no value is specified in the staging table, then any value in the xMatters database will not
be changed. This means that there is no way to clear optional fields in the xMatters database.
not-present
Note:
Indicates that no value for this field is present in the staging area, but a value may be provided
by a default value from the field element.
Overwrite Attribute
The overwrite attribute controls the behavior when the record already exists in the xMatters database (i.e., there is a
record with the corresponding external_key value).
Overwrite attribute values
overwrite Value
Value Description
true
Indicates that the value specified in the Staging Area always overwrites data in xMatters
for the entity matched by external_key.
false
Indicates that the synchronization process will not change the value in xMatters. If no
match is found for external_key in xMatters, a new entry will be created.
For example, the following illustrates how to set the device_order element so it will not override an existing value in
xMatters:
<device_order control="required" overwrite="false"/>
Default Attribute
The default attribute allows specification of a default value for the field. This value will be used if the value in the
staging area is empty or not present. Some field elements will not allow this attribute.
Description
value
indicates that if ldap_domain is empty for a particular row in the Staging Area, then the
value LDAP_PORTAL will be used.
Stage Name Attribute
The stage_name attribute allows specification of a different name in the Staging Area for the field element. By default,
the field element column in the Staging Area is the same as the field element.
Field Element stage_name Attribute
stage_name Value
Description
value
The specified value corresponds with the field name in the Staging Area. For example:
<ldap_domain stage_name="PORTAL"/>
indicates that the system can retrieve ldap_domain from the Staging Area under the field
name of PORTAL.
Note:
Note that the field elements are never attached to the alarmpoint_action and last_sync_date staging fields.
They must have those names in the staging area.
Control
Overwrite
Default
Required
external_key
Required
Always false
No
Yes
attribute_name
Required
True or False
No
Yes
attribute_category_key
Required
True or False
No
Yes
attribute_category Element
The attribute_category element has the following fields:
Control
Overwrite
Default
Required
external_key
Required
Always false
No
Yes
category_name
Required
True or False
No
Yes
bes_device Element
The bes_device element has the following fields:
bes_device Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
user_key
Required
True or False
No
Yes
device_name
Required
True or False
Yes
Yes
service_provider_name
Required
True or False
Yes
Yes
status
Required
True or False
Yes
Yes
default_device
Required
True or False
Yes
Yes
device_order
Required
True or False
No
Yes
address
Required
True or False
Yes
Yes
delay
Required
True or False
Yes
Yes
lock_24x7
Required
True or False
Yes
Yes
custom_field Element
The custom_field element has the following fields:
custom_field Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always false
No
Yes
custom_field_name
Required
True or False
No
Yes
custom_field_type
Required
True or False
Yes
Yes
custom_field_mandatory
Required
True or False
Yes
Yes
Field name
Control
Overwrite
Default
Required
custom_field_max
Required or Optional
True or False
Yes
No
custom_field_min
Required or Optional
True or False
Yes
No
field_values*
Optional
N/A
No
No
Note:
The field_values field controls the processing of a joined table (DS_CUSTOM_FIELD_JOIN_VALUES) that
should contain all Custom Field Values that are to be associated with each Custom Field.
device_timeframe Element
The device_timeframe element has the following fields::
device_timeframe Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
dt_owning_device_key
Required
True or False
No
Yes
dt_owning_device_type
Required
True or False
No
Yes
dt_name
Required
True or False
No
Yes
dt_start_time
Required
True or False
Yes
Yes
dt_duration
Required
True or False
Yes
Yes
dt_day_pattern
Required or Optional
True or False
Yes
Yes
dt_exclude_holidays
Required or Optional
True or False
Yes
Yes
email Element
The email element has the following fields:
email Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
user_key
Required
True or False
No
Yes
device_name
Required
True or False
Yes
Yes
service_provider_name
Required
True or False
Yes
Yes
Field name
Control
Overwrite
Default
Required
status
Required
True or False
Yes
Yes
default_device
Required
True or False
Yes
Yes
device_order
Required
True or False
No
Yes
address
Required
True or False
Yes
Yes
delay
Required
True or False
Yes
Yes
lock_24x7
Required
True or False
Yes
Yes
event_domain_predicate Element
The event_domain_predicate element has the following fields:
event_domain_predicate Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
predicate_name
Required
True or False
No
Yes
predicate_type
Required
True or False
Yes
Yes
ranking
Required or Optional
True or False
No
Yes
important
Required or Optional
True or False
Yes
No
predicate_value*
Optional
N/A
N/A
No
event_domain_key
Required
True or False
Yes
Yes
Note:
The predicate_value field controls the processing of a joined table (DS_PREDICATE_JOIN_VALUES) that
should contain all Predicate Values that are to be associated with each Event Domain Predicate.
generic Element
The generic_device element has the following fields:
generic_device Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
user_key
Required
True or False
No
Yes
Field name
Control
Overwrite
Default
Required
device_name
Required
True or False
Yes
Yes
service_provider_name
Required
True or False
Yes
Yes
status
Required
True or False
Yes
Yes
default_device
Required
True or False
Yes
Yes
device_order
Required
True or False
No
Yes
pin
Required
True or False
Yes
Yes
delay
Required
True or False
Yes
Yes
lock_24x7
Required
True or False
Yes
Yes
group Element
The group element has the following fields:
group Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
group_name
Required
True or False
No
Yes
description
Required or Optional
True or False
Yes
No
status
Required
True or False
Yes
Yes
use_default_devices
Required
True or False
Yes
Yes
timezone
Required
True or False
Yes
Yes
group_site_name
Optional
True or False
No
No
allow_duplicates
Required
True or False
Yes
Yes
supervisor_list
Required or Optional
True or False
Yes
Yes
observed_by_all
Required or Optional
True or False
Yes
No
observer_list
Required or Optional
True or False
Yes
Yes
holiday_coverages Element
The holiday_coverages element has the following fields:
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
owning_group_key
Required
True or False
No
Yes
coverage_name
Required
True or False
No
Yes
start_date
Required or Optional
True or False
Yes
Yes
start_time
Required
True or False
Yes
Yes
duration
Required
True or False
Yes
Yes
recurrence_end
Required or Optional
True or False
Yes
Yes
worker_team_key
Required or Optional
True or False
Yes
Yes
im Element
The instant messaging element has the following fields:
im Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
user_key
Required
True or False
No
Yes
device_name
Required
True or False
Yes
Yes
service_provider_name
Required
True or False
Yes
Yes
status
Required
True or False
Yes
Yes
default_device
Required
True or False
Yes
Yes
device_order
Required
True or False
No
Yes
address
Required
True or False
Yes
Yes
delay
Required
True or False
Yes
Yes
lock_24x7
Required
True or False
Yes
Yes
numeric_pager Element
The numeric_pager element has the following fields:
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
country
Required or Optional
True or False
Yes
Yes
user_key
Required
True or False
No
Yes
device_name
Required
True or False
Yes
Yes
service_provider_name
Required
True or False
Yes
Yes
status
Required
True or False
Yes
Yes
default_device
Required
True or False
Yes
Yes
device_order
Required
True or False
No
Yes
pin
Required
True or False
Yes
Yes
area_code
Required or Optional
True or False
Yes
No
phone_number
Required
Always False
No
Yes
delay
Required
True or False
Yes
Yes
lock_24x7
Required
True or False
Yes
Yes
person_supervisor Element
The person_supervisor element has the following fields:
person_supervisor Element Field Elements
Field name
Control
Overwrite
Default
Required
user_external_key
Required
Always false
No
Yes
person_supervisor_list
Optional
True or False
Yes
No
recurrent_coverages Element
The recurrent_coverages element has the following fields:
recurrent_coverages Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
Field name
Control
Overwrite
Default
Required
owning_group_key
Required
True or False
No
Yes
coverage_name
Required
True or False
No
Yes
start_date
Required or Optional
True or False
Yes
Yes
start_time
Required
True or False
Yes
Yes
duration
Required
True or False
Yes
Yes
day_pattern
Required
True or False
Yes
Yes
frequency
Required
True or False
Yes
Yes
interval
Required
True or False
Yes
Yes
include_site_holidays
Required
True or False
No
Yes
recurrence_end
Required or Optional
True or False
Yes
Yes
worker_team_key
Required or Optional
True or False
Yes
Yes
site Element
The site element has the following fields:
site Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
sitename
Required
True or False
No
Yes
site_status
Required
True or False
Yes
Yes
site_language
Required
True or False
Yes
Yes
site_timezone
Required
True or False
Yes
Yes
site_address_01
Required or Optional
True or False
Yes
No
site_address_02
Required or Optional
True or False
Yes
No
site_city
Required or Optional
True or False
Yes
No
site_country
Required
True or False
Yes
Yes
Field name
Control
Overwrite
Default
Required
site_region_name
Required or Optional
True or False
Yes
No
site_mail_code
Required or Optional
True or False
Yes
No
site_cluster_01
Required or Optional
True or False
Yes
No
team Element
The team element has the following fields:
team Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
sub_target_name
Required
True or False
No
Yes
description
Required or Optional
True or False
Yes
No
use_default_devices
Required
True or False
Yes
Yes
escalation_schedule
Required or Optional
True or False
Yes
Yes
is_round_robin
Required
True or False
Yes
Yes
group_key
Required
Always False
Yes
Yes
add_24x7_coverage
Required
N/A
Yes
Yes
team_membership Element
The team_membership element has the following fields:
team_membership Element Field Elements
Field name
Control
Overwrite
Default
team_key
Required
N/A
Yes
member_key
Required
N/A
Yes
member_type
Required
N/A
Yes
member_sub_type
Required or Optional
N/A
Yes
member_sequence_number
Required
N/A
Yes
text_pager Element
The text_pager element has the following fields:
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
user_key
Required
True or False
No
Yes
device_name
Required
True or False
Yes
Yes
service_provider_name
Required
True or False
Yes
Yes
status
Required
True or False
Yes
Yes
default_device
Required
True or False
Yes
Yes
device_order
Required
True or False
No
Yes
pin
Required
True or False
Yes
Yes
is_two_way
Required
True or False
Yes
Yes
delay
Required
True or False
Yes
Yes
lock_24x7
Required
True or False
Yes
Yes
text_phone Element
The text_phone element has the following fields:
text_phone Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
user_key
Required
True or False
No
Yes
device_name
Required
True or False
Yes
Yes
service_provider_name
Required
True or False
Yes
Yes
status
Required
True or False
Yes
Yes
default_device
Required
True or False
Yes
Yes
device_order
Required
True or False
No
Yes
target_number
Required
True or False
Yes
Yes
Field name
Control
Overwrite
Default
Required
delay
Required
True or False
Yes
Yes
lock_24x7
Required
True or False
Yes
Yes
user Element
The user element has the following fields:
user Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
first_name
Required
True or False
Yes
Yes
last_name
Required
True or False
Yes
Yes
user_id
Required
True or False
No
Yes
site_name
Required
True or False
Yes
Yes
role_list
Required
True or False
Yes
Yes
supervisor_list
Required or Optional
True or False
Yes
No
status
Required
True or False
Yes
Yes
language_override
Required or Optional
True or False
Yes
No
timezone_override
Required or Optional
True or False
Yes
No
recorded_name
Required or Optional
True or False
Yes
No
phone_login
Required or Optional
True or False
No
No
phone_password
Required or Optional
Yes
No
web_login_type
Required or Optional
True or False
Yes
No
web_login
Required or Optional
True or False
No
No
web_password
Required or Optional
Yes
No
ldap_domain
Required or Optional
True or False
Yes
No
user_attributes*
Optional
N/A
No
No
user_custom_value Element
The user_custom_value element has the following fields:
user_custom_value Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always false
No
Yes
field_key
Required
True or False
No
Yes
custom_user_key
Required
True or False
No
Yes
custom_value
Required
True or False
Yes
Yes
voice Element
The voice element has the following fields:
voice Element Field Elements
Field name
Control
Overwrite
Default
Required
external_key
Required
Always False
No
Yes
country
Required or Optional
True or False
Yes
Yes
user_key
Required
True or False
No
Yes
device_name
Required
True or False
Yes
Yes
service_provider_name
Required
True or False
Yes
Yes
status
Required
True or False
Yes
Yes
default_device
Required
True or False
Yes
Yes
device_order
Required
True or False
No
Yes
area_code
Required or Optional
True or False
Yes
Yes
phone_number
Required
True or False
Yes
Yes
extension
Required or Optional
True or False
Yes
No
delay
Required
True or False
Yes
Yes
lock_24x7
Required
True or False
Yes
Yes
Example Configuration
The following is a sample data synchronization configuration file (note that the order of the XML tags in the
configuration file must appear exactly as shown):
<alarmpoint-synchronizer
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
target="alarmpoint" failure_limit="100">
<company name="Default Company" one_db="true" user="superadmin">
<site>
<external_key control="required"/>
<sitename control="required"/>
<site_status control="required"/>
<site_language control="required"/>
<site_timezone control="required"/>
<site_address_01 control="optional"/>
<site_address_02 control="optional"/>
<site_city control="optional"/>
<site_country control="required"/>
<site_region_name control="optional"/>
<site_mail_code control="optional"/>
<site_cluster_01 control="optional"/>
</site>
<attribute_category>
<external_key control="required"/>
<category_name control="required"/>
</attribute_category>
<attribute>
<external_key control="required"/>
<attribute_name control="required"/>
<attribute_category_key control="required"/>
</attribute>
<custom_field>
<external_key control="required"/>
<custom_field_name control="required"/>
<custom_field_type control="required"/>
<custom_field_mandatory control="required"/>
<custom_field_max control="optional"/>
<custom_field_min control="optional"/>
<field_values control="optional" type="joined"/>
</custom_field>
<user>
<external_key control="required"/>
<first_name control="required"/>
<last_name control="required"/>
<user_id control="required"/>
<site_name control="required"/>
<role_list control="required" overwrite="false"/>
<status control="required"/>
<language_override control="optional"/>
<timezone_override control="optional"/>
<recorded_name control="optional"/>
<phone_login control="optional"/>
<phone_password control="optional" overwrite="false"/>
<web_login_type control="required" default="NATIVE"/>
<web_login control="optional"/>
<web_password control="optional" overwrite="false" default="password"/>
<ldap_domain control="optional"/>
<user_attributes control="optional" type="joined"/>
</user>
<user_custom_value>
<external_key control="required"/>
<field_key control="required"/>
<custom_user_key control="required"/>
<custom_value control="required"/>
</user_custom_value>
<person_supervisor>
<user_external_key control="required"/>
<person_supervisor_list control="optional"/>
</person_supervisor>
<email>
<external_key control="required"/>
<user_key control="required"/>
<device_name control="required"/>
<service_provider_name control="required"/>
<status control="required"/>
<default_device control="required"/>
<device_order control="required"/>
<address control="required"/>
<delay control="required"/>
<lock_24x7 control="required"/>
</email>
<im>
<external_key control="required"/>
<user_key control="required"/>
<device_name control="required"/>
<service_provider_name control="required"/>
<status control="required"/>
<default_device control="required"/>
<device_order control="required"/>
<address control="required"/>
<delay control="required"/>
<lock_24x7 control="required"/>
</im>
<text_pager>
<external_key control="required"/>
<user_key control="required"/>
<device_name control="required"/>
<service_provider_name control="required"/>
<status control="required"/>
<default_device control="required"/>
<device_order control="required"/>
<pin control="required"/>
<is_two_way control="required"/>
<delay control="required"/>
<lock_24x7 control="required"/>
</text_pager>
<numeric_pager>
<external_key control="required"/>
<country control="optional"/>
<user_key control="required"/>
<device_name control="required"/>
<service_provider_name control="required"/>
<status control="required"/>
<default_device control="required"/>
<device_order control="required"/>
<pin control="required"/>
<area_code control="required"/>
<phone_number control="required"/>
<delay control="required"/>
<lock_24x7 control="required"/>
</numeric_pager>
<voice>
<external_key control="required"/>
<country control="optional"/>
<user_key control="required"/>
<device_name control="required"/>
<service_provider_name control="required"/>
<status control="required"/>
<default_device control="required"/>
<device_order control="required"/>
<area_code control="required"/>
<phone_number control="required"/>
<extension control="optional"/>
<delay control="required"/>
<lock_24x7 control="required"/>
</voice>
<text_phone>
<external_key control="required"/>
<user_key control="required"/>
<device_name control="required"/>
<service_provider_name control="required"/>
<status control="required"/>
<default_device control="required"/>
<device_order control="required"/>
<target_number control="required"/>
<delay control="required"/>
<lock_24x7 control="required"/>
</text_phone>
<generic_device>
<external_key control="required"/>
<user_key control="required"/>
<device_name control="required"/>
<service_provider_name control="required"/>
<status control="required"/>
<default_device control="required"/>
<device_order control="required"/>
<pin control="required"/>
<delay control="required"/>
<lock_24x7 control="required"/>
</generic_device>
<bes_device>
<external_key control="required"/>
<user_key control="required"/>
<device_name control="required"/>
<service_provider_name control="required"/>
<status control="required"/>
<default_device control="required"/>
<device_order control="required"/>
<address control="required"/>
<delay control="required"/>
<lock_24x7 control="required"/>
</bes_device>
<group>
<external_key control="required"/>
<group_name control="required"/>
<description control="optional"/>
<status control="required"/>
<use_default_devices control="required"/>
<timezone control="required"/>
<group_site_name control="optional"/>
<allow_duplicates control="required"/>
<supervisor_list control="required"/>
<observed_by_all control="optional"/>
<observer_list control="optional"/>
</group>
<team>
<external_key control="required"/>
<sub_target_name control="required"/>
<description control="required"/>
<use_default_devices control="required"/>
<escalation_schedule control="required"/>
<is_round_robin control="required"/>
<group_key control="required"/>
<add_24x7_coverage control="required" default="Y"/>
</team>
<team_membership>
<team_key control="required"/>
<member_key control="required"/>
<member_type control="required"/>
<member_sub_type control="optional"/>
Example Configuration | 433
<member_sequence_number control="required"/>
</team_membership>
<recurrent_coverages>
<external_key control="required"/>
<owning_group_key control="required"/>
<coverage_name control="required"/>
<start_date control="optional"/>
<start_time control="required"/>
<duration control="required"/>
<day_pattern control="required"/>
<frequency control="required"/>
<interval control="required"/>
<include_site_holidays control="required"/>
<recurrence_end control="optional"/>
<worker_team_key control="optional"/>
</recurrent_coverages>
<holiday_coverages>
<external_key control="required"/>
<owning_group_key control="required"/>
<coverage_name control="required"/>
<start_date control="optional"/>
<start_time control="required"/>
<duration control="required"/>
<recurrence_end control="optional"/>
<worker_team_key control="optional"/>
</holiday_coverages>
<device_timeframe>
<external_key control="required"/>
<dt_owning_device_key control="required"/>
<dt_owning_device_type control="required"/>
<dt_name control="required"/>
<dt_start_time control="required"/>
<dt_duration control="required"/>
<dt_day_pattern control="required"/>
<dt_exclude_holidays control="required"/>
</device_timeframe>
<event_domain_predicate>
<external_key control="required"/>
<predicate_name control="required"/>
<predicate_type control="required"/>
<ranking control="optional"/>
<important control="optional"/>
<predicate_value control="optional" type="joined"/>
<event_domain_key control="required"/>
</event_domain_predicate>
</company>
</alarmpoint-synchronizer>
Due to classpath issues, the properties file specified here cannot be named common.properties.
Description
-f
Specifies the XML configuration file; required for each data synchronization process.
-P
Optional flag that specifies the Staging Area properties file. If used, it overrides all settings in the
configuration file with the values in the properties file.
Note: the -P value overrides the one_db attribute specified in the configuration file. For example, if
the -P parameter is specified, then its value will be used even when one_db is set to true.
Meaning
Indicates complete failure of data synchronization (e.g., due to problems with the
configuration file, or because the error failure limit was reached).
Success : 57
Partial : 0
Failure : 0
: DS_PERSON_SUPERVISORS
Success : 54
Partial : 0
Failure : 0
: DS_EMAIL_DEVICES
Success : 44
Partial : 0
Failure : 0
: DS_IM_DEVICES
Success : 0
Partial : 0
Failure : 0
: DS_TEXT_PAGER_DEVICES
Success : 7
Partial : 0
Failure : 0
: DS_NUMERIC_PAGER_DEVICES
Success : 1
Partial : 0
Failure : 0
: DS_VOICE_DEVICES
Success : 8
Partial : 0
Failure : 0
: DS_TEXT_PHONE_DEVICES
Success : 5
Partial : 0
Failure : 0
: DS_GENERIC_DEVICES
Success : 0
Partial : 0
Failure : 0
: DS_BES_DEVICES
Success : 2
Partial : 0
Failure : 0
: DS_GROUPS
Success : 8
Partial : 0
Failure : 0
: DS_TEAMS
Success : 12
Partial : 0
Failure : 0
: DS_TEAM_MEMBERSHIPS
Success : 67
Partial : 0
Failure : 0
: DS_RECURRENT_COVERAGES
Success : 12
Partial : 0
Failure : 0
: DS_HOLIDAY_COVERAGES
Success : 1
Partial : 0
Failure : 0
: DS_DEVICE TIMEFRAME
Success : 1
Partial : 0
Failure : 0
: DS_EVENT_DOMAIN_PREDICATES
Success : 7
Partial : 0
Failure : 0
2007-05-14 14:05:26,795 INFO - Level=SYNCHRONIZER, type=SYSTEM_COMPLETE, status=SUCCESS
Description
Success
Represents the number of successfully updated rows (with the exception of DS_TEAM_
MEMBERSHIPS, which counts the number of Teams updated).
Partial
Represents the number of individual errors that would not completely fail a record.
Note that a record can have more than one partial error against it. Additionally, a record with at
least one partial will still be recorded as either a Success or a Failure. The total number of rows (or
Teams) processed for a table is the sum of the Success and Failure items.
Failure
Represents the number of rows that failed to update (with the exception of DS_TEAM_
MEMBERSHIPS, which counts the number of Teams updated).
Note that if both parent and child are marked for removal, the child record will result in a failure
count; however, the child record is still removed from xMatters. For example, marking the removal
of PersonA and PersonA's device (DeviceA) results in the removal of DeviceA being marked as
failure.
Summary of the actions the synchronization process performs (this is similar to the command line report described
above).
Detailed failure report showing all the failures for a particular table.
Note:
Although key information is saved during data processing, the complete Staging Area record is not saved. As a
result, if the Staging Area is modified after a data synchronization is run, the problem record may no longer
exist or may have been changed.
For further details about the Synchronization Report, see "Synchronization report" on page 324.
Logging
In addition to the Synchronization Report available in the xMatters web user interface, a separate set of log files are
stored in the logging subdirectory \logs. The specific location for \logs depends on where the xMatters Data
Synchronization Module is installed (e.g., for a default Windows installation: C:\Program Files\\AlarmPoint_
DataSync\logs).
The logs roll when they reach 5MB is size. For example, when a log reaches 6MB, the log folder will contain
two files: AlarmPoint.DataSync.log and AlarmPoint.DataSync.log.1 (AlarmPoint.DataSync.log contains
the latest data). By default, the logs will roll up to 20 times, after which the older data will be discarded.
Note:
You can control the logging detail level by modifying the Threshold attribute in the log4j.xml file (located in the
assets/config subfolder). From most to least detailed, the available log settings are DEBUG (default), INFO, WARN and
ERROR. For example, the following excerpt from the log4j.xml file modifies the logging level from the default
DEBUG to WARN:
<appender name="rootAppender" class="org.apache.log4j.RollingFileAppender">
<param name="maxBackupIndex" value="2"/>
<!-- 5M = 5 * 1024 * 1024 = 5242880-->
<param name="maxFileSize" value="5242880"/>
<param name="Threshold" value="WARN"/>
<param name="File" value="logs/AlarmPoint.DataSync.log"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %p - %m%n"/>
</layout>
</appender>
Multiple-Company Environments
In a multi-Company environment, each Company must have its own set of staging tables (staging area) so that
Companies can import/export data concurrently. Each staging area can be in a completely different database. However, if
a Companys staging area is located in the xMatters Service Provider database instance, it needs to be kept in a separate
schema.
Where <xMatters> is your xMatters installation folder, and <DatabaseType>is the type of database on which you
want to create the staging area.
Oracle
To create a staging area for an Oracle database:
1. Log in to SQLPlus as sysdba (sqlplus / as sysdba).
2. Create a table space(replace %TABLESPACE_NAME% with desired name):
CREATE TABLESPACE %TABLESPACE_NAME% DATAFILE '%NAME%.dbf' SIZE 600M AUTOEXTEND ON NEXT 100M;
3. Create a user (replace %TABLESPACE_NAME% with the name you defined in the second step and replace %USER_
NAME% with desired name.):
CREATE user %USER_NAME% IDENTIFIED BY "%PASSWORD%" default tablespace %TABLESPACE_NAME% quota
unlimited on %TABLESPACE_NAME% account unlock;
4. Grant permissions to the user (replace %USER_NAME% with the name defined in the third step):
GRANT
GRANT
GRANT
GRANT
GRANT
CREATE
CREATE
CREATE
CREATE
CREATE
SESSION TO %USER_NAME%;
TABLE TO %USER_NAME%;
SEQUENCE TO %USER_NAME%;
TRIGGER TO %USER_NAME%;
VIEW TO %USER_NAME%;
Click OK.
3. Create a login:
l
Under the Security folder, right-click Logins and select New Login.
Click OK.
4. Create a user:
l
Click OK.
Open Computer Management (Start > Administrative Tools > Computer Management)
Type the user name and password, and then click Save.
2. Use DB2's "Command Line Processor" to create a database; this process varies depending on the operating system
(refer to the DB2 documentation for information about how to use the "Command Line Processor" on different
Open the Command Line Processor (Start > All Programs > IBM DB2 > DB2COPY1 (Default) >
Command Line Tools > Command Line Processor)
Within the Command Line Processor, type in the following command, modifying %DATABASE_NAME% with
the name of the user account created in the step 1, and press Enter.
3. Ensure that you see the following message: The CREATE DATABASE command completed successfully.
Note:
The same name is being used for the database as user account.
4. Login as admin to the database using a SQL client tool (e.g., SQuirreL). The database name is specified in the
URL (use the name of the database created in step 2). For example:
jdbc:db2://1.2.3.4:50000/database_name
5. Create a table space (replace %TABLESPACE_NAME% with the name of the user account created in the first step):
CREATE TABLESPACE %TABLESPACE_NAME% MANAGED BY AUTOMATIC STORAGE INITIALSIZE 650M INCREASESIZE
50M;
Note:
The same name is being used for the database as user account.
6. Grant permissions to the user (replace %USER_NAME% and %TABLESPACE_NAME% with the name of the user account
created in the step 1):
GRANT CONNECT, CREATETAB ON DATABASE TO USER %USER_NAME%;
GRANT USE OF TABLESPACE %TABLESPACE_NAME% TO USER %USER_NAME%;
7. Log out admin and log in to the database as the new user.
8. Run the data_sync_staging_area.ddl script to create the staging tables.
On Oracle, create a schema, or on SQL Server, create a database in a database instance (or the main database
instance).
2. For each Company, create a properties file in which the location of a staging area is specified.
l
For example, create companyA.properties for companyA, specifying that the staging area of companyA is
on server 1.2.3.4 and in the database schema for user datasync-user1:
3. After modifying and saving the properties file, the information is still in a decrypted format that datasync does not
use. In the main datasync folder, run the following to produce an encrypted file that datasync can use:
APSecure.bat encrypt "plain_properties_file_path"
"encrypted_properties_file_path"
4. For each company, create configuration files for import/export in which the staging area to be used by the
Company is specified.
l
If desired, you can copy the example configuration files (e.g., located on Windows at
<xMHOME>\\AlarmPoint_DataSync\example\config
) to the main datasync folder (e.g., located on Windows at <xMHOME>/ \AlarmPoint_DataSync. You can
then modify the files to refer to the Companies in your xMatters deployment.) For example, create
alarmpoint-import-companyA.xml for data import, indicating that companyA will use the staging area
specified by companyA.properties:
<alarmpoint-synchronizer xmlns:xsi=http://www.w3.org/2001XMLSchema-instance
target="alarmpoint" failure_limit="100">
<company name="companyA" one_db="false" user="superadmin">
<staging_area properties_file="assets/config/companyA.properties" />
<site>
......
</site>
<attribute_category>
......
</attribute_category>
......
</company>
</alarmpoint-synchronizer>
5. To import/export for different companies concurrently, run the Data Synchronizer with different configuration files.
l
For example, run the following in three different console windows pointing to the datasync folder location:
DataSync.bat -f alarmpoint-import-companyA.xml
DataSync.bat -f alarmpoint-import-companyB.xml
DataSync.bat -f alarmpoint-export-companyC.xml
Error Flags
The following tables describes the known error flags that can occur with Data Synchronization:
Data Synchronization Error Flags
Error Message
Description
EMPTY_CONFIG
Error Message
Description
INVALID_CONFIG
NO_SYNC_TABLES
NO_EXTERNAL_KEY
BAD_ACTION
REMOVE_MISSING_RECORD
Indicates that the record specified for removal was not present in the
xMatters database.
This is not an actual error, but an informational message.
BAD_OBJECT_TYPE
Indicates that the row referenced an object that was not of the expected
type (e.g., if a Device referenced its owner and the owner was a Group
instead of a User).
This error is extremely unlikely.
SAVE_FAILED
NOT_FOUND
Indicates that the specified field references an object that cannot be found
in the database.
This means that either no object of that name exists (for non-synchronized
objects) or the external key specified was not found for this field (for
synchronized objects).
FAIL_TO_LOAD_SYNC_USER
Indicates that the User specified in the User attribute for Company in the
configuration file cannot be found. Ensure that the value specified in the
attribute matches an existing User ID or external key.
FIELD_ERROR
NO_PROPERTY
Error Message
Description
INVALID_VALUE
NO_IS_NEW
INACTIVE_PERSON
MISSING_REQUIRED
Indicates that the specified field or some required element of the row is
not present.
SPECIFIED_USER_HAS_NO_
PERMISSION_TO_BE_
SUPERVISOR
Indicates that the User specified to be a supervisor does not have the
proper Role associated with it. For more information about Roles, see the
xMatters installation and administration guide.
USER_ID for Users and GROUP_NAME for Groups need to be unique even against each other.
Look for records in the xMatters database that have the same data but different external keys.
External keys are case sensitive. For example, rmt003 and RMT003 are different values.
Note:
The referenced User does not have to be synchronized in this Data Synchronization run or even present in the
staging area, although it must have been synchronized at some time.
List of Tables
Day and Time Schedules for Devices
xMatters Components
Language Support
7
10
22
23
24
25
26
Virtualization Compatibility
27
Supported Databases
27
27
28
30
31
Hardware Checklist
32
Software Checklist
34
35
36
40
41
41
Configuration Checklist
44
46
46
47
47
48
59
60
61
61
E-1 ISDN Q.SIG (ISO 11572, ISO 11574 - QTE) Dialogic Configuration Sample
62
62
63
Database Properties
68
70
71
Database Properties
77
79
Node Settings
80
82
90
91
92
99
Node Types
111
113
117
120
120
122
122
123
Wavecom Fastrack GO
125
126
127
128
129
131
133
134
136
137
138
140
144
146
147
147
148
148
150
Node Resources
152
152
153
154
155
161
162
163
164
166
167
168
172
173
174
175
175
177
178
179
184
185
186
187
189
190
190
193
201
Notification Processing
201
201
202
202
203
213
214
Function details
230
234
235
235
239
241
248
254
260
262
266
Subscription Terms
267
270
279
280
285
287
289
293
296
302
303
Available Reports
305
308
309
311
312
315
318
320
320
358
380
380
380
381
ds_attribute_categories Table
382
ds_attributes Table
383
ds_bes_devices Table
383
ds_custom_field_join_values Table
385
ds_custom_fields Table
385
ds_email_devices Table
388
ds_event_domain_predicates Table
390
ds_generic_devices Table
391
ds_groups Table
392
ds_holiday_coverages Table
394
ds_im_devices Table
395
ds_numeric_pager_devices Table
396
ds_person_supervisor Table
399
ds_recurrent_coverages Table
399
ds_sites Table
400
ds_team_memberships Table
402
ds_teams Table
402
ds_text_pager_devices Table
404
ds_text_phone_devices Table
406
ds_user_custom_values Table
407
ds_user_join_attributes Table
408
ds_users Table
408
ds_voice_devices Table
412
414
414
alarmpoint-synchronizer.properties Settings
415
416
416
417
418
418
419
419
419
420
420
420
421
421
422
422
423
424
424
425
425
425
426
427
427
428
428
429
430
430
435
435
437
441
452 |
List of Figures
Basic Deployment
12
13
14
51
52
52
53
53
Service Starting
54
54
56
64
65
66
67
68
69
70
72
73
74
75
75
76
76
77
78
79
80
81
97
Companies page
98
102
103
109
110
Nodes page
111
113
115
119
131
135
151
155
156
Clusters page
157
160
192
194
195
200
210
211
215
216
217
218
219
219
221
222
223
224
225
Functions page
229
Permissions page
231
Roles page
234
237
238
240
242
Sites list
243
244
245
246
250
250
252
253
254
256
List of device types (your deployment may not support all types shown)
258
259
259
261
265
269
272
273
274
275
Subscription Managers
282
283
285
286
293
294
296
297
297
298
299
307
309
310
Event Summary
312
Notification Summary
314
Exhaustive Report
315
317
318
319
322
323
324
324
325
327
328
329
330
331
332
333
373
374
374
458 |
Index
A
about
Dialogic voice cards 50
adding
licenses 109
Administrators
details 241
managing 239
alarms, network 5
analog Dialogic voice cards
automated speech recognition 54
configuring 52
installing 50
installing drivers 51
Application Server Node
definition 111
details 113
failover 111
automated speech recognition 54
C
c3p0.properties file 358
Clusters
about 156
managing 156
command-line
Data Synchronization report 435
method in integrations 17
common.properties file 91
Companies
about 97
Administrators 239
details 98
login pages 104
managing 97
new 98
configuration
T-1 Dialogic voice cards 59-62
configuring
analog Dialogic voice cards 52
Subscription Domains 269
console install 74
Countries
about 244
managing 244
Custom Attributes
about 252
categories 252
Custom Fields
about 253
managing 253
custom holidays 247
Custom User Information 251
D
Data Synchronization
alarmpoint-synchronization element 414
command 434
company element 414
configuration file 414
error flags 441
example configuration file 431
external interface 379
installing 378
introduction 378
staging area 379
staging_area element 415
troubleshooting 441
database
connection string 91
increasing the connection pool 357
modifying the common.properties file 91
dataload 289
default
passwords 82
usernames 82
default ports 45
Device Engines
about 118
distributing threads 116
logging 119
managing 118
types 120
Device Types
about 257
managing 257
Dialogic 56
voice card 16
| 459
460 |
GSM Modem
Protocol Provider details 164
H
hard disk space 24
Health Monitor 198
Holidays
about 247
custom 247
managing 247
Site 248
I
Import Data 289
importing data 289
improving Node performance 116
installation 56
installing
component order 23
Data Synchronization module 378
Dialogic voice cards 50
hard disk space 24
licensing 20
NeoSpeech TTS 88
overview 20
post-installation tasks 85
system requirements 24
T-1 Dialogic voice cards 55
via console 74
via wizard 64
integration
Java Client 5
XML 5
Integration
application specific modules 17
open technologies 5
interface
Data Synchronization 379
J
Java Client
Agent 16
Agent notification requests 17
bi-directional messaging 6
custom integrations 17
Event 16
integration 5
Index
integrations 17
main applications 16
Management Systems 16
message 11
port defaults 46
running on Management System 11
sending request 17
JDBC driver 91
L
Languages
about 246
managing 246
last_sync_date Field 381
latency requirements 31
LDAP
log file 196
LDAP Servers 193
licenses
adding 109
licensing 20
list predicates 266
load data 289
locking external data 236
logging
Device Engines 119
LDAP 196
Reporting 302
M
MAPI
email engine 16
support 6
messaging
Blackberry support 6
engine 16
Event 6
instant 6, 16
paging/text support 6
panels 8
multiple-Company deployment
Company login pages 104
multiple-Company deployments
Company-specific components 97
SIP routing 136
N
NeoSpeech TTS 87
network
alarms 5
Ethernet 16
event example 5
multiple notification, example 7
port defaults 45
protocol support 6
security management 9
Node
performance tuning 116
Nodes
Application Server details 113
default port usage 47
managing 111
Notification Server details 114
Resources 150
starting and stopping 92
types 110
Notification
custom Action Scripts 17
distributed 7
Event definition 16
example table 7
modular achitecture 7
on multiple devices 7
user-defined scripting 7
Notification Server
multiple 6
Notification Server Node
definition 111
details 114
numeric pager 6
P
Password Policy 255
password, default 82
Permissions
about 228
setting for Roles 235
phone engine
Dialogic voice card 16
Virtual Phone 16
port defaults
Java Client 46
| 461
network 45
Nodes 47
Web User Interface 48
post-installation tasks 85
Predicates
Important flag 265
managing 263
Protocol Providers
about 157
adjusting maximum session size 116
GSM Modem 164
managing 159
R
Reporting
available types 305
introduction 302
reports
about 302
accessing 302
sorting results 303
types 305
Reports
Important predicates 265
Resources
about 150
managing 150
types 151
Roles
about 228
managing 233
setting Permissions 235
S
SEND
Reporting 302
Single Sign On 107
SIP
routing 136
Sites
about 242
details 243
Holidays 248
managing 242
SMS 9
notifiction 6
support 6
462 |
SMTP 9, 16
SMTP support 6
SNPP 9
software
T-1 Dialogic voice cards 56
sorting
report results 303
Speech Recognition 6
SSO 107
staging area
about 379
requirements 379
status
Available Reports 305
Reporting 302
request 17
Subscription Domains
configuring 269
details 269
subscriptions
preparing panels 268
Subscriptions
configuring Domains 269
Domain details 269
system requirements 24
latency 31
T
T-1 Dialogic voice cards
configuration 59-62
Configuration Manager 57
installing 55
software 56
Universal Dialogic Diagnostics utility 57-58
table elements
about 416
Text-To-Speech Engines
changing speech rate 86
NeoSpeech 87
text predicates 266
Time Zone
support 7
Timezones
about 245
managing 245
troubleshooting
Data Synchronization 441
Index
U
Universal Dialogic Diagnostics utility
T-1 Dialogic voice cards 57-58
User Service Providers
about 191
managing 191
username, default 82
V
voice cards
SeeDialogic voice cards 50
VOIP 136
W
WCTP 9
Web Server
starting and stopping 93
web session timeout 360
Web User Interface
default port usage 48
wizard install 64
X
XML
integration 5
message 11, 16
| 463
464 |
www.xMatters.com
1 2 647 alcosta blvd., suite # 4 25 san ram on ca 945 83 usa
p : + 44 (0 ) 80 0 6 52 7 7 1 1
Copyright 2014 xMatters. All rights reserved. All other products and brand names are trademarks or registered trademarks of their respective holders.