# Broadcast decision

A decision block that sends an app (ordered) broadcast and then await a result.

The fiber will pause until the broadcast has been sent, and the receiver has updated the result. If you don’t want the fiber to pause, use the Broadcast send block instead.

If the receiver class and/or package is set and doesn’t evaluate to `null` a specific app receiver will be targeted for the broadcast.

What data and actions a broadcast receiver support varies. Search for public documentation, or look at the app manifest for clues.

When including a file URI either as data URI or `"android.intent.extra.STREAM"` extra, ensure to enable the appropriate Grant flags otherwise it may be inaccessible to the app.

## Input arguments

- Receiver class — class name of the receiving component.
- Package — package name of the receiving component.
- Action — action to broadcast.
- Data URI — URI for the broadcast to handle.
- MIME type — type of the URI is referring to. See MIME type.
- Category — action category, use an array for multiple categories.
- Extras — dictionary with extended data, inconvertible entries lacking a conversion type may be excluded.
- Flags — broadcast flags.

## Output variables

- Result code — variable to assign the result code, always `-1` when proceeding throught the YES path.
- Result data — variable to assign the arbitrary text “data” result.
- Result extras — variable to assign a dictionary with extended result data, inconvertible entries may be excluded.