---
alias: user-guide-automation-task-mes-containerdockrequest
tags:
- automation tasks
description: "Trigger task that listens for Container Dock requests from the MES and starts the equipment-side handling for the operation"
---
# On Container Dock Request
:iot-system-event-lg:
This **trigger** task listens for Container Dock requests coming from the MES and lets a workflow perform the equipment-side handling when an operator docks a **Container** at a **Resource**.
It belongs to the `System / MES` category, under `Triggers`, and is available in both Data Flow and Control Flow workflows. In a Control Flow workflow it appears as a `Start` trigger named `When a Resource performs Container Dock`.

## Details
| Fields | Details |
| ----------------- | ---------------------------------------------------------------------------------- |
| Scope | Connect IoT
Data Platform
Enterprise Integration
Factory Automation |
| Workflow | Data flow
Control flow |
| `IsProtocol` flag | :material-close:{style="color:#EF5350"} |
## Behavior
When an operator performs [[user-guide-dock-container]], the MES sends a request on the `ConnectIoT.Dock.RequestReply` subject and waits for a reply. This task receives that request, emits the `resource` and the `container` involved in the operation, and emits `Success`.
The MES sends the request only when the **Resource** involved in the operation has the Enable Automation Scenarios and Container Dock Interlocking properties enabled. The request is handled by the Automation Controller instance associated with the Resource or, when defined, with its Automation Scenarios Owner Entity.
The MES stays blocked until a reply is sent. If none is sent within the `Reply Timeout`, the task emits `Error` and the dock fails on the MES side.
The reply is produced differently depending on the workflow type:
- **Control Flow** - the reply is the result of the trigger's handler branch.
- **Data Flow** - a downstream [Send Container Dock Reply](task_container_dock_reply.md) task sends the reply.
## Inputs
| Name | Data Type | Description |
| -------------- | --------- | ---------------------------------------------------------------------------------------------------------------------- |
| Enable/Disable | `Boolean` | Enables (`true`) or disables (`false`) the message listener at runtime. Works together with the `Auto Enable` setting. |
Table: On Container Dock Request task inputs
## Outputs
| Name | Data Type | Description |
| ------------ | ------------ | ------------------------------------------------------ |
| resource | `Resource` | The Resource where the operation is being performed. |
| container | `Container` | The Container being docked. |
| Success | `Boolean` | Triggered when a request is received and processed. |
| Error | `Error` | Triggered when the task fails or the reply times out. |
Table: On Container Dock Request task outputs
## Settings
On the `General` tab, you have the usual settings and the following settings:
| Name | Data Type | Values | Default | Description |
| ------------------------ | --------- | ------ | ------------------------------ | ----------------------------------------------------------------------------------------------- |
| Auto Enable | `Boolean` | | `true` | Automatically enables the message listener when the task starts. |
| Reply Timeout | `Integer` | ms | `60000` | Amount of time allowed to wait for a reply before issuing a timeout. This setting is mandatory. |
| Container Dock Request Subject | `String` | | `ConnectIoT.Dock.RequestReply` | Subject used to communicate with the MES. This setting is read-only. |
Table: On Container Dock Request task settings

## Remarks
This task pairs with the [Send Container Dock Reply](task_container_dock_reply.md) task, which sends the reply back to the originating request.
This task uses a specific structure of context-based data called `zone`. More information on this topic can be read in the [Zones](../zones.md) page.