+ All Categories
Home > Documents > System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should...

System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should...

Date post: 03-Aug-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
78
Draft Document for Review November 10, 2005 2:05 pm REDP-3922-00 ibm.com/redbooks Redpaper Front cover System Integrators Guide: Integration into Service Provider Scenarios James Chamberlain Alexandra Thomas Ruddy Kurniawan David Quenzler Explore the offerings that implement a subset of SPDE Understand integration into service provider environments Walk through integration scenarios
Transcript
Page 1: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm REDP-3922-00

ibm.com/redbooks Redpaper

Front cover

System Integrators Guide: Integration into Service Provider Scenarios

James ChamberlainAlexandra ThomasRuddy Kurniawan

David Quenzler

Explore the offerings that implement a subset of SPDE

Understand integration into service provider environments

Walk through integration scenarios

Page 2: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples
Page 3: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

International Technical Support Organization

System Integrators Guide: Integration into Service Provider Scenarios

November 2005

Draft Document for Review November 10, 2005 2:05 pm 3922edno.fm

Page 4: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

© Copyright International Business Machines Corporation 2004. All rights reserved.Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP ScheduleContract with IBM Corp.

3922edno.fm Draft Document for Review November 10, 2005 2:05 pm

First Edition (November 2005)

This edition applies to Version 5.0 of WebSphere Everyplace Service Delivery.

This document created or updated on November 10, 2005.

Note: Before using this information and the product it supports, read the information in “Notices” on page v.

Page 5: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922TOC.fm

Contents

Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .vTrademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viiThe team that wrote this Redpaper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viiiBecome a published author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xComments welcome. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .x

Chapter 1. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi

1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi1.2 Scenario components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii1.3 Setting up the environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii

1.3.1 WebSphere Everyplace Device Manager Installation . . . . . . . . . . . . . . . . . . . . . . xiii1.3.2 Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii1.3.3 Device Manager Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii1.3.4 Device Manager Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviii

1.4 Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi1.4.1 Profile Based Job Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi1.4.2 WebSphere Everyplace Device Manager utilization of a WebSphere Everyplace

Subscription Manager interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi1.4.3 Targeting a WebSphere Everyplace Device Manager job to WebSphere Everyplace

Subscription Manager subscribers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxii1.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxv

Chapter 2. Integrating WebSphere Everyplace Server for Telecom with WebSphere Everyplace Subscription Manager and WebSphere Everyplace Device Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvii

2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvii2.2 Scenario components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxviii

2.2.1 WebSphere Everyplace Server for Telecom overview . . . . . . . . . . . . . . . . . . . .xxviii2.2.2 What is Parlay?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxviii2.2.3 Supported gateways & simulators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxix

2.3 Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxix2.3.1 Presence and availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxix2.3.2 Integrating WebSphere Everyplace Mobile Portal and WebSphere Everyplace

Server for Telecom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxix2.3.3 Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx2.3.4 Leverage WebSphere Everyplace Server for Telecom Parlay applications for select

WebSphere Everyplace Device Manager and WebSphere Everyplace Subscription functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx

2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxvii

Chapter 3. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Connection Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxix

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxix3.2 Scenario components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xl

3.2.1 Changes required on the WebSphere Everyplace Connection Manager gateway. xli3.2.2 Changes required on the WebSphere Everyplace Device Manager server . . . . . . xli

© Copyright IBM Corp. 2004. All rights reserved. iii

Page 6: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922TOC.fm Draft Document for Review November 10, 2005 2:05 pm

3.3 Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlii3.3.1 Bootstrap jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlii3.3.2 Notification jobs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xliii

3.4 WebSphere Everyplace Device Manager job matrix . . . . . . . . . . . . . . . . . . . . . . . . . . xlv3.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlvi

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlvii

4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlvii4.2 Integration components. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlviii

4.2.1 WebSphere voice components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlviii4.2.2 WebSphere Everyplace Mobile Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlix4.2.3 Architecture diagram of integrated components . . . . . . . . . . . . . . . . . . . . . . . . . . . . l4.2.4 Runtime client device identification by the integrated system. . . . . . . . . . . . . . . . . lii4.2.5 Mobile access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . liv

4.3 Installation and configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lviii4.3.1 System requirements for the integrated components . . . . . . . . . . . . . . . . . . . . . . lviii4.3.2 Installation roadmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lix4.3.3 Configuration and customization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lx

4.4 Development platform for the integrated components . . . . . . . . . . . . . . . . . . . . . . . . . lxiii4.4.1 XDIME and VoiceXML markup support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxiii4.4.2 MCS tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxv4.4.3 Call Simulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxvi

4.5 The team that wrote this Redpaper. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxvii

Abbreviations and acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxix

Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxxiIBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxxiOnline resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxxiHow to get IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxxiiiHelp from IBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxxiii

iv System Integrators Guide: Integration into Service Provider Scenarios

Page 7: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922spec.fm

Notices

This information was developed for products and services offered in the U.S.A.

IBM may not offer the products, services, or features discussed in this document in other countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service.

IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to: IBM Director of Licensing, IBM Corporation, North Castle Drive Armonk, NY 10504-1785 U.S.A.

The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you.

This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice.

Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product and use of those Web sites is at your own risk.

IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.

Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.

This information contains examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental.

COPYRIGHT LICENSE: This information contains sample application programs in source language, which illustrates programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. You may copy, modify, and distribute these sample programs in any form without payment to IBM for the purposes of developing, using, marketing, or distributing application programs conforming to IBM's application programming interfaces.

© Copyright IBM Corp. 2004. All rights reserved. v

Page 8: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922spec.fm Draft Document for Review November 10, 2005 2:05 pm

TrademarksThe following terms are trademarks of the International Business Machines Corporation in the United States, other countries, or both:

Redbooks (logo) ™AIX 5L™AIX®Cloudscape™Domino®DB2®

Everyplace®HACMP™IBM®Lotus®MQSeries®QuickPlace®

Redbooks™RDN™RS/6000®Sametime®Tivoli®WebSphere®

The following terms are trademarks of other companies:

ThinkPad® and NetVista® are a registered trademarks of Lenovo in the United States, other countries, or both.

OSGi™ is a trademark of The OSGi Alliance in the United States and other countries.

Palm® is a registered trademark of Palm, Inc. in the United States, other countries, or both.

EJB, Java, Java Naming and Directory Interface, JavaServer, JDBC, JDK, JSP, JVM, J2EE, Solaris, and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Microsoft, Windows, Win32, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.

Linux™ is a trademark of Linus Torvalds in the United States, other countries, or both.

Other company, product, or service names may be trademarks or service marks of others.

vi System Integrators Guide: Integration into Service Provider Scenarios

Page 9: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922pref.fm

Preface

This IBM® Redpaper helps you plan, implement, and perform intra-family integration a family of offerings that implement a subset of the IBM Service Provider Delivery Environment (SPDE), which is a reference architecture that defines a consistent delivery and management platform for services, applications, and content across multiple access networks and devices.

Service providers can choose to implement and integrate all or parts of SPDE with their existing platforms. The information in this redpaper contains examples and scenarios showing ways to integrate the following offerings:

� WebSphere® Everyplace® Subscription Manager� WebSphere Everyplace Device Manager.� WebSphere Everyplace Server for Telecom� WebSphere Everyplace Connection Manager

Certain combinations of these offerings integrate well and other combinations require a fair amount of planning and work.

What this Redpaper is, is a tool to help you ascertain if integrating a particular combination of offerings makes sense for your unique service provider environment.

What this Redpaper is not, is a detailed installation guide for the respective products. The product Information Centers provide are an excellent source for planning and installation. The goal of this Redpaper is to help you decide how well certain combinations of products would fit within your environment. We coach you on possible ways of integrating these products.

A basic knowledge of wireless, networking, portal, and web technologies is assumed.

© Copyright IBM Corp. 2004. All rights reserved. vii

Page 10: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922pref.fm Draft Document for Review November 10, 2005 2:05 pm

The team that wrote this RedpaperThis Redpaper was produced by a team of specialists from around the world working at the International Technical Support Organization, Raleigh Center.

Figure 0-1 The IBM Redpaper team (left to right: Ruddy Kurniawan, Alexandra Thomas, James Chamberlain, David Quenzler, and Shunguo Yan-not pictured)

James Chamberlain is a Senior Software Engineer and certified Senior IT Specialist. He is a project leader at the ITSO, Raleigh Center. He has over 24 years experience in the IT industry and specializes in pervasive computing technologies. His areas of expertise include e-commerce, pervasive computing, portals, AIX®, Linux®, and Java™ programming. He also architects, designs, and develops solutions using J2EE™, XML, Web Services, and IBM software products including WebSphere and DB2®. Before joining the ITSO, James worked for IBM Global Services on e-commerce system development for IBM Business Partners. He majored in Computer Science at Iowa State University.

David Quenzler joined the IBM RS/6000® SP System Test group in 1997. He is an IBM Certified Advanced Technical Expert - RS/6000 AIX and works primarily with runs pertaining to High Availability, SAN, Databases and Linux. Today, he is a Software Engineer for the IBM Linux Technology Center. David holds a BS in Computer Science from the University of Central Florida.

Shunguo Yan is a Staff Software Engineer in the Application and Integration Middleware (AIM) division of IBM software group in Austin. He has more than 8 years of experience in object-oriented analysis and design, application integration, and software implementation of industrial specifications. He holds a master degree in Computer Science. His areas of expertise include architecture, design, and development of integrated solutions to various

viii System Integrators Guide: Integration into Service Provider Scenarios

Page 11: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922pref.fm

industries using J2EE, XML, Web Services, and software products from IBM and other companies.

Alexandra Thomas is an IT Architect for IBM Business Consulting Services in Melbourne, Australia. She has several years experience in the delivery of software integration and eBusiness solutions. Alexandra holds an honors degree in Information Technology with majors in Software Engineering, Computer Science and Information Management.

Ruddy Kurniawan an IT Specialist with Global e-business Transformation (GeT) group in IBM Singapore. He has more than 8 years of working experience in Information Technology area. His area of expertise include WebSphere Portal installation and administration, Lotus® Domino®, SameTime, QuickPlace® and Windows® operating system. He is a Certified Lotus Professional and Microsoft® Certified System Engineer. He holds a Bachelor Degree in Information Technology from Curtin University of Technology of Australia.

Thanks to the following people for their contributions to this project:

Benson Chen, technical consultantIBM Pervasive Computing Division

Kim Foster, reviewerIBM Sales & DistributionWebSphere Portal Technical Sales

Many thanks to the following IBM people for their assistance.

Lenore RammMike SeedorfCharles Le VayMart NuttallTony WrobelDale ChamberlainScott BroussardGary CraigRobert SagerDave HellerLei LuDave PiersonDon Watson

And a specials thanks to our ITSO support staff at the International Technical Support Organization, Raleigh Center:

Margaret TicknorJeanne TuckerTamika BarrowLinda Robinson

Thanks to our ITSO management:

Jere Cline

And a special thanks to our IBM Pervasive Computing sponsor:

Mary Fisher

Preface ix

Page 12: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922pref.fm Draft Document for Review November 10, 2005 2:05 pm

Become a published authorJoin us for a two- to six-week residency program! Help write an IBM Redbook dealing with specific products or solutions, while getting hands-on experience with leading-edge technologies. You'll team with IBM technical professionals, Business Partners and/or customers.

Your efforts will help increase product acceptance and customer satisfaction. As a bonus, you'll develop a network of contacts in IBM development labs, and increase your productivity and marketability.

Find out more about the residency program, browse the residency index, and apply online at:

ibm.com/redbooks/residencies.html

Comments welcomeYour comments are important to us!

We want our papers to be as helpful as possible. Send us your comments about this Redpaper or other Redbooks™ in one of the following ways:

� Use the online Contact us review redbook form found at:

ibm.com/redbooks

� Send your comments in an email to:

[email protected]

� Mail your comments to:

IBM Corporation, International Technical Support OrganizationDept. HZ8 Building 662P.O. Box 12195Research Triangle Park, NC 27709-2195

x System Integrators Guide: Integration into Service Provider Scenarios

Page 13: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch03.fm

Chapter 1. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager

1.1 IntroductionThis chapter describes integration scenarios related to WebSphere Everyplace Device Manager and WebSphere Everyplace Subscription Manager including:

� WebSphere Everyplace Device Manager utilization of a WebSphere Everyplace Subscription Manager interface.

� Targeting a WebSphere Everyplace Device Manager job to WebSphere Everyplace Subscription Manager subscribers.

Subscription management and device management features used to bundled as the Tivoli® Personalized Services Manager.

1

© Copyright IBM Corp. 2004. All rights reserved. xi

Page 14: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch03.fm Draft Document for Review November 10, 2005 2:05 pm

1.2 Scenario componentsThis Redpaper primarily focuses on WebSphere Everyplace Device Manager with respect to integration with WebSphere Everyplace Subscription Manager. Figure 1-1 shows the various components within WebSphere Everyplace Device Manager.

Figure 1-1 WebSphere Everyplace Device Manager Overview

1.3 Setting up the environmentWe recommend not enabling WebSphere Application Server Java2 security.

Enabling WebSphere Application Server Java2 security turned out to be a problem because we used the Lightweight Directory Access Protocol (LDAP) for authentication. Our LDAP user ID strings were greater than 30 characters, which the Customer Care and Self Care signon would not accept because of the length. However, Device Manager does allow enrollment with long LDAP user ID strings.

We found that:

� enabling Java2 security required that the complete LDAP name be used to log into the WebSphere Application Server Administrative console.

� stopServer.sh with Java2 enabled required the complete LDAP identifier.

xii System Integrators Guide: Integration into Service Provider Scenarios

Page 15: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch03.fm

� disabling Java2 security allowed logging into the Administrative Console using the LDAP shortname.

� stopServer.sh without Java2 security allowed the LDAP shortname.

When enabling WebSphere Application Server security, click Enable Security and be sure to deselect Enable Java2 security.

1.3.1 WebSphere Everyplace Device Manager InstallationThis section describes some of the issues we worked through as part of WebSphere Everyplace Device Manager installation.

Pre-Installation checks� Verify that DB2 is installed and running on the Device Manager server.

We used DB2 V8.1 (32-bit) plus Fix Pack 6

WebSphere Application Server V5.0 install on AIX V5.2

We recommend that the IBM HTTP Server be installed by the WebSphere installer.

1. Choose the custom install option

– select IHS 1.3.26

– deselect Embedded Messaging

After base install, verify that the httpd.conf file is appended with the following lines:

LoadModule ibm_app_server_http_module \ /usr/WebSphere/AppServer/bin/mod_ibm_app_server_http.soWebSpherePluginConfig /usr/WebSphere/AppServer/config/cells/plugin-cfg.xml

2. Install WebSphere Application Server V5.0 Fix Pack 2

– Ensure that WebSphere Application Server and HTTP processes are not running prior to install.

– Read the V5.0.2 release notes. They are useful!

3. Start the IBM HTTP Server

4. Start the WebSphere Application Server

WebSphere Everyplace Device Manager installationA response file may be used to install WebSphere Everyplace Device Manager. Refer to the Information Center for details.

Note: See Installing WebSphere Application Server v5.0.x on AIX V5.2

http://www.ibm.com/support/docview.wss?rs=180&context=SSEQTP&uid=swg24004726

Note: On AIX V5, a web-based system management utility called, WebSM, uses the 9090 port in /etc/services. This conflicts with the WebSphere Administration Console and will prevent the WebSphere Application Server from starting. Change the wsmserver entry in /etc/services to another number and refresh the inetd subsystem. Restart WebSphere Application Server.

Sign in to IBM Support and navigate to this page for the tip:

http://www.ibm.com/support/entdocview.wss?uid=swg21140807

Chapter 1. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager xiii

Page 16: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch03.fm Draft Document for Review November 10, 2005 2:05 pm

Here are the basic installation steps to follow:

1. Ensure that the users and groups referenced by the installer already exist. The Device Manager database user should have administrator privileges.

2. Make sure there is plenty of room in the file systems where the Device Manager databases will reside (by default, the install process creates /db/db2 and /dmsdb). Placing these databases in the root (/) file system is not recommended.

3. DB2, WebSphere, and the IBM HTTP Server must be running.

4. Ensure that WebSphere security is turned off prior to install. If you are prompted for a password when logging into the WebSphere Administrative Console, security is still enabled. See the Information Center for information on how to disable security.

5. Verify that the install scripts are executable (our installaix.sh script as supplied was not executable).

If necessary, change to the install directory and execute the following command:

chmod +x *.sh *.bat *.bin *.exe

6. ./installaix.sh starts the Tivoli Device Manager Version V1.5 Installer. Output is logged to /tmp, /tmp/dms_top and /usr/TivDSM15

Follow the prompts and populate the fields with the appropriate information

Check the WebSphere Everyplace Device Manager build level with the following command:

cat $DMS_HOME/bin/data/Build.name

Post Installation checks1. Re-verify that the IBM HTTP Server, DB2, and the DMS_AppServer are running on the

Device Manager server.

2. Verify that the device classes and job types are registered.

The $DMS_HOME/bin/deviceclass.sh -list command should display information about the following classes as shown in Example 1-1:

Example 1-1 deviceclass.sh -list

# cd /usr/TivDMS15/bin# ./deviceclass.sh -list[YOU HAVE NEW MAIL]Updated trace mask to: TYPE_ERROR_EXC TYPE_LEVEL1Device Class - Palm---------------------------------------------Main Java(R) class - com.tivoli.dms.plugin.palm.PalmEnrollment URL - http://<wedm_server>:80/dmserver/DeviceEnrollmentServletVersion - 1.5Description -Auto Device Naming - falseDevice Attribute Table -Notification Type -

Device Class - Wince---------------------------------------------Main Java(R) class - com.tivoli.dms.plugin.win.wince.WinceEnrollment URL - http://<wedm_server>:80/dmserver/DeviceEnrollmentServletVersion - 1.5Description -Auto Device Naming - trueDevice Attribute Table -

xiv System Integrators Guide: Integration into Service Provider Scenarios

Page 17: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch03.fm

Notification Type -

Device Class - BaseSyncMLDM---------------------------------------------Main Java(R) class - com.tivoli.dms.plugin.syncmldm.BaseSyncMLDMEnrollment URL -Version - 1.5Description -Auto Device Naming - falseDevice Attribute Table - SYNCML_DEVICENotification Type - WAPPushv12

Device Class - SampleOSGi---------------------------------------------Main Java(R) class - com.tivoli.dms.plugin.syncmldm.sampleOSGi.SampleOSGiEnrollment URL - http://<wedm_server>:80/dmserver/DeviceEnrollmentServletVersion - 1.5Description -Auto Device Naming - falseDevice Attribute Table - SYNCML_DEVICENotification Type -

Device Class - Win32---------------------------------------------Main Java(R) class - com.tivoli.dms.plugin.syncmldm.win32.Win32Enrollment URL - http://<wedm_server>:80/dmserver/DeviceEnrollmentServletVersion - 1.5Description -Auto Device Naming - falseDevice Attribute Table - SYNCML_DEVICENotification Type -

3. Ensure that the plugins for Palm and Windows CE are registered.

Example 1-2 Ensuring that the plugins for Palm and Windows CE are registered

# cd /usr/WebSphere/AppServer/logs/DMS_AppServer# grep -w registered\\.$ SystemOut.log | grep -w dmsSystemOut O DeviceClass: com.tivoli.dms.plugin.palm.Palm registered.SystemOut O DeviceClass: com.tivoli.dms.plugin.win.wince.Wince registered.

4. Check the following Uniform Resource Locators (URLs):

http://wedm_server/dms/docs/en/InfoCenterhttp://wedm_server/dmserver/PalmServlet (should display a blank screen)http://wedm_server/dmserver/WinceServlet (should display error 400)

5. Enable WebSphere Security.

If you decide to implement Java2 security, add the DB2 entries to the /usr/WebSphere/AppServer/config/cells/cell/nodes/node/app.policy file using the Java policytool Graphical User Interface (GUI). For example:

find /usr -fstype jfs[2] -name policytool -print

Note: The web browser must be at a supported level.

Chapter 1. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager xv

Page 18: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch03.fm Draft Document for Review November 10, 2005 2:05 pm

Example 1-3 The app.policy entries for DB2 and Java2

grant codeBase "file:/usr/opt/db2_08_01/java/db2java.zip" { permission java.util.PropertyPermission "*", "read"; permission java.lang.RuntimePermission "loadLibrary.*";};

ProblemWhen starting the DMS_AppServer, SystemOut.log showed the following:

SystemOut O Updated trace mask to: TYPE_ERROR_EXC TYPE_LEVEL1SystemOut O DeviceClass: com.tivoli.dms.plugin.palm.Palm registered.SystemOut O 2004.09.29 08:47:09.480 com.tivoli.dms.common.DBOperation executeQuery Tivoli Tivoli Web Gateway Device_Manager_Server <server_name> DYM2788E: Failed to establish a connection with the database. See nested exception for details.com.tivoli.dms.common.DMCommonException: DYM2788E: Failed to establish a connection with the database. See nested exception for details. : DYA1006E An unknown error occurred. : COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] SQL1224N A database agent could not be started to service a request, or was terminated as a result of a database system shutdown or a force command. SQLSTATE=55032

We found a DB2 workaround to a similar problem. The abstract is not exact, but the fix works:

http://www.ibm.com/support/docview.wss?rs=71&org=SW&doc=1009742

On AIX V4.3.3 or later, DB2 will issue SQL1224N and the WebSphere administration server will fail with StaleConnectionException when attempting more than ten local, concurrent DB2 connections from a single process. The Java Development Kit (JDK™) V1.1.8 allows a maximum number of ten local, concurrent DB2 connections. JDK V1.2.2 allows a maximum of four local connections. JDK V1.3.0 allows a maximum of two local connections.

ResolutionAs the DB2 instance owner

db2set DB2ENVLIST=EXTSHM

Add the following lines to sqllib/userprofile (modifications to db2profile may be overwritten in fix packs):

export EXTSHM=ON

Search the DB2 Information Center for EXTSHM to see additional information.

The DMS_AppServer should start without error.

Note: The DB2 example listed in the Information Center has a typographical error. Ensure the line containing java.lang.RuntimePermission also contains an asterisk following loadLibrary:

For a DB2 database, use the following policy statements:

grant codeBase "file:C:/Program Files/SQLLIB/java/db2java.zip" {permission java.util.PropertyPermission "*", "read";permission java.lang.RuntimePermission "loadLibrary.*";};

xvi System Integrators Guide: Integration into Service Provider Scenarios

Page 19: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch03.fm

Using the default subscription managerDevice Manager requires the users of the Device Manager applications (console, Customer Care, and Self Care) to log in with a user ID and password. When Device Manager is installed, a default subscription manager implementation is created using hard-coded user IDs and passwords for each application. The default user IDs and passwords cannot be changed. The hard-coded values are:

Table 1-1 Default subscription manager user IDs and passwords

When the above user IDs and passwords are used, the authorization method returns a TRUE value.

Also, when using the default subscription manager, the canOwnDevice and canConnectDevice methods always return a TRUE value, so an enrolled device is always authorized to run Device Manager jobs.

With the default subscription manager, the membership in groups does not change. There is one group called TestGroup that contains one user called TestUser.

1.3.2 DocumentationThe WebSphere Everyplace Device Manager Information Center is available here:

http://webserver/dms/docs/en/InfoCenter

1.3.3 Device Manager ConsoleA ThinkPad notebook computer running Microsoft Windows 2000 was used to run the DMconsole application. DB2 Administrative Client V8.1 Fix Pack 6 (typical install) was also installed on the console laptop.

Starting the Device Manager consoleRun DMconsole.bat to start the Microsoft Windows-based Device Manager Console GUI. Use the default username and password of dmadmin to log in. The Device Manager server can be specified by Internet Protocol (IP) address or fully qualified domain name.

Application User ID Password

Device Manager console dmadmin dmadmin

Customer Care dmcsr dmcsr

Self Care owner_name owner_name

Note: For Self Care, owner_name is the name of the device owner.

Note: The default subscription manager should be used in test or non-production environments only. See the Information Center for information on implementing a custom subscription manager.

Note: Choose the Typical installation when installing the DB2 Administrative Client. The typical install is recommended, a minimal install lacks needed files.

Chapter 1. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager

Page 20: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch03.fm Draft Document for Review November 10, 2005 2:05 pm

1.3.4 Device Manager AgentsThe IBM Everyplace Win32® agent was installed on a NetVista desktop computer and the console laptop.

The Win32 agent (see Appendix 1-2, “Win32 agent install” on page xviii) is actually IBM Everyplace Client. The Win32 agent is synonymous, in this case, with the OSGi agent. During the client install, supply the DMS Server Address when prompted. The DMS User ID and DMS User Password information is not required to complete the install.

Figure 1-2 Win32 agent install

Connecting to the WebSphere Everyplace Device Manager server for the first time

On the Client Device, start the IBM Everyplace Client Device Agent Control Panel application or browse to:

http://localhost:8080/osiagentservlet

Please refer to Figure 1-3 on page xix for an example of the Win32 agent.

xviii System Integrators Guide: Integration into Service Provider Scenarios

Page 21: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch03.fm

Figure 1-3 The Win32 agent Interface

Click Edit Account Configuration in the left-hand frame as shown in Figure 1-4 on page xx and supply the following information:

� Device User Name: uid=wedm1,ou=users,ou=itso,o=ibm,c=us (the LDAP user must be previously defined in WebSphere Everyplace Connection Manager)

� Device Password: (should match the WebSphere Application Server admin user)

� Server Password: (same as Device Password)

Select the Default account option is checked and click Update Account.

Chapter 1. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager xix

Page 22: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch03.fm Draft Document for Review November 10, 2005 2:05 pm

Figure 1-4 Win32 agent Edit Account Configuration

If the authentication information is incorrect, you will see exceptions in SystemOut.log.

If the authentication information was valid, use the Device Manager console to query devices. The new device should be visible.

Enroll the device (create an account):

� Use the Device Manager Console, query devices and right-click on the device you wish to enroll. Select properties.

� Fill in the SyncML Device Manager properties with the entries given to the Client Agent� Device user name: uid=wedm1,ou=users,ou=itso,o=ibm,c=us� Device password: (should match the WebSphere Application Server admin user)� Server ID: server IP address� Server Password: (same as Device Password)� Click OK. Watch SystemOut.log for errors.

Reconnect the mobile device to the Device Manager server. There should be no errors in SystemOut.log.

Tip: Use the tail -f command on the DMS_AppServer SystemOut.log file on the Device Manager server node prior to connecting the Client Device to the Server.

xx System Integrators Guide: Integration into Service Provider Scenarios

Page 23: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch03.fm

1.4 ScenariosThis section list some possible scenarios describing why you might want to integrate WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager.

1.4.1 Profile Based Job ManagementWebSphere Everyplace Device Manager supports Profile Based Job Management, which grants the customer the ability to run a subset of the jobs that are available for a device, based on some criteria.

Using Profile-based job scheduling, the Device Manager server is instructed to use a particular scheduling profile for a particular class of device.

A profile is a set of rules that determines what jobs can be run. For example:

� Don't run software distribution jobs for Palm devices on low bandwidth connections unless the job priority is greater than X.

� Don't run Inventory jobs on Windows CE devices unless the device is connected to a cradle.

When creating a profile, consider the following factors:

� ConnectionType� jobType� jobPriority� bandwidth_inBitsPerSecond� roughBandwidthMetric_inMilliSeconds

1.4.2 WebSphere Everyplace Device Manager utilization of a WebSphere Everyplace Subscription Manager interface

A user’s ability to subscribe to a service requiring a software download must be restricted based on his device. For example, if a user is connecting using an OSA/SyncML device (which does not support WebSphere Everyplace Device Manager software distribution), subscriptions requiring software download should not be permitted.

WebSphere Everyplace Subscription Manager might prompt a user to select from a list of devices which ones are allowed to receive subscribed content.

Consider whether subscription and accounting should be per user or per device.

If a subscription is allowed, logic should then create the appropriate software distribution job(s) as detailed in the next section.

Note: connectionType and bandwidth_inBitsPerSecond are only useful for device agents and associated plugins that support them.

The use of the profile may be disabled for all devices in a device class and/or for individual devices.

Chapter 1. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager xxi

Page 24: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch03.fm Draft Document for Review November 10, 2005 2:05 pm

1.4.3 Targeting a WebSphere Everyplace Device Manager job to WebSphere Everyplace Subscription Manager subscribers

This scenario details how to create, register, and deploy WebSphere Everyplace Device Manager packages and bundles to WebSphere Everyplace Subscription Manager subscribers.

WebSphere Everyplace Device Manager software distributionWebSphere Everyplace Device Manager software distribution jobs target a single device, multiple devices in a device class or all devices in a device class.

A named WebSphere Everyplace Subscription Manager user may own several WebSphere Everyplace Device Manager devices. WebSphere Everyplace Device Manager software distribution jobs are restricted by device class. Several software distribution jobs (one for each device class) must be created to push software to all devices owned by that user.

WebSphere Everyplace Subscription Manager subscribers not having a supported device would not be able to receive WebSphere Everyplace Device Manager software.

The number of software distribution jobs could be represented as:

[(number of WebSphere Everyplace Device Manager device classes) - (number of WebSphere Everyplace Device Manager device classes that do not support software distribution )] x 2(number of WebSphere Everyplace Subscription Manager subscriptions requiring software distribution)

The same software would need to be created as a package and a bundle.

With that in mind, the steps involved in adding software applications to WebSphere Everyplace Device Manager are as follows:

1. Create a software package or OSGi bundle

2. Copy the package or bundle to a Web server location that is accessible by the Device Manager server.

The Win32 agent is able to submit a Software List Update job upon request. All software applicable to a device class is displayed.

3. Register the software

4. Create a software distribution job

Creating a software package or OSGi bundleA software distribution job sends software packages or OSGi bundles to devices depending on their device class.

� Software packages are applicable to Palm devices and Windows CE devices.

� OSGi bundles are applicable to OSGi devices and Windows 32 devices.

Software can be distributed to an individual device, several devices in the same device class, or all devices in a device class.

Note: Software distribution jobs are not applicable to OMA/SyncML devices.

Remember: Software distribution jobs are not applicable to OMA/SyncML devices.

xxii System Integrators Guide: Integration into Service Provider Scenarios

Page 25: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch03.fm

Software can consist of files, images, databases, installation processes, native software, and other components.

Device Manager does not maintain a library of software. Instead, the Device Manager database is used to store a list of URLs which point to software repositories on a Web server. Device Manager also stores other software-related information in its database. Information in the Device Manager database can be manipulated by the Device Manager console.

Using a software package for software distributionTo make a software package for a software distribution job, follow these steps:

1. Put the files to be distributed on a Web server. The Web server administrator can identify an appropriate directory, which must be accessible to the Device Manager server.

2. Prepare a package definition file for each application package or group of data files you are distributing. Place the package definition file into the same directory as the files you wish to distribute.

3. Prepare a meta package definition file for the software package. The meta package definition file references each of the package definition files that make up a software package. Place the meta package definition file into the same directory as the files you wish to distribute.

Skip to Registering the software.

Using an OSGi bundle for software distributionTo make a software bundle for a software distribution job, follow these steps:

1. Determine the resource requirements and corresponding tuning for the OSGi bundle.

2. Determine the pre-and-post scripts to be run before and after the distribution of the OSGi bundle.

3. Determine the prerequisite bundles and services.

4. Create the OSGi bundle JAR file (Java interfaces and classes, a manifest file, and resource files).

5. Put the OSGi bundle on a Web server. The Web server administrator can identify an appropriate directory, which must be accessible to the Device Manager server.

Registering the softwareThe Device Manager console is used to register the software in the database.

After the software package or OSGi bundle is prepared, it must be copied to a location on a Web server that is accessible by the Device Manager server. Record the URL for use when registering the software.

Device Manager uses the URL address to locate the software. The URL address must point to an existing meta package definition file or OSGi bundle. Device Manager parses the file or bundle to retrieve the software properties.

Note: JAR files must be readable by the world or java.io.FileNotFoundException errors may appear in SystemOut.log. File permissions can be modified (if required) using the following command:

chmod +r *.jar

Chapter 1. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager

Page 26: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch03.fm Draft Document for Review November 10, 2005 2:05 pm

Perform the following steps to register a new software package or bundle:

1. Start the Device Manager console application.

2. Select File →New Software from the main menu.

The New Software Properties window is displayed. Click Help for a description of the fields.

3. Choose a Software type from the list of available options.

4. Type the URL for the software package or OSGi bundle.

5. Click Fetch to retrieve and display the software properties.

After Fetch is clicked, the Software Type and URL fields become read-only.

To prevent duplicate software, no two software packages or bundles can have identical information in all three Software name, Version, and Software type fields. At least one of these fields must be different for any two registered software packages or bundles.

6. To continue with the software registration, click Next.

To exit without registering the software, click Cancel.

7. To make the software available for device class and job type combinations, highlight the corresponding table rows in the New Software Properties window. If no combinations are selected, the software is not available for any jobs.

8. Click OK to complete the software registration

Additionally, we found that registering software could be done using the OSGiBundleTool.sh script. Once the bundle or package has been copied to an HTTP server, run the script. Supply the URL and the appropriate device class. For example:

<DM_HOME>/bin/OSGiBundleTool.sh http://<web_server>/<location>/<file.jar> -d \ <device_class>

Installing software from a deviceIt is possible to install software from a device without creating a software distribution job.

1. Bring up the Device Agent console. For example:

http://localhost:8080/osiagentservelet

2. Click Available Software

3. Refresh the list if necessary prior to selecting a software component from the list.

If the software component has dependencies, those dependencies will be installed as well.

4. Click Install Software

5. Use the Device Manager console to verify that the software has been installed.

Create the software distribution jobSoftware can be distributed to an individual device, several devices in the same device class, or all devices in a device class.

Remember: Software distribution jobs are not applicable to OMA/SyncML devices.

To create a software distribution job, follow these steps:

Note: It is important to use the appropriate -d option for your device.

xxiv System Integrators Guide: Integration into Service Provider Scenarios

Page 27: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch03.fm

1. Select an individual device, several devices in the same device class, or all devices in a device class to receive the software distribution job.

2. Right-click and select Submit Job from the context menu.

Click Next if shown the Target Devices window and a count of the number of target devices.

3. The Attributes window is displayed. Click Help for a description of the fields.

For Job Type, choose Software Distribution from the menu of available options.

The Notify target devices checkbox may or may not be available based on the notification policy and the device class.

Customize any other settings if needed and click Next to continue.

4. Use the Job Parameters window to select software from the Software menu.

If needed, click Add Group to bring up the Software menu.

When distributing OSGi bundles, select Autostart as True to have the OSGi bundle automatically start after the software is distributed. Select Autostart as False to distribute the OSGi bundle without automatic startup.

Click Next to continue.

5. Use the Submit Job Summary window to review and verify the job parameters.

6. Click OK to submit the job.

If the job is submitted successfully, a message is displayed showing the Job ID and the number of eligible target devices. The Job ID can be used to do other tasks such as:

� View job history

� View upcoming jobs

� Exclude a device from jobs

WebSphere Everyplace Device Manager has checkpoint and restart capabilities. Software distribution jobs that are interrupted will resume where they left off. Files previously copied to a device will not be resent to the device when the device reconnects.

To verify that software has been distributed to the target device, you can either check to see if the Job ID has completed or right-click the device and select View Software.

1.5 ConclusionIntegrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager is a complex endeavor requiring much planning.

Many issues remain with respect to the integration of these two WebSphere Everyplace Service Delivery components.

� Is WebSphere Everyplace Subscription Manager subscription and billing per user or per device?

� How does WebSphere Everyplace Subscription Manager communicate to WebSphere Everyplace Device Manager that a device or devices is eligible for software distribution? How can a software package or bundle be targeted and restricted to a specific device?

� What are the HTTP server administrative implications, even presuming that WebSphere Everyplace Device Manager packages and bundles have been precreated?

Chapter 1. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Subscription Manager

Page 28: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch03.fm Draft Document for Review November 10, 2005 2:05 pm

xxvi System Integrators Guide: Integration into Service Provider Scenarios

Page 29: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch04.fm

Chapter 2. Integrating WebSphere Everyplace Server for Telecom with WebSphere Everyplace Subscription Manager and WebSphere Everyplace Device Manager

2.1 IntroductionThis chapter describes integration scenarios related to WebSphere Everyplace Server for Telecom, WebSphere Everyplace Device Manager and WebSphere Everyplace Subscription Manager.

� Leverage WebSphere Everyplace Server for Telecom Parlay applications for select WebSphere Everyplace Device Manager and WebSphere Everyplace Subscription functions.

2

© Copyright IBM Corp. 2004. All rights reserved. xxvii

Page 30: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch04.fm Draft Document for Review November 10, 2005 2:05 pm

2.2 Scenario components� WebSphere Everyplace Device Manager� WebSphere Everyplace Subscription Manager� WebSphere Everypace Server for Telecom

This chapter will primarily discuss WebSphere Everyplace Server for Telecom.

WebSphere Everyplace Server for Telecom V5.1 was not available at the time of this writing.

2.2.1 WebSphere Everyplace Server for Telecom overviewThe previous version: WebSphere Application Server for Telecom

http://www.ibm.com/software/webservers/wasthttp://www.ibm.com/software/pervasive/ws_application_server_telcom

WebSphere Everyplace Server for Telecom V5.1 includes:

� Bundled restricted versions of WebSphere Application Server and DB2� AIX, Solaris™ Operating System, and Linux platform support� Parlay X V1.0 and V2.0 (partial) services� Web Services infrastructure� Security, statistics, message intercept, traffic management, management console� Web Services front ends� Location, terminal status, SMS, MMS, call control, payment, account management� Telecom Web Services Toolkit� WebSphere Studio Application Developer integrated toolkit� Application development with Telecom Web Services access� Integrated service simulation� Web Services Server assembly for BCS

2.2.2 What is Parlay?Parlay is a collection of Application Programming Interfaces (APIs) that enable the integration of telecommunications networks with the Internet. Telecom applications can be made available to an Internet subscriber base. Conversely, Internet applications can be made available to a Telecom subscriber base. The keystones of this integration are WebSphere Everyplace Server for Telecom and the Parlay/OSA (Open Service Access) gateway.

WebSphere Everyplace Server for Telecom Parlay applications integrate the Parlay application model with the J2EE programming model.

The WebSphere Everyplace Server for Telecom Parlay X client application creation environment is based on WebSphere Studio Application Developer V5.1.2.

Parlay capabilities include presence, availability and location.

� Presence - is a user online?� Availability - the status of a user.� Location - where is the user?

The Parlay Gateway1. Receives requests from the WebSphere Everyplace Server for Telecom Parlay

application.

2. Performs the corresponding actions with the underlying telecommunications network.

xxviii System Integrators Guide: Integration into Service Provider Scenarios

Page 31: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch04.fm

3. Notifies the WebSphere Everyplace Server for Telecom Parlay applications when significant real time events occur in the Telecommunications network.

4. Provides a set of Parlay services such as Call Control, Multiparty Call Control, and User Interaction.

5. Provides the set of Parlay Framework capabilities for security, flexibility, fault tolerance, and manageability.

6. Insulates Parlay applications from the details of the underlying voice and data network.

White papers and information regarding the Parlay X specification can be found at the Parlay Group website:

http://parlay.org

See the Parlay X Web Services white paper for examples of how to obtain the location of a mobile device and how to send a Short Message Service (SMS) message.

2.2.3 Supported gateways & simulators� Gateways

– AePONA Causeway Parlay Gateway V2.1– Alcatel Parlay OSA Gateway V2.1– Ericsson SCS V2.0 Gateway– Fujitsu Parlay Gateway– Herit Open Service Platform Parlay Gateway– jNETx PARLAY Gateway V2.1– Lucent MiLife ISG V3.0– Open API Solutions Framework V1.1– Telcordia Open Services Platform

� Simulators

– Lucent MiLife ISG SDK V3.0 Simulator– Open API Solutions Application Test Suite V1.1

2.3 ScenariosA Service Provider might consider what it could offer based on a users presence, availability or location.

2.3.1 Presence and availabilityI’m in a meeting. I cannot take phone calls, but I can receive instant messages.

Are my buddies online? If so, initiate a conference call with them.

2.3.2 Integrating WebSphere Everyplace Mobile Portal and WebSphere Everyplace Server for Telecom

A pizza parlor sends an advertisement, coupon or thank-you to a caller’s mobile device.

A salesman sends an electronic business card to the people he calls.

Chapter 2. Integrating WebSphere Everyplace Server for Telecom with WebSphere Everyplace Subscription Manager and

Page 32: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch04.fm Draft Document for Review November 10, 2005 2:05 pm

2.3.3 LocationApplications can exploit location services for resource tracking, finding something, notification and actuation.

I need to find:

� my buddies� a date� my shipment or package� an ATM, hotel, restaurant, hospital or taxi� an alternate route around a traffic jam� car 54

I’m at the:

� shopping mall, send me an advertisement� hotel or airport, check me in.� toll booth, pay this toll

2.3.4 Leverage WebSphere Everyplace Server for Telecom Parlay applications for select WebSphere Everyplace Device Manager and WebSphere Everyplace Subscription functions.

The power and value of WebSphere Everyplace Server for Telecom is its ability to interface WebSphere Everyplace Service Delivery e-business with the Public Switched Telephone Network (PSTN) and wireless telephony.

WebSphere Everyplace Server for Telecom includes a sample Provisioning Web Console. This Provisioning Web front-end could be WebSphere Everyplace Subscription Manager.

WebSphere Everyplace Server for Telecom components

� WebSphere Everyplace Server for Telecom Parlay applications use one or more Enterprise Java Beans (EJBs) to implement code which accesses the Parlay gateway.

� The Parlay Application Programming Interfaces (APIs) are provided as a Java ARchive (JAR) runtime library and conform to the Parlay 3 standard. These generated classes use the Common Object Request Broker Architecture (CORBA) to pass requests between the WebSphere Everyplace Server for Telecom Parlay application and the Parlay gateway.

The WebSphere Everyplace Server for Telecom Parlay Application Mapping layer removes the need for application developers to learn CORBA before writing Parlay applications.

� Several WebSphere Everyplace Server for Telecom EJBs provide management and system services for Parlay applications and must be combined with Parlay Applications on deployment.

– The ParlayConnector EJB™ manages contact and authentication with the Parlay gateway on behalf of the Parlay application.

– The FrameworkAccess EJB allows WebSphere Everyplace Server for Telecom EJBs to access Parlay services on the gateway.

– The Application Manager EJB is responsible for initializing, managing and terminating the lifecycle of managed objects within the WebSphere Everyplace Server for Telecom Parlay application environment.

– The EventScheduler EJB is a WebSphere Everyplace Server for Telecom service which allows Parlay applications to create (and respond to) scheduled events., including wake-up calls or retry functions.

xxx System Integrators Guide: Integration into Service Provider Scenarios

Page 33: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch04.fm

– The DataPublisher EJB provides a standard interface for logging activities and events for offline processing. For example, a call forwarding application can long the result of each forwarding request it receives for a specific subscriber.

� Enterprise Application EJBs implement the non-Parlay aspects of applications, keeping business logic separate from Parlay functions. For example, Business Model EJBs can be used for account processing performed in response to a service provided to a subscriber by the Parlay application.

� A database, typically DB2, is required to manage subscriber data and other data related to the application. EJB containers access a database using Java DataBase Connectivity (JDBC™) and Structured Query Language (SQL).

From a development perspective, the general sequence of events during application development are as follows

1. Creating a new Telecom EJB project also creates a WebSphere Everyplace Server for Telecom server project. The WebSphere Everyplace Server for Telecom server project must contain all EJBs required to run a Parlay application. Enterprise applications may include custom Business Logic EJBs.

2. A Utility project contains a set of libraries for performing standard tasks functions used by the Parlay application.

3. A Web Application project contains the objects which make up a provisioning interface.

4. All components of a Parlay application are combined into an Enterprise Application (EAR) project, although the Web application component may be deployed separately.

5. Java Naming and Directory Interface™ (JNDI) references must be defined so that each EJB can access JDBC connections and other bean properties. Each WebSphere Studio Application Developer project may need to configure one or more JNDI references depending on the resources it must access.

6. References to external data sources can be configured using WebSphere Studio Application Developer and are required if an application accesses a database.

7. An Enterprise ARchive (EAR) project can be deployed internally to the WebSphere Studio Application Developer WebSphere Test Environment for debugging purposes.

8. After debugging, the EAR can be deployed to a true WebSphere Application Server for final testing before being deployed to the production environment.

The Parlay Web Console is the WebSphere Everyplace Server for Telecom interface to the Parlay Server. Using the Parlay Web Console to stop the Parlay Server will properly terminate the connection to the Parlay Gateway.

http://WEST_server:8080/ParlayWebConsole/ServerConsole

In the case of WebSphere Everyplace Subscription Manager integration with WebSphere Everyplace Server for Telecom, Provisioning Web functions would be handled by the WebSphere Everyplace Subscription Manager front-end interface.

A mobile user authenticated to WebSphere Everyplace Subscription Manager would see a web page similar to Figure 2-1 on page xxxii.

Note: By developing separate sets of EJBs based on functional affinity, code reuse can be maximized.

Chapter 2. Integrating WebSphere Everyplace Server for Telecom with WebSphere Everyplace Subscription Manager and

Page 34: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch04.fm Draft Document for Review November 10, 2005 2:05 pm

Figure 2-1 A WebSphere Everyplace Subscription Manager example

A portal to WebSphere Everyplace Server for Telecom function could be written in order to provide subscriber interface to Parlay functions. Customer Care would also benefit from a WebSphere Everyplace Server for Telecom portal that would allow a customer service representative to call an end user.

WebSphere Everyplace Server for Telecom integration might be considered negligible for cell phones or other devices having native telephony function.

Sample WebSphere Everyplace Server for Telecom integrations could allow WebSphere Everyplace Subscription Manager subscribers to:

� set an alarm or wake-up call� call a customer service representative� setup call forwarding� make a phone call

The WakeUpCall sampleThe WakeUpCall sample application and the provisioning database maintain a list of WakeUpCall events. The application sets up a timer. When the timer is triggered, the application sends a wake-up call to the user. Refer to Figure 2-2 on page xxxiii.

xxxii System Integrators Guide: Integration into Service Provider Scenarios

Page 35: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch04.fm

Figure 2-2 The Wake-up Call sample

The following steps take place in the WakeUpCall sample

1. A subscriber enters information in the Provisioning Web page specifying a desired wake-up call.

2. The Wake Up Scheduler adds an entry in the Scheduler.

3. At the specified wake up time, the Scheduler fires an event back to the Wake Up Scheduler.

4. The Wake Up Scheduler tells the WakeUpCall bean to generate the call.

5. The call is sent to the Parlay Gateway which then calls the subscriber. The wake up message is delivered when the subscriber answers the telephone.

6. If there is no answer, a new event is scheduled for 1 minute after the no-answer event was received and processed. No answer processing varies slightly between the Generic Call Control (GCC) and Multi Party Call Control (MPCC) samples. In GCC, an application can request a specific no answer timeout duration for a call (WakeUpCall requests 15 seconds), however, if the gateway or simulator setting is less than this value, the shorter timeout will take precedence. In MPCC, there is no mechanism for requesting a specific timeout duration, and only the gateway timeout is in effect. The sample retries the call only once.

The Call center sampleThe Call center sample accepts an incoming call and routes the call to an available operator as shown in Figure 2-3 on page xxxiv.

Chapter 2. Integrating WebSphere Everyplace Server for Telecom with WebSphere Everyplace Subscription Manager and

Page 36: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch04.fm Draft Document for Review November 10, 2005 2:05 pm

Figure 2-3 The Call Center sample

The flow of the call center sample is as follows:

1. The Call Center enables CallNotification for the provisioned numbers at the Parlay Gateway.

2. An operator logs in as an available operator through the Call Center Operator GUI.

3. When an incoming call arrives at the Gateway for the original number, notification is sent back to the Call Center.

4. The Call Center finds an available operator in the Provisioning database.

5. The call is sent to the Parlay Gateway with the available operator’s number. The telephone rings at the forwarded location.

xxxiv System Integrators Guide: Integration into Service Provider Scenarios

Page 37: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch04.fm

6. If no operator is available, the call is placed on hold until an operator becomes available.

The Call forwarding sampleThe Call forwarding sample allows a user to specify an alternate number for receiving calls. Please see Figure 2-4 on page xxxv.

Figure 2-4 The Call Forwarding sample

The following steps take place in the CallForwarding sample:

1. A subscriber types information in the Provisioning Web page specifying a number to which calls are to be forwarded. The Subscription tool sends a ChangeEvent to the CallForwarding EJB.

2. CallForwarding enables CallNotification for the specified numbers at the Parlay Gateway.

3. When an incoming call arrives at the Gateway for the original number, notification is sent back to CallForwarding.

4. CallForwarding gets the forwarding number from the Provisioning database.

5. The call is sent to the Parlay Gateway with the new number. The telephone rings at the forwarded location.

Chapter 2. Integrating WebSphere Everyplace Server for Telecom with WebSphere Everyplace Subscription Manager and

Page 38: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch04.fm Draft Document for Review November 10, 2005 2:05 pm

The Web dial call sampleThe Web dial call sample (see Figure 2-5) allows a subscriber to initiate a call from the provisioning web page. The provisioning web page displays shows if the telephone was answered or not answered.

Figure 2-5 The Web Dial Call sample

The WebDialCall sample is not EJB-based. The following is a simplified description of the sample flow:

1. The subscriber, at the client side, enters a telephone number in the Provisioning Web page. When the subscriber clicks the Dial button, it passes the subscriber phone number and the entered phone number to the bean and toggles the calling status from Idle to Dialing.

2. The bean sets up an Hypertext Transfer Protocol (HTTP) Session, passes the subscriber phone number and the entered phone number to the Servlet and waits for a reply.

3. The servlet sets up a callback that sets a timer that expires and ends the call in 30 seconds if the call does not complete. If the gateway or simulator that WebDialCall is interfacing with has a no answer timeout less than the 30 second default timeout in WebDialCall, the shorter timeout will take precedence and the call will end in less than 30 seconds. If the call completes, it then uses the callback interface to connect both legs of the call.

4. The application initiates the call and routes to the source and the destination.

5. Responses for busy, no answer, or answer are sent back.

6. The callback interface returns the result of the call to the servlet. If both legs connect, it returns Answered. If either number is busy, it returns Busy.

7. The servlet updates the bean either with the result of the call or with No Answer, if the 15 second timer expires.

8. The result of the call is returned to the Provisioning Web which displays the result of the call.

A Location sampleFigure 2-6 on page xxxvii shows the Location sample application. Longitude and latitude coordinates are shown, along with the requested degree of accuracy.

xxxvi System Integrators Guide: Integration into Service Provider Scenarios

Page 39: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch04.fm

Figure 2-6 The Location sample

Note the icons on the map. The three vehicles shown are examples of resource tracking. The mobile phone icon is a good example of how several Parlay capabilities can be integrated: presence, availability and location.

2.4 ConclusionIntegrating WebSphere Everyplace Server for Telecom with WebSphere Everyplace Subscription Manager and WebSphere Everyplace Device Manager is a complex endeavor requiring much planning.

Many issues remain with respect to the integration of these three WebSphere Everyplace Service Delivery components. However, the capabilities shown with respect to what WebSphere Everyplace Server for Telecom and Parlay applications can do give us a glimpse into the exciting future of pervasive computing.

Chapter 2. Integrating WebSphere Everyplace Server for Telecom with WebSphere Everyplace Subscription Manager and

Page 40: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch04.fm Draft Document for Review November 10, 2005 2:05 pm

xxxviii System Integrators Guide: Integration into Service Provider Scenarios

Page 41: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch06.fm

Chapter 3. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Connection Manager

3.1 IntroductionThis Redpaper describes integration scenarios related to WebSphere Everyplace Device Manager and WebSphere Everyplace Connection Manager, specifically:

� Leveraging WebSphere Everyplace Connection Manager messaging for WebSphere Everyplace Device Manager notification and bootstrap of a SyncML device.

SyncML is now part of the Open Mobile Alliance (OMA). See the following website for details:

http://www.openmobilealliance.org/tech/affiliates/syncml

3

© Copyright IBM Corp. 2004. All rights reserved. xxxix

Page 42: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch06.fm Draft Document for Review November 10, 2005 2:05 pm

3.2 Scenario componentsOnce connected to an internal network via a WebSphere Everyplace Connection Manager mobility client, a device agent is able to communicate with the WebSphere Everyplace Device Manager server.

Figure 3-1 WebSphere Everyplace Connection Manager overview

WebSphere Everyplace Connection Manager messaging enables a web application server (WebSphere Everyplace Device Manager) to send messages to messaging clients, such as a pager or a phone, using a variety of wireless networks. Messaging services includes support for Short Message Service (SMS). When installed with the Wireless Access Protocol (WAP) proxy, messaging services also includes support for unconfirmed WAP push delivery.

Figure 3-2 Short message delivery

xl System Integrators Guide: Integration into Service Provider Scenarios

Page 43: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch06.fm

WebSphere Everyplace Connection Manager mobile-originated messages, although not applicable to WebSphere Everyplace Device Manager, may be useful when accessing other application servers.

3.2.1 Changes required on the WebSphere Everyplace Connection Manager gateway

The following two changes are required to be performed on the WebSphere Everyplace Connection Manager gateway.

PMR IY51880 is included in the WebSphere Everyplace Connection Manager 5.0.1.2 release

In order to use WAP Push V1.2 to perform notification and bootstrap jobs with SyncML Device Manager devices, APAR IY51880 for WebSphere Everyplace Connection Manager V5.01 is required. This code fix has been included in the WebSphere Everyplace Connection Manager V5.0.1.2 release.

Adding messaging services to the Connection ManagerPart of WebSphere Everyplace Connection Manager configuration involves creating a Connection Manager resource. The GateKeeper console Add wizard will present the steps necessary to create the resource, including how to add messaging services to the Connection Manager.

Ensure that messaging services have been added to the Connection manager before proceeding. Record the Listen port settings for use in configuring the WebSphere Everyplace Device Manager push-proxy-url later on in this chapter.

For more information, view the WebSphere Everyplace Connection Manager Information Center:

http://wedm_server/dms/docs/en/InfoCenter

3.2.2 Changes required on the WebSphere Everyplace Device Manager serverThe following change is required to be performed on the WebSphere Everyplace Device Manager server.

Changing the URL for the Push Proxy GatewayTo use WebSphere Everyplace Connection Manager in conjunction with Device Manager, you must modify the URL for the Push Proxy Gateway to point to the WebSphere Everyplace Connection Manager server. The URL is in the push.properties file on the Device Manager server:

<DMS_AppServer>/dmserver.war/WEB-INF/classes

where DMS_AppServer is the directory where the Device Manager application server is installed.

In the push.properties file, change the push.proxy-url parameter to the URL of the connection manager. For example, if the connection manager is wecm.itso.ral.ibm.com and

Note: Modifications to the WebSphere Everyplace Connection Manager server, including configuration changes and software updates, require that the DMS_AppServer be restarted.

Chapter 3. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Connection Manager xli

Page 44: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch06.fm Draft Document for Review November 10, 2005 2:05 pm

the message services uses a non-secure port number 13131, the push.proxy-url parameter would have the following value:

push.proxy-url=http://wecm.itso.ral.ibm.com:13131

The port used should match the Listen port settings used when configuring messaging services for the WebSphere Everyplace Connection Manager Connection Manager. The default non-secure port is 13131.

After changing the value for push.proxy-url, stop and restart the Device Manager server.

3.3 ScenariosWhen a person obtains a new mobile device, it may or may not come preconfigured for a particular enterprise or service provider.

If the device does not come preconfigured, configuration will be one of the first tasks performed after an enrolled user connects for the first time and registers the device with the provider.

Our integration scenario details the steps required to submit a bootstrap job to an unprovisioned (clean) device that has just authenticated to WebSphere Everyplace Connection Manager.

A discussion of additional WebSphere Everyplace Device Manager scenarios can be found in the Product overview section of the WebSphere Everyplace Device Manager Information Center.

3.3.1 Bootstrap jobsA bootstrap job is used to:

� Provide initial access for devices to the Device Manager server.� Restore Device Manager configuration information to a device which may have

inadvertently lost that information. For example, after a hard reset of the device.

Bootstrap jobs are available for SyncML Device Manager devices that support the function. SyncML devices must be pre-enrolled before bootstrapping.

The Device Manager console allows bootstrap jobs for the BaseSyncMLDM device class only. Bootstrap jobs cannot be submitted for Palm, OSGi Win32 or WinCE devices.

The Device Manager server must know some information (such as the device address, phone number, or some other mechanism for communicating with the device) before initiating the bootstrap.

The bootstrap message contains enough information for the device to be authorized and to initiate a session with the Device Manager server. It typically contains the SyncML Device Manager management object along with a minimum number of parameters needed to communicate with the Device Manager server. It is a one-time, transfer of information, not part of an ongoing session between the device and the Device Manager server.

The Device Manager server does not expect any return status from the bootstrap message. An implicit acknowledgment of a successful bootstrap will have occurred when a device connects to the server for its first management session.

xlii System Integrators Guide: Integration into Service Provider Scenarios

Page 45: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch06.fm

A bootstrap job will only be sent to a device if its Bootstrapped parameter is set to No in the General Properties tab.

Bootstrap jobs can be created for an individual device, several devices in the device class, or all devices in the device class. The job results and details are stored in the Device Manager database.

Submitting a bootstrap jobTo make a bootstrap job, do the following steps:

1. From the Device Manager console, select the target device, a group of devices, the device class, or criteria for running the job.

2. Right-click a device or the device class, and select Submit Job from the context menu.3. Use the Attributes window to specify the attributes for this job. The job attributes include

the job type, activation date, expiration date, priority, description, and others.

Select Bootstrap in the Job Type field.

4. Use the Job Parameters window to specify the account name and security type you want to set for this job.

Account name

Specifies the Device Manager account to create with the bootstrap job.

Security type

NETWPIN

If the security level is NETWPIN, the shared secret is based on a network specific shared secret.

USERPIN

If the security level is USERPIN, the shared secret is based on a user PIN value.

None

No security for the bootstrap job.

Click Help for information on using the Parameters window.

5. Use the Submit Job Summary window to review and verify the target devices and attributes you specified for this job. Click OK to submit the job.

If the job is submitted successfully, the administrator receives a message that gives the job ID for the created job. You can use the job ID to do other tasks such as:

� View job history� View upcoming jobs� Exclude the device from jobs

3.3.2 Notification jobsA notification job is used to send a message to target devices requesting that they connect to the Device Manager server. For example, a cell phone is notified by Short Message Service (SMS) of a waiting job.

We believe the Device Manager notification message may be customized using code implementing the Administration APIs discussed in the Information Center. See the

Remember: A bootstrap job will only be sent to a device if its Bootstrapped parameter is set to No in the General Properties tab.

Chapter 3. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Connection Manager xliii

Page 46: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch06.fm Draft Document for Review November 10, 2005 2:05 pm

Information Center for information on Application Programming Interfaces for Device Manager, specifically the DEVICE_NOTIFICATION_TYPE device attribute.

Notification jobs can be created for some SyncML devices and some OSGi devices. An event notification caused a device to initiate a connection with the Device Manager server. A notification job can also be used to send a bootstrap message to a device.

The Device Manager console allows notification jobs for the BaseSyncMLDM device class only. Bootstrap jobs cannot be submitted for Palm, OSGi Win32 or WinCE devices.

A notification job will only be sent to a device if its Bootstrapped parameter is set to Yes in the General Properties tab.

Notification jobs can be created for an individual device, several devices in the device class, or all devices in the device class. The job results and details are stored in the Device Manager database.

Event notificationEvent notification is a job option for many job types from the Submit Job wizard on the Device Manager console, when submitting jobs with the Care applications, and using the Device Manager Administration API. When available, the administrator has the option to provide notification as part of the job being submitted. When the notification option is checked, a message is sent to the device that forces the device to connect to the Device Manager server.

For example, after a job is submitted with the notification option selected, an event is issued to the plug-in and a notification is generated and sent to the device. The notification triggers the device to connect to the Device Manager server and run jobs that are waiting for the device.

Notification ManagerThe Notification Manager uses a job notification table in the Device Manager database for processing notifications. The records in the table represent the active jobs that have the event notification checkbox set to Yes (checked) for the target devices. Once the status for a job changes from active state, the job notification record is removed from the job notification table.

For example, if a job is created for 10,000 target devices and the job has the event notification selected, there would be 10,000 records added to the notification table for that job. Since these devices are not typically connected to the network, the notification for an active job is only sent to the device every few days.

The notification intervals are the following:

Table 3-1 Device Manager Notification Intervals

Job Type Notification Interval Maximum Number of Notifications Sent

Bootstrap 6 hours 8

Command script 72 hours 4

Custom command 72 hours 4

Device configuration 72 hours 4

Inventory 72 hours 4

xliv System Integrators Guide: Integration into Service Provider Scenarios

Page 47: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch06.fm

Submitting a notification jobTo make a notification job, do the following steps:

1. From the Device Manager console, select the target device, a group of devices, the device class, or criteria for running the job.

2. Right-click a device or the device class, and select Submit Job from the context menu.3. Use the Attributes window to specify the attributes for this job. The job attributes include

the job type, activation date, expiration date, priority, description, and others.

Select Notification in the Job Type field.

4. Use the Submit Job Summary window to review and verify the target devices and attributes you specified for this job. Click OK to submit the job.

If the job is submitted successfully, the administrator receives a message that gives the job ID for the created job. You can use the job ID to do other tasks such as:

� View job history� View upcoming jobs� Exclude the device from jobs

3.4 WebSphere Everyplace Device Manager job matrixThe scenarios described in this chapter focused on bootstrap and notification jobs. WebSphere Everyplace Device Manager has several job types. All job types are not applicable to all device classes.

Table 3-2 WebSphere Everyplace Device Manager job matrix

Node discovery 72 hours 4

Notification 1 minute 1

Note: The frequency for sending a notification to a device for an active job cannot be changed. The notification interval is set when the job type is installed and registered with Device Manager.

Remember: A notification job will only be sent to a device if its Bootstrapped parameter is set to Yes in the General Properties tab.

Job Type Notification Interval Maximum Number of Notifications Sent

OSGi Palm SyncML WinCE Win32

Bootstrap x

Bundle Control

x x

Command script

x x x

Custom command

x x x

Device configuration

x x x x x

Chapter 3. Integrating WebSphere Everyplace Device Manager with WebSphere Everyplace Connection Manager xlv

Page 48: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch06.fm Draft Document for Review November 10, 2005 2:05 pm

3.5 ConclusionIntegrating WebSphere Everyplace Device Manager with WebSphere Everyplace Connection Manager is a complex endeavor requiring much planning.

We were not able to obtain a SyncML device to test notification or bootstrap jobs. There are no SyncML notification or bootstrap simulators available.

Many issues remain with respect to the integration of these two WebSphere Everyplace Service Delivery components.

� WebSphere Everyplace Service Delivery LDAP planning and sharing

� WebSphere Everyplace Device Manager use of advanced WebSphere Application Server security settings (non-Local OS security)

� How to enable Java2 security in WebSphere Application Server without breaking the WebSphere Everyplace Device Manager Care Applications with a long LDAP authentication string (current limit is 30 characters).

Inventory collection

x x x x x

Node discovery

x x x

Notification x

Registry editing

x

Registry retrieval

x

Software distribution

x x x x

Software distribution for ECUs

x

Software list update

x x

Software removal

x x x x

OSGi Palm SyncML WinCE Win32

xlvi System Integrators Guide: Integration into Service Provider Scenarios

Page 49: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

4.1 IntroductionThe requirement for integrating mobile and voice capabilities comes spontaneously, because many mobile devices support both voice and browser channels. Traditionally, customers use an online channel to interact with an enterprise through its website with great satisfaction and experience. They expect consistent experience and better service for all available channels with their greater mobile investment. They likely won't be happy with the enterprise if one channel of the service doesn't share information with another. They would stop doing business with the enterprise if they experienced poor service from any single channel.

Businesses are under increasing pressure to provide high-quality service while controlling costs. As a result, businesses are increasingly looking for ways to integrate existing systems, reduce future capital expenses, and increase operational effectiveness. Traditionally, a company's customer service center and internet center are operated separately, and they use different business models and access different backend databases. Integration of voice and mobile enables a company to provide customers with the information they need via different channels by bringing together existing telephone network, data communications network and business applications. The multi-channel support enables a company to provide more responsive service, support more programs, and deliver consistently accurate information in such areas as customer contact center service, mobile workforce service, and accessibility service. A company can integrate the Voice over IP (VoIP) technology to extend the reach of its services to provide the best possible service - anytime, anywhere while increase savings and reduce operating costs.

4

© Copyright IBM Corp. 2005. All rights reserved. xlvii

Page 50: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

4.2 Integration componentsThe following sections describe each of the components used for integrating WebSphere Everyplace Mobile Portal with WebSphere Voice products.

4.2.1 WebSphere voice componentsWebSphere voice products include WebSphere Voice Response, WebSphere Voice Server and WebSphere Voice Application Access. They can be smoothly integrated with WebSphere Everyplace Mobile Portal to enable delivery of applications over voice. WebSphere voice components provide a connection environment (voice gateway), a speech recognition engine, and an integration plugin to WebSphere Portal Server.

WebSphere Voice ResponseWebSphere Voice Response provides a connection environment for connecting the telephone network with IP data network and transferring the voice data to a WebSphere Voice Server. The connection environment can be also a Avaya, Cisco, or Genesys Interactive Voice Response (IVR) system.

WebSphere Voice ServerWebSphere Voice Server is based on industry standards:

� VoiceXML to interact with the Web content� H.323 for VoIP

Voice eXtensible Markup Language (VoiceXML) is an XML-based markup language for creating distributed voice applications that users can access from any telephone. WebSphere Voice Server mainly consists of a Automatic Speech Recognition (ASR) engine, a Text to Speech (TTS) engine.

The ASR engine recognizes voice input from the user and converts the input into text which can be used by a VoiceXML application.

The TTS Engine converts text to synthesized speech. The text source may come from prompts within a VoiceXML application or from data that is retrieved from a data source by a VoiceXML application.

The VoiceXML Browser processes the calls, fetches VoiceXML pages from a web application server, parses, and interprets the pages. The VoiceXML Browser is a Java application. It uses HTTP over a LAN or the Internet to fetch VoiceXML pages from a Web application server. A VoiceXML browser for VoiceXML is analogous to a visual web browser for HTML, except that a user interacts with a VoiceXML browser by speaking or by pressing telephone keys rather than through a graphical interface. The user selects a voice item from a voice menu by speech or using telephone keypad, which is passed by the ASR engine to a VoiceXML browser. The VoiceXML browser uses the recognition results to fill in form items or select menu options in the VoiceXML application, and then sends an HTTP request to the Web server which may access the same back-end infrastructure to return information.

WebSphere Voice Application AccessWebSphere Voice Application Access is an extension of WebSphere Portal Server. It adds two main features to the portal server:

� Voice Aggregator� Numeric Alias component

xlviii Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 51: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

The Voice Aggregator provides support for the VoiceXML. Also, the Voice Aggregator supports user authentication. The unauthenticated user can access the portal and view the public pages; however, only authenticated users can access the personalized voice portal pages. The Voice Aggregator generates a VoiceXML log in dialog for a caller to log in by speech or pressing a button on a keypad, and then passes the user information to the WebSphere Portal to authenticate the caller. By default the system prompts the caller for a numeric user ID and password.

The Voice Aggregator invokes one or more VoiceXML portlets to construct the VoiceXML page. A VoiceXML portlet is an application on a WebSphere Portal that provides functionality through a speech user interface. A voice portlet generates VoiceXML markup to implement a speech user interface. More precisely, it generates a VoiceXML fragment, which is then aggregated by the VoiceXML aggregator to construct a complete VoiceXML document.

The Voice Aggregator is also responsible for organizing the content of a voice portal for each caller based on the caller's access permission. The content of the voice portal is organized into a tree structure. The top of the WebSphere Voice Application Access voice portal menu structure is called Portal Home. Under the pages are the portlets. Any page level can also include another page level and/or label level. The caller needs to traverse this menu structure to reach the target application.

The Numeric Alias is the feature that enables a user to log in to the portal using a numeric user name and password. If this component is installed, each user then has two sets of id/password combinations; alphanumeric for use with visual browsers and numeric for use with the voice interface. This allows a caller to use the phone keypad to login for authentication to avoid misrecognition in a noisy environment or to protect the password from others.

4.2.2 WebSphere Everyplace Mobile PortalThe two major features added by WebSphere Everyplace Mobile Portal to WebSphere Portal Server are the following:

� XDIME aggregator� Multi-Channel Server (MCS)

XML-based Device Independent Markup Extensions (XDIME) is based on the XML language. It defines a set of elements which can be used as tags in Java Servlet Page (JSP™). This is similar to the use of tags in markup Languages such as HTML and Wireless Markup Language (WML). XDIME provides hyperlink, form, menu, table, list, text, and script control elements, which are similar to their equivalents in HTML. However, they are generally more powerful in function. The XDIME aggregator is associated with the markup type XDIME, and is invoked by the portal engine to combine the markup from all the XDIME portlets together with headers and footers to generate an XDIME page.

MCS manages the policies and maps resources (for example, images) to devices. The MCS policies define the presentation characteristics (layout, component and theme etc.) of a device through a visual interface. MCS uses a built-in repository to manage a large number of devices from desktop PCs to TVs, PDAs, and mobile phones. You can update the repository as a new device emerges. The device repository consists of a compressed XML file containing attributes of the devices. WebSphere Everyplace Mobile Portal requires several types of MCS policies to be defined to handle device variations before XDIME markup can be rendered correctly. Theme policy is used to manage overall look and feel as well as navigation view on devices. Aggregation policy is used to aggregate the XDIME markup generated by a set of portlets targeted for same page. Layout policy is used to specify physical positions of elements on pages in order to deal with screen size differences.

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products xlix

Page 52: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

Conmponent policy is used to address highly device-specific content (such as, images). MCS is installed as a portal-level filter. It takes the aggregated XDIME markup and converts it into device-dependent markup based on the requesting device, component, theme, and layout policies referenced in the XDIME markup.

4.2.3 Architecture diagram of integrated componentsFrom a high level view, the integrated system consists of four major subsystems: a network connection environment, a connection gateway, a portal server and its extensions (WebSphere Voice Application Access and WebSphere Everyplace Mobile Portal), and a back-end data and/or applications (see Figure 4-1). WebSphere Voice Response provides a connection environment for the voice access. The ASR and TTS engines in WebSphere Voice Server, as well as the VoiceXML browser in WebSphere Voice Response are voice gateway components which convert the data not only between text and speech, but also between speech network and IP data network. The mobile data conversion between wireless network and IP network is done by WebSphere Everyplace Connection Manager. Figure 4-1 illustrates a high level architecture diagram of the integrated system.

Figure 4-1 Architecture diagram of integrated System

A typical customer interaction with WebSphere Portal Server through the mobile device would be as follows:

1. The customer requests the access using a mobile device.

l Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 53: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

2. The request sends to the WebSphere Everyplace Connection Manager (wireless gateway) which converts the request into a HTTP request and then forwards to the Portal Server.

3. The XDIME aggregator generates the XDIME page.

4. The XDIME page is sent to MCS runtime to generate the device-dependent markup page.

5. The device-dependent page is then sent back to the requesting device.

A typical customer interaction with WebSphere Portal Server through voice phone would be as follows:

1. The customer places a telephone call.

2. The audio portion of the call is sent by WebSphere Voice Response to the ASR engine in WebSphere Voice Server.

3. The recognized digitized text is then passed back to the VoiceXML Browser, which then makes a HTTP request to WebSphere Portal Server.

4. The Voice Aggregator generates the VoiceXML page, and sends the resulting text page back to the VoiceXML Browser.

5. The VoiceXML Browser passes the text to TTS engine which generates the synthesize speech from the text, and routes back to the caller's phone.

WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access provide administration portlets to the portal administration interface, so you can use centralized portal interface to configure, manage, and monitor the features. In addition, a portlet that supports a mobile device and a voice phone normally provides a graphical web user interface that could be used for customization of the mobile browser and speech interface and for delivering its complete functionality to visual browsers. Figure 4-2 on page lii is the Web interface for the Customer Contact Center Optimizer solution which is built based upon the integrated components. In the following sections, you will see the mobile and voice view of the same content.

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products li

Page 54: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

Figure 4-2 Web Interface for a Customer Contact Center

4.2.4 Runtime client device identification by the integrated systemWebSphere Portal Server maintains client definitions for all supported client devices in a client registry. A client definition specifies the device properties, such as user agent, markup, markup version, manufacture and model as well as capability. The portal server uses the device properties to optimize the data that the portal sends to the client and to handle the limitations and deviations of a device. To support a new device, portal administrator must add the device's client definition through portal administrator interface. Figure 4-3 on page liii is the client definition configuration for a voice device in the portal server.

lii Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 55: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

Figure 4-3 Client definition configuration for a voice device in WebSphere Portal

WebSphere Portal matches the user agent from the request header of a requesting device against user agent patterns configured in the list of client definitions. If a match is found, the portal uses the markup configured for the matching client definition to determine which aggregator should handle the request from the device. For instance, if the client definition uses XDIME markup, then the XDIME aggregator is invoked to construct the page for the device. Some aggregators, including the XDIME aggregator, support multiple navigation views which are also known as markup versions to further handle the device variations.

WebSphere Portal Server V5.0 has three built-in aggregation modules: HTML, WML and cHTML aggregators. The HTML aggregator produces pages for desktop computers and other devices with HTML browsers. The WML aggregator component produces WML content for Wireless Access Protocol (WAP) devices, which are typically mobile phones. The cHTML aggregator produces content for mobile devices that subscribe to the i-Mode wireless Internet service. When WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access are installed onto the portal server, an XDIME and a Voice aggregator are added to the portal server, respectively. The XDIME aggregator produces XDIME markup targeted at a wide variety of devices (PDAs, WML devices, XHTML devices, etc.). The voice aggregator generates VoiceXML content to support voice devices.

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products liii

Page 56: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

An aggregator invokes one or more portlets to generate the markup. The access to the portlets is controlled by checking access rights during page aggregation and page customization.

A portlet must support the proper markups in order for it to generate the markups that the requesting client devices support. For instance, if a mobile device supports XDIME and VoiceXML markups, the portlet which handles the device request must support both XDIME and VoiceXML markups. This is usually done by creating specific markup versions (XDIME and VoiceXML in the above example) of the portlet Java Server Pages (JSP) in the portlet, and configure the portlet.xml file for the portlet to indicate the supported markups. A proper markup version of the JSP will be automatically selected during runtime based on the device's user-agent. In addition, the page in which the portlet is deployed needs to support the target markups. Figure 4-4 illustrates the supported markups (VoiceXML, XDIME, WML, cHTML and HTML) by the integrated system (the portal server with WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access).

Figure 4-4 Portal page markup support

4.2.5 Mobile accessPortal uses the Multi-Channel Server runtime to convert XDIME markup into a markup language that can be used by a requesting device. Figure 4-5 on page lv illustrates how the Multi-Channel Server runtime plugs into the portal, and how device-dependent markup is generated from XDIME.

liv Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 57: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

Figure 4-5 Mobile access and xdime markup generation

The following details the runtime interaction and XDIME markup generation process as illustrated in the Figure 4-5:

1. The user makes a page request by typing the URL of the application in the portal server, which is received by WebSphere Portal.

2. WebSphere Portal displays a login screen for the user to log in.

3. Once the login is successful, WebSphere Portal invokes the XDIME Aggregator to construct the page.

4. The XDIME aggregator calls the XDIME portlets to generate the markup.

5. The XDIME aggregator combines the markup returned from the portlets, the header and footer, and then returns the page.

6. The XDIME page is passed to the Multi-Channel Server runtime.

7. Multi-Channel Server generates the device dependent markup (e.g. WML, HTML or cHTML) based on the device, component, theme, and layout policies referenced in the XDIME markup.

8. The Multi-Channel Server runtime returns the device dependent markup to the requesting device.

Figure 4-6 on page lvi shows the display screens on the mobile device. They are abstracted from the Customer Contact Center Optimizer solution as shown in Figure 4-2 on page lii:

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products lv

Page 58: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

Figure 4-6 Mobile device screens of the Customer Contact Center

Voice accessVoiceXML provides a whole new way of accessing the same Web information by providing voice access to Web data and services. A VoiceXML Browser sends an HTTP request over the Internet to fetch VoiceXML pages from the portal server. The VoiceXML portlet which handles the request may access the same back-end data with the mobile portlets which handles the mobile request. VoiceXML browser only changes the presentation of the information, not the information itself or the way it is generated by the Web server or the back-end system. Therefore, voice access process is similar to the mobile process in terms of the way the markup is generated. Only difference is the way that the information is presented to the user and the way that the request is passed to the portal server.

The following details the runtime interaction and voice markup generation process as illustrated in Figure 4-7 on page lvii:

1. The voice server receives a call from a telephone. Telephone voice data is transferred to a WebSphere Voice Server through a connection environment which can be WebSphere Voice Response, Avaya, Cisco, or Genesys.

2. The audio data from the caller is received by the WebSphere Voice Server.

3. The ASR engine analyzes the audio stream and converts it to digitized text. The digitized text is then sent to the VoiceXML browser, which creates an HTTP request and sends it to the portal server over the network.

4. The Voice Aggregator processes the login request, and returns the VoiceXML login page to the VoiceXML browser.

5. The VoiceXML browser passes the VoiceXML page to the TTS engine which converts the text to speech, and then sends back to the caller.

6. The VoiceXML login page prompts the caller to say or enter the numeric user ID and password. The Voice Aggregator passes the user information to the WebSphere Portal for authentication.

7. After successful authentication, the portal server redirects the caller to the Portal Home VoiceXML selection menu page.

8. The user selects a specific page by speech or pressing on the phone keypad.

9. The VoiceXML portlet in the portal server handles the HTTP request. The back-end data source is accessed as needed to generate dynamic data.

10.The Voice Aggregator processes the request, and then returns a new VoiceXML selection menu page starting at the page selected by the user if the page contains more than one portlet. This menu page contains the selection choices for the portlets on this page.

11.The user selects a specific portlet on the current page.

lvi Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 59: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

Figure 4-7 Voice access and VoiceXML markup generation

The following example shows the above process. This is abstracted from the Customer Contact Center Optimizer solution as shown in Figure 4-2 on page lii:

System Welcome to JK Telecom customer interactive service center. To better serve you, please say or enter your ID.

Caller 11111

System Please say or enter your numeric password.

Caller 123456

System You are in my account service; please select one of the services: Billing Summary, Pay My Bill, Account Details, Payment History, or Available services.

Caller “Pay my bill”

System Your bill amount is two hundred and fifty five dollars and five cents, which is due on September 28. To make a payment, please say yes, otherwise, say no.

Caller “Yes”

System You have selected to make a payment of two hundred and fifty five dollars and five cents. The amount will be withdrawn from your banking account which you set up in your profile. Please select one of the following services: Billing Summary, Pay My Bill, Account Details, Payment History, or Available services.

Caller “Billing summary”

System Your bill amount is two hundred and fifty five dollars and five cents, which is billed on August 29th. The due date for the bill is on September 29. You made a payment of two hundred and fifty five dollars and five cents on September 25th. Please select one of the following services…

Caller <silent>

System At any time you can say Help, Repeat, Go Back, Start Over or Exit. To continue, please select one of the following services…

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products lvii

Page 60: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

4.3 Installation and configurationThe installation and configuration procedure of WebSphere Voice Response and WebSphere Voice Server are detailed in the installation documents which accompanies the product. This chapter will only focus on the installation issues of WebSphere Voice Application Access and WebSphere Everyplace Mobile Portal.

4.3.1 System requirements for the integrated componentsThe following sections discuss the software and hardware requirements for the integrated components.

Software requirementsThis section is to help you understand how the WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access components interact with each other and with the prerequisite software.

WebSphere Portal, a prerequisite component by both WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access, installs and runs as an application server on the WebSphere Application Server platform. For each installation of WebSphere Everyplace Mobile Portal or WebSphere Voice Application Access, an installation of WebSphere Portal Server is required.

WebSphere Everyplace Mobile Portal requires a database server to store user data. You can use either DB2 or Oracle database servers. The Cloudscape™ database, which is installed by default with WebSphere Portal Server, is not supported as a production database with WebSphere Everyplace Mobile Portal. During the installation, WebSphere Everyplace Mobile Portal adds an additional table to the WebSphere Portal database for tracking preload notice usage on a per user basis. The Multi-Channel Server Component of WebSphere Everyplace Mobile Portal stores client device repository in the database which can be on the same database server as the database server used for WebSphere Portal or it can be on a separate database server.

WebSphere Voice Application Access requires a Lightweight Directory Access Protocol (LDAP) server to support the Numeric Alias feature. The Numeric Alias feature is an optional component in WebSphere Voice Application Access; however, it is required to authenticate the user in order for the user to access the personalized pages. During the installation, the Numeric Alias component of WebSphere Voice Application Access adds additional attributes to each user in the WebSphere Portal LDAP server. WebSphere Voice Application Access V5.0 currently only supports IBM Directory Server.

Currently, WebSphere Everyplace Mobile Portal only supports IBM AIX and Solaris Operating System. It does not support Windows or Linux platforms. However, WebSphere Everyplace Mobile Portal Enable, which became available after the writing of this Redpaper, does support Linux.

In summary, WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access prerequisites the following software:

� Either IBM AIX 5L™ V5.1 with Maintenance Level 4 or AIX 5L V5.2 with Maintenance Level 1 or Solaris Operating System V2.8 or V2.9

� Either DB2 V8.1 Universal Database (UDB) Enterprise Server Edition with Fix Pack 4a or Oracle Database V9i Release 2 (V9.2.0.4).

� IBM Directory Server V5.1 with Fix Pack 2

� WebSphere Portal for Multiplatforms V5.0.2.1

lviii Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 61: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

� WebSphere Application Server Enterprise V5.0.2.2 or WebSphere Application Server Network Deployment V5.0.2.3

Hardware requirementsBefore you decide an installation topology, you should consider the following issues:

� WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access are add-on components of WebSphere Portal Server. For each installation of WebSphere Everyplace Mobile Portal or WebSphere Voice Application Access, an installation of WebSphere Portal Server is required. WebSphere Everyplace Mobile Portal or WebSphere Voice Application Access installations must reside on the same computer with WebSphere Portal Server.

� WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access should share the same user data, such as user identities, credentials, and permissions for accessing portal resources. Therefore, they should be configured with the same LDAP server which stores the user identities and the same portal database which stores user data.

This actually requires WebSphere Everyplace Mobile Portal, WebSphere Voice Application Access, and Portal Server as well as its prerequisite Application Server be installed in the same computer. Therefore, there are two topologies you may consider when you install a WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access integrated system:

� Single-computer topology

All the WebSphere Voice Application Access and WebSphere Everyplace Mobile Portal components and their prerequisite softwares are installed on the same computer. WebSphere Application Server, WebSphere Portal, Database Server and IBM Directory Server are on the same computer as the WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access. If you decide to use this topology, you should not select embedded WebSphere Application Server Express during IBM Directory Server installation. Instead, after WebSphere Application Server is installed, you should deploy the IBM Directory Server administrator interface in the WebSphere Application Server installed in the same machine as the Directory Server.

� Multiple-computer topologies

The database server, directory Server and rest of the components are physically located on three different computers.

You may install WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access in a cluster environment. However, this chapter will not discuss this scenario. You should refer to the WebSphere Portal Information Center and WebSphere Everyplace Mobile Portal Information Center for hardware and software requirements, as well as the installation and configuration guides.

4.3.2 Installation roadmapThis section describes general steps required to install the WebSphere Voice Application Access and WebSphere Everyplace Mobile Portal components. You should review the planning and installation documentation associated with WebSphere Everyplace Mobile Portal, WebSphere Voice Application Access and each of the prerequisite software products, especially the WebSphere Portal Information Center, for detail information.

1. Install a database Server and Fix Pack

If you want to use an existing installation of a database server, you will need to gather information about the installed database before installing the subsequent products.

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products lix

Page 62: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

2. Install IBM Directory Server and FixPack

If you already have an LDAP server installed, you will need to collect information about the LDAP server before installing WebSphere Voice Application Access.

3. Install WebSphere Portal Version V5.0

4. Install WebSphere Portal for Multiplatforms V5.0.2.1

This also requires you to install WebSphere Application Server V5.0.2.3 cumulative fixes and interim fixes.

5. Configure the portal to use the database server

This step sets up the portal server to use the database server (DB2 or Oracle) instead of Cloudscape.

6. Configure the portal for IBM Directory Server

This step configures the portal security using IBM Directory Server.

7. Install WebSphere Everyplace Mobile Portal

Refer to the topics in the "Planning" section of the WebSphere Everyplace Mobile Portal Information Center and be sure that you have performed the planning steps required for your Everyplace Mobile Portal installation.

8. Install WebSphere Voice Application Access

You should select at least Voice Aggregator and Numeric Alias components.

4.3.3 Configuration and customizationThe following sections show you how to configure and customize WebSphere Voice Application Access and WebSphere Everyplace Mobile Portal.

Voice access configurationThis section describes configuration of the WebSphere Voice Application Access and WebSphere Voice Server so that they can identify each other during the runtime.

WebSphere Voice Application Access system grants or denies a Voice Server system access in its property setting. The WebSphere Voice Application Access property file (WPS_HOME/shared/app/config/voiceaccess.properties) contains information related to the Voice Servers and the voice portal languages that are supported by the WebSphere Voice Application Access system. Example 4-1 shows the contents of the voiceaccess.properties file, which grants the voice requests from the voice server systems with IP addresses 192.68.10.1 and 192.68.10.2. The property file also indicates that the WebSphere Voice Application Access supports both English and Japanese.

Example 4-1 voiceaccess.properties file

# WebSphere Voice Application Accessvoice.hostCheck=true# Permitted Voice Server listhost1=192.68.10.1host2=192.68.10.2# Available languages for Voice Access language.1=en language2=jp language

The Voice Server system sets up the access parameter for the WebSphere Voice Application Access system in its configuration file (default.cff), and assigns a phone number to the corresponding application. Example 4-2 on page lxi shows the contents of the default.cff

lx Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 63: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

file, which configures an application named voiceapp and specifies that the voice server will use the URL, http://hi4c.test.austin.ibm.com/wps/portal/.scr/Login to access the WebSphere Voice Application Access system with host name hi4c.test.austin.ibm.com. A phone number for the application voiceapp will enable all the call for the number to be handled eventually by the VoiceXML application running in WebSphere Voice Application Access system.

Example 4-2 default.cff file

AppName=voiceappEnabled=yesParameter=URL, http://hi4c.test.austin.ibm.com/wps/portal/.scr/Login AppClass=com.ibm.wvr.vxml2.DTVoicelet2

The Post Limit Size updateThis configuration change is needed only when your audio file sizes are very large. By default, WebSphere Application Server limits the size of an HTTP post request to 10 MB in order to limit potential denial of service attacks. However, your WebSphere Voice Application Access application size with large number of audio files might exceed the limitation. For instance, the Voice Remind portlet which is shipped with WebSphere Voice Application Access V5.0 (in WPS_ROOT/install/voice/ibmva_reminder.war after WebSphere Voice Application Access installation) and installable in WebSphere Portal Server is approximately 25 MB in size. When you install an application which exceeds the size limitation, you may get an error message in the Web browser similar to

Request Entity Too Large The requested resource /wps/myportal/!ut/p/… does not allow request data with POST requests, or the amount of data provided in the request exceeds the capacity limit

Therefore, the Post Limit Size will prevent an administrator from installing a voice application that exceeds 10 MB in size.

The configuration of the Post Size Limit is located in the WebSphere plug-in configuration file (plugin-cfg.xml). If you are seeing the above error message or similar, you need to change the limit to correct the problem. To change the limit, perform the following actions:

1. Open the WebSphere plug-in configuration file (plugin-cfg.xml) in WAS_HOME/config/cells directory with a text editor.

2. Locate the ServerCluster stanza with the name:

WebSphere_Portal_<NODE_NAME>_Cluster

3. Associated with this entry, find the parameter PostSizeLimit.

4. Change to a value in bytes (changing into a value to set a new limit or changing into "-1" to disables limit).

5. Save the changes and close the file.

6. Restart the application and portal servers.

Mobile portal theme and voice greeting customizationAs a minimum, you should configure the WebSphere Everyplace Mobile Portal and WebSphere Voice Application Access to use your company's logo on mobile device and/or a greeting message contains your company name for a voice user.

Customize mobile portal to use your company logoBy default, the mobile portal shows the WebSphere Portal logo in most views of the XDIME aggregator. You can replace it by creating a new image policy and referring to the new policy

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products lxi

Page 64: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

in Main.jsp. To create a new image policy, you need to install and use the Toolkit for WebSphere Everyplace Mobile Portal, which is a plugin to WebSphere Studio Site Developer or WebSphere Studio Application Developer. If you don't want to create a new image policy, you can replace the images which are referred by the default image policies directly.

1. Create the company's logo image in GIF and JPG formats, and name the images as logo.gif and logo.jpg.

2. Back up the logo.gif and logo.jpg files, which are the original WebSphere Portal logo images, in:

WAS_HOME/installedApps/node_name/wps.ear/wps.war/themes/xdime/images

3. Replace the log.gif and logo.jpg image files in the above directory with the images you created for your company's logo. By default, the image sizes are 100x30 (Width x Height).

4. Restart the portal server.

In addition, you can modify the look and feel of your mobile portal, for instance, the location of the portlet controls and color of the portlet title, as well as the default image policies for login, logout, forgot password, add to favorites, and work with favorites. All of these image policies may be modified to use different images, or new policies may be created for these functions and the JSPs may be updated to use the new policies. You need to create your own images, create the corresponding image policies using the Toolkit for WebSphere Everyplace Mobile Portal, then replace the default ones using the ones you created.

Customize voice portal to use your company name in the greeting messageThe language-specific TTS prompts for the caller login and authentication are in the property files in WPS_HOME/shared/app/VoiceAggregator/nls directory. You may modify the file content to customize the greeting and authentication messages, for instance, you can use your company name instead of "IBM WebSphere".

Portlet title customization for mobile and voice devicesWhen you create a page or a portlet that supports mobile or voice markup, the page or portlet's title will be displayed on mobile devices, and the users will both hear and speak these titles on voice phones. The default title for the portlet is first created during the creation of the portlet application. The title can be updated through the "Manage Portlet" in portal administration. By default, your web, voice and mobile users will see or hear the same portlet title. You may want to display a longer and more descriptive title on the web, but a short one for navigation on a mobile device or a voice phone.

To configure a short title for the page or URL for mobile device, login to the portal server as administrator and use the Extended Properties portlet in the administration interface:

1. Select Manage Mobile Pages

2. Expand My Portal and the nested resources until find the page that you want to edit.

3. Select the page by clicking the title.

4. In the Extended Properties section, click Edit.

5. Click Set short title.

6. Type a short title in the Short title field.

7. Click OK, then OK again to save the modified title, or click Cancel if you want to return to Manage Mobile Pages without saving the updated settings.

To configure a TTS spoken title of a page or a portlet, first record a WAV file for the title. The file should be named based on the unique Page/Portlet name extended by the file extension

lxii Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 65: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

“.wav”. Then, place this file in the required location. By default, the new WAV files (with the extension “.wav”) are required to be placed in the following location:

WPS_HOME/installedApps/Node_Name/wps.ear/wps.war/vxml/titles/Locale

After the server is restarted, the TTS output will be replaced with the new WAV file. If the specified WAV file can not be found, WebSphere Voice Application Access will play the alternative TTS text.

4.4 Development platform for the integrated componentsWebSphere Everyplace Mobile Portal and WebSphere Voice Application Access each provide development toolkits. The toolkits are plugins to WebSphere Studio Application Developer or WebSphere Studio Site Developer. The toolkits add XDIME and voice support to WebSphere Studio. They work together with portlet toolkit to provide mobile and voice portlet development and test environments. These environments mainly consists of XDIME and VoiceXML markup support, MCS tools, and a call simulator.

4.4.1 XDIME and VoiceXML markup supportAfter you have installed the mobile and voice toolkits, when you create a portlet application project in WebSphere Studio, you have a choice to select whether or not your portlet will support XDIME and/or VoiceXML markup in addition to the cHTML and WML markup, which is provided by the portlet toolkit by default (see Figure 4-8 on page lxiv).

To select XDIME and VoiceXML support in a portlet application project, follow these steps:

1. Select File →New →Project. Then select Portlet Development, Portlet Application Project, and then click Next.

2. Fill each field in the Portlet Application wizard. Make sure to select Configure Advanced Options. Then click Next.

3. Fill in each filed in the Portlet Setting page, then click Next.

4. Check the event handling options in the portlet, then click Next.

5. Define the Single Sign On options for your portlet, then click Next.

6. In the miscellaneous page, check the XDIME and VoiceXML marks (see Figure 4-8 on page lxiv).

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products lxiii

Page 66: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

Figure 4-8 XDIME and VoiceXML markup support during portlet project creation

If you select to support XDIME and VoiceXML during your portlet application project creation, an XDIME and a VoiceXML directory will be automatically added in the JSP directory of the content root (WebContent directory) in the project navigation pane. A Java Server Page file will be added to the XDIME and VoiceXML directory, respectively. The XDIME JSP file has the same file extension (“.jsp”) while the VoiceXML file has a JSV (Java Server Page with VoiceXML) as file extension (see Figure 4-9). Besides, the portlet.xml file will be updated automatically to reflect the XDIME and VoiceXML markup supports (see Figure 4-10 on page lxv).

Figure 4-9 XDIME and VoiceXML markup support in JSP files

lxiv Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 67: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

Figure 4-10 XDIME and VoiceXML markup support in portlet deployment descriptor

4.4.2 MCS toolsMCS tools are installed by the Toolkit for WebSphere Everyplace Mobile Portal, which uses the MCS policies to convert XDIME markup into a native markup that is used by a requesting device.

You can create a global MCS project to use by multiple portlet application projects, or add MCS policies for a specific portlet application project.

You can choose a MCS wizard to create a new project or add a new resource to an existing project. Follow these steps to create a new MCS project:

1. Select File →New →Project. Select MCS in the left pane and MCS Project in the right pane.

2. Enter a name, and then click Next.

3. In the Standard device repository file field, browse the directory where you installed the toolkit, and select Toolkit_Home\DeviceRepository\devices.mpdr.

4. In the Policy source directory, ensure the value is: WebContent\mcs-policies.

5. Click Finish.

You can add a new MCS policy to an existing MCS project or a portlet project. If you want to add a MCS policy to a portlet project, you need first to create a mcs-policies directory under WebContent directory of the project, and then add a new policy to the mcs-policies directory. If you want to add a MCS policy to an existing MCS project, you can directly add the policy to

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products lxv

Page 68: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

the mcs-policies directory which is created when you create the MCS project. Follow these steps to add a new MCS policy:

1. Right-click on the mcs-policies directory, select New, and then Other. Select MCS in the left pane and a MCS component in the right pane.

2. Type a component name in the component filed, and make sure the parent folder (mcs-policies or a subdirectory) is correct, and then click OK.

3. Click Finish.

The MCS tools can be used to develop policies visually (see Figure 4-11).

Figure 4-11 MCS policy development using MCS tools in WebSphere Studio Application Developer

4.4.3 Call SimulatorA call simulator is installed by the Toolkit for WebSphere Voice Server, which enables you to simulate DTMF input (for example, PIN codes or passwords) on your desktop. The DTMF Simulator takes the place of a telephone and lets you perform desktop debugging of voice applications without having to connect to telephony hardware and the Public Switched Telephone Network (PSTN).

To start the simulator, follow these steps:

1. From Windows →Open Perspective →J2EE.

2. Select Run →Run. This opens the launch configuration dialog.

3. Right-click VoiceXML JavaServer™ Page. This will create a new launch configuration for a local JSP or JSV file for a Voice Portlet application.

4. In the Local JavaServer Page URL text field, enter a URL:

http://hostname:portnumber/wps/portal/.scr/Login

lxvi Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 69: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922ch09.fm

5. The hostname can be a fully qualified remote host name if you have installed your voice application on a remote portal server, or localhost if you use a WebSphere Portal Test Environment in the Studio.

6. A call simulator is launched for you to test your application (see Figure 4-12).

Figure 4-12 Call simulator for testing voice applications

4.5 The team that wrote this RedpaperThis Redpaper was produced by a team of specialists from around the world working at the International Technical Support Organization, Raleigh Center.

James Chamberlain is a Senior Software Engineer and certified Senior IT Specialist. He is a project leader at the ITSO, Raleigh Center. He has over 24 years experience in the IT industry and specializes in pervasive computing technologies. His areas of expertise include e-commerce, pervasive computing, portals, AIX, Linux, and Java programming. He also architects, designs, and develops solutions using J2EE, XML, Web Services, and IBM software products including WebSphere and DB2. Before joining the ITSO, James worked for IBM Global Services on e-commerce system development for IBM Business Partners. He majored in Computer Science at Iowa State University.

Shunguo Yan is a Staff Software Engineer in the Application and Integration Middleware (AIM) division of IBM software group in Austin. He has more than 8 years of experience in object-oriented analysis and design, application integration, and software implementation of industrial specifications. He holds a master degree in Computer Science. His areas of expertise include architecture, design, and development of integrated solutions to various industries using J2EE, XML, Web Services, and software products from IBM and other companies.

Chapter 4. Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products lxvii

Page 70: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922ch09.fm Draft Document for Review November 10, 2005 2:05 pm

Thanks to the following people for their contributions to this project:

Benson Chen, technical consultantIBM Pervasive Computing Division

Kim Foster, reviewerIBM Sales & DistributionWebSphere Portal Technical Sales

Many thanks to the following IBM people for their assistance.

Lenore RammMike SeedorfCharles Le VayMart NuttallTony WrobelDale ChamberlainScott BroussardGary CraigRobert SagerDave HellerLei LuDave PiersonDon Watson

And a specials thanks to our ITSO support staff at the International Technical Support Organization, Raleigh Center:

Margaret TicknorJeanne TuckerTamika BarrowLinda Robinson

Thanks to our ITSO management:

Jere Cline

And a special thanks to our IBM Pervasive Computing sponsor:

Mary Fisher

lxviii Integrating WebSphere Everyplace Mobile Portal with WebSphere Voice Products

Page 71: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922abrv.fm

ronyms

ACL Access Control List

AIX Advanced Interactive eXecutive

AO Access Offering

APAR Authorized Program Analysis Report

ASP Application Service Provider

AST Active Session Table

B2B Business to Business

B2C Business to Customer

CBR Content Based Routing

CDMA Content Division Multiple Access

CDPD Cellular Digital Packet Data

CHTML Compact HTML

CORBA Common Object Request Broker Architecture

CSR Customer Service Representative

DCE Distributed Computing Environment

DIT Directory Information Tree

DMS Device Management Server

DMZ Demilitarized Zone

DN Distinguish Name

DNS Domain Name System

DTD Document Type Definition

DTMF Dual Tone Multi Frequency

EAR Enterprise ARchive

ECP Everyplace Cookie Proxy

EJB Enterprise Java Bean

EO Enable Offering

ESCP Edge Server Caching Proxy

ESM Everyplace Synchronization Manager

ESS Everyplace Synchronization Server

EWG Everyplace Wireless Gateway

FTP File Transfer Protocol

GIF Graphics Interchange Format

GSM Global System for Mobile Communication

GSO Global Sign-on

GUDA Generalized User Directory Access

HACMP™ High Availability Cluster Multiprocessing (AIX)

Abbreviations and ac

© Copyright IBM Corp. 2004. All rights reserved.

HDML Handheld Device Markup Language

HTTP Hypertext Transport Protocol

HTTPS Secure Hypertext Transport Protocol

IBM International Business Machines

IDS IBM Directory Server

IHS IBM HTTP Server

IMAP Internet Message Access Protocol

IMC IBM Mobile Connect

INS Intelligent Notification Services

IP Internet Protocol

ISDN Integrated Services Digital Network

ISP Internet Service Provider

ISV Independent Software Vendor

ITSO International Technical Support Organization

JDBC Java DataBase Connectivity

JDK Java Development Kit

JNDI Java Naming and Directory Interface

JPEG Joint Photographics Expert Group

JSP Java Server Pages

JVM™ Java Virtual Machine

LBS Location Based Services

LDAP Lightweight Directory Access Protocol

LOB Line of Business

LTPA Lightweight Third Party Authentication

MNC Mobile Network Connection

MQe MQSeries® Everyplace

MSISDN Mobile Station ISDN

NAS Network Access Server

NNTP Network News Transport Protocol

ODBC Open Database Connectivity

PC Personal Computer

PDA Personal Digital Assistant

PICS Platform for Internet Content Selection

PIM Personal Information Manager

PKI Public Key Infrastructure

lxix

Page 72: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922abrv.fm Draft Document for Review November 10, 2005 2:05 pm

PME Programming Model Extensions

POP Post Office Protocol

PSTN Public Switched Telephone Network

QBE Query By Example

RADIUS Remote Authentication Dial-in User Service

RAID Redundant Array of Independent Disks

RAM Random Access Memory

RDBMS Relational Database Management System

RDN™ Relative Distinguish Name

RPC Remote Procedure Call

RPSS Reverse Proxy Security Server

RTSP Real Time Streaming Protocol

SDK Software Development Kit

SLA Service Level Agreement

SMS Short Message Service

SMTP Simple Mail Transport Protocol

SNA System Network Architecture

SPDE Service Provider Delivery Environment

SPO Service Provider Offering

SSL Secure Socket Layer

STEP Sametime® Everyplace

SQL Structured Query Language

TAI Trusted Association Interceptor

TAM Tivoli Access Manager

TCP Transmission Control Protocol

TDMA Time Division Multiple Access

TLS Transport Layer Security

TPSM Tivoli Personalized Services Manager

TPSM Tivoli Personalized Services Manager

TSHDM Tivoli Smart Handheld Device Manager

UDB Universal Database

UDP User Datagram Protocol

UND Universal Notification Dispatcher

URI Universal Resource Indicator

URL Universal Resource Locator

USB Universal Serial Bus

VoIP Voice Over Internet Protocol

VPN Virtual Private Network

WAN Wide Area Network

WAP Wireless Access Protocol

WBMP Wireless Bitmap

WLP Wireless Link Protocol

WML Wireless Markup Language

WTE Web Traffic Express

WTLS Wireless Transport Layer Security

WTP WebSphere Transcoding Publisher

XDIME XML-based Device Independent Markup Extensions

XHTML Extensible Hyper Text Markup Language

XML Extensible Markup Language

lxx System Integrators Guide: Integration into Service Provider Scenarios

Page 73: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922bibl.fm

Related publications

The publications listed in this section are considered particularly suitable for a more detailed discussion of the topics covered in this Redpaper.

IBM RedbooksFor information on ordering these publications, see “How to get IBM Redbooks” on page lxxiii. Note that some of the documents referenced here may be available in softcopy only.

� IBM WebSphere Everyplace Connection Manager V5 Handbook, SG24-7049

� Tivoli Personalized Services Manager Device Manager 1.1: Pervasive Device Management, SG24-6027

� Understanding LDAP Design and Implementation, SG24-4986

� IBM WebSphere Portal for Multiplatforms V5 Handbook, SG24-6098

� WebSphere Everyplace Mobile Portal Version 5 Development and Design, REDP-3942

Online resourcesThese Web sites and URLs are also relevant as further information sources:

� An introduction to the IBM Service Provider Delivery Environment (SPDE):

http://www.ibm.com/industries/wireless/doc/content/bin/TelecomCollateralSPDEIntroduction_1_1.pdf

� AIX V5.2 Documentation Page:

http://publib16.boulder.ibm.com/pseries/en_US/infocenter/base/aix52.htm

� DB2 Information Center:

http://publib.boulder.ibm.com/infocenter/db2help/index.jsp

� IBM developerWorks : IBM developer solutions : DeveloperToolbox Technical Magazine : Building a pervasive computing portal:

ftp://www.software.ibm.com/software/developer/library/it-0701art13.pdf

� IBM Support Fix Central Home Page:

http://www.ibm.com/eserver/support/fixes/fcgui.jsp

� IBM Tivoli Information Center for the IBM Tivoli Directory Server:

http://publib.boulder.ibm.com/tividd/td/IBMDirectoryServer5.2.html

� IBM HTTP Server Support Page:

http://www.ibm.com/software/webservers/httpservers/support

� Linux

http://www.linux.org

� Location-Based Services and Intelligent Notification

http://www.ibm.com/developerworks/ibm/library/i-lbsin.html

© Copyright IBM Corp. 2004. All rights reserved. lxxi

Page 74: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922bibl.fm Draft Document for Review November 10, 2005 2:05 pm

� Open Mobile Alliance (OMA)

http://www.openmobilealliance.org

� Parlay

http://www.parlay.org

� Tivoli Access Manager for e-business

http://www.ibm.com/software/tivoli/products/access-mgr-e-bus

� TeleManagement Forum (TMF)

http://www.tmforum.org

� WebSphere Application Server Support Page:

http://www.ibm.com/software/webservers/appserv/was/support

� WebSphere Application Server Information Centers:

http://www.ibm.com/software/webservers/appserv/was/library

� WebSphere Everyplace Service Delivery Combined information Center, which includes WebSphere Everyplace Mobile Portal Enable and WebSphere Everyplace Subscription Manager:

http://publib.boulder.ibm.com/infocenter/wsphelp/index.jsp

� WebSphere Everyplace Mobile Portal Home Page:

http://www.ibm.com/software/pervasive/ws_everyplace_mobile_portal

� WebSphere Everyplace Mobile Portal Support Page:

http://www.ibm.com/software/pervasive/ws_everyplace_mobile_portal/support

� WebSphere Everyplace Connection Manager Support Page:

http://www.ibm.com/software/pervasive/ws_everyplace_connection_manager/support

� WebSphere Everyplace Connection Manager V5.0.1 Information Center:

http://publib.boulder.ibm.com/pvc/wecm/501

� WebSphere Everyplace Device Manager Support Page:

http://www.ibm.com/software/pervasive/ws_everyplace_device_manager/support

� WebSphere Everyplace Service Delivery Overview Page:

http://www.ibm.com/software/pervasive/ws_everyplace_service_delivery

� WebSphere Everyplace Mobile Portal Enable Overview Page

http://www.ibm.com/software/pervasive/ws_everyplace_mobile_portal_enable

� WebSphere Everyplace Subscription Manager Overview Page

http://www.ibm.com/software/pervasive/ws_everyplace_subscription_manager

� WebSphere Everyplace Device Manager Overview Page

http://www.ibm.com/software/pervasive/ws_everyplace_device_manager

� WebSphere Everyplace Server for Telecom Overview Page

http://www.ibm.com/software/pervasive/ws_everyplace_telecom

� WebSphere Everyplace Connection Manager Overview Page

http://www.ibm.com/software/pervasive/ws_everyplace_connection_manager

� WebSphere Portal for Multiplatforms Support Page:

http://www.ibm.com/software/genservers/portal/support

lxxii System Integrators Guide: Integration into Service Provider Scenarios

Page 75: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

Draft Document for Review November 10, 2005 2:05 pm 3922bibl.fm

� WebSphere Portal for Multiplatforms V5.0.2 Information Center:

http://publib.boulder.ibm.com/pvc/wp/502/ent/en/InfoCenter/index.html

� WebSphere Transcoding Publisher Overview Page

http://www.ibm.com/software/pervasive/transcoding_publisher

� World Wide Web Consortium (W3C)

http://www.w3.org

How to get IBM RedbooksYou can search for, view, or download Redbooks, Redpapers, Hints and Tips, draft publications and Additional materials, as well as order hardcopy Redbooks or CD-ROMs, at this Web site:

ibm.com/redbooks

Help from IBMIBM Support and downloads

ibm.com/support

IBM Global Services

ibm.com/services

Related publications lxxiii

Page 76: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

3922bibl.fm Draft Document for Review November 10, 2005 2:05 pm

lxxiv System Integrators Guide: Integration into Service Provider Scenarios

Page 77: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples
Page 78: System Integrators Guide: Integration into Service ... · capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples

®Draft Document for Review November 10, 2005 2:06 pm

INTERNATIONAL TECHNICALSUPPORTORGANIZATION

BUILDING TECHNICAL INFORMATION BASED ON PRACTICAL EXPERIENCE

IBM Redbooks are developed by the IBM International Technical Support Organization. Experts from IBM, Customers and Partners from around the world create timely technical information based on realistic scenarios. Specific recommendations are provided to help you implement IT solutions more effectively in your environment.

For more information:ibm.com/redbooks

Redpaper

System Integrators Guide: Integration into Service Provider Scenarios

Explore the offerings that implement a subset of SPDE

Understand integration into service provider environments

Walk through integration scenarios

This IBM Redpaper helps you plan, implement, and perform intra-family integration with a family of offerings that implement a subset of the IBM Service Provider Delivery Environment (SPDE), which is a reference architecture that defines a consistent delivery and management platform for services, applications, and content across multiple access networks and devices.

Service providers can choose to implement and integrate all or parts of SPDE with their existing platforms. The information in this redpaper contains examples and scenarios showing ways to integrate the family of offerings, which include WebSphere Everyplace Mobile Portal, WebSphere Everyplace Subscription Manager, WebSphere Everyplace Device Manager, and WebSphere Everyplace Server for Telecom.

This redpaper also deals with how to integrate products such as WebSphere Everyplace Connection Manager, Tivoli Access Manager, and others.

A basic knowledge of wireless, networking, portal, and web technologies is assumed.

Back cover


Recommended