On Demand Read
OnDemandRead interrogates a meter for the usage at the current point in time.
Composite Properties
| 
 Property Name  | 
 Default Value  | 
 Description  | 
|---|---|---|
| 
 CB_ServerCallbackEndpoint  | 
 http:/[SERVER_NAME]/soa-infra/services/DG/OnDemandRead/CB_Server  | 
 The default endpoint to which MultiSpeak should send the asynchronous CB_Server callback  | 
| 
 IsExecutingOnDemandReadRequestReceived  | 
 true  | 
 Controls whether the Request Received callout executes  | 
| 
 IsExecutingOnDemandReadRequestReceivedResponse  | 
 true  | 
 Controls whether the Request Received Completed callout executes  | 
| 
 IsExecutingReadingChangedNotification  | 
 true  | 
 Controls whether the Reading Changed Notification arrival callout executes  | 
| 
 CallbackTimeoutYears  | 
 0  | 
 The number of years to await a response from the MultiSpeak server. This property only takes effect when the expTime element is not supplied in the input to the service.  | 
| 
 CallbackTimeoutMonths  | 
 0  | 
 The number of months to await a response from the MultiSpeak server. This property only takes effect when the expTime element is not supplied in the input to the service.  | 
| 
 CallbackTimeoutDays  | 
 0  | 
 The number of days to await a response from the MultiSpeak server. This property only takes effect when the expTime element is not supplied in the input to the service.  | 
| 
 CallbackTimeoutHours  | 
 0  | 
 The number of hours to await a response from the MultiSpeak server. This property only takes effect when the expTime element is not supplied in the input to the service.  | 
| 
 CallbackTimeoutMinutes  | 
 0  | 
 The number of minutes to await a response from the MultiSpeak server. This property only takes effect when the expTime element is not supplied in the input to the service.  | 
| 
 CallbackTimeoutSeconds  | 
 45  | 
 The number of seconds to await a response from the MultiSpeak server. This property only takes effect when the expTime element is not supplied in the input to the service.  | 
Composite WSDLs
| 
 Composite  | 
 Description  | 
|---|---|
| 
 OnDemandReadService  | 
 Entry point for the OnDemandRead operation. After a synchronous reply, further updates will be sent to the specified location asynchronously using DG-ReadingChangedNotification.  | 
| 
 CB_ServerService  | 
 MultiSpeak WSDL hosted to receive asynchronous ReadingChangedNotification callbacks from the head end system.  | 
| 
 MR_ServerProxy  | 
 Reference describing the proxy used to invoke the head end system to initiate a On Demand Read.  | 
| 
 MR_ServerCallout  | 
 Reference describing the process callout used when initiating a On Demand Read.  | 
| 
 CB_ServerCallout  | 
 Reference describing the process callout used when the asynchronous callback from the head end system arrives.  | 
| 
 AuxilaryRoutines  | 
 Reference to common helper routines in the Common composite.  | 
| 
 DG-ReadingChangedNotificationXAI  | 
 A reference to an inbound web service capable of processing asynchronous results from a On Demand Read request.  | 
Process Flow
- 
SGG/OUAF invokes InitiateMeterReadingsByMeterID operation using OnDemandReadService.
 - 
Composite properties are loaded. Local variables are initialized.
 - 
Test whether the input includes a expiration time
- 
If Yes: Use AuxilaryRoutines to compute timeout
 - 
If No: Use composite properties and AuxiliaryRoutines to compute expiration time
 
 - 
 - 
Both the Header and Body inputs are transformed to MultiSpeak format.
 - 
If required, execute a process callout in MR_ServerCallout. Assign updated data to head end request.
 - 
Add a callback URL to the head end request. This is the endpoint the head end will use to send the results.
 - 
Invoke InitiateMeterReadingsByMeterID via the MR_ServerProxy to the head end system.
 - 
If required, execute a process callout in MR_ServerCallout. Assign updated data to head end response.
 - 
Transform Header and Body head end responses to SGG/OUAF format
 - 
Reply to SGG/OUAF with synchronous results
 - 
Check for ErrorObject in the head end response.
 - 
If error object not found
- 
Await asynchronous response from head end for the period of expiration time calculated during start of this flow
- 
Receive ReadingChangedNotification from CB_ServiceService.
 - 
Generate reply with no errors for ReadingChangedNotification.
 - 
Synchronously reply to the head end.
 - 
If required, execute a process callout in CB_ServerCallout. Assign updated data to the incoming request.
 - 
Transform Header and Body of incoming request to OUAF inbound web service format described in DG-ReadingChangedNotificationXAI.
 - 
If request contains responseURL
- 
Invoke the inbound web service on given responseURL with the transformed incoming request.
 
 - 
 - 
Else
- 
Invoke the inbound web service on definedURL with the transformed incoming request.
 
 - 
 
 - 
 
 - 
 
