NN42020-123 Multimedia Communication Portfolio Multimedia Communication Server Open Provisioning Interface MCS 5100 3.5 Standard 4.
Copyright © Nortel Networks Limited 2006 Finding the latest updates on the Nortel Web site The content of this documentation was current at the time the product was released. To check for updates to the latest documentation and software for MCS 5100, click one of the following links: Link to Takes you directly to the Latest Software Nortel page for MCS 5100 software located at www130.nortelnetworks.com/cgi-bin/eserv/cs/ main.
Copyright © Nortel Networks Limited 2006 NN42020-123 MCS 5100 3.5 Standard 4.0 4 4.
Copyright © Nortel Networks Limited 2006 How to get help This section explains how to get help for Nortel products and services. Getting help from the Nortel web site The best way to get technical support for Nortel products is from the Nortel Technical Support web site: www.nortel.com/support This site provides quick access to software, documentation, bulletins, and tools to address issues with Nortel products.
Copyright © Nortel Networks Limited 2006 6 Getting help from a specialist by using an Express Routing Code To access some Nortel Technical Solutions Centers, you can use an Express Routing Code (ERC) to quickly route your call to a specialist in your Nortel product or service. To locate the ERC for your product or service, go to: www.nortel.
Copyright © Nortel Networks Limited 2006 Open Provisioning Interface Topics in this chapter • Open Provisioning Interface introduction • Third party client development • Authentication and authorization • Provisioning Interface • Deprecated methods and method fields Open Provisioning Interface introduction The Open Provisioning Interface (OPI) is used to remotely provision the Multimedia Communication Server (MCS) system. OPI is based on the Simple Object Access Protocol (SOAP) 1.
Copyright © Nortel Networks Limited 2006 WSDL is an XML language that contains information about the interface, semantics and administration of a call to a web service. A detail description of the WSDL standard is available online at the W3C (World Wide Web Consortium) web site at the following URL: www.w3.org/TR/wsdl Third party client development The goal of OPI is to allow customer third party applications to interface with the MCS provisioning system.
Copyright © Nortel Networks Limited 2006 Get the WSDL The WSDL file for MCS is stored on the server hosting the Provisioning Module. You can view and download the WSDL using a web browser. Note: By definition, all the OPI commands (methods) are listed in the WSDL.
Copyright © Nortel Networks Limited 2006 toolsets may be supported in subsequent releases once testing has been completed. Refer to the chapter Building OPI clients for an example of generating a Java stub. Implement interface accessing stubs An interface must be developed that will access the stubs. The interface must support authentication on each OPI request.
Copyright © Nortel Networks Limited 2006 11 system. These administrators can be added/modified through both the Provisioning Client and the OPI itself. Utilizing, the standard HTTP basic authentication enables OPI to be interoperable with the common web services toolsets. Typically, the toolsets allow for simple inclusion of username and password adhering to this standard. Within the MCS system the authentication is performed locally in memory to alleviate the reoccurring authentication.
Copyright © Nortel Networks Limited 2006 12 OPI authorizes each request to verify the incoming credentials have the appropriate role to perform the given action. Provisioning Interface The following list is a summary of the provisioning object types contained within the WSDL. Detailed information on the provisioning objects and their types can be found in the WSDL file. • Simple Types: — Boolean — Byte — Double — Float — Integer — Long — Short — String • Complex types (Domain, User, Route, etc..
Copyright © Nortel Networks Limited 2006 13 (domain and devices) that are not pre-existing in the database when the remove method is invoked. Example An invocation of "removeUser using (jimbob@nn.com)" will return an error indication, "Invalid Data: Domain Not found 'nn.com'", since the domain is not valid. But if the domain is valid and the user is not pre-existing, then a success indication will be returned since the user is not provisioned on the system.
Copyright © Nortel Networks Limited 2006 Table 1 Deprecated methods Deprecated methods getAllPooledResources getAllPooledResourceTypes getAllRoutingAlgorithms getIPCMCapacityByDomain getPooledResource modifyPooledResource modifyServiceParm setServiceParmAsDefault The following table lists deprecated elements. These correspond to fields in the Provisioning Client, and method parameters in the BPT.
Copyright © Nortel Networks Limited 2006 15 Table 2 Deprecated method elements (Sheet 2 of 2) Affected method Deprecated method element addUser (see note) voiceMail voiceMailServer chargeId vpn blendedAliases routes ipcmProperties addUsersToDomain (see note) voiceMail voiceMailServer chargeId vpn blendedAliases routes ipcmProperties modifyUser (see note) voiceMail voiceMailServer chargeId vpn blendedAliases routes ipcmProperties Note: The elements voiceMail, routes, and blendedAliases have been ad
Copyright © Nortel Networks Limited 2006 NN42020-123 MCS 5100 3.5 Standard 4.0 16 4.
Copyright © Nortel Networks Limited 2006 Building OPI clients Topics in this chapter • Building OPI Stubs Clients • Writing a client to perform some specific OPI operations • Two examples • A special note on .NET authentication headers Building OPI Stubs Clients The following sections describes the requirements and steps tasks performed to generate Open Provisioning Interface (OPI) client stubs. The process is based on using the Axis toolkit.
Copyright © Nortel Networks Limited 2006 18 Procedure 1 Downloading the AXIS toolkit On the PC 1 In your web browser, navigate to the Axis toolkit page on the Apache web site. ws.apache.org/axis The 1.1 final version is recommended. 2 Download the 1.1 final version file, axis-1_1.zip, to your PC. 3 Unzip the files to a drive on the PC. In this example, we use Axis files extracted to folder D:\axis-1_1.
Copyright © Nortel Networks Limited 2006 19 Downloading the WSDL file Download the Web Server Description Language (WSDL) from the Provisioning Server. Procedure 3 Downloadin the WSDL file On the PC 1 In your web browser, navigate to the URL: http:///prov/services/OPI?wsdl where is the IP address of the Provisioning Server. This is same IP address used by the Provisioning Client. 2 Download the WSDL file to the folder created for the OPI clients.
Copyright © Nortel Networks Limited 2006 20 This creates the client stubs under d:\opiclient\com\client\opi\service and the client data objects (beans) under d:\opiclient\com\nortelnetworks\ims\opi. The namespace mapping from OPI to com.client.opi.service can be changed to another mapping of choice. Note: The OPISoapBindingStub.java that is generated under com\client\opi\service will have a large static block that will not compile.
Copyright © Nortel Networks Limited 2006 21 The Client classes are now ready to be used. Writing a client to perform some specific OPI operations Once the OPI stubs have been generated and compiled, the real OPI client can be constructed and OPI method calls can be made. To accomplish this, the following steps must be performed in code. Procedure 5 Writing a client to perform some specific OP operations 1 Instantiate the OPIServiceLocator.
Copyright © Nortel Networks Limited 2006 5 22 Make the OPI method call (for example, getUser) by invoking the same on the OPI instance from step 3. An example is shown below. In the example, this class is placed under D:\opiclient. The client class can be compiled similarly to the compilation of the OPI Stubs and executed. During execution the OPI Stub classes and the AXIS toolkit jars must be present in the classpath. This occurrence appears in the following figure. NN42020-123 MCS 5100 3.
Copyright © Nortel Networks Limited 2006 23 Two examples The following two examples illustrate the creation of the two different routes that execute OPI calls: • Example - creating a user route to screen two numbers • Example - creating a route using simultaneous ringing Open Provisioning Interface Reference Guide
Copyright © Nortel Networks Limited 2006 24 Example - creating a user route to screen two numbers The following example illustrates creation of a user route that screens on two numbers and forwards them straight to voice. NN42020-123 MCS 5100 3.5 Standard 4.0 4.
Copyright © Nortel Networks Limited 2006 Open Provisioning Interface Reference Guide 25
Copyright © Nortel Networks Limited 2006 26 Example - creating a route using simultaneous ringing The following example illustrates the creation of a route. It travels during "after-hours" and will first ring two given phone numbers simultaneously and then will roll over to voice mail. NN42020-123 MCS 5100 3.5 Standard 4.0 4.
Copyright © Nortel Networks Limited 2006 Open Provisioning Interface Reference Guide 27
Copyright © Nortel Networks Limited 2006 28 A special note on .NET authentication headers The authentication headers for AXIS toolkit generated stubs are set on the client stub as described in the preceeding example. In that scenario, the client stub is cast down to a org.apache.axis.client.Stub object. In the case of a .NET client this must be done differently.
Copyright © Nortel Networks Limited 2006 Error codes and messages This section lists the error codes and their associated messages that may be returned during a OPI provisioning session.
Copyright © Nortel Networks Limited 2006 • IPCMMgrImpl error messages (016000) • UserTimeMgrImpl error messages (033000) Data-Access error messages (000000) Error Code Error Message 000000 The field(s): {0} must be unique 000001 Numeric value is too large. Please try with a smaller value. 000002 Entry can not be empty. Please provide a value. 000003 Entry can not be empty. Please provide a value. 000004 Value is too large. Please try with a smaller value.
Copyright © Nortel Networks Limited 2006 31 Error Code Error Message 000017 Data unavailable (Connection terminated). Please try again later. 000018 Constraint violated. Please consult documentation for these fields: {0} 000019 Constraint violated. Please consult documentation. 000020 Parent not found for {0} 000021 Cannot delete this entry. Child components are still referencing {0} 000022 Voicemail entry already exists.
Copyright © Nortel Networks Limited 2006 32 Error Code Error Message 001008 Group information retrieval failed, Data access error please contact support for more information. 001009 Adding groups failed, no groups were found for adding for user {0}. 001010 Groups could not be updated: Another group(s) with the same name(s) {0} exists. 001011 Updating group information failed.Data access error: {0} 001012 Adding banned user failed, banned username cannot be null.
Copyright © Nortel Networks Limited 2006 33 AddressBookImpl error messages (002000) Error Code Error Message 002000 The addressbook was not found for the user{0} 002001 The address book information could not be retrieved for user:{0} : {1} 002002 The address book information could not be retrieved : Data access error, please contact support for more information 002003 Addressbook friend information retrieval failed for user {0} : {1} 002004 Addressbook friend information retrieval failed for us
Copyright © Nortel Networks Limited 2006 34 Error Code Error Message 002014 {0} Cannot be added to list of friends, maximum number of friends allowed is {1} 002015 Cannot add entries: Maximum number of friends allowed could not be retrieved 002016 Adding entries failed, no entries were found for adding to addressbook for user {0} 002017 Adding address book entry information failed: Another entry with the nickname(s) {0} exists.
Copyright © Nortel Networks Limited 2006 35 Error Code Error Message 002032 Initialization failure of data for Addressbook: This process is recoverable later. 002033 Failed to initialize data access components. Unable to proceed further. 002034 Data initialization for Addressbook information failed, cannot proceed further. 002035 Primary Contact and Nickname are required fields for an addressbook entry. 002036 Primary Contact cannot have - in it.
Copyright © Nortel Networks Limited 2006 36 Error Code Error Message 002050 The addresss book information could not be retrieved : Data Access Error, Please contact logs for more information. 002051 Failed to send notification of modification of addressbook, please contact support for more information. 002052 Your are allowed to have a maximum of {0} entries in your addressbook with your current service, please contact your provider for a service upgrade if you need to add more entries.
Copyright © Nortel Networks Limited 2006 37 Error Code Error Message 002066 Error retrieving personal addressbook information for user {0} : {1} 002067 Error retrieving global addressbook information {0} 002068 Error retrieving addressbook entry information based on information provided {0} UserServicePkgImpl error messages (003000) Error Code Error Message 003000 Required field not found. Please provide the 'User Name'. 003001 Cannot find a Service Package for user {0}.
Copyright © Nortel Networks Limited 2006 38 Error Code Error Message 003012 Required field not found. Please provide the 'User Name' and 'Service Object'. 003013 Error: Please contact your next level of support. 003014 Error: Failed to send Service Package change notification. UserMgrImpl error messages (004000) Error Code Error Message 004000 Invalid User Name {0} .Please provide the fully qualified 'User Name' i.e user@domain. 004001 Invalid User. User {0} not found.
Copyright © Nortel Networks Limited 2006 39 Error Code Error Message 004012 Cannot add/modify user without User Name. Please provide the required value. 004013 The number of users requested/found is greater than the system limit {0}. Please change your search criteria or increase your system limit. 004014 Required Attributes are null. Please provide the required attributes. 004015 The query for Global Address Book cannot be completed. {0} 004016 Cannot perform query with the current parameters.
Copyright © Nortel Networks Limited 2006 40 Error Code Error Message 004029 Unable to add/modify user {0}. Voicemail ID specified without a valid Voicemail Server. 004030 Username cannot be the word voicemail, please try another username DomainMgrImpl error messages (005000) Error Code Error Message 005000 Required field not found. Please provide the Domain name. 005001 Data retrieval failed: Domain Information not found {0}. 005002 Error: Please contact your next level of support.
Copyright © Nortel Networks Limited 2006 41 Error Code Error Message 024005 Reject Reason information is required for this operation. 024006 Adding new routes information failed: {0} 024007 Route Names information is required. 024008 Route Name information is required for this operation. 024009 Modification of Route information failed: {0} 024010 Retrieving route information failed: There was a problem with the data store while trying to retrieve the information.
Copyright © Nortel Networks Limited 2006 42 AddressBookGroupCondMgr error messages (006000) Error Code Error Message 006000 Address Book Group names information is necessary for an Address Book Group {0}. 006001 Retrieval of Address Book Group information failed. There was a problem with the data store while trying to retrieve the information. 006002 Failed to initialize data access components: Unable to proceed further. Please contact your next level of support.
Copyright © Nortel Networks Limited 2006 43 PhoneNumberCondMgr error messages (019000) Error Code Error Message 019000 Telephone Number information is necessary for a Phone Number {0}. 019001 Retrieval of Phone Number information failed. There was a problem with the data store while trying to retrieve the information. 019002 Failed to initialize data access components: Unable to proceed further. Please contact your next level of support.
Copyright © Nortel Networks Limited 2006 44 Error Code Error Message 008005 Retrieving banned subscriber information failed. There was a problem with the data store while trying to retrieve the information. 008006 Banned subscribers to be deleted information is required. 008007 Removing banned subscriber information failed: {0} 008008 Failed to initialize data access components: Unable to proceed further.Please contact your next level of support.
Copyright © Nortel Networks Limited 2006 45 DomainProfileMgrImpl error messages (012000) Error Code Error Message 012000 Removal of domain profile failed: {0} 012001 Domain information is required. 012002 Profile information is required for this operation. 012003 Modification of domain profile failed:{0} 012004 Data retrieval failed: DomainProfile was not found. 012005 Failed to initialize data access components: Unable to proceed further. Please contact your next level of support.
Copyright © Nortel Networks Limited 2006 46 Error Code Error Message 030010 Failed to refresh caches: Unable to proceed further. 030011 Failed to initialize data access components: Unable to proceed further. Please contact your next level of support. StatusReasonMgrImpl error messages (027000) Error Code Error Message 027000 Status Reason information is required 027001 Removing status reason information failed: {0} 027002 Domain information is required.
Copyright © Nortel Networks Limited 2006 47 Error Code Error Message 027015 Could not retrieve domain information. 027016 Failed to refresh caches. Unable to proceed further. 027017 Failed to refresh Status Reason cache: Unable to proceed further. 027018 Failed to initialize data access components: Unable to proceed further.Please contact your next level of support. ServiceMgrImpl error messages (025000) Error Code Error Message 025000 Service name needs to be specified.
Copyright © Nortel Networks Limited 2006 48 Error Code Error Message 025012 This service expects {0} number of entries.The entries to be made are: {1} 025013 Adding new domain services information failed. {0} 025014 Modifying domain services information failed. {0} 025015 Retrieving parm names information failed. There was a problem with the data store while trying to retrieve the information. 025016 Initialization of service names data failed.
Copyright © Nortel Networks Limited 2006 49 Error Code Error Message 025028 The parameter value for the {0} parm cannot be assigned at this stage.It can only be changed while customizing a service package for a user. Please try again with a blank parameter value. 025029 The value for {0} is invalid, please provide a value between {1} - {2} 025030 Failed to refresh caches. Unable to proceed further. 025031 Failed to initialize data access components: Unable to proceed further.
Copyright © Nortel Networks Limited 2006 50 UserDataMgrImpl error messages (032000) Error Code Error Message 032001 Adding reject reason failed: Reason cannot be null 032002 Adding reject reason failed: {0} 032003 UserData information retrieval failed: {0} 032004 Retrieve operation failed: Data access error, please contact support for more information 032005 Deleting userdata failed for user {0} : {1} 032006 Deleting reject reason failed for user {0} : {1} 032007 Updating userdata failed :
Copyright © Nortel Networks Limited 2006 51 DeviceMgrImpl error messages (010000) Error Code Error Message 010000 Retrieving device information failed. 010001 Cannot add/modify device as the device does not have a macaddress.Please provide a macaddress. 010002 Cannot add/modify device as the device has an invalid macaddress {0}.Macaddress should be less than 12 characters in length. 010003 Cannot add/modify device as the device with macaddress {0} does not have the required attributes.
Copyright © Nortel Networks Limited 2006 52 Error Code Error Message 010014 Invalid Data. Invalid device contrast {0}. The valid values are {1}. 010015 Invalid Data. Invalid device Vocoder {0} or Packet Time {1}. 010016 Invalid Data. Invalid device Time Format {0}. The valid values are {1}. 010017 Invalid Data. Invalid device Date Format {0}. The valid values are {1}. 010018 Invalid Data. Invalid device Locale {0}. The valid values are {1}.
Copyright © Nortel Networks Limited 2006 53 Error Code Error Message 016004 Cannot assign user to IPCM {0} as it is not assigned to Domain {1} 016005 Cannot assign users to IPCM as there are no IPCMs assigned to this Domain {0} 016006 Retrieving IPCM information failed. UserTimeMgrImpl error messages (033000) Error Code Error Message 033001 Adding Timeblock Group information for user {0} failed: {1} 033002 Removing Timeblock Group for user {0} failed. Timeblock Group name cannot be null.
Copyright © Nortel Networks Limited 2006 54 Error Code Error Message 033013 Retrieving Timeblock Group failed. User name cannot be null. 033014 Retrieving Timeblock Group {0} for user {1} failed: {2} 033015 Retrieving Timeblock Groups for user {0} failed: {1} 033016 Retrieving Timeblock Groups failed. User name cannot be null. 033017 Adding Timeblock Group information failed. User name cannot be null. 033018 Adding Timeblock Group information for user {0} failed.
Copyright © Nortel Networks Limited 2006 55 Error Code Error Message 033031 Error retrieving time block information for Timeblock Group {0}. Root cause: {1} 033032 Retrieving Timeblock Group failed: {0} 033033 Error retrieving Timeblock Group Information for user {0}. 033034 Retrieving Timeblock Group(s) for user {0} failed. 033035 Error retrieving time block information for Timeblock Group {0}. 033036 Retrieving Timeblock Group failed.
Copyright © Nortel Networks Limited 2006 NN42020-123 MCS 5100 3.5 Standard 4.0 56 4.
Multimedia Communication Portfolio Multimedia Communication Server Open Provisioning Interface Copyright © Nortel Networks Limited 2006 All Rights Reserved Information is subject to change without notice. Nortel Networks reserves the right to make changes in design or components as progress in engineering and manufacturing may warrant. *Nortel, Nortel (logo), and the Globemark are trademarks of Nortel Networks. *Sun Fire and Netra are trademarks of Sun Microsystems, Inc.