The Number Inventory API was created to more efficiently handle the administration of telephone numbers and inventory items in Oracle Communications MetaSolv Solution. Operations are provided in the WDINI.IDL that provide the following functionality:
Export Number Inventory
Generate User ID
Generate User Password
Import Number Inventory
Pre-assign Telephone Numbers
Remove Inventory Association
Update Number Inventory Provisioning
Validate Password
The following operations provide lookup and export functionality:
exportAccessTelephoneNumbers
exportInventoryItem
exportInventoryItemAssociation
exportInventoryItems
exportInventoryRelationTypes
exportInventoryStatus
exportInventorySubTypes
exportInventoryTypes
exportTelephoneNumbers
exportTopLevelDomains
The following operations provide import functionality:
importInventoryAssociation
importNewInventoryItem
importUpdatedInventoryItem
The WDINI.IDL file contains structures to support a flexible query. Fields on which you can specify search criteria include:
Inventory Type Code
Inventory Subtype Code
Inventory Status Code
Network Area City
Network Area State
Identify Text
Identify Text Suffix.
Figure 6-1 shows the relationship of the interfaces in the Number Inventory API.
Figure 6-1 Number Inventory API Session Interfaces
Table 6-1 describes the operations in the WDIManager interface of the WDINI.IDL file.
Table 6-1 Number Inventory WDIManager Operations
Operation | Description |
---|---|
startNumberInventorySession |
Obtains the object reference of the NumberInventory Session |
destroyNumberInventorySession |
Terminates the NumberInventorySession |
startTransaction |
commit rollback |
destroyTransaction |
Terminates the Transaction |
startSignal |
eventOccurred eventTerminated eventInProgress eventCompleted eventErrored |
destroySignal |
Terminates the Signal |
startInSignal |
eventInProgress eventCompleted eventErrored |
destroyInSignal |
Terminates the Insignal |
Table 6-2 lists the operations and their notification operations in the NumberInventorySession.
Table 6-2 NumberInventorySession Interface Operations
Operation | WDINotification |
---|---|
exportNumberInventory |
exportNumberInventorySucceeded exportNumberInventoryFailed |
importNumberInventory |
importNumberInventorySucceeded importNumberInventoryFailed |
generateUserId |
generateUserIdSucceeded generateUserIdFailed |
generateUserPassword |
generateUserPasswordSucceeded generateUserPasswordFailed |
validatePassword |
validatePasswordSucceeded validatePasswordFailed |
updateNumberInventoryProvisioning |
updateNumberInventoryProvisioningSucceeded updateNumberInventoryProvisioningFailed |
exportTopLevelDomains |
exportTopLevelDomainsSucceeded exportFailed |
exportInventoryTypes |
exportInventoryTypesSucceeded exportFailed |
exportInventorySubTypes |
exportInventorysubTypesSucceeded exportFailed |
exportInventoryStatus |
exportInventoryStatusSucceeded exportFailed |
exportInventoryRelationTypes |
exportInventoryRelationTypesSucceeded exportFailed |
exportInventoryItem |
exportInventoryItemSucceeded exportFailed |
exportInventoryItems This operation uses the same succeeded operation as exportInventoryItem |
exportInventoryItemSucceeded exportFailed |
exportInventoryItemAssociation |
exportInventoryRelationSucceeded exportFailed |
importNewInventoryItem |
importInventoryItemSucceeded importFailed |
importUpdatedInventoryItem |
importInventoryItemSucceeded importFailed |
importInventoryAssociation |
importInventoryAssociationSucceeded importInventoryAssociationFailed |
removeInventoryAssociation |
removeInventoryAssociationSucceeded removeInventoryAssociationFailed |
exportTelephoneNumbers |
exportTelephoneNumbersSucceeded exportTelephoneNumbersFailed * * The operation returns a failed notification and WDIError structure with an error when no data is found for a certain criteria. |
preAssignTelephoneNumber |
preAssignTelephoneNumberSucceeded preAssignTelephoneNumberFailed |
exportAccessTelephoneNumbers |
exportAccessTelephoneNumbersSucceeded exportAccessTelephoneNumbersFailed |
The section that follows contains a sample process flow for unsolicited messages. Use the sample flow as a template when you develop your own process flows.
When the message is initiated by the third party (unsolicited), MetaSolv Solution plays the role of the server, and the third-party application plays the role of the client. Unsolicited messages are processed asynchronously, meaning a callback mechanism is used to report back the results of an operation invoked by the third-party application.
The overall process flow for importing a customer is as follows:
The third-party application binds to the MetaSolv Solution Application Server to get a WDIRoot object reference.
The third-party application invokes the startNumberInventorySession operation of the WDIManager interface to get a NumberInventorySession object reference.
The third-party application invokes the connect operation of the WDIRoot interface, which yields a WDIManager object reference.
The third-party application invokes the startTransaction operation of the WDIRoot interface to get a WDITransaction object reference.
The third-party application instantiates a WDINotification object.
The third-party application invokes the importNewCustomer operation on the NumberInventorySession interface, providing WDITransaction, WDINotification, and NumberInventory CustomerAccount objects.
The MetaSolv Solution Application Server processes the invoked operation of the NumberInventory Session and invokes the appropriate callback operation on the input WDINotification. In this example, the operations are NumberInventoryExportSucceeded or NumberInventoryExportFailed for exporting, and NumberInventoryImportSucceeded or NumberInventoryImportFailed for imports.
If the NumberInventoryImportSucceeded operation is invoked, the third-party application invokes the commit operation of the WDITransaction interface. If the NumberInventoryExportFailed operation is invoked, a WDIError sequence describing the error is returned to the third-party application. The third-party application then performs the appropriate error handling routine. In the case of an import failing, the third-party application should rollback the transaction.
The third-party application invokes the destroyNumberInventorySession operation of the WDIManager interface.
The third-party application invokes the destroyTransaction operation on the WDIManager interface.
The third-party application invokes the disconnect operation of the WDIRoot interface.
When the import of a new object succeeds, the document number is populated with the ID of the new record.
To indicate that a date should be considered null, send 0 for the day, 0 for the month, and 0 for the year. If you supply a year that is less than four digits, 1900 is added to the value to determine the year. If four digits are provided, it is assumed that this is the exact year.
For example, if you provide 1/1/99, It is interpreted as January 1, 1999. If you provide 1/1/101, it is interpreted as January 1, 2001. If you provide 1/1/1, it is interpreted as January 1, 1901. If you provide 1/1/2001, it is interpreted as January 1, 2001.