Configuring Instant Messaging in PeopleSoft MultiChannel Framework

This chapter provides an overview of instant messaging and discusses how to:

See Also

MCFIMInfo Class

Click to jump to parent topicUnderstanding Instant Messaging

PeopleSoft MCF extends the HTML chat functionality delivered in PeopleTools 8.42 to popular instant messaging networks. Users can initiate an outbound chat with a customer using instant messaging networks such as IBM/Lotus Sametime, or Yahoo! Messenger. This functionality enables an external user to participate in a business transaction through instant messaging.

PeopleSoft MCF enables instant messaging (IM) through public networks (GTALK and Yahoo! Messenger), an enterprise Lotus Sametime Connect network or XMPP Instant Messaging server.

You can enable a user to initiate an instant messaging session from any page using either a button or PeopleCode.

The PeopleSoft system does not supply the client for any supported instant messaging software. Each user must install the appropriate client software. However, presence detection for GTALK and Yahoo! Messenger users functions even without installed client software.

Note. The instant messaging presence detection integration (the IM Integration) in PeopleTools is subject to the respective IM vendor’s network availability. In addition, the IM Integration is based on protocols made available by the respective IM Network vendors. Such protocols are subject to change at any time by the vendor. Therefore, Oracle is not responsible for the availability or performance of any of the IM networks or for any change in an IM vendor’s protocol that may render the IM Integration inoperable.

Configuring Instant Messaging Servers

The supported public instant messaging networks, Yahoo! Messenger and GTALK, , require installation of client software, but no server configuration. Installation and configuration of the client software is the responsibility of your administrators and customers, and is beyond the scope of this document.

Lotus Sametime Connect is an instant messaging network running on an enterprise Sametime/Domino server, which must be configured to support PeopleSoft MultiChannel Framework instant messaging. To administer instant messaging with Sametime Connect, install Sametime Links and configure the server to enable anonymous users to connect to the server and query for the presence of other known users. Refer to your Lotus/Domino server documentation for more information.

For XMPP Instant Messaging servers, you will need to configure the XMPP domain in order to detect user presence.

Click to jump to parent topicConfiguring Instant Messaging

In MCF you can enable instant messaging for :

This section discusses how to configure instant messaging.

Click to jump to top of pageClick to jump to parent topicPage Used to Configure Instant Messaging

Page Name

Definition Name

Navigation

Usage

Configuration

MCF_IM_CFG_PG

PeopleTools, MultiChannel Framework, Instant Messaging, Configuration

Enter or edit a server IP address for instant messaging domains.

Configuration

MCF_IM_SRVR_CFG_PG

PeopleTools, MultiChannel Framework, Instant Messaging, Presence, Servers Configuration

Enter or edit an XMPP IM domain.

XMPP Servers Configuration

MCF_XMPPSRVRS_CFG

Click the Configure XMPP Servers link from the Configuration page.

Configure XMPP domains.

General Profile Information

USER_SELF_SERVICE

My System Profile

Configure IM users for XMPP.

Click to jump to top of pageClick to jump to parent topicConfiguring Instant Messaging

Select PeopleTools, MultiChannel Framework, Instant Messaging, Configuration.

IM Domain

The instant messaging service name.

Server IP Address

The host name and port (if applicable) of the instant messaging service.

Warning! Do not alter the server address for Yahoo! or GTALK .

The server addresses for Yahoo! and GTALK are preconfigured. However, you must enter the address for your Sametime Connect server.

Enabled

Select Enabled to enable the configured instant messaging service.

If the enabled flag is deselected, the network is still available, but the buttons will always show presence as offline.

Click to jump to top of pageClick to jump to parent topicConfiguring XMPP Domains

To configure XMPP servers:

  1. Select PeopleTools, MultiChannel Framework, Instant Messaging, Configuration.

  2. Click the Search button and select XMPP.

  3. Click the Configure XMPP Servers link from the Configuration page.

Configure as many XMPP domains as required.

Domain

Enter IM server domain.

Server

Enter server information.

Port

Enter the port for the IM server.

Force old SSL

Select to use old SLL port 5223.

Resource Name

Resource name for the domain name of the XMPP server. For example: oracle.com.

Click to jump to top of pageClick to jump to parent topicConfiguring IM Users for XMPP Servers

In order to obtain user presence information from XMPP configured IM servers, the user must login to the server. Each user needs to enter their userid and password for the XMPP server. If XMPP login information has been entered for a user profile, the login process to the configured XMPP server will happen automatically when the PeopleSoft user signs on to PeopleSoft. This login process takes place in the background and will not stop the user from performing other operations.

Select My System Profile or PeopleTools, Security, User Profile, User Profile and click the Instant Messaging Information link.

Enter your user ID and password information for each XMPP domain you are using.

Click to jump to top of pageClick to jump to parent topicViewing IMServlet Logs

When troubleshooting or monitoring the IMServlet, you can view the IMServlet.log to gather information specific to the IMServlet. The log file is located in:

PS_HOME\webserv\peoplesoft\servers\PIA\logs

Click to jump to parent topicUsing Single Button Presence

This section provides an overview of presence detection and discusses how to:

Click to jump to top of pageClick to jump to parent topicUnderstanding Presence Detection

The IM Servlet is implemented and hosted in the web server for the purpose of communicating with IM servers to get presence information. Therefore, browsers can send http Get request to IM Servlet and get presence information. The IM Servlet directly communicates with non-XMPP IM servers to fetch presence information and uses Smack API to communicate with XMPP servers. To improve the performance and response time the IM Servlet supports bulk requests for getting presence of multiple screen names using one request. In order to get the presence of a buddy from an XMPP server, the user needs to login into the XMPP server and maintain an active session. For non-XMPP servers the user does not need to login into IM server to fetch the presence information. This active session is maintained in the IM Servlet.

This diagram shows the instant messaging feature:

Instant messaging architecture

  1. Browser sends get presence request to IM Servlet

     

  2. For non-XMPP servers, IM Servlet will send http get request to corresponding Instant Messaging server to find out presence information. For XMPP servers, IM Servlet will contact XMPP server via smack API to get presence information.

  3. Presence information is returned to IM Servlet.

  4. Presence is sent to the client browser.

Click to jump to top of pageClick to jump to parent topicPages Used to Configure Single Presence Button

Page Name

Definition Name

Navigation

Usage

Configuration

MCF_IM_SRVR_CFG_PG

PeopleTools, MultiChannel Framework, Instant Messaging, Presence, Servers Configuration

Configure IM servers.

Screen names configuration

MCF_IMSCRNNAMES_PG

PeopleTools, MultiChannel Framework, Instant Messaging, Presence, Screen names configuration

Add and delete screen names for instant messaging.

Single button presence

MCF_PRS_DEMO_PG

PeopleTools, MultiChannel Framework, Instant Messaging, Presence, Sample page

Test single button presence.

Click to jump to top of pageClick to jump to parent topicConfiguring Servers

PeopleTools, MultiChannel Framework, Instant Messaging, Presence, Servers Configuration.

The configuration page is the same page used to configure instant messaging servers. When you select the page under the Presence menu, you can also configure Email, MSN and Skype.

See Configuring Instant Messaging.

Click to jump to top of pageClick to jump to parent topicConfiguring Screen Names

Select PeopleTools, MultiChannel Framework, Instant Messaging, Presence, Screen names configuration.

User ID

Enter PeopleSoft user ID.

Screen name

ID used to obtain presence for this user.

IM Protocol

Select the protocol.

IM Domain

Select the instant messaging domain.

User and Network

The value entered here is used for display purposes in Single Button Presence.

Click to jump to top of pageClick to jump to parent topicTesting Single Presence Button

Select PeopleTools, MultiChannel Framework, Instant Messaging, Presence, Sample page.

The single presence icon represents a collective presence of all screen names. When a user moves the mouse pointer over a single presence icon, it will open a menu with all user screen names and their presence. If any of the screen names are online, you can click the online icon and it will launch the corresponding IM Messenger to send IM messages. When the user clicks on an email icon, it will launch default configured email client. When you click on Skype, it will launch Skype application and allow you to login to Skype.

Click to jump to top of pageClick to jump to parent topicDeveloping an Application with Instant Messaging Action Button for Presence Detection

In order to create an application with instant messaging action button for presence detection:

  1. Create a page and add a button.

  2. Click on properties of a push button and choose Instant Messaging Action for the destination field.

  3. Choose a record and field name where screen name is in the format for the instant messaging domain, as listed in this table:

    Instant Messaging Domain

    Required format of screen name

    YAHOO

    screenname@YAHOO

    XMPP

    screenname @DOMAIN@XMPP

    GTALK

    screenname@GTALK

  4. Save page.

Click to jump to parent topicUsing the Instant Messaging Sample Pages

To demonstrate instant messaging, use the Instant Messaging Sample Pages (MCF_IM_DEMO_CMP) component.

This section discusses how to:

Click to jump to top of pageClick to jump to parent topicPages Used to Test Instant Messaging

Page Name

Definition Name

Navigation

Usage

PeopleCode Sample

MCF_IM_DEMO_PG

PeopleTools, MultiChannel Framework, Instant Messaging, Sample Pages, PeopleCode Sample

Set up buddy lists and view presence for configured instant messaging clients using PeopleCode.

Button Sample

MCF_IM_DEMO1_PG

PeopleTools, MultiChannel Framework, Instant Messaging, Sample Pages, Button Sample

View presence for configured instant messaging clients using the instant messaging button.

Click to jump to top of pageClick to jump to parent topicUsing the PeopleCode Sample Page

Select PeopleTools, MultiChannel Framework, Instant Messaging, Sample Pages and add a new value.

Note. The PeopleCode Sample does not support presence detection for GTALK and XMPP domains.

The PeopleCode Sample page demonstrates the use of instant messaging PeopleCode. The sample pages are intended for demonstration purposes and should not be used in production.

See MCFIMInfo Class.

IM Buddy List

Displays an identifier for the list.

Description

Enter a description for the list.

User ID

Enter the user ID.

The user ID must be that of a valid user of the instant messaging service specified in the IM Domain field.

IM Domain

Select the instant messaging service associated with the specified user ID from the drop-down list box.

XMPP Domain

Select IM server domain.

Display User Name

Name used for display purpose. In GTalk, the actual user ID used for detecting presence could be up to 200 characters, this field is purpose of display.

Status

An icon displays the presence status of the specified user. The icons vary with the instant messaging service.

Click the icon to initiate an instant messaging session with the selected user. The user must be online.

Note. Yahoo! does not update presence automatically. Use the Refresh Presence button to check the current status of Yahoo! users.

Refresh Presence

Click the Refresh Presence button to check the status of Yahoo users.

Note. PeopleCode does not support presence detection in Sametime, so the Sametime user status does not appear on the PeopleCode Sample page. Use the instant messaging button if you intend to check presence of or connect to Sametime users.

Note. If you get a warning symbol with the network, even though you have specified the correct address of IM server, provide values for Proxy host and Proxy port in the pasappsrv.cfg file.

Note. XMPP and GTALK presence are not supported using PeopleCode built-ins for presence detection. To check presence for these, use the Button Sample page to check presence.

Click to jump to top of pageClick to jump to parent topicUsing the Button Sample Page

Access the Button Sample page using the following navigation path:

PeopleTools, MultiChannel Framework, Instant Messaging, Sample Pages, Button Sample

The Button Sample page demonstrates the use of the instant messaging button implemented in PeopleSoft Application Designer. The sample pages are intended for demonstration purposes and should not be used in production.

See Specifying Type Properties for Push Buttons or Links.

IM Buddy List

Displays an identifier for this list.

Description

Enter a description for this list.

User and Network

Displays user ID and instant messaging service ID.

Status

Displays the presence status of the specified user.

Click the icon to initiate an instant messaging session with the selected user. You can send an instant message even if the user is not online.

Note. For the SAMETIME icon to be visible, do not select the Sun JVM in the browser. If Sun JVM is selected, the icon does not display in the sample page.