Scout Capture
Module · Stable
Capture a photo through a paired Scout device; the frame lands in Memory.
Sends a ‘capture’ command to a Scout physical device, asking it to take a photo and upload the frame. The device must be paired and have ‘capture’ in its capabilities. When device_id is omitted the step auto-selects the first available device. This step only ENQUEUES the request and returns immediately (enqueued=True + the command identifiers); the photo arrives asynchronously and is stored as a first-class Memory artefact. To use the image, add a Wait step after this one with event=‘scout.observed’ — its payload carries memory_item_id (the stored photo), which downstream steps reference.
When to use
Section titled “When to use”Use when a flow needs a photo from the physical world — a snapshot of the loading bay, a shelf, a delivered package, a meter reading. Pair with a following Wait step on event ‘scout.observed’ to block until the image is in Memory, then read {{ wait_event_payload.memory_item_id }} downstream (the photo is OCR’d / EXIF-tagged automatically, like any upload). Branch on enqueued to handle the ‘no device available’ case.
When not to use
Section titled “When not to use”Do not use to accept a file a human uploads — that already flows into Memory directly. Do not expect the image inline in this step’s output: capture is a read that completes asynchronously, so you MUST add a Wait step on ‘scout.observed’ to get the memory_item_id. If no Scout device with ‘capture’ capability is paired, this step returns enqueued=False (it does not raise).
Inputs
Section titled “Inputs”Configured per use: device_id, reason.
Outputs
Section titled “Outputs”Auto-generated from the skill registry (load_skills()). Do not edit by hand.