--- alias: user-guide-automation-task-core-subscribeindriver tags: - automation tasks description: "This task enables workflows to receive and process messages from specific driver types in real-time" --- # Subscribe In Driver ![Screenshot showing a registration form for a driver.](../images/driverregister-lg.svg) The task `subscribe in Driver` allows the workflow to listen on a specific driver message type, and when a message is triggered to retrieve it. It is used to allow real-time customization (when available) to the protocol process. ![Screenshot showing a subscription option labeled "Subscribe in Driver" with an auto-activate type setting.](../images/image96.png) ## Inputs | Name | Data Type | Description | |--------------|-----------|--------------------------------------------------| | autoActivate | `Boolean` | If true message type is automatically registered | | messageType | `String` | Message type we wish to subscribe | | Activate | `any` | Activate the subscription | ## Outputs | Name | Data Type | Description | |---------|-----------|--------------------------------------------------------| | Type | `String` | Type of the driver notification received | | message | `Object` | Received message content | | Success | `Boolean` | If there was no problem emits a true | | Error | `Error` | Error that occurred during the processing of this task | ## Settings On the General Tab, you have the usual settings and the following settings: | Name | Data Type | Default | Description | |---------------|-----------|---------|-------------------------------------------| | Auto activate | `Boolean` | false | Default value for the auto activate flag | | Message type | `String` | | Default message type we wish to subscribe | ![Screenshot showing settings page with "Subscribe in Universal Settings" label.](../images/image97.png) ## Behavior In this task you choose a driver when dropping it into the workflow (if you have more than one driver associated with the controller). On activation (automatic or by the `Activate` input), the task will register the topic in the driver. When the driver publishes a message that matches the topic, the outputs will be emitted. ## Remarks Not all protocol drivers support/expect notifications. Each protocol driver has it's own set of expected types and content formats. Refer to their specific documentation for more information. 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.