-
Notifications
You must be signed in to change notification settings - Fork 218
ActuatorScheduleResponse
In response to a Task schedule request the ActuatorAgent will respond on the topic "RTU/actuators/schedule/response" with the header:
#python
{
'type': <'NEW_SCHEDULE', 'CANCEL_SCHEDULE'>
'requesterID': <Agent ID from the request>,
'taskID': <Task ID from the request>
}
And the message (after parsing the json):
#python
{
'result': <'SUCCESS', 'FAILURE', 'PREEMPTED'>,
'info': <Failure reason, if any>,
'data': <Data about the failure or cancellation, if any>
}
The ActuatorAgent may publish cancellation notices for preempted Tasks using the "PREEMPTED" result.
Preemption data takes the form:
#python
{
'agentID': <Agent ID of preempting task>,
'taskID': <Task ID of preempting task>
}
In many cases the ActuatorAgent will try to give good feedback as to why a request failed.
INVALID_REQUEST_TYPE:: Request type was not "NEW_SCHEDULE" or "CANCEL_SCHEDULE".
MISSING_TASK_ID:: Failed to supply a taskID.
MISSING_AGENT_ID:: AgentID not supplied.
TASK_ID_ALREADY_EXISTS:: The supplied taskID already belongs to an existing task.
MISSING_PRIORITY:: Failed to supply a priority for a Task schedule request.
INVALID_PRIORITY:: Priority not one of "HIGH", "LOW", or "LOW_PREEMPT".
MALFORMED_REQUEST_EMPTY:: Request list is missing or empty.
REQUEST_CONFLICTS_WITH_SELF:: Requested time slots on the same device overlap.
MALFORMED_REQUEST:: Reported when the request parser raises an unhandled exception. The exception name and info are appended to this info string.
CONFLICTS_WITH_EXISTING_SCHEDULES:: This schedule conflict with an existing schedules that it cannot preempt. The data item for the results will contain info about the conflicts in this form (after parsing json):
#python
{
'<agentID1>':
{
'<taskID1>':
[
["campus/building/device1",
"2013-12-06 16:00:00",
"2013-12-06 16:20:00"],
["campus/building/device1",
"2013-12-06 18:00:00",
"2013-12-06 18:20:00"]
]
'<taskID2>':[...]
}
'<agentID2>': {...}
}
TASK_ID_DOES_NOT_EXIST:: Trying to cancel a Task which does not exist. This error can also occur when trying to cancel a finished Task.
AGENT_ID_TASK_ID_MISMATCH:: A different agent ID is being used when trying to cancel a Task.
- Platform Agent
- VOLTTRON Central Agent
- Platform Commands
- Platform Configuration
- [Platform Hardening Security Recommendations] (Linux-Platform-Hardening-Recommendations-for-VOLTTRON-users)
- ...
- [Building VOLTTRON] (Building-VOLTTRON)
- Example Agents
- Agent Development
- [Shortcut Scripts] (Scripts)
- [VOLTTRON Conventions] (Conventions)
- [sMAP Test Server] (sMAP-Test-Instance)
- [Design Discussions] (Design Discussions)
- VIP
- VIP - VOLTTRON Interconnect Protocol
- RPC by example
- VIP - Known Identities
- VIP - Authentication
- VIP - Authorization
- Protecting Pub/Sub Topics
- Setup Eclipse for VOLTTRON
- Deployment Walkthrough
- Forward Historian Walkthrough
- [Create New Historian Agent] (Developing-Historian-Agents)
- [Create New Driver Agent] (Develop-Driver-Agent)
- [Developing With Eclipse] (Eclipse)
- Migrations
- [2.x to 3.x Migration](2.x-to 3.x-Migration)
- 1.2 to 2.0 Migration
- [Deployment Recommendations](Recommendations for Deployments)
VOLTTRON Versions and Features
Transactional Network Platform Overview
- Established Topics
- Working with the Actuator Agent
- Logging
- [Multi-Node Communication] (MultiBuildingMessaging)
Information Exchange Standards