# Service objects

A service object is a functional unit within a service that represents a component of a managed resource. One service that makes use of service objects is the NMS Voice Message (VCE) service. The managed resource that VCE operates upon is a set of voice messages. Since voice messages can exist in either a file or in memory, VCE provides service objects to facilitate access to them depending upon their location.

Files containing one or more playable voice messages are called prompt files. Through the VCE service interface, an application can perform the following on a prompt file:

- Manipulate its contents

- Get a list of the messages it contains

- Play a message

- Determine the highest message number

To support prompt file-related interface functions, the VCE service implementation maintains bookkeeping information about the prompt file. This bookkeeping is done within a service object. Bookkeeping information includes static information such as filename and number of messages in file. It also includes dynamic information such as what message should be played next. This is analogous to the seek position in a typical operating system file operation.

The following illustration depicts the relationship of a file object to both the VCE service and to the associated prompt file.

VCE file object