Skip Headers
Oracle® Real-Time Collaboration Administrator's Guide
10g Release 1 (10.1.2)

Part Number B25460-03
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

4 rtcctl Command-Line Utility for Oracle Real-Time Collaboration

The rtcctl utility provides a command-line interface for administering and configuring the Oracle Real-Time Collaboration system. The utility supports a variety of commands to let you start and stop Oracle Real-Time Collaboration processes, view their current state, and configure your Oracle Real-Time Collaboration system. This chapter contains the following sections:

Running rtcctl

The rtcctl utility is available on all platforms under the $ORACLE_HOME/imeeting/bin directory. There are two ways to run rtcctl commands interactively.

You can also create standard UNIX or Linux shell scripts to run rtcctl commands, as described in "rtcctl Scripts".

The following sections describe how to use rtcctl in interactive mode, and how to run rtcctl scripts.

Using rtcctl in Shell Mode

To start rtcctl in its shell mode, enter rtcctl in an operating system shell or command window, without any options:

$ORACLE_HOME/imeeting/bin> rtcctl
rtcctl>

You can then enter as many rtcctl commands as you want:

rtcctl> setProperty -siteId 1024536 -pname SmtpHost -pvalue www.mycompany.com
rtcctl> setProperty -siteId 1024536 -pname SmtpPort -pvalue 25
rtcctl>


Caution:

You can use rtcctl to set sensitive data. All entries made in shell mode are stored in the Oracle Real-Time Collaboration log files. See "Keeping rtcctl Command Arguments Secure" for details about how to enter rtcctl commands securely.

To display a list of supported commands, enter help:

rtcctl> help

To get specific instructions for a particular command, enter the command followed by the -help option:

rtcctl> getState -help

Stop command-line mode by entering exit:

rtcctl> exit

rtcctl Scripts

You can write simple scripts for the rtcctl utility, consisting of rtcctl commands and optional comments. Run the scripts using standard input redirection as in the following example.

$ORACLE_HOME/imeeting/bin> rtcctl < myscripts/sample

Your scripts can contain any supported rtcctl commands, comment lines (any line that begins with the hash symbol (#)), and the special echo [on/off] command for echoing commands executed by scripts.

Keeping rtcctl Command Arguments Secure

When you use rtcctl in command-line mode, operating system command shell functions such as ps can identify the values of arguments passed. If you pass a secure value in one of these commands (for example, an obfuscated wallet password) the security of that value is compromised. Oracle strongly recommends that you do not enter rtcctl commands with sensitive values using command-line mode.

In addition, when using either command-line mode or rtcctl shell mode, all data passed is stored in log files in the $ORACLE_HOME/imeeting/logs/rtcctl directory. This means the values to sensitive arguments could be found in the logs as well.

Therefore, to ensure that a series of commands are entered securely, so that no one can determine what values were entered for these commands, Oracle recommends that you use rtcctl in shell mode, and use the no-command-logging option, as follows:

rtcctl> set no-command-logging=true 
rtcctl> setProperty -pname WalletPassword -pvalue string
rtcctl> set no-command-logging=false

This example prevents any applications from gaining access to the obfuscated string entered as an argument while setting the WalletPassword property.

Setting System, Instance, Component, and Site Values

As discussed in Chapter 3, you can use rtcctl to configure an entire system or particular instances or components. Table 4-1 shows the possible values for any of the scope-related options for all rtcctl commands; you may use these values with any command that includes one of these options.

Table 4-1 Valid Values for System, Site, Instance, or Component Options

rtcctl Option Scope it Affects Valid Values

-system

Entire system

true/false

-i

An instance

The full instance name: instance_name.computername.domainname, where instance_name is a name you assign as you install the instance.

Use rtcctl listInstances to display the IDs for all instances for this system, or click the System tab in the Web Client pages to display all instances.

Example: myinst.computer.mycompany.com

-cid

A single component, by its ID

A number assigned by the Oracle Real-Time Collaboration system to this component when you install it.

Use rtcctl listComponents to display the IDs for all components in the current instance, or click the System tab in the Web Client pages to display all components and their IDs for your system.

-cname

Any component of a specific name

Any of the following names:

oc4j_imeeting: Oracle Real-Time Collaboration Application for J2EE

rtc-confsvr: Web Conferencing Server

rtc-connmgr: Client Connection Manager

rtc-docconv: Document Conversion Server

rtc-imrtr: Oracle Presence Server

rtc-mx: Multiplexer

rtcpm: Process Manager

rtc-rdtr: Redirector

rtc-voiceconv: Voice Conversion Server

rtc-voiceproxy: Voice Proxy Server

-ct

Any component of a specific type

Any of the following types:

confsvr: Web Conferencing Server

connmgr: Client Connection Manager

docconv: Document Conversion Server

imrtr: Oracle Presence Server

mx: Multiplexer

oc4j: Oracle Real-Time Collaboration Application for J2EE

rdtr: Redirector

rtcpm: Process Manager

voiceconv: Voice Conversion Server

voiceproxy: Voice Proxy Server

-siteID

A single site, by its ID

A number assigned by the Oracle Real-Time Collaboration system to this site when you create it.

Click the Sites tab in the Web Client pages to display all sites and their IDs for your system.

-force

This system, site, instance, or component, and any sites, instances, or components that inherit its properties

true or false


Forcing Property Inheritance

By default, a property set on a system is automatically inherited by the site. If the administrator sets a different value for that property for the site, the new site value takes precedence over the system value.

However, administrators can require that a property be inherited by using the -force option. The -force option causes the property to be inherited by all sites, instances, or components that inherit the property from its parent.

For example, assume an administrator disables chatting within a Web conference for the entire Oracle Real-Time Collaboration system, by entering:

rtcctl> setProperty -pname ChatEnabled -pvalue false -system true

Any site created on this system will inherit this setting. If the administrator later decides that site 435987 should allow chat, the administrator can enter:

rtcctl> setProperty -pname ChatEnabled -pvalue true -siteId 435987

Conferences held at that site would display the Chat interface; any other conference would not.

However, suppose that the administrator decides that no user should ever be allowed to use the chat option in a Web conference held on this system, or on any site created on it. The administrator can enter:

rtcctl> setProperty -pname ChatEnabled -pvalue false -system true -force true

Now even if a site administrator uses the Application Properties tab on the Sites page for that site to enable chat in conferences, it would not have any effect. The chat option would still not be available in conferences, because the setting for the system has been forced on all sites, instances, and components.

List of rtcctl Commands

Table 4-2 provides a brief summary of all rtcctl commands.

Table 4-2 rtcctl Commands

Command Use to

addGroup


Create a group for group presence services

addGroupMember


Add a user to a group created for group presence

addSysDialin


Add a dial-in number for voice conferencing

deleteGroup


Delete a group for group presence services

deleteGroupMember


Delete a user from a group created for group presence.

deleteSysDialin


Delete a voice conferencing dial-in number

describeProperties


Displays the definition of any property, including default value and scope.

exit or quit

Exit rtcctl command-line mode

getMonitorStats


Get monitoring statistics

getGroups


List all groups created for group presence services

getGroupMembers


List all members of a group created for group presence services

getMonitorStats


Display monitoring statistics for a system, instance, or component

getPids


Get identifiers for current Web Conferencing processes

getProperties


Get the current value of properties at a specified scope

getProperty


Get the current value of any property

getState


Determine the current status of Web Conferencing components

getSysDialins


Display all dial-in numbers currently set

help


Display a list of available commands

listComponents


Display current properties for Web Conferencing components

listInstances


Display current properties for Web Conferencing instances

modifyRole


Set or change roles for any Web Conferencing user

runTests


Run status tests on the Web Conferencing system

setProperty


Set properties to configure the Web Conferencing system

start


Start a Web Conferencing instance

stop


Stop a Web Conferencing instance

versions


List version information for an instance or component


The following sections discuss the rtcctl commands, grouped by usage.

Starting and Stopping an Instance

You use the start and stop commands to start and stop any instance or component processes.


Note:

Although the start and stop commands let you start and stop individual components for administrative purposes, Oracle recommends that you start or stop only a complete instance whenever possible.

start

Starts the current instance, or individual components in the current instance. See Table 4-1 for the valid values for instance and component options.

start 

Starts the RTC Process Manager and all the components in the current instance. This is the recommended way to start an instance, because it handles all startup dependencies.

start -i instance-name

Start all components in a specific instance.

start -cid component-ID

Start the component with the given ID.

start -cname component-name

Start the component with the given name.

start -ct component-type

Start the component with the given type.


Note:

The start command, without any other options, starts the Process Manager along with the other components. The Process Manager must be running in order to use the start command with any other options to start individual processes. See Chapter 5 for more information about the Process Manager.

Example 1: Starting a Component with a Specific ID

To start a component with ID 10001 in the current instance, enter:

rtcctl> start -cid 10001

Note:

The component with the ID you enter must have previously been running on the instance where you enter the command.

Example 2: Starting a Component with a Specific Name

To start a component named rtc-confsvr (the Oracle Web Conferencing Server) in the current instance, enter:

rtcctl> start -cname rtc-confsvr

Note:

The component with the name you enter must have previously been running on the instance where you enter the command.

stop

Stops the current instance, or individual components in the current instance. See Table 4-1 for the valid values for instance and component options.

stop

Stop all the components in the current instance. This is the recommended way to stop an instance, because it stops all components in the instance in appropriate order.

stop -i instance-name

Stop all components in a specific instance.

stop -cid component-ID

Stop the component with the given ID.

stop -cname component-name

Stop the component with the given name.

stop -ct component-type

Stop the component with the given type.

Example 1: Stopping a Component with a Specific ID

To stop a component with ID 10001, enter:

rtcctl> stop -cid 10001

Note:

The component with the ID you enter must be running on the instance where you enter the command.

Example 2: Stopping a Component with a Specific Name

To stop any component named rtc-confsvr, enter:

rtcctl> stop -cname rtc-confsvr

Note:

The component with the name you enter must be running on the instance where you enter the command.

Listing System Information

Three informational commands, listInstances, listComponents, and versions, let you display details about parts of your system.

listInstances

Lists all the instances in the Oracle Real-Time Collaboration system.

rtcctl> listInstances
INSTANCE NAME                  HOST NAME                IMT HOME
instance1.mycompany.com        host1.mycompany.com      C:/core/rtc
instance2.mycompany.com        host2.mycompany.com      /u02/90200b/rtc

listComponents

Lists the components in any Oracle Real-Time Collaboration instance. See Table 4-1 for the valid values for component and instance options.

listComponents

List information about all components on the current instance.

listComponents -i instance-name 

List all the components for a particular instance.

listComponents -cid component_ID

List the component with the given ID.

listComponents -cname component-name [-i instance-name]

List the component with the given name. If -i is used, the component with the given name in the given instance is listed.

listComponents -ct component-type [-i instance-name]

List the component with the given type. If -i is used, the component with the given type in the given instance is listed.

Example 1: Listing Components in the Current Instance

To list the components in the current instance, enter:

rtcctl> listComponents
ID      NAME           TYPE       DESCRIPTION              NUM_PROCS 
10007   rtc-connmgr    connmgr    IM Connection Manager    2         
10000   rtc-confsvr    confsvr    Web Conferencing Server  4         
10006   rtc-imrtr      imrtr      IM Router                1         
10008   rtc-voiceproxy voiceproxy Voice Proxy Server       1         
10004   rtcpm          rtcpm      RTC Process Monitor      1         
10001   OC4J_imeeting  oc4j       OC4J                     1         
10003   rtc-rdtr       rdtr       Redirector               1         
10002   rtc-mx         mx         Multiplexer              1         
10005   rtcctl         rtcctl     RTC Command-Line Control 1    

Example 2: Listing Components for a Specific Instance

To list the components in a different instance (instance1.company.com), enter:

rtcctl> listComponents -i instance1.company.com
ID      NAME             TYPE       DESCRIPTION                NUM_PROCS
10003   rtc-voiceconv    voiceconv  Voice Conversion Server    1
10004   rtc-docconv      docconv    Document Conversion Server 1

Example 3: Listing Components with a Specific ID

To list the component with the ID 10001, enter:

rtcctl> listComponents -cid 10001
ID      NAME             TYPE       DESCRIPTION                NUM_PROCS
10001   OC4J_imeeting    oc4j       OC4J                       1

Example 4: Listing Components with a Specific Type

To list the components in the current instance with the type confsvr, enter:

rtcctl> listComponents -ct confsvr
ID      NAME             TYPE       DESCRIPTION                NUM_PROCS
10000   rtc-confsvr      confsvr    Web Conferencing Server    4

versions

Lists the software versions for an instance or components. See Table 4-1 for the valid values for instance and component options.

versions [-i instance-name]

List versions for all components in the current instance or a specified instance.

versions -cid component-ID

List the version for a specific component, by its ID.

versions -cname component-name [-i instance-name]

List the versions for all components with a specific name, and optionally for a specific instance.

versions -ct component-type [-i instance-name]

List the versions for all components with a specific type, and optionally for a specific instance.

Example 1: List Versions for the Current Instance

To list the software versions running on all components in the current instance, enter:

rtcctl> versions
ID      NAME                TYPE           VERSION                  
10000   rtc-confsvr         confsvr        10.1.2.0.0 3.0.3.0.0_050614.1514
10004   rtcpm               rtcpm          10.1.2.0.0 3.0.3.0.0_050614.1514
10001   OC4J_imeeting       oc4j           10.1.2.0.0 3.0.3.0.0_050614.1514
...

Example 2: List Versions for a Component on a Specific Instance

To list the software version of the Document Conversion Server on myinstance.mycompany.com, enter:

rtcctl> versions -ct docconv -i myinstance.mycompany.com
ID        NAME              TYPE           VERSION
10010     rtc-docconv       docconv        10.1.2.0.0 3.0.3.0.0_050614.1514

Setting and Displaying Properties

You configure the Oracle Real-Time Collaboration system by setting properties. The setProperty, getProperty, getProperties, and describeProperties commands let you set and display property details.

See Chapter 3 for information about the properties you can set. That chapter also provides specific syntax for each property.

setProperty

Sets a property to configure a Oracle Real-Time Collaboration system, instance, component, or site. See Table 4-1 for the valid values for system, instance, component, and site options.

rtcctl> setProperty -pname property-name -pvalue property-name

Set the value for a property at instance level.

rtcctl> setProperty -cid component-id -pname prop_name -pvalue prop_value 

Set the value of a property for the component with the given ID.

rtcctl> setProperty -cname component_name [-i instance_name] -pname prop_name -pvalue prop_value

Set the value of a property for the component with the given name in the current instance. If -i is used, it sets the property for the component of the given name in the given instance.

rtcctl> setProperty -ct component-type [-i instance-name] -pname prop_name -pvalue prop_value

Set the value of a property for the component with the given type in the current instance. If -i is used, it sets the property for the component with the given type in the given instance.

rtcctl> setProperty -siteId site-id -userName first.last@domain.com -pname property_name -pvalue property_value

Set the value for a property at a site and user level.

rtcctl> setProperty -system true -pname property_name -pvalue property_value

Set the value for a property at the system level.

rtcctl> setProperty -siteId site-id -pname property_name -pvalue property_value

Set the value for a property on a particular site.

rtcctl> setProperty -pname property_name -pvalue "[\"value1\", \"value2\"]"

Set the value for a property that allows multiple values. Multiple values are entered as an array. Each value is surrounded by quotation marks preceded by backslashes, the array is enclosed in brackets, and the entire property value is enclosed in quotation marks.

rtcctl> setProperty -pname property-name -pvaluenull true|false

Sets the value of a property to null if -pvaluenull is true. Use this to unset a property so that it has a null value. Some properties interpret null in a special manner. For example, the GlobalWebhost property, once configured, cannot be unset unless set to a value of "null." By default, the value for -pvaluenull is false, in which case a -pvalue is required.


Note:

If you want to set a property value to null, you must use the -pvaluenull option. Using the -pvalue option to set a value to null (-pvalue "null") will set the property to the string "null" rather than to a null value.

rtcctl> setProperty -force true -system true -pname property-name -pvalue value

Forces a property be set to true on all instances in this system. An administrator can use the -force option in any rtcctl command, to force all inherited properties to adhere to a particular property setting. This prevents users from overriding the settings using Preference, or site administrators from overriding properties for a particular site. The -force option is a simple Boolean option that is either true or false. It can be set for any property.

Administrators should consider using the option for any property values they want to strictly control.


Note:

In the examples that follow, the -pvalue option is generally shown without using quotation marks around the value given. Quotation marks are only required for a value if it contains a space. In Chapter 3, any properties that require quotation marks around the value are noted as such.

Example 1: Setting a Property for an Instance

To set the ApacheWebHost property for the current instance to imeeting4.company.com, enter:

rtcctl> setProperty -pname ApacheWebHost -pvalue imeeting4.company.com

Example 2: Setting a Property for a System

To set the systemwide log-level to SEVERE, enter:

rtcctl> setProperty -system true -pname LogLevel -pvalue SEVERE

See Chapter 3 for examples of how to set each Oracle Real-Time Collaboration property.

getProperty

Gets a property at a specified scope: system, instance (default), component, and site. See Table 4-1 for the valid values for system, instance, component, and site options.

rtcctl> getProperty -pname property_name 

Get the value for the property for this instance.

rtcctl> getProperty -pname property_name -verbose true

Get the value for the property for this instance, along with additional information such as actual and effective values.

rtcctl> getProperty -cid component-id  -pname property_name 

Get the value of the property for the component with the given ID.

rtcctl> getProperty -cname component-name [-i instance-name] -pname  property_name 

Get the value of the property for the component of the given name in the current instance. If -i is used, it gets the property for the component of the given name in the given instance.

rtcctl> getProperty -ct component-type [-i instance-name] -pname property_name

Get the value of the property for the component with the given type in the current instance. If -i is used, it gets the property for the component with the given type in the given instance.

rtcctl> getProperty -system true -pname property_name 

Get the value for the property at the system level.

rtcctl> getProperty -siteId site-id -pname property_name 

Get the value for all the properties at the site level for the specified site.

rtcctl> getProperty -pname property_name -actualvalue true -system true|-siteid site-id|-cid component-id|-i instance-name|-username first.lastname@domain.com 

Get the actual value for the property at the specified scope. See "Determining a Property Value at a Specific Scope" for details.


Note:

You can also view the value of properties set for a system, site, or instance using the Status report under the System tab. To do so, click System, make sure that Show Properties is checked on, then click Expand All to see all property settings.

Determining a Property Value at a Specific Scope

As described in "Multiple-Scope Properties", properties can be inherited from one level of the Oracle Real-Time Collaboration system to another. For example, a site can inherit properties from its parent system.

When you use the getProperty command to display a property value, it shows the effective value for that property, which is the value of the property used at runtime by the system. That value is based on the values set for the property with setProperty, any settings made by users using Preferences or the Schedule options for a conference, and the property inheritance rules.

When you set a property with setProperty, you are setting its actual value, which is stored for a property at whatever scope you used to set the property. For example, if the ChatEnabled property is set for a site, the property's actual value is the value that was set for the site scope. The actual value is not valid at the system level, because the property was not set on the system.

Therefore, if you want to view the value of a property that you set at a site scope, you must include the -actualvalue true and -siteId siteID_value options with the getProperty command.

Because an administrator can set a property for a specific user, as described for setProperty, and because many properties can also be set by users or site administrators using various options in the Oracle Real-Time Collaboration Web Client or the Oracle Web Conferencing console (see Table 3-3), you may need to get the property value for the site and a specific user. For example, ChatEnabled can be set by a user in Preferences, so to display the value of ChatEnabled you may need to include the -username option as well as the -siteId option, as follows:

rtcctl> getProperty -pname ChatEnabled -actualvalue true -siteId 123456 -username jane.doe@mycompany.com

The possible scope levels at which a property's actual value may be set are shown in Table 4-3.

Table 4-3 Scope Levels for Actual Values of Properties

Scope Set At Arguments to Specify Scope Level

system

-actualvalue true -system true

site

-actualvalue true -siteId site_number

site and users

-actualvalue true -siteId site_number -userName user.name@domain.com

instance

-actualvalue true -i instance_name

component

-actualvalue true -cid component_ID

Example 1: Getting a Property for the Current Instance

To get the ApacheWebHost property for the current instance, enter:

rtcctl> getProperty -pname ApacheWebHost 
The effective value for instance myinstance.system1.mycompany.com of the property "ApacheWebHost" is "rtcserver1.mycompany.com"

Example 2: Getting a Property for the System

To display whether the system has SSL security enabled, enter:

rtcctl> getProperty -system true -pname RTCSSLSupportEnabled 
The effective value at system scope of the property "RTCSSLSupportEnabled" is "true"

Example 3: Getting an Actual Property Value for a Site

To view the value of a property that you set for a site, enter:

rtcctl> getProperty -siteId 1010506 -pname AdminEmail
The actual value at site scope of the property "AdminEmail" is "site_manager@mycompany.com"

For a list of all possible properties, see Chapter 3.

getProperties

Displays an alphabetized list of all properties at the specified scope and higher. You can display properties for the system and for an instance, component, or site. See Table 4-1 for the valid values for system, instance, component, and site options.

rtcctl> getProperties

Display the values for the properties for this instance and for the system.

rtcctl> getProperties -ct component-type [-i  instance-name]

Display the value of all the properties for the component with the given type in the current instance. If -i is used, it gets the property for the component with the given type in the given instance. It will return properties for the component, instance, and system.

rtcctl> getProperties -system true 

Display only system properties.

rtcctl> getProperties -siteId site-id

Display the value for all the properties for the specified site and the system.

rtcctl> getProperties -actualvalue true -system true|-siteid site-id|-cid component-id|-i instance-name|-username first.lastname@domain.com

Displays the values for properties used by a system, instance, site, or component at runtime. This is the actual value of the properties. See "Determining a Property Value at a Specific Scope", for more details about effective value and actual value.

rtcctl> getProperties -maxlevel category

Displays properties filtered by the category category, where category can have the following value:

  • general: This is the default.

  • advanced: displays advanced properties.

  • internal: displays internal properties.

  • all: displays all properties.


Note:

You can also view the value of properties set for a system, site, or instance using the Status report under the System tab. To do so, click System, make sure that Show Properties is checked on, then click Expand All to see all property settings.

Example 1: Displaying the Properties for the System Only

To display only system-level properties, enter:

rtcctl> getProperties -system true -maxlevel all
AcceptableJoinLatency="25 s"
AcceptableNetworkLatency="300 ms"
AllSitesID="100"
ApplicationContainerName="RTC"
...

Note:

The command displays all properties set for your system, including those set by default or through the Oracle Real-Time Collaboration Web Client. The properties you might normally set using setProperty to configure your system are discussed in Chapter 3.

Example 2: Displaying the Properties for a Component by Type

To display the properties of all Web Conferencing server (confsvr) components on this instance, as well as instance and system properties, enter:

rtcctl> getProperties -ct confsvr
AcceptableJoinLatency="25 s"
AcceptableNetworkLatency="300 ms"
AdditionalLocationsServed="(null)"
AdminEmail="john.smith@mycompany.com"
AllSitesID="100"
ApacheProtocolSecure="false"
ApacheTunnelHost="(null)"
ApacheTunnelPort="443"
ApacheWebHost="computer.mycompany.com"
ApacheWebPort="80"
ApacheWebSecurePort="4443"
...

Example 3: Displaying the Actual Values of Properties for a Site

To display the value of properties used at runtime by a specific site, enter:

rtcctl> getProperties -siteId 1010506 -actualvalue true
ChatEnabled="false"
PublicChat="true"
WelcomeHeaderText="Training Conference Site for Big Company, Inc."

describeProperties

Displays the definition for the specified property, including the default value and the scope.

rtcctl> describeProperties -pname property_name 

Displays the definition for the specified property. Even if you don't know the exact property name, you can enter the first letter or the first part of the property name to display a list of all matching properties.

Example 1: Displaying the Definition of a Specific Property

To display the definition of the RememberPasswordEnabled property, enter:

rtcctl> describeProperties -pname RememberPasswordEnabled
Property name: RememberPasswordEnabled
Data Type: Boolean
Default Value: true
Applicable Scope Type(s): system
Level: Advanced

Example 2: Displaying the Definitions for All Properties That Begin With a Specific Letter or Phrase

To display the definitions of all properties that begin with the letter R, enter:

rtcctl> describeProperties -pname R

To display the definitions of all properties that begin with "Enable", enter:

rtcctl> describeProperties -pname Enable

Setting User Roles

As described in "Oracle Real-Time Collaboration User Management and User Roles", the Oracle Real-Time Collaboration system uses the Oracle Internet Directory store to identify users. A business administrator can use the modifyRole command to assign roles to these users to allow them access to various features of the system.

modifyRole

Sets a user's role, to control what features of the Oracle Real-Time Collaboration system the user may access. By default, you set the user's role for an entire system, as follows:

rtcctl> modifyRole -username username -rolename rolename

Assigns a role to a named user. The user's name is that shown in the Oracle Internet Directory, such as john.smith. The role can be any of the following:

  • enduser: Can use any of the standard Oracle Real-Time Collaboration features, such as scheduling a conference, uploading materials, and viewing conference and instant messaging archives.

  • businessmonitor: Can use standard Oracle Real-Time Collaboration features, and can also view the Monitor and Reports tabs to monitor current conferences and see reports regarding conference and messaging history, component usage, system problems, security information, and user feedback about conferences.

  • businessadmin: Can use any of the previously listed features, and can also view the Site and System tabs to create and manage Oracle Real-Time Collaboration sites and view statistics about all instances and components of the system.


Note:

Only a user with the businessadmin role can set other users' roles. As discussed in "Oracle Real-Time Collaboration User Management and User Roles", you must set at least one businessadmin user for an Oracle Real-Time Collaboration installation.

You can also assign a role to a user of a particular site. When the user logs in to the site, he will be able to interact with the site at whatever level role you have assigned him. Include the site ID as follows:

modifyRole -siteId siteID -username username -rolename rolename

Example 1: Setting a Business Administrator Role

To set jane.roe to be a business administrator, enter:

rtcctl> modifyRole -username jane.roe -rolename businessadmin

Example 2: Setting a Business Monitor for a Site

To set sam.smith to be a business monitor for site 123456, enter:

rtcctl> modifyRole -siteId 123456 -username sam.smith -rolename businessmonitor

Determining a User's Role

To determine the role that was assigned to a user using the modifyRole command, you can use the getProperty command as follows:

rtcctl> getProperty -pname SiteRoleId -userid userid|-username username -siteId site-id

The value returned is either 2 (enduser role), 4 (businessadmin role), or 6 (businessmonitor role).

Setting Conference Dial-In Information

If you use streaming voice conferences, the addSysDialin, deleteSysDialin, and getSysDialins commands let you manage the dial-in numbers for any of your phone conference vendors. See Chapter 3 for more details and examples of how you might set dial-in information.

addSysDialin

Sets a named dial-in with a preprogrammed phone number that users can choose when scheduling a conference. You can enter a complete number with conference ID and password for a recurring phone conference, or enter a template number with text indicating where users need to substitute their own information. When users select this dial-in, they can edit the number in the text field.

rtcctl> addSysDialin -name dialin-name -sequence dialin-sequence [-default true] 

Adds a dial-in with a specified name and number (sequence). If -default is set to true, this dial-in is the default for all users of the Oracle Real-Time Collaboration system.


Note:

The Voice Conversion Server handles the actual dialing of the number. If your company has a prefix that must be entered to get an outside line, you set that prefix using the VoiceDialInPrefix property. Do not enter the prefix in the dial-in. See "Setting Up Voice Conversion Servers for Oracle Real-Time Collaboration" for more details.

Example 1: Setting a Default Dial-in for a System

To set a dial-in named Standard Conference that can be used by all users as a default, enter:

rtcctl> addSysDialin -name "Standard Conference" -sequence "18005551234,,<Conf ID>#<Passcode>#,,,,,,,,,,#" -default true
New system dialin created with id = 21994

The Oracle Real-Time Collaboration system automatically assigns an ID number to the dial-in.

In the previous example, users must remove the angle brackets and the text inside it to type in their conference ID and passcode for a specific conference. The commas (,) cause dialing to pause for 1 second. The hash (#) symbol is included because it is required by this vendor for users to complete entering an ID or password. If your phone conference system includes additional messages to which the user must respond by pressing #, you can include commas to pause during the message and a # for the response.

Example 2: Setting a Dial-in for a Recurring Conference

To set a dial-in for a recurring conference at 1-800-555-1234 with ID 80904 and passcode 56221, enter:

addSysDialin -name "Sales Force Mtg" -sequence "18005551234,,80904#56221#,,,,,,,,,,#"

getSysDialins

Displays the currently set dial-ins.

rtcctl> getSysDialins
ID     NAME                   SEQUENCE
21994  Standard Conference    18005551234,,<Conf ID>#<Passcode>#,,,,,,,,,,#
21998  Sales Force Mtg        18005551234,,80904#56221#,,,,,,,,,,#

deleteSysDialin

Deletes an existing dial-in number. You can delete the dial-in by entering either its name or its ID. For example, to delete a conference named Standard Conference, enter:

rtcctl> deleteSysDialin -name "Standard Conference"
Standard Conference has been deleted

To delete a conference with the ID 21994, enter:

rtcctl> deleteSysDialin -id 21994
Dialin with id 21994 has been deleted

Managing Groups for Group Presence

Oracle Real-Time Collaboration Integration Services include group presence services that let you create applications to support live, online chat with identified persons, for example support or sales personnel. These persons are part of a special group that the group presence service contacts with a queued chat. Any member of the group can respond to the queued chat, and can also see the other chats that are currently occurring with other users. There are two types of groups that can be created: answer groups, and broadcast groups. The following sections describe the basic steps to create these groups.

See the Oracle Real-Time Collaboration Application Developer's Guide for more details about the available group presence services.

Creating and Using an Answer Group

The following example outlines a typical scenario for setting up and using group presence to support live help for a support team at Big Company. In this example, the company's domain name is big_company.com, and the name of the group created by administrators is "support."

  1. An administrator uses rtcctl addGroup to create a group called "support."

  2. An application engineer creates an application that uses Oracle Real-Time Collaboration integration services to post a message to the support group chat queue whenever a customer clicks a Get Help button on a web page.

    The integrated services called by the application will post messages to the group at support@groups.big_company.com (that is, group_name@groups.company_domain).

  3. The support engineers add the support group to their contact lists.

    Each engineer must add the group using the Add Contact by ID option in the Oracle Messenger window. Each engineer would add answer.support@groups.big_company.com (that is, answer.group_name@groups.company_domain).

  4. A customer clicks the Get Help button on the web page with the integrated application.

  5. The customer sees the Oracle Messenger guest user chat window, enters a question, and clicks Send.

  6. The message is sent to the answer.support group. All members receive a notification that a message has been received.

  7. A support group member opens the queued chat window and replies to the customer. They can continue to chat using Oracle Messenger, invite others from Big Company to join, or open a Web conference from the chat.

    Each individual chat in which an agent participates appears under a tab in the chat queue window, similar to the way a regular chat window can show multiple simultaneous chats, each under its own tab.

Creating and Using a Broadcast Group

A company can also use group presence services to create a group used to broadcast messages. In the following example, a company with domain name "bigsales.com" has set up a broadcast group named "salesnews" for distributing sales-related information to its sales team.

  1. An administrator uses rtcctl addGroup to create a group called "salesnews."

  2. The sales team members add the support group to their contact lists.

    Each member of the sales team must add the group using the Add Contact by ID option in the Oracle Messenger window. Each member would add salesnews@groups.big_company.com (that is, group_name@groups.company_domain).

  3. Any group member can now send a message to the group exactly as they might send a mail to an individual contact. The message is sent to the salesnews group.

  4. All members receive the message, and can reply to it.

addGroup

Adds a new group for group presence services.

rtcctl> addGroup -groupname group_name -type group_type -owner group_owner -subscription group_subscription_type -permission permission_value -groupdisplayname group_display_name

Creates a group with the given parameter values. The values for each option are:

  • group_name: The name of the group that is prepended to @groups.company_domain. This is the group ID that members of the group would enter to add the group to their contacts list, and the ID that is used by the integrating service to post messages to the group.

  • group_type: Either A for an answer group, or B for a broadcast group, as described in "Creating and Using an Answer Group" and "Creating and Using a Broadcast Group".

  • group_owner: The Single Sign-On login name of the person who manages this group.

  • group_subscription_type: The required value is S for self- subscription (an Oracle Messenger user must manually add themselves to the group). This type will be expanded in future releases.

  • permission_value: Either O for open subscription (any Oracle Messenger user can add themselves to the group), or R for restricted to those members the administrator assigns with the addGroupMember command.

  • group_display_name: The name of the group as it appears in the Oracle Messenger window.

Example 1: Creating a Restricted Support Group

To create a restricted group that only members you identify can join, enter:

rtcctl> addGroup -groupname widget_support -type A -owner susan.smith@mycompany.com -subscription S -permission R -groupdisplayname "Widget Support Team"

The type value of A means this group lets members respond to individual requests to answer questions in a queued chat window. Questions are posted by users through an integrated service, as discussed in "Creating and Using an Answer Group". Integrated services would post messages to this group at widget_support@groups.mycompany.com, where mycompany.com is the domain name of this company.

The permission type of R means you must use the addGroupMember command to add any members to the group.

Example 2: Creating an Open Broadcast Group

To create a group that any Oracle Messenger user at your company may subscribe to in order to send and receive queued broadcast messages about sales issues, enter:

rtcctl> addGroup -groupname sales_info -type B -owner sam.jones@mycompany.com -subscription S -permission O -groupdisplayname "Sales Information Blasts"

The type value of B means this group allows members to send a broadcast message to everyone else in the group.

The permission type of O means all Oracle Messenger users can add themselves to the group if they wish. They do so through the Oracle Messenger window, by choosing Add Contact by ID and entering sales_info@groups.mycompany.com (where mycompany.com is the company domain name).

addGroupMember

Adds a user to a specific group created for group presence services. The addGroupMember command is the only way you can add members to a group with subscription permission set to R (restricted).

rtcctl> addGroupMember -groupname group_name -username member_name -nickname member_nickname

Adds a member to a named group, using the user's Single Sign-On user name. The assigned nickname appears in the queued chat window when the user responds to a group service request.

Example: Adding a New Member

To add member Sally Roe to the widget_support group, enter:

rtcctl> addGroupMember -groupname widget_support -username sally.roe -nickname "Sally Roe"

deleteGroup

Deletes a group created for group presence services.

rtcctl> deleteGroup -groupname group_name

Example: Deleting a Group

To remove the group widget_support, so that members will no longer receive group presence chat requests, enter:

rtcctl> deleteGroup -groupname widget_support

After you delete a group, you cannot create a new group with the deleted group name. All current members are automatically deleted as members, and the group name no longer appears in their Oracle Messenger windows.

deleteGroupMember

Deletes a user from a group created for group presence services.

rtcctl> deleteGroupMember -groupname group_name -username member_name

Example: Deleting a Single Member

To delete user John Doe from the widget_support group, enter:

rtcctl> deleteGroupMember -groupname widget_support -username john.doe

getGroups

Displays a list of all groups created for group presence services.

rtcctl> getGroups

Example: Listing All Groups for This System

To list all groups for the current system, enter:

rtcctl> getGroups
Groups:

Group IM Address: widget_support@groups.mycompany.com
Group Display Name: Widget Support Team
Owner IM Address: susan.smith@mycompany.com
Type: A
Subscription Type: S
Subscription Permission: R
Number of Members: 5

Group IM Address: sales_info@groups.mycompany.com
Group Display Name: Sales Information Blasts
Owner IM Address: sam.jones@mycompany.com
Type: B
Subscription Type: S
Subscription Permission: 0
Number of Members: 20

This example shows the output for the two sample groups described for the addGroup command. Note that the "Subscription Type" shown is a required value; this type will be expanded in future releases, but for Oracle Real-Time Collaboration 10g Release 1 (10.1.2) the only value is S.

getGroupMembers

Displays a list of all members of a group created for group presence services.

rtcctl> getGroupMembers -groupname group_name

Example: Listing All Members of a Group

To display members for your widget_support group, enter:

rtcctl> getGroupMembers -groupname widget_support@groups.mycompany.com
Members of group 'widget_support@groups.mycompany.com':

Member IM Address: susan.smith@mycompany.com
Member Nickname: Susan Smith

Member IM Address: sally.roe@mycompany.com
Member Nickname: Sally Roe
...

Testing and Monitoring the System

The getState, getPids, getMonitorStats, and runTests commands let you view the state of various components and processes, and run quick tests on instances or components.

getState

Shows the state of components in any instance. See Table 4-1 for the valid values for component and instance options.

rtcctl> getState [-i instance-name]

Show the state of all the components in the current instance. Use -i to show the state of components in an instance with the given name.

rtcctl> getState -cid component-ID

Show the state of the component with the given ID.

rtcctl> getState -cname component-name [-i  instance-name]

Show the state of the component of the given name in the current instance. If -i is used, it shows state of the component with the given name in the given instance.

rtcctl> getState -ct component-type [-i  instance-name]

Show state of the component with the given type in the current instance. If -i is used, it shows state of the component with the given type in the given instance.

getState Ouput

The getState command returns the following responses for most components:

  • UP: This component is running.

  • DOWN: This component is not running.

  • DISABLED: This component has been disabled using the ProcDisabled property described.

Responses for the Oracle Presence Server component (rtc-imrtr), however, are different. You may have installed Oracle Real-Time Collaboration core components on more than one instance, and therefore have more than one rtc-imrtr process available, but only one of those processes can be running at any given time. Each rtc-imrtr process has a special high-availability monitoring process associated with it, which is started when the rtc-imrtr process is started. The presence server monitoring process will attempt to restart the rtc-imrtr process if it goes down; if the monitoring is not able to restart the rtc-imrtr process, the monitoring process for the next available server will make its rtc-imrtr process the active process. (See "High-Availability Process Manager for Oracle Presence Server Process" for details). The getState command can return any of the following for rtc-imrtr:

  • ACTIVE-OK: This is the current, active rtc-imrtr process, and it is up.

  • ACTIVE-FAILURE: This is the active rtc-imrtr process but it is not running (the high-availability process maybe be having trouble restarting it).

  • STANDBY: This is not the active rtc-imrtr process, but it is waiting and ready.

  • DOWN: This rtc-imrtr process is down and cannot be restarted. The process (and its associated high-availability process) may have been stopped using a command such as rtcctl stop -cname rtc-imrtr.

Example: Getting the State of All Components

To get the state of all the components in the current instance, enter:

rtcctl> getState
ID      COMPONENT_NAME   TYPE       STATUS         NUM_PROCS 
10007   rtc-connmgr      connmgr    UP             2         
10000   rtc-confsvr      confsvr    UP             4         
10006   rtc-imrtr        imrtr      ACTIVE-OK      1         
10008   rtc-voiceproxy   voiceproxy UP             1         
10004   rtcpm            rtcpm      UP             1         
10003   rtc-rdtr         rdtr       UP             1         
10002   rtc-mx           mx         UP             1         

In this example, all processes on this instance are running. There are two running Client Connection Manager processes, and four Oracle Web Conferencing Server processes.

getPids

Display the process identifiers for all running processes. See Table 4-1 for the valid values for instance and component options.

getPids [-i instance-name]

Display the process identifiers for either the current instance, or a specified instance if -i is used.

getPids -cid component-id

Display the process identifiers for a specific instance, by its ID number.

getPids -cname component-name [-i instance-name]

Display the process identifiers for the component by name. If -i is used, displays the identifiers for the named components in the named instance.

getPids -ct component-type [-i instance-name]

Display the process identifiers for the component by type. If -i is used, displays the identifiers for the specified components in the named instance.

Example 1: Display All Process Identifiers for an Instance

To display all the process identifiers for the current instance, enter:

rtcctl> getPids
ID      NAME                COMPONENT TYPE      PIDS    
10007   rtc-connmgr         connmgr             9335    
10007   rtc-connmgr         connmgr             9336    
10000   rtc-confsvr         confsvr             6101    
10000   rtc-confsvr         confsvr             14676   
10000   rtc-confsvr         confsvr             5615    
10000   rtc-confsvr         confsvr             29730   
10006   rtc-imrtr           imrtr               9346    
10008   rtc-voiceproxy      voiceproxy          9340    
10004   rtcpm               rtcpm               9288    
10001   OC4J_imeeting       oc4j                9194    
10003   rtc-rdtr            rdtr                9328    
10002   rtc-mx              mx                  9327    
10005   rtcctl              rtcctl              11159   

Example 2: Displaying Process Identifiers for Components on an Instance

To display the process identifiers for any document conversion servers on instance myinstance.mycompany.com, enter:

rtcctl> getPids -ct docconv -i myinstance.mycompany.com
ID       NAME          COMPONENT TYPE     PIDS
10010    rtc-docconv   docconv            3020

getMonitorStats

Displays monitoring statistics for a system, instance, or component. See Table 4-1 for the valid values for system, instance and component options. See Chapter 5 for more information about monitoring components.

getMonitorStats [-i  instance-name]

Display statistics for the current instance or, if -i is used, for a named instance.

getMonitorStats -cid component-id

Display statistics for a particular component in this instance, by the component ID number.

getMonitorStats -cname component-name [-i instance-name]

Display statistics for all components of a particular name in this instance or, if -i is used, in a named instance.

getMonitorStats -ctype component-type [-i instance-name]

Display statistics for all components of a particular type in this instance or, if -i is used, in a named instance.

getMonitorStats -system true

Display statistics for all components in the system.

getMonitorStats -publish true

Display statistics for all components in this instance and display them in XML format, for use in integrating with other applications. The -publish option can be used with options that specify system, site, component, or instance.

The statistics shown vary depending on the type of component. The statistics may include any of the following.

  • Statistics for Web Conferencing Server components:

    TMTGS: Number of conferences since the process was started

    CMTGS: Number of active conferences

    CLTS: Number of active users

    TMEM: Total memory allocated for this component

    UMEM: Total memory currently used by this component

  • Statistics for Voice Conversion Server components:

    AVAIL: Whether the voice conversion server is available

    T1LINE: Whether a T1 line is available

    IN-USE: Number of voice channels currently in use

    IDLE: Number of voice channels idle

    BAD: Number of bad voice channels

Example 1: Displaying Statistics for an Instance

To display statistics for all components in a specific instance, enter:

rtcctl> getMonitorStats -i instance1.mycompany.com
Instance - instance1.mycompany.com:
Component Name: rtc-confsvr, Component Type: confsvr
SERVICE_NAME                                TMTGS CMTGS  CLTS  TMEM     UMEM
confsvr:instance1.mycompany.com.rtc-confsvr.01     1     2     4,708K   4,285K
confsvr:instance1.mycompany.com.rtc-confsvr.11     0     0     4,624K   3,836K
confsvr:instance1.mycompany.com.rtc-confsvr.20     0     0     8,644K   3,457K
confsvr:instance1.mycompany.com.rtc-confsvr.30     0     0     6,368K  3,171K 
 

These statistics show four Web Conferencing Servers are running on this instance, and one conference is currently running on rtc-confsvr.01, with two attendees.

Example 2: Displaying Statistics for a System

To display statistics for all components and instances in this system, enter:

rtcctl> getMonitorStats -system true
Instance - instance1.mycompany.com:
Component Name: rtc-confsvr, Component Type: confsvr
SERVICE_NAME                                TMTGS CMTGS  CLTS  TMEM     UMEM
confsvr:instance1.mycompany.com.rtc-confsvr.01     1     2     4,708K   4,285K
confsvr:instance1.mycompany.com.rtc-confsvr.11     0     0     4,624K   3,836K
confsvr:instance1.mycompany.com.rtc-confsvr.20     0     0     8,644K   3,457K
Instance - instance2.mycompany.com:
Component Name: rtc-imrtr, Component Type: imrtr
presence                                   
Component Name: rtc-voiceconv, Component Type: voiceconv
SERVICE_NAME                                   AVAIL T1LINE IN-USE  IDLE   BAD
voiceconv:instance2.mycompany.com.rtc-voiceconv.0 true  true   0       12     0

These statistics show one meeting is currently running on rtc-confsvr.01 with two attendees, and there are twelve channels on the Voice Conversion Server available on a T1 line but none currently in use. The Oracle Presence Server (rtc-imrtr) is currently running on this instance.

runTests

Runs Oracle Real-Time Collaboration tests on a specific instance or all instances in the system. See Table 4-1 for the valid values for instance options. See Chapter 5 for more information about using the tests.

runTests [-i instance-name]

Run tests in the current instance. Use -i to run all the tests in an instance with the given name.

runTests -testlist test-name, test-name, test-name... 

Run tests from a list of tests.

The possible tests are:

  • apptest web client service test

  • dbtest database connectivity test

  • docconvtest document conversion service test

  • emailtest e-mail configuration test

  • imtest Oracle Messenger system test

  • mtgtest conference service test

  • voiceconvtest voice conversion service test

See "Monitoring Service Availability" and "Running Configuration Tests" for more details about what these tests do and how to respond to them.

runTests -system true

Run tests on all the instances in the system.

runTests -publish true

Run tests on the current instance with the output displayed in structured XML tags. This option can be used in scripts to provide output to services integrated with Oracle Real-Time Collaboration.

runTests -v true

Run tests on the current instance with the verbose option to display any messages regarding test failures.

runTests -cluster true

Run the tests on a cluster of instances. If this instance is not part of a cluster, the tests are only run on the current instance.

Example 1: Testing an Instance

After installing an instance, enter the following to see if the instance is configured properly and working. The runTests command will run all appropriate tests for components installed on this instance.

rtcctl> runTests
Instance - myinstance.mycompany.com
TEST NAME      SUCCESS 
mtgtest        true    
voiceconvtest  false   
docconvtest    false   
dbtest         true    
apptest        true    
emailtest      true    
imtest         true    

In this example, tests for the Voice Conversion and Document Conversion Servers are false, most likely because these optional servers have not been installed. To confirm this, the administrator might run each test again with the verbose option:

rtcctl> runTests -v true -testlist voiceconvtest
Instance - myinstance.mycompany.com:
TEST NAME      SUCCESS MESSAGE                                           
voiceconvtest  false   No Active Voice Conversion Server Available.      

Alternately, the administrator can view more details about the reports by viewing the Status report under the System tab.

Example 2: Running a Single Test

To run the conference test alone, enter:

rtcctl> runTests -testlist mtgtest
Instance - myinstance.mycompany.com
TEST NAME                    SUCCESS
mtgtest               true

Example 3: Running Multiple Tests with the Verbose Option

To run multiple tests with verbose display, enter:

rtcctl> runTests -testlist mtgtest,emailtest,imtet -v true
Instance - myinstance.mycompany.com
TEST NAME            SUCCESS   MESSAGE
mtgtest              true
emailtest            true
imtet                   false     Unknown test

In the example, one option was entered incorrectly (imtet instead of imtest), so the message displayed by the -v option reports the problem.

Getting Help and Quitting rtcctl

The help command displays help about all commands available in rtcctl. You can exit the rtcctl command-line interface by entering exit or quit.

help

Displays the list of rtcctl commands with descriptions.

rtcctl> help
Commands are:
start - Start a specified component or complete instance.
stop - Stop a specified component or complete instance.
getstate - Gets the state of a specified component or complete instance.
...

exit or quit

Leaves the rtcctl command-line interface. You can use either exit or quit.

> $ORACLE_HOME/imeeting/bin/rtcctl
rtcctl>
rtcctl> exit
>