用户指南目录Preface4This manual describes the Cisco Prime Collaboration Provisioning northbound interfaces. It provides instructions for using and administering it.4Conventions4Chapter 1: Getting Started5Description of the Prime Collaboration Provisioning NBI5Audience5Feature Summary6Functional Architecture6Client Requirements7Prime Collaboration Provisioning Web Services Resources7General Prerequisites7How to Use the Prime Collaboration Provisioning NBI SDK8Chapter 2: Common Prime Collaboration Provisioning NBIs9Prime Collaboration Provisioning NBI Overview9Managed Objects10Object Keys11Overview of Request Names11Overview of Object Attributes11Overview of Request Arguments13Create<Object>13Get<Object>13Delete<Object>13Update<Object>13List<Object>13Configurable Properties13Prime Collaboration Provisioning NBI Objects13Device13Key attribute: deviceName13Domain14Key attribute: domainID14ServiceArea14Key attributes: serviceAreaID14InventoryItem14ServiceDetail14Order14Subscriber14Key attribute: subscriberID14CupmApiListValue14CupmApiResponseValue15CupmApiResultValue15CupmApiStatusValue15CupmApiFilterValue16Complete Object Definition File: Common.xsd17Infrastructure Product Key Attributes17Subscriber Product Key Attributes19Referencing Product Attributes from the Product Catalog19<item>20<attributeValue>20<productAttribute>20<<item>20Prime Collaboration Provisioning NBI Requests21Request Signature Class21Device Management Commands and Queries21createDevice Java Signature21getDevice Java Signature22updateDevice Java Signature23listDevice Java Signature23deleteDevice Java Signature24getConfiguredInfraProduct Java Signature25ASyncReturn:26listConfiguredInfraProduct Java Signature26Domain Management Commands and Queries26createDomain Java Signature26getDomain Java Signature27updateDomain Java Signature28listDomain Java Signature28deleteDomain Java Signature29Service Area String Management Commands and Queries30createServiceArea Java Signature30getServiceArea Java Signature31updateServiceArea Java Signature32listServiceArea Java Signature32deleteServiceArea Java Signature34Synchronization Management Commands34syncDevice Java Signature34syncDomain Java Signature35Subscriber Management Commands and Queries36createSubscriber Java Signature36createSubscribers Java Signature37getSubscriber Java Signature37updateSubscriber Java Signature38listSubscriber Java Signature39deleteSubscriber Java Signature40resetSubscriberServicePassword Java Signature40unlockVoiceMail Java Signature41listSubscriberService Java Signature42getSubscriberService Java Signature43moveService Java Signature44moveSubscriber Java Signature44Overview of NBI Object Metadata45Work Order Management Commands and Queries45submitOrder Java Signature45getOrder Java Signature49listOrder Java Signature49Check Connectivity Request51ping Java Signature51Syntax:51public ResponseReturn ping (CUPMServiceStub stub, String epr)51Returns:51Two strings, the Prime Collaboration Provisioning version and the Prime Collaboration Provisioning NBI version.51AsyncReturn:51A test string containing server status is sent to the specified notification consumer at the EPR provided.51Inventory Queries51getInventoryItem Java Signature51listInventoryItem Java Signature52Prepopulation52listProductAttributeChoice Java Signature52Returns a choice list for a specific attribute for a specific product. The choice list is dynamic, based on the Capabilityname, DeviceName, ServiceAreaID, and product attributes that have already been specified.52Syntax:52public ResponseReturn listProductAttributeChoice (CUPMServiceStub stub, String[] arrayOfAttributes, ProductValue product, CupmApiFilterValue filter, String endPointReference, String idPrefix);52Parameters:53 product—The product specified for the return choice list, containing all attributes that have already been set.53 arrayOfAttributes—Each attribute for which a choice list will be returned.53 filter—The selection criteria section of the filter specifies the device, the capability of the device, the ServiceArea, and any product attribute values that have been set. You must specify capabilityName and either DeviceName or ServiceAreaID or b...53 endPointReference—String to convert to an EndpointReference object that the asynchronous result notification will be sent to.53 idPrefix—String that is added to the beginning of the internally generated numeric to form the unique NBI identifier. A null or empty string is valid, resulting in an NBI identifier that is just the internally generated numeric.53Returns:53CupmApiResponseValue—Object with NBI ID.53Throws:53ListProductAttributeChoiceException—If the server cannot execute the NBI request.53ASyncReturn:53 CupmApiResultValue, containing CupmApiStatus and CupmApiList. CupmApiList contains the choice lists requested for the product attributes.53 CupmApiFaultType—Included if the NBI request fails.53Prime Collaboration Provisioning NBI Status Queries53getApiStatus Java Signature53Returns the status of a specific NBI request. If the execution of the command has been completed, an attached CupmApiResultValue is also returned.53Syntax:53public ResponseReturn getApiStatus (CUPMServiceStub stub, String apiId, String endPointReference, String idPrefix);53Parameters:53 apiId—The NBI ID of the command status to return.53 endPointReference—String to convert to an EndpointReference object that the asynchronous result notification will be sent to.54 idPrefix—String that is added to the beginning of the internally generated numeric to form the unique identifier. A null or empty string is valid, resulting in an NBI identifier that is just the internally generated numeric.54Returns:54CupmApiResponseValue—Object with NBI ID.54Throws:54GetApiStatusExcepton—If the server cannot execute the NBI request.54SyncReturn:54 CupmApiResponseValue—Contains CupmApiResultValue, which contains CupmApiStatus and CupmApiList. The list contains one object, the CupmApiStatus for the NBI request specified in the request.54 CupmApiFaultType—Included if the NBI request fails.54AsyncReturn:54None—The command is synchronous.54Note: The command will fail if the server has purged the NBI request.54listApiStatus Java Signature54Returns the status of all outstanding NBI requests this client has submitted.54Syntax:54public ResponseReturn listApiStatus (CUPMServiceStub stub, CupmApiFilterValue filter, String endPointReference, String idPrefix);54Parameters:54filter—Limited filtering of the NBI requests returned.54You can filter using the following attribute:54 status54 endPointReference—String to convert to an EndpointReference object that the asynchronous result notification will be sent to.54 idPrefix—String that is added to the beginning of the internally generated numeric to form the unique NBI identifier. A null or empty string is valid, resulting in an NBI identifier that is just the internally generated numeric.55Returns:55CupmApiResponseValue—Object with NBI ID.55Throws:55ListApiStatusExcepton—If the server cannot execute the NBI request.55SyncReturn:55 CupmApiResponseValue—Contains CupmApiResultValue which contains CupmApiStatus andCupmApiList. CupmApiList contains one object, the EnumerationContextType, which is used to retrieve the list using WS-Enumeration suggested standards.55 CupmApiFaultType—Included if the NBI request failed or had warnings.55Async return:55None—The command is synchronousSpecialized Requests55listSrstPhoneInfo Java Signature55Generates a list of PhoneInfo objects (each represents a Phone with its Users and Lines) that are associated with the given SRST IP address and Prime Collaboration Provisioning IP address. The list of phones generated will always be the set or a subse...55Syntax:55public ResponseReturn listSrstPhoneInfo (CUPMServiceStub stub, String cpIpAddr, String srstIpAddr, String queryOption, String endPointReference, String idPrefix);55Paramaters:55 cpIpAddr—IP address of the Call Processor.55 srstIpAddr—IP address of the SRST.55 queryOption—The data selection criteria, defined by the PhoneInfoqueryOption enumeration.55o ALL—(Default) all phones in Prime Collaboration Provisioning will be considered.55o IN_CUPM_SUBSCRIBER_RECORD—Only the phones that are in the Prime Collaboration Provisioning subscriber record will be selected.55o NOT_IN_CUPM_SUBSCRIBER_RECORD—Only the phones that exist in Prime Collaboration Provisioning and do not exist in the Prime Collaboration Provisioning subscriber record are selected.56 endPointReference—String to convert to an EndpointReference object that the asynchronous result notification will be sent to.56 idPrefix—String that is added to the beginning of the internally generated numeric to form the NBI ID. A null or empty string is valid for no changes to the internal generation.56Returns:56CupmApiResponseValue—Object with NBI ID.56Throws:56ListSrstPhoneInfoException—If server cannot execute NBI request.56ASyncReturn:56 CupmApiResultValue—Contains CupmApiStatus and CupmApiList. CupmApiList contains the WS-Enumeration context object, which is used as the key to pull the list.56 CupmApiFaultType—Included if the NBI request fails.56getOrderSummary Java Signature56Syntax:56public ResponseReturn getOrderSummmary (CUPMServiceStub stub, Calendar startTime, Calendar endTime, String endPointReference, String idPrefix);56Parameters:56 startTime—The beginning of the time period to report on. If not specified, the value defaults to the earliest known work order.56 endPointReference—String to convert to an EndpointReference object that the asynchronous result notification will be sent to.56 idPrefix—String that is added to the beginning of the internally generated numeric to form the NBI ID. A null or empty string is valid for no changes to the internal generation.56Returns:56 CupmApiResponseValue—Object with NBI ID.56Throws:56 GetOrderSummaryException—If server cannot execute NBI request.57ASyncReturn:57 CupmApiResultValue—Contains CupmApiStatus and CupmApiList. CupmApiList contains one object, the OrderSummary object57 CupmApiFaultType—Included if the NBI request fails.57submitConfigTemplate Java Signature57Sends a set of Cisco IOS telephony commands, any router-related commands, and infrastructure product ordering commands to a capability on a device. The commands are specified in a template. Keyword substitution functionality is available.57Syntax:57public ResponseReturn submitConfigTemplate (CUPMServiceStub stub, ConfigDetailValue configDetail, String validate, String rollback, String endPointReference, String idPrefix);57Parameters:57 configDetail—This object defines the device and capability to send the Cisco IOS commands to. It specifies the template to send, and it contains a list of the keywords and their value for this usage.57 validate—VALIDATE, SUBMIT, or VALIDATE_AND_SUBMIT are the settings for this enumeration.57 rollback—PARTIAL_ROLLBACK setting.57 endPointReference—String to convert to an EndpointReference object that the asynchronous result notification will be sent to.57 idPrefix—String that is added to the beginning of the internally generated numeric to form the NBI ID. Null or empty string valid for no change to internal generation.57Returns:57CupmApiResponseValue—Object with NBI ID.57Throws:57submitConfigTemplateException—If server cannot execute NBI request.57ASyncReturn:57 CupmApiResultValue—Contains CupmApiStatus and CupmApiList. CupmApiList contains status of the execution of the Cisco IOS commands on the device.57 CupmApiFaultType—Included if the NBI request fails.57listConfigTemplateKeyword Java Signature58Provides support for listing the keywords used in templates submitted by the submitConfigTemplate request. Returns a list of all the keywords in the specified template.58Syntax:58public ResponseReturn listConfigTemplateKeyword (CUPMServiceStub stub String templateName, String endPointReference, String idPrefix);58Parameters:58 templateName—Name identifying the template for which to return the list of keywords.58 endPointReference—String to convert to an EndpointReference object that the asynchronous result notification will be sent to.58 idPrefix—String that is added to the beginning of the internally generated numeric to form the NBI ID. Null or empty string valid for no change to internal generation.58Returns:58CupmApiResponseValue—Object with NBI ID.58Throws:58listConfigTemplateException—If server cannot execute NBI request.58ASyncReturn:58 CupmApiResultValue—Contains CupmApiStatus and CupmApiList. CupmApiList contains one object that lists the keywords in this template. That object is a KeywordListDocument containing an ArrayOfString object.58 CupmApiFaultType—Included if the NBI request fails.58WS-Enumeration Requests58When a Prime Collaboration Provisioning NBI List Command is executed successfully, a CupmApiResultValue is sent as a notification to the client. This notification contains the object wsen:EnumerationContext. The client can now send the following reque...58 PullOp—Returns a list of elements according to a specified enumeration context. It may also return an updated enumeration context, which the caller should use for all future requests.58 RenewOp—Renews the expiration time for a specified enumeration context as long as the context is still valid. This operation will fail and generate a fault if the context is invalid.58 GetAPIStatus—Returns the status of an enumeration context, such as the expiration time.58 ReleaseOp—Invalidates a specified enumeration context and releases any resources allocated to theenumeration. The UUID list generated by the Prime Collaboration Provisioning NBI List command is flagged for deletion.59Note: The objects used in the Java code can be imported from org.xmlsoap.schemas.ws.x2005.x09.enumeration.59pullOp Java Signature59The pullOp command retrieves a portion of the list data generated by any list NBI. The client may set the MaxElements attribute in the CupmApiEnumIterator before sending to specify the number of elements returned. The default is 1. The pullOp command ...59Syntax:59public ResponseReturn pullOp (CUPMServiceStub stub, wsen:EnumerationContext, wsen:MaxElements, pullSize);59Parameters:59 wsen:EnumerationContext—The latest version of this object that the client has received from the server.59 wsen:MaxElements, pullSize—The number of objects to return with this request.59Returns:59Standard Pull response.59Throws:59 RemoteExcepton—If the server cannot execute the NBI request.59SyncReturn:59The standard pull response, which contains an ItemArrayType. In that type is the number of objects requested. If the pull reached the end of the list, a wsen:EndOfSequence object is returned as a peer of the list. This indicates to the client that no ...59CupmApiFaultType—Included if the NBI request fails.59renewOp Java Signature59The renewOp command tells the server that the client wants to keep the data longer than the initial expiration date. The Prime Collaboration Provisioning server will allow this to happen only if the throttling thresholds for reports will not be exceed...59Syntax:59public ResponseReturn renewOp (CUPMServiceStub stub, wsen:EnumerationContext enumerationContext, XmlCalendar Date or Duration duration);60If a date is specified, that date becomes the new expiration date. If a duration is specified, that time is added to the current expiration date.60The NBI properties control the maximum number of times an expiration date can be increased.60Parameters:60 wsen:EnumerationContext—The latest version of this object that the client has received from the server.60 idPrefix—String that is added to the beginning of the internally generated numeric to form the unique NBI identifier. A null or empty string is valid, resulting in an NBI identifier that is just the internally generated numeric.60Returns:60Standard WS-Enumeration Renew response message.60Throws:60Remote Exception—If the server cannot execute the NBI request.60SyncReturn:60Returns the new expiration date.60getStatusOp Java Signature60Updates the ApiEnumerator object.60Syntax:60public ResponseReturn getStatusOp (CUPMServiceStub stub, wsen:EnumerationContext enumerationContext);60Parameters:60wsen:EnumerationContext—The latest version of this object that the client has received from the server.60Returns:60Standard WS-Enumeration getStatus response message.60Throws:60RemoteException—If the server cannot execute the NBI request.60SyncReturn:60Returns the current expiration date.61releaseOp Java Signature61Tells the server that the client is done with the data and it may be purged.61Syntax:61public ResponseReturn release (CUPMServiceStub stub, wsen:EnumerationContext enumerationContext);61Parameters:61wsen:EnumerationContext—The latest version of this object that the client has received from the server.61Returns:61WS-Enumeration standard Release response message.61Throws:61RemoteException—If the server cannot execute the NBI request.61SyncReturn:61A response with no parameters.61Prime Collaboration Provisioning NBI Implementation of WS-Notification61A Prime Collaboration Provisioning client submits an NBI request to the Prime Collaboration Provisioning server. The two platforms are Web Services peers. The client is a NotificationConsumer and is subscribed to the Web Services resource that is the ...61There are no cases where the Prime Collaboration Provisioning server will send a message to the client unsolicited.61Notification Consumer Service61The Prime Collaboration Provisioning NBI SDK provides a notification consumer service to receive the request notifications. The notification consumer service is written in Java and designed to be deployed in an axis2.war file, running under Tomcat.61The default functionality for this service is to receive the notification on port 8080 and display the notification in the Tomcat console window.61The notification software includes a method to write the notification to disk. The directory to write the notifications in is set by the environment variable consumer.home. The default value used if this environment variable is not set is \Notificatio...62The ability to write the notification to disk is required, if you want to use the auto pull feature in the Perl clients for list subscriber or list Domain.62Appendix A: Sample Clients63This section describes how to use the source code, jar files, and XML files to build sample clients. For detailed information, see the following sections:63 Introduction63 Setting Up the Prime Collaboration Provisioning NBI SDK Development Environment63 Setting Up the Sample Java Clients63 Setting Up the Perl NBI Client63Introduction63Using Ant, you will compile and generate two Prime Collaboration Provisioning NBI clients. The clients use environment variables to specify the server URL to send the request to.63A simple notification consumer service is provided. Using Ant, you will compile and generate archives that can be installed in an AXIS2.war file that has been installed in Tomcat.63You will also be able to package the clients, notification consumer, and tools into a zip file that can be installed on Windows XP platforms.63Setting Up the Prime Collaboration Provisioning NBI SDK Development Environment63In your Prime Collaboration Provisioning installation, you will find a sample client-development directory at CUPM\sep\ipt\nbi-sdk. You may either work in the directory or copy it to another Windows XP platform. This platform must have Java 1.6 and An...63Overview of Prime Collaboration Provisioning NBI SDK Directory63This section lists the directories included in the Prime Collaboration Provisioning NBI SDK. After you download and unzip the SDK, you will see the following directories under the ...\nbi-sdk directory:63 doc—User documentation.63 html-doc—For each NBI XSD file, this directory contains html documentation generated from the annotation fields in the XSD file. In addition, there are graphic descriptions of all NBI complex objects.63The documentation describes all complex objects used by the Prime Collaboration Provisioning NBI. For top level objects, it discusses which attributes are the keys and which attributes must be set in the create request for that object. There are also ...64 productcatalog—Contains the XML file version of the complete Prime Collaboration Provisioning product catalog. In the product catalog directory, there are two subdirectories: the schema subdirectory that has an XSD file that defines all products sup...64 sample—Contains the Java, bat, and XML files for building and running sample clients. Also included are sample create requests for configuration objects.64 wsdl-xsd—Contains all WSDL and XSD files that define the Prime Collaboration Provisioning NBI.64Setting Up the Sample Java Clients64After setting up your environment, either on your Prime Collaboration Provisioning system or on another system, go to the CUPM\sep\ipt\nbi-sdk\sample directory.64The build.xml file in this directory creates the subdirectories output and image. The output directory contains all generated class, jar, zip, and other targets. The image directory is the installable image that can be run from here when referenced wi...64Use the build-install-all target to run all the Ant targets required to prepare the clients and to prepare and deploy the notification consumer service.64The build.xml file provides the following targets:64 build-install-all—Compiles and builds clients, and compiles, builds, and installs notification consumer.64 build-clients—Only builds clients.64 compile-clients—Java compilation.64 lib-clients—Creates jar files for clients.64 image-clients—Adds the clients to the installable image directory.64 build-consumer—Builds only the notification consumer service.64 compile-consumer-schema64 compile-consumer-src64 lib-consumer64 image-consumer65After you have built an image, or installed an image on another platform, run the following Ant commands from the CUPM\sep\ipt\nbi-sdk\sample directory:65 setup-axis2-tomcat—Generates an AXIS2.war file from a new AXIS2 installation, then copies and expands that AXIS2.war file into a Tomcat installation.65 deploy-consumer—Installs the notification consumer in a version of Tomcat with AXIS2 installed and expanded.65Running SDK Sample Clients65After you have prepared your image directory, run the SDKSetup.bat command to set the appropriate environment variables and test the connection with the simple ping command. If you prefer to manually prepare your environment, set the environment varia...65You now have access to the following SDK commands:65 SdkQueryEnvVar—Displays all Environment Variables that are used by the SDK clients, along with their current settings.65 ValidateRequest <XML-File>—Validates an XML file that contains any NBI request. The SAX parser performs the validation against the appropriate XSD file.65 PingRequest <Optional Arguments>—Sends a ping request to the specified Prime Collaboration Provisioning server and sets the EPR to the notification consumer service.65Note: The Server URL and Notification Consumer URL can be specified by the environment variables, or by arguments on the command line. An argument of -h provides a description of the command arguments.65 SendXmlRequest <XML-File>—This client reads an XML file. It optionally substitutes the EPR in the file with the one specified by the environment variables. It optionally substitutes the setting for the idPrefix. It then sends the request and prints ...65Environment Variables65The sample NBI clients allow you to set the server information and notification either on the command line, or by using environment variables. The environment variables enable you to issue a set of requests to one server and receive notifications at o...65XML Sample Files67Included are examples of XML requests to create, update, get, delete, and list some network objects. Simple Orders to configure phones and lines are included.67Note: These requests will require editing to match your configuration.67The sample XML files are commented such that you can update them to match your environment. For example, for create device, at the minimum, you would need to set the IP address and the credentials to match your device.67Installing and Running the Prime Collaboration Provisioning NBI SDK67 Compiles and builds two sample clients.68 Compiles and builds an XML request validator utility.68 Compiles and builds a notification consumer service AAR file.68 Creates the axis2.war file.68 Installs and expands axis2.war in tomcat.68 Deploys the notification consumer service in axis2 in Tomcat.68e. Run SdkSetup.bat <pmadmin-password>. Run this bat file with your pmadmin user ID password as the first argument. This bat file performs the following:68 Sets the environment variable CUPM_NBI_SDK_COMMAND_HOME to the SDK command image built in the previous step (...\nbi-sdk\sample\image\CupmNbiSdkCommands).68 Adds CUPM_NBI_SDK_COMMAND_HOME to the path.68 Sets the following SDK environment variables:68o server.ipaddress=localhost68o notification.ipaddress=localhost68o cupm.user=pmadmin68o cupm.password=<bat-parameter>68 Runs the PingRequest client. As this runs, the data from the ping response is displayed. It shows the Prime Collaboration Provisioning version and the Prime Collaboration Provisioning NBI version. Also, the notification server status string is disp...68Note: The SdkSetup.bat is designed for the SDK and Prime Collaboration Provisioning to be installed on the same system and to use the default values for Prime Collaboration Provisioning’s account name and ports.69If any of the following apply to your installation of Prime Collaboration Provisioning, you will need to set the environment variables to your customized settings:69o Prime Collaboration Provisioning is installed on a system other than the SDK.69o The Prime Collaboration Provisioning account is not pmadmin.69o Port 80 is not used for the server.69o Port 8080 is not used for notification consumer.69o You are using your own notification consumer service.69If you have a configuration other than basic, run SdkSetup.bat and let it fail. Then use the command SET to set the environment variables to match your configuration.69a. Run SendXmlRequest xml\CreateDevice.xml. Sends the XML file CreateDevice.xml in the XML subdirectory to the server. This creates a fictitious device with IPT capabilities. As this runs, a response XML file appears and after a few seconds, the notif...69To create a real device, you must first edit the CreateDevice.XML file. Change the IP address and credential tags to match the real device.69b. Run SendXmlRequest xml\CreateDomain.xml. Sends the XML file CreateDomain.xml in the XML subdirectory to the server. This creates a Domain. As this runs, a response XML file appears. After about a minute, the Notification Result XML file appears in ...69c. Run SendXmlRequest xml\CreateServiceArea.xml. Sends the XML file CreateServiceArea.xml in the XML subdirectory to the server. This creates a Service Area within the Domain. As this runs, a response XML file appears. After a few seconds, the Notific...69d. Run SendXmlRequest xml\CreateSubscriber.xml. Sends the XML file CreateSubscriber.xml in the XML subdirectory to the server. This creates a subscriber within the Domain. As this runs, a response XML file appears. After a few seconds, the Notificatio...69e. Run SendXmlRequest xml\CreateSubscriber2.xml. Sends the XML file CreateSubscriber2.xml in the XML subdirectory to the server. This creates a second subscriber within the Domain. As this runs, a response XML file appears. After a few seconds, the No...69SDK Commands70Once you have installed the SDK and run SdkSetup, you will have access to the SDK commands from that command window. They can be run from any directory.70The following are the SDK commands:70 SendXmlRequest—Reads an XML file from disk. The first argument is the filename of the XML file, and the full path filename if this file is not in the current directory. This command will use the environment variable settings to modify the XML file b...70 ValidateRequest—Reads an XML file from disk. Without making any substitutions, the XML file is validated with the SAX parser against the appropriate XSD file to confirm that this is a valid XML file. File is valid appears if the file passes validati...70 PingRequest—Sends the ping request only. Nothing is read from disk. The instance is created and populated within Java. The ping request is used to test connectivity and credentials from the client to the server, and to test connectivity from the ser...70 SdkQueryEnvVar—Displays all environment variables that are used by the other commands, and their current settings.70 SdkVersion—Displays the date and time that the SDK commands were built.70NBI Prepopulation Requirements70The ListProductAttributeChoice request is often referred to as the prepopulation NBI. It is designed to return choice lists for attributes in a product. The choice lists can be either complete choice lists or context-based choice lists dependent on ot...70Table 11 lists any additional requirements, limitations, and restrictions for returning choice lists for the attributes in a product.70Setting Up the Perl NBI Client71A sample Perl client is included in the subdirectory perl/pm.71Requirements71Perl 5.10.0 is required. The NBI client was developed and tested with ActivePerl, which offers free downloads of the ActivePerl interpreter. The ActivePerl-5.10.0.1005-MSWin32-x86-290470.msi file was used. You should run the installation file, rather ...71Common Properties71The Perl client uses the same environment variables that the Java client does for the Prime Collaboration Provisioning Server EPR and credentials, and for the notification EPR. Environment variables can be used throughout the session for every request...71XML Template Usage71The Perl client uses XML templates for sending the requests. Each template contains the full SOAP envelope for the command. Keywords are substituted by the user-specified values, resulting in a valid XML request that is then sent to the server.71Supported Requests72The sample Perl client supports the following requests:72 ping72 pull72 listDomain72 listSubscriber72The architecture allows extension of additional commands by adding a Perl Module (.pm) file to the subdirectory modules, and a corresponding XML template file to the subdirectory XML/CUPMRequest.72Usage (Sample Session)72The Perl client is run from the command line. It must be run from the perl/pm subdirectory, unless that subdirectory is added to the system path environment variable.72The command is pm.pl. Enter the command with no arguments or with –h for online help.72The command takes one argument, the request name. Additional properties can be assigned with the –D prefix.72Sample Session72The following commands will ping a server and then retrieve a Domain list from it:721. Set up the environment variables:732. Run the perl client: pm.pl ping. Sends the ping request. The Prime Collaboration Provisioning version and the Prime Collaboration Provisioning NBI version are returned in the response and displayed.733. Run pm.pl ping -Dserver.ipaddress=11.22.33.44 -Dcupm.password=diffpassword. Sends a ping request to a different server, temporarily overriding the environment variable settings.734. Run pm.pl listDomain. Sends the listDomain command. The NBI ID is returned in the response and displayed.735. Run pm.pl pull -Dobject.name=<NBI-ID-RETURNED-BY-ABOVE-LIST>. Returns the first element of the list of Domains.736. Run pm.pl pull -Dobject.name=<NBI-ID-RETURNED-BY-ABOVE-LIST> -Dpull.count=1000. Returns the remaining objects on the list, up to 1000.737. The listDomain and the listSubscriber requests provide the functionality to automatically pull all the items in the list immediately after the list is generated. This is triggered by setting the pull.count environment variable to a positive value.73For example: pm.pl listSubscriber -Dpull.count=573This sends a request for a list of all the subscribers in the system. It waits for the notification consumer to write the notification to disk. Then it pulls the list back in increments of five until the end of sequence attribute is received.73Note: For this functionality to work, you must compile the NotificationConsumerService after uncommenting the call to the method saveMessageResult.73Appendix B: Troubleshooting74This appendix provides troubleshooting information.74FAQs747878787878787878787878787878787878787878787878787878787878787878文件大小: 1.1 MB页数: 78Language: English打开用户手册