Integration Flows
The integration supports the following processes:
Enrollment Request (DERMS Initiated)
When customers enroll their smart controllable device(s) in a program through the head-end system provider or aggregator/vendor, such as Ecobee or Google Nest, the enrollment requests are sent to Oracle Utilities Live Energy Connect.
This integration process sends the enrollment request that Oracle Utilities Grid Edge Distributed Energy Resources Management System received from Oracle Utilities Live Energy Connect to Oracle Utilities Digital Asset Cloud Service.
The integration then sends the list of responses for each enrollment request back to Oracle Utilities Grid Edge Distributed Energy Resources Management System when the process is completed.
The following diagram shows a graphical representation of the Enrollment Request integration process. Shows a graphical representation of the Enrollment Request integration process.
Processing Details
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and performs the following activities:
1. The process is triggered when it receives a request message from Oracle Utilities Grid Edge Distributed Energy Resources Management System. The incoming request message can contain multiple enrollment requests, but the DACS REST API can only accept a single enrollment request.
2. The integration loops through each incoming request:
Transforms the enrollment request payload from Oracle Utilities Grid Edge Distributed Energy Resources Management System to Oracle Utilities Digital Asset Cloud Service format.
Invokes the Program Enrollment DACS REST endpoint to create the enrollment in Oracle Utilities Digital Asset Cloud Service in PENDING status.
Response per enrollment request coming from Oracle Utilities Digital Asset Cloud Service are collected and later returned to Oracle Utilities Grid Edge Distributed Energy Resources Management System. If an error is encountered, the process continues to the next enrollment request.
If the enrollment is successfully created, it will store the enrollment ID in the response collection to Oracle Utilities Grid Edge Distributed Energy Resources Management System.
If Oracle Utilities Digital Asset Cloud Service returns an ERROR, store the error in the response collection to Oracle Utilities Grid Edge Distributed Energy Resources Management System.
3. After all the records are processed, it transforms the Oracle Utilities Digital Asset Cloud Service response into the Oracle Utilities Grid Edge Distributed Energy Resources Management System response payload.
It will set the overall ackType field in the response with the following code:
SUCCESS, if all enrollment responses from Oracle Utilities Digital Asset Cloud Service have the SUCCESS value in the responseCode field.
FAILURE, or ERROR if at least one responseCode within the enrollment responses from Oracle Utilities Digital Asset Cloud Service contains one of those values.
It will send the responses collected from Oracle Utilities Digital Asset Cloud Service to Oracle Utilities Grid Edge Distributed Energy Resources Management System.
4. For technical faults encountered in the process, such as Oracle Utilities Digital Asset Cloud Service unavailable, the integration will set the overall ackType to “FAILURE”.
If it encounters a technical error while processing an enrollment request, but can continue processing the collection, the error details will be captured inside the response back to Oracle Utilities Grid Edge Distributed Energy Resources Management System and an error email notification is sent out on the first time the error is encounter.
If it faults and cannot continue processing the collection, Oracle Integration Cloud will try to send a response back to Oracle Utilities Grid Edge Distributed Energy Resources Management System with the details and will also send an email notification with the error details via a common error handler to the users configured in the 'to' recipients of the OUTL-BRT-DACS_DRMS_Email_ID lookup.
If Oracle Integration Cloud is trying to send a failure response to Oracle Utilities Grid Edge Distributed Energy Resources Management System, and it fails, it will send an email notification with the error details via a common error handler to the users configured in the 'to' recipients of the OUTL-BRT-DACS_DRMS_Email_ID lookup.
Technical Details
The following table describes the integration processes and the respective Oracle Utilities Digital Asset Cloud Service and Oracle Utilities Grid Edge Distributed Energy Resources Management System artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DERMS DACS Enrollment Request
Integration Process Identifier
OUTL-BA-DRMS_DACS_ENROLLRQ
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection (Oracle Utilities Adapter)
OU REST DRMS for DACS-DRMS
trigger
DERMS Service Name: NMS-DACSOutbound
openAPIUrl: https://{host}:{port}/nms-drms/
outbound/openapi.json
OperationId: enroll
Method: POST
URI: /enroll-to-dacs
Target Connection (Oracle Utilities Adapter)
OU REST DACS for DACS-DRMS
invoke
Web Service Name: X1-ProgramEnrollment
Computed URL: https://{host}:{port}/{tenant}/{domain}/ccs/rest/apis/cross/digitalAssets/programEnrollments
Method: POST
URI:/enroll
Local Integrations
OU DACS DERMS CommonErrorHandler
Lookups Referenced
The following table describes the customized properties referenced in the integration. For more information about the lookup properties, refer to Configuring Lookups, Error Handling, and Email Notifications.
DVM
Property
OUTL-BRT-DACS_DRMS_ConfigProps
notification.email.flag
notification.type.email
OUTL-BRT-DACS_DRMS_EnrollmentStatus
DACS_status
DRMS_responseCode
OUTL-BRT-DACS_DRMS_AssetSpec
DRMS_MAKE_MODEL
DACS_SPECIFICATION
OUTL-BRT-DACS_DRMS_AssetType
DRMS_ASSET_TYPE
DACS_ASSET_TYPE
Enrollment Sync
When customers enroll, unenroll, or replace their smart controllable device(s) in a program successfully in Oracle Utilities Digital Asset Cloud Service, the enrollment information is sent to Oracle Utilities Grid Edge Distributed Energy Resources Management System.
This integration process synchronizes the enrollment information from Oracle Utilities Digital Asset Cloud Service to Oracle Utilities Grid Edge Distributed Energy Resources Management System. The integration then sends an acknowledgment back to Oracle Utilities Digital Asset Cloud Service.
The enrollment synchronization and acknowledgment are handled by the following Oracle Integration Cloud integration flows:
Enrollment Sync (DACS Initiated)
The following diagram shows a graphical representation of the Enrollment Sync integration process:Shows a graphical representation of the integration process.
Processing Details
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and performs the following activities:
1. The process is triggered when it receives a request from Oracle Utilities Digital Asset Cloud Service.
2. Transform the payload to Oracle Utilities Grid Edge Distributed Energy Resources Management System format.
3. Invoke the Oracle Utilities Grid Edge Distributed Energy Resources Management System enrollment service endpoint and Oracle Utilities Grid Edge Distributed Energy Resources Management System responds synchronously whether the request has been processed successfully or with an error.
4. If the REST service returns:
Status 200 (OK),
Invoke the internal Oracle Utilities DERMS DACS Enrollment Sync Ack Oracle Integration Cloud integration process.
Enrollment Sync integration will finish the initial request by returning the incoming "syncRequestId" into the response "externalId".
Error Status, such as 400 or 500,
Throws a fault back to Oracle Utilities Digital Asset Cloud Service and an error email notification with the error details is sent via the common error handler.
5. For any errors encountered in this process:
An error email notification with error details is sent via the common error handler.
The process will return a fault to Oracle Utilities Digital Asset Cloud Service.
The integration flow will stop processing.
Technical Details
The following table describes the integration processes and the respective Oracle Utilities Digital Assets Cloud Service and Oracle Utilities Distributed Energy Resources Management System artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DACS DERMS Enrollment Sync
Integration Process Identifier
OUTL-BA-DACS_DRMS_ENROLL_SYNC
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection (Oracle Utilities Adapter)
OU REST DACS for DACS-DRMS
trigger
Outbound Message Type: X1-NMSDASMSG (Synchronize Digital Asset (NMS)
Target Connection (Oracle Utilities Adapter)
OU REST DRMS for DACS-DRMS
invoke
DERMS Service Name: NMS-DACSInbound
openAPIUrl: https://{host}:{port} /nms-drms/rest/v1/openapi.json
OperationId: enroll
Method: POST
URI: /enroll
Local Integrations
OU DERMS DACS Enroll Sync Ack
OU DACS DERMS CommonErrorHandler
OIC Lookup
OUTL-BRT-DACS_DRMS_ConfigProps
OUTL-BRT-DACS_DRMS_Email_ID
OUTL-BRT-DACS_DRMS_Routing
Enrollment Sync Acknowledgment (DERMS Initiated)
The following diagram shows a graphical representation of the Enrollment Sync Acknowledgment integration process:Shows a graphical representation of the integration process.
Processing Details
The integration process deployed on Oracle Integration Cloud is exposed as a REST API, called internally by the DACS-DERMS Enrollment Sync OIC integration process, and performs the following activities:
1. The process is triggered when it receives the Oracle Utilities Grid Edge Distributed Energy Resources Management System acknowledgment from the Enrollment Sync Process.
2. Transforms the enrollment acknowledgment payload to Oracle Utilities Digital Asset Cloud Service format.
3. Invokes Oracle Utilities Digital Asset Cloud Service Sync Request Update REST endpoint to send the acknowledgment. The EnrollmentSyncAck process is delayed by a configurable amount of second to ensure Oracle Utilities Digital Asset Cloud Service has processed the initial request prior to receiving this acknowledgment.
4. For any errors encountered in this process:
An error email notification with error details is sent via the common error handler.
The integration flow will stop processing.
Technical Details
The following table describes the integration processes and the respective Oracle Utilities Digital Assets Cloud Service and Oracle Utilities Distributed Energy Resources Management System artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DERMS DACS Enroll Sync Ack
Integration Process Identifier
OUTL-BA-DRMS_DACS_SYNC_ACK
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Target Connection (Oracle Utilities Adapter)
OU REST DACS for DACS-DRMS
invoke
Web Service Name: F1-SyncRequest
Computed URL: https://{host}:{port}/{tenant}/{domain /ouaf/rest/apis/common/sync/syncRequest
Method: PATCH
URI: /{syncRequestId}
Library
NMSDERMS_SleepTimer[sleepTimer] javascript function
OIC Lookup
OUTL-BRT-DACS_DRMS_ConfigProps
OUTL-BRT-DACS_DRMS_Email_ID
Device Status Check
This integration process sends a device status check from Oracle Utilities Digital Asset Cloud Service to Oracle Utilities Grid Edge Distributed Energy Resources Management System to retrieve the most recent communication status for the device. Oracle Utilities Grid Edge Distributed Energy Resources Management System then gets the device status from Oracle Utilities Live Energy Connect.
When Oracle Utilities Grid Edge Distributed Energy Resources Management System gets the device status from Oracle Utilities Live Energy Connect, it sends and asynchronous response back to Oracle Utilities Digital Asset Cloud Service for the corresponding device status check request.
Device status check request and response are asynchronous processes:
Device Status Check (DACS Initiated)
The following diagram shows a graphical representation of the Device Status Check integration process:Shows a graphical representation of the integration process.
Processing Details
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and performs the following activities:
1. The process is triggered when it receives a request from Oracle Utilities Digital Asset Cloud Service.
2. The payload is transformed to the Oracle Utilities Grid Edge Distributed Energy Resources Management System format.
3. Invokes the Oracle Utilities Grid Edge Distributed Energy Resources Management System Status Check REST Service.
4. If the REST service returns:
Status 200 (OK), end the process.
Error Status, such as 400 or 500, an error email notification with the error details is sent via common error handler. The process returns a fault to Oracle Utilities Digital Asset Cloud Service.
Technical Details
The following table describes the integration processes and the respective Oracle Utilities Digital Assets Cloud Service and Oracle Utilities Distributed Energy Resources Management System artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DACS DERMS Device Status Check
Integration Process Identifier
OUTL-BA-DACS_DRMS_DEVICE_STATUS
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection (Oracle Utilities Adapter)
OU REST DACS for DACS-DRMS
trigger
Outbound Message Type: X1-CTRLDVCS
(Controllable Device Status Check)
Target Connection (Oracle Utilities Adapter)
OU REST DRMS for DACS-DRMS
invoke
DERMS Service Name: NMS-DACSInbound
openAPIUrl: https://{host}:{port} /nms-drms/rest/v1/openapi.json
OperationId: statusCheck
Method: POST
URI: /status-check
Local Integrations
OU DACS DERMS CommonErrorHandler
OIC Lookup
OUTL-BRT-DACS_DRMS_ConfigProps
OUTL-BRT-DACS_DRMS_Routing
Device Status Check Acknowledgment (DERMS Initiated)
The following diagram shows a graphical representation of the Device Status Check Response integration process:Shows a graphical representation of the integration process.
Processing Details
The integration process deployed on Oracle Integration Cloud is exposed as a REST AP and performs the following activities:
1. The process is triggered when it receives the device status from Oracle Utilities Grid Edge Distributed Energy Resources Management System.
2. The payload is transformed to the Oracle Utilities Digital Asset Cloud Service format.
3. Invokes the Oracle Utilities Digital Asset Cloud Service postControllableDeviceStatus REST Service using the Utilities Adapter.
4. If the REST service returns:
Status 200 (OK), the process returns a response to Oracle Utilities Grid Edge Distributed Energy Resources Management System with the Oracle Utilities Digital Asset Cloud Service boStatus in the Oracle Utilities Grid Edge Distributed Energy Resources Management System responseCode and a SUCCESS ackType.
Error Status, such as 400 or 500, the process returns a response to Oracle Utilities Grid Edge Distributed Energy Resources Management System with a FAILURE ackType.
5. For any errors encountered in this process:
An error email notification with error details is sent via the common error handler.
Technical Details
The following table describes the integration processes and the respective Oracle Utilities Digital Assets Cloud Service and Oracle Utilities Distributed Energy Resources Management System artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DERMS DACS Device Status Ack
Integration Process Identifier
OUTL-BA-DACS_DRMS_DEVICE_STATUS
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection (Oracle Utilities Adapter)
OU REST DRMS for DACS-DRMS
trigger
DERMS Service Name: NMS-DACSOutbound
openAPIUrl: https://{host}:{port}/nms-drms/outbound/openapi.json
OperationId: deviceStatusCheckAck
Method: POST
URI: /status-check-ack-to-dacs
Target Connection (Oracle Utilities Adapter)
OU REST DACS for DACS-DRMS
invoke
Web Service Name: X1-CtrlDvcStatusCheckResp
Computed URL: https://{host}:{port}/{tenant}/
{domain}/ouaf/rest/apis/cross/digitalAssets/ controllableDeviceStatus
Method: POST
URI: /response
Local Integrations
OU DACS DERMS CommonErrorHandler
OIC Lookup
OUTL-BRT-DACS_DRMS_ConfigProps
Event Device Reservation (DERMS Initiated)
When controllable devices are selected to participate in an upcoming event, Oracle Utilities Grid Edge Distributed Energy Resources Management System notifies Oracle Utilities Digital Asset Cloud Service of the devices reserved for the specific event.
This integration process sends the devices reserved for the event to Oracle Utilities Digital Asset Cloud Service. It then sends an acknowledgment back to Oracle Utilities Grid Edge Distributed Energy Resources Management System when the process is completed or encountered an error.
The following diagram shows a graphical representation of the Event Device Reservation integration process. Shows a graphical representation of the Enrollment Request integration process.
Processing Details
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and performs the following activities:
1. The process is triggered when Oracle Utilities Grid Edge Distributed Energy Resources Management System invokes the REST endpoint to send the device reservation information for a specific stage or program event to Oracle Utilities Digital Asset Cloud Service. The message received is a json payload with a csv file attachment. The json message contains the stage information and the csv file contains the devices participating in the stage.
2. Prior to sending the file, the integration invokes F1-HealthCheckRest Rest endpoint to check if the Oracle Utilities Digital Asset Cloud Service environment is up and accessible.
If the REST service returns HTTP status 200, DACS is accessible and proceed to Step 3.
Else:
Transforms Negative Acknowledgment message. Send 'FAILURE' ackType to Oracle Utilities Grid Edge Distributed Energy Resources Management System so it can auto retry the failed message according to the MAX_RETRIES setting in their DRMS_PARAMENTERS table.
Invokes DERMS Event Reservation Acknowledgment REST endpoint.
3. Uses Stage File operation “ReadFileinSegments” to read the file in segments of 200 records with parallel processing option.
Transforms the stage and device reservation payload from Oracle Utilities Grid Edge Distributed Energy Resources Management System to Oracle Utilities Digital Asset Cloud Service format.
Invokes the Program Event Participation-Reserve Device DACS REST endpoint to pass the Program Event Device Reservation information to Oracle Utilities Digital Asset Cloud Service.
If any of the REST service invocation returns an HTTP Error status:
Transforms Negative Acknowledgment message. Send 'FAILURE' ackType to Oracle Utilities Grid Edge Distributed Energy Resources Management System so it can auto retry the failed message according to the MAX_RETRIES setting in their DRMS_PARAMENTERS table.
Invokes Oracle Utilities Grid Edge Distributed Energy Resources Management System Event Reservation Acknowledgment REST endpoint.
When all the records are successfully created in Oracle Utilities Digital Asset Cloud Service:
Transforms Positive Acknowledgment message. Send 'SUCCESS' ackType to Oracle Utilities Grid Edge Distributed Energy Resources Management System.
Invokes Oracle Utilities Grid Edge Distributed Energy Resources Management System Event Reservation Acknowledgment REST endpoint.
4. After all the records in the file are processed:
A process completed email notification is sent to the users defined in to.processnotification recipients in OUTL-BRT-DACS_DRMS_Email_ID lookup.
5. For any errors encountered in this process:
An error email notification with error details is sent via the common error handler OIC process to the users defined in 'to' recipients in the OUTL-BRT-DACS_DRMS_Email_ID lookup.
The integration flow will stop processing.
Technical Details
The following table describes the integration processes and the respective Oracle Utilities Digital Asset Cloud Service and Oracle Utilities Grid Edge Distributed Energy Resources Management System artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DERMS DACS Event Device Reserve
Integration Process Identifier
OUTL_BA_DRMS_DACS_EVT_DVCRESV
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection (REST Adapter -Trigger)
OU REST for DACS-DRMS
Target Connection (Oracle Utilities Adapter)
OU REST DACS for DACS-DRMS
invoke
DACS Web Service Name: X1-ProgramEventParticipation
Computed URL: https://{host}:{port}/{tenant}/{domain}/ccs/rest/apis/cross/service/programEventParticipation
Method: POST
URI: /reserveDevice
Target Connection (Oracle Utilities Adapter)
OU REST DRMS for DACS-DRMS
invoke
DERMS Service Name: NMS-DACSInbound
openAPIUrl: https://{host}:{port}/nms-drms/rest/v1/openapi.json
Method: POST
URI: /event-reservation-ack
Local Integrations
OU DACS NMS-DERMS
CommonErrorHandler
OIC Lookup
OUTL-BRT-DACS_DRMS_ConfigProps
OUTL-BRT-DACS_DRMS_Email_ID
OUTL-BRT-DACS_DRMS_EventType
OUTL-BRT-DACS_DRMS_Routing
Program Event Status Update (DERMS Initiated)
When Oracle Utilities Grid Edge Distributed Energy Resources Management System creates an event, it can have multiple stages in it where each stage consists of a specific time frame for a specific program. Each stage is equivalent to a Oracle Utilities Digital Asset Cloud Service program event.
When the event is transition to SCHEDULED status, Oracle Utilities Grid Edge Distributed Energy Resources Management System sends an outbound message for each stage in the event to Oracle Utilities Digital Asset Cloud Service for program event creation.
When an event stage status transitions to a different status in Oracle Utilities Grid Edge Distributed Energy Resources Management System, the status update information is also sent to Oracle Utilities Digital Asset Cloud Service.
The following diagram shows a graphical representation of the Program Event Stage Status integration process. Shows a graphical representation of the Enrollment Request integration process.
Processing Details
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and performs the following activities:
1. The process is triggered when Oracle Utilities Grid Edge Distributed Energy Resources Management System invokes REST endpoint to send the stage information and status to Oracle Utilities Digital Asset Cloud Service. The message received is a JSON payload.
2. Transforms the payload from Oracle Utilities Grid Edge Distributed Energy Resources Management System to Oracle Utilities Digital Asset Cloud Service format.
3. Depending on the incoming stage status, Oracle Integration Cloud invokes one of the following operations from Program Event on the DACS REST endpoint:
Map to createProgramEvent for a “scheduled” status value.
Map to actionProgramEvent for all other values.
4. For any errors encountered in this process:
An error email notification with error details is sent via the common error handler Oracle Integration Cloud process to the users defined in 'to' recipients in the OUTL-BRT-DACS_DRMS_Email_ID lookup.
Return a negative response to Oracle Utilities Grid Edge Distributed Energy Resources Management System.
Technical Details
The following table describes the integration processes and the respective Oracle Utilities Digital Asset Cloud Service and Oracle Utilities Grid Edge Distributed Energy Resources Management System artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DERMS DACS ProgramEvent Stage Status Update
Integration Process Identifier
OUTL-BA-DRMS_DACS_STAGE_STAT_UPD
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection (Oracle Utilities Adapter)
OU REST DRMS for DACS-DRMS
trigger
Service Name: NMS-DACSOutbound
openAPIUrl: https://{host}:{port}/nms-drms/outbound/openapi.json
Method: POST
URI: /stage-status-to-dacs
Target Connection (Oracle Utilities Adapter)
OU REST DACS for DACS-DRMS
invoke
DACS Web Service Name: X1-ProgramEvent
Computed URL: https://{host}:{port}/{tenant}/ {domain}/ ouaf/rest/apis/cross/service/ programEvent
Method: POST
createProgramEvent URI: /
actionProgramEvent URI: /lifecycle
Local Integrations
OU DACS DERMS CommonErrorHandler
OIC Lookup
OUTL-BRT-DACS_DRMS_EventType
OUTL-BRT-DACS_DRMS_StageStatus
OUTL-BRT-DACS_DRMS_ConfigProps
Lookups Referenced
The following table describes the customized properties referenced in the integration. For more information about the lookup properties, refer to Configuring Lookups, Error Handling, and Email Notifications.
Lookup
Property
OUTL-BRT-DACS_DRMS_ConfigProps
notification.type.email.flag
OUTL-BRT-DACS_DRMS_EventType
DRMS_EventType
DACS_EventType
OUTL-BRT-DACS_DRMS_StageStatus
DRMS_StageStatus
DACS_StageStatus
Send Device Score (DACS Initiated)
Oracle Utilities Digital Asset Cloud Service computes and maintains the device score for each controllable device enrolled in a program and sends the information periodically to Oracle Utilities Grid Edge Distributed Energy Resources Management System through a file extract. The calculation depends on factors, such as equipment specifications, monthly/annual capacity, device participation history, and more.
This integration process transfers the device score from Oracle Utilities Digital Asset Cloud Service to Oracle Utilities Grid Edge Distributed Energy Resources Management System to facilitate its eligibility evaluation during event planning.
Oracle Utilities Digital Asset Cloud Service can place the file in an On Premise FTP Server or in an Oracle Integration Cloud Object Storage location and Oracle Utilities Grid Edge Distributed Energy Resources Management System receives the files through a REST web service.
The device score file transfer is handled by the following Oracle Integration Cloud integration flows depending on the file transfer preference:
The following diagram shows the Device Score related processes:THis diagram shows the Device Score related processes in the integration.
Device Score FTP Transfer (DACS Initiated)
This integration process retrieves the device score data file(s) from an FTP content storage location where Oracle Utilities Digital Asset Cloud Service uploads files and sends it to Oracle Utilities Grid Edge Distributed Energy Resources Management System through a REST API call.
The following diagram shows a graphical representation of the Device Score Transfer integration process from an FTP Server:Shows a graphical representation of the Device Score FTP Transfer integration process.
Processing Details
This is a scheduled integration process deployed on Oracle Integration Cloud and performs the following activities:
1. The process is triggered by a schedule or it can also be triggered manually.
Define the integration schedule for this process and make sure the Smart Control Device Score Extract Job (X1-SDCSE) schedule in Oracle Utilities Digital Asset Cloud Service is always run first, so the file is available to be processed by the integration.
A couple of the default values used in this integration are defined in the OUTLBRT-DACS_DRMS_ConfigProps. Make sure to define the properties needed for this integration.
2. It invokes the FTP adapter to list files from the Oracle Utilities Digital Asset Cloud Service on-premises location obtained from the file path set in the property dacs.dvcScore.ftp.input.directory. It will retrieve files matching the prefix set in property dacs.dvcScore.extract.filename.prefix.
Note: The value dacs.dvcScore.extract.filename.prefix should match the beginning of the parameter filename in Oracle Utilities Digital Asset Cloud Service Batch X1-SDCSE.
If no file is found and notification.email.process.nofile.flag is true (by default it is false), it will send a no file found email notification to to.process.notification recipients defined in lookup OUTL-BRT-DACS_DRMS_EMAIL_ID and the process will stop.
If files are found, go to the next step.
3. For each file, do the following:
Invoke the FTP Adapter with Download File operation to get the actual file to process.
Invoke DERMS Device Score REST API and send the file as a binary attachment.
If Oracle Utilities Grid Edge Distributed Energy Resources Management System returns an HTTP 200 or 202, invoke the FTP adapter to rename the source file obtained from the server by adding the prefix set in property dacs.prefixtag.fileuploaded and the next file in the list is processed.
4. After the successful transfer of all files, if the notification.email.process.complete.flag is true, a Process Complete email notification is sent to to.process.notification recipients defined in the lookup OUTL-BRT-DACS_DRMS_Email_ID lookup.
5. Error Handling.
For any errors encountered in this process:
Invoke the FTP Adapter to rename the source file obtained from the server by adding the prefix set in property dacs.prefixtag.filenotuploaded.
An error email notification with error details is sent via the common error handler Oracle Integration Cloud process to the users defined in to recipients in lookup OUTL-BRT-DACS_DRMS_Email_ID.
If the error happens while processing the list of files, the Process Complete email notification is also sent out containing the summary of files transferred and not transferred.
Technical Details
The following table describes the integration processes and the respective Oracle Utilities Digital Asset Cloud Service and Oracle Utilities Grid Edge Distributed Energy Resources Management System artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DACS DERMS Device Score FTP Transfer
Integration Process Identifier
OUTL-BA-DRMS_DACS_SEND_DVCSCORE
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection
(FTP Adapter)
OU FTP DACS for DACS-DRMS
Target Connection
(Oracle Utilities Adapter)
OU REST DRMS for DACS-DRMS
invoke
DERMS Service Name: NMS-DACSInbound
openAPIUrl: https://{host}:{port} /nms-drms/ rest/v1/openapi.json
OperationId: deviceScore
Method: POST
URI: /device-score/{file-name}
Local Integrations
OU DACS DERMS Common Error Handler
OIC Lookup
OUTL-BRT-DACS_DRMS_ConfigProps
OUTL-BRT-DACS_DRMS_Email_ID
Device Score OS Transfer (DACS Initiated)
This integration process retrieves the device score data file(s) from an Oracle Integration Cloud Object Storage location where Oracle Utilities Digital Asset Cloud Service uploads files and transfer it Oracle Utilities Grid Edge Distributed Energy Resources Management System through a REST API call.
The following diagram shows a graphical representation of the Device Score Transfer integration process from an Oracle Integration Cloud Object Storage:Shows a graphical representation of the integration process.
Processing Details
This is a scheduled integration process deployed on Oracle Integration Cloud and performs the following activities:
1. The process is triggered by a schedule or can also be triggered manually.
a. Define the integration schedule for this process and makes sure the Smart Control Device Score Extract Job (X1-SDCSE) schedule in Oracle Utilities Digital Asset Cloud Service is always run first, so the file is available to be processed by the integration.
b. A couple of the default values used in this integration are defined in the OUTL-BRT-DACS_DRMS_ConfigProps. Make sure to define the properties needed for this integration.
2. It invokes the Object Storage - List Objects REST API to get the list of files found in the Oracle Utilities Digital Asset Cloud Service Object Storage bucket, set in the properties dacs.os.dvcScore.bucketname and dacs.os.namespace. It will retrieve files matching the prefix set in property dacs.dvcScore.extract.filename.prefix.
Note: The value dacs.dvcScore.extract.filename.prefix should match the beginning of the parameter filename in Oracle Utilities Digital Asset Cloud Service Batch X1-SDCSE.
If no file is found and notification.email.process.nofile.flag is true (by default it is false), it will send a no file found email notification to to.process.notification recipients defined in lookup OUTL-BRT-DACS_DRMS_EMAIL_ID and the process will stop.
If files are found, proceed to the next step.
3. For each file, do the following:
a. Invoke the Object Storage: Gets Object REST API to get the actual file to process.
b. Invoke DERMS Device Score REST API and sends the file as a binary attachment.
If Oracle Utilities Grid Edge Distributed Energy Resources Management System returns an HTTP 200 or 202, it invokes the REST API RenameObject to rename the source file obtained from the server by adding the prefix set in property dacs.prefixtag.fileuploaded and the next file in the list is processed.
4. After the successful transfer of all files, if the notification.email.process.complete.flag is true, a Process Complete email notification is sent to to.process.notification recipients defined in the lookup OUTL-BRT-DACS_DRMS_Email_ID lookup.
5. Error Handling.
For any errors encountered in this process:
Invoke the REST API RenameObject to rename the source file obtained from the server by adding the prefix set in property dacs.prefixtag.filenotuploaded.
An error email notification with error details is sent via the common error handler Oracle Integration Cloud process to the users defined in to recipients in lookup OUTL-BRT-DACS_DRMS_Email_ID.
If the error happens while processing the list of files, the Process Complete email notification is also sent out containing the summary of files transferred and not transferred.
Technical Details
The following table describes the integration processes and the respective Oracle Cloud Infrastructure Object Storage and Oracle Utilities Grid Edge Distributed Energy Resources Management System artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DACS DERMS Device Score OS Transfer
Integration Process Identifier
OUTL-BA-DRMS_DACS_SEND_DVCSCOREC
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection (REST Adapter)
OU REST DACS Object Storage for DACS
Target Connection (Oracle Utilities Adapter)
OU REST DRMS for DACS-DRMS
invoke
DERMS Service Name: NMS-DACSInbound
openAPIUrl: https://{host}:{port} /nms-drms/ rest/v1/openapi.json
OperationId: deviceScore
Method: POST
URI: /device-score/{file-name}
Local Integrations
OU DACS DERMS Common Error Handler
OIC Lookup
OUTL-BRT-DACS_DRMS_ConfigProps
OUTL-BRT-DACS_DRMS_Email_ID
Event Device Outcome (DERMS Initiated)
Customers enrolled in an active program are called upon to participate in program events for a specific duration.
After events have completed, Oracle Utilities Grid Edge Distributed Energy Resources Management System receives the actual outcome of all devices’ event participation from Oracle Utilities Live Energy Connect (LEC).
Oracle Utilities Grid Edge Distributed Energy Resources Management System aggregates and sends both Oracle Utilities Digital Asset Cloud Service and Oracle Utilities Analytics Insights the post event outcome for all controllable devices called to participate in an event or events through a file extract.
The data in the file can be from one or multiple events. Each device that is called to participate in an event will have one record in the file. Example, if a service point has 2 devices linked to in and both participated in an event, then each device will have one outcome record in the file.
Once the file is ready, Oracle Utilities Grid Edge Distributed Energy Resources Management System sends the JSON outbound message with the file attachment.
The integration process sends the post event outcome file from Oracle Utilities Grid Edge Distributed Energy Resources Management System to Oracle Utilities Digital Asset Cloud Service and sends an acknowledgment back to Oracle Utilities Grid Edge Distributed Energy Resources Management System when the process is completed or encountered an error.
The following diagram shows a graphical representation of the Event Device Outcome integration process. Shows a graphical representation of the Event Device Outcome integration process.
Processing Details
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and performs the following activities:
1. The process is triggered when Oracle Utilities Grid Edge Distributed Energy Resources Management System invokes the REST endpoint to send the post event outcome information to Oracle Utilities Digital Asset Cloud Service. The message received is a json payload with a CSV file attachment.
2. Before sending the file, the integration invokes F1-HealthCheckRest Rest endpoint to check if the Oracle Utilities Digital Asset Cloud Service environment is up and accessible.
If the REST service returns HTTP status 200, Oracle Utilities Digital Asset Cloud Service is accessible and proceed to Step 3.
Else,
Transforms Negative Acknowledgment message. Send 'FAILURE' ackType to Oracle Utilities Grid Edge Distributed Energy Resources Management System, so Oracle Utilities Grid Edge Distributed Energy Resources Management System can auto retry the failed message according to the MAX_RETRIES setting in their DRMS_PARAMENTERS table.
Invokes Oracle Utilities Grid Edge Distributed Energy Resources Management System Event Outcome Acknowledgment REST endpoint
3. Uses Stage File operation “ReadFileinSegments” to read the file in segments of 200 records with parallel processing option and loops through each incoming request:
Transforms the event outcome request payload from Oracle Utilities Grid Edge Distributed Energy Resources Management System to Oracle Utilities Digital Asset Cloud Service format.
Invokes the Program event participation post event outcome Oracle Utilities Digital Asset Cloud Service rest endpoint to update event outcome from the participated device reservation. The event outcome status will be changed accordingly.
It is expected that Oracle Utilities Digital Asset Cloud Service will not return any business faults but handle these with a To-Do task instead.
4. After processing all records, a positive post event outcome acknowledgment is invoked to Oracle Utilities Grid Edge Distributed Energy Resources Management System.
5. For any errors encountered in this process:
An error email notification with error details is sent via the common error handler.
A negative Acknowledgment with 'FAILURE' ackType is sent to Oracle Utilities Grid Edge Distributed Energy Resources Management System so Oracle Utilities Grid Edge Distributed Energy Resources Management System can auto retry the failed message according to the MAX_RETRIES setting in their DRMS_PARAMENTERS table.
The integration flow will stop processing.
Technical Details
The following table describes the integration processes and the respective Oracle Utilities Grid Edge Distributed Energy Resources Management System and Oracle Utilities Analytics Insights artifacts used in this integration process.
Artifacts
Value
Integration Process Name
OU DERMS DACS Event Outcome Transfer
Integration Process Identifier
OUTL-BA-DRMS_DACS_EVT_OUTC_TRNFR
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection
(REST Adapter-Trigger)
OU REST DRMS for DACS-DRMS
Target Connection
(Oracle Utilities Adapter)
OU REST DACS for DACS-DRMS
invoke
DACS Web Service Name: X1-ProgramEventParticipation
Computed URL: https://{host}:{port}/{tenant}/ {domain}/rest/apis/cross/service/ programEventParticipation
Method: POST
URI: / postEventOutcome
Target Connection (Oracle Utilities Adapter)
OU REST DRMS for DACS-DRMS
invoke
DERMS Service Name: NMS-DACSInbound
openAPIUrl: https://{host}:{port} /nms-drms/ rest/v1/openapi.json
OperationId: deviceOutcomeAck
Method: POST
URI: /device-outcome-ack
Local Integrations
OU DACS DRMS Common Error Handler
OIC Lookup
OUTL-BRT-DACS_DRMS_ConfigProps
OUTL-BRT-DACS_DRMS_Email_ID
OUTL-BRT-DACS_DRMS_EventOutcome
OUTL-BRT-DACS_OUAI_Routing
Lookups Referenced
The following table describes the customized properties referenced in the integration. For more information about the lookup properties, refer to Configuring Lookups, Error Handling, and Email Notifications.
Lookup
Property
OUTL-BRT-DACS_DRMS_ConfigProps
notification.type.email.flag
notification.email.process.complete.flag
OUTL-BRT-OUAI_DACS_DRMS_Email_ID
from
to
to.process.notification
OUTL-BRT-DACS_OUAI_Routing
DRMS_Instance
DRMS_Site_Connection
OUTL-BRT-OUAI_DACS_Email_ID
Common Error Handler (OIC Initiated)
This integration process is used to send email notification in case of errors in Oracle Integration Cloud.
The following diagram shows a graphical representation of the Common Error Handler integration process. Shows a graphical representation of the Common Error Handler integration process.
Business Processing
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and performs the following activities:
1. This process is invoked internally by other Oracle Integration Cloud flows when a technical error occurs in any of the main integration flow.
2. The request message received is processed based on the property names ( notification.email.error.flag and notification.type.email) in the OUTL-BRT-DACS_DRMS_ConfigProps lookup. If both are set to true, then an email notification will be sent on error.
Technical Details
The following table describes the integration processes used in this integration process.
Artifacts
Value
Integration Process Name
OU DACS DERMS Common Error Handler
Integration Process Identifier
OUTL-BA-DACS_DRMS_ERROR
Integration Package Name
outl.ba.dacs_derms.01_23_3000
Source Connection
local integration
trigger
/receiveMessage
Lookups Referenced
The following table describes the customized properties referenced in the integration. For more information about the lookup properties, refer to Configuring Lookups, Error Handling, and Email Notifications.
DVM
Property
OUTL-BRT-DACS_DRMS_ConfigProps
notification.type.email
notification.email.flag
OUTL-BRT-DACS_DRMS_Email_ID
from
to