# Notification posted

A decision block that checks if a status bar notification is posted.

If the proceed option is set to Immediately (Android 4.3+), then instantly check if there’s a notification currently posted, or not, without pausing the fiber. If set to When transition, then the fiber will pause until a notification has been posted or updated and proceed through the YES path or has been removed (Android 4.3+) and proceed through the NO path.

Some apps post notifications where the title and/or message includes invisible BiDi characters that may affect matches and other text comparison.

If the picture path is specified then it must include a filename where to save an JPEG image of the picture shown in “big picture style”. The file is overwritten every time a new notification with a picture is posted, so either give it a unique filename each time or move it before returning to the block. Use carefully so as not to fill up device storage. The image may be down-scaled by the system to conserve memory.

The index input argument can be used to iterate over every currently posted notification that match, i.e. proceed option is set to Immediately, by starting at 0, increment by 1 for the YES path, until the NO path is taken. A notification may be skipped or repeated if a new notification is posted while iterating.

Removal reasons:

Value | Description
--- | ---
`0x00001` | notification click
`0x00002` | user dismissal
`0x00004` | user dismiss all
`0x00008` | inflation error
`0x00010` | package manager modifying app package
`0x00020` | owning user context being stopped
`0x00040` | user banning the package
`0x00080` | owning app canceling
`0x00100` | owning app canceling all
`0x00200` | other app dismissal
`0x00400` | other app dismiss all
`0x00800` | member of a canceled group
`0x01000` | invisible member of a group
`0x02000` | device administrator suspending app package
`0x04000` | managed profile turned off
`0x08000` | unbundled summary
`0x10000` | user banning the channel
`0x20000` | snoozed
`0x40000` | timeout

Note! This feature isn’t officially supported until Android 4.3+, on lower versions checking the currently posted or waiting for removed notifications are not supported.

## Options

- Proceed — when the fiber should proceed. Immediately (Android 4.3+).

## Input arguments

- Package — package name of the app posting the notification to include, default is any.
- Title — title of notification to include, default is any title, may contain glob pattern, default is any.
- Exclude flags — exclude notification with these flags, default is to not exclude.
- Visibility — visibility of notification to include, default is any. (Android 5+)
- Picture path — filename where to save an JPEG image of the picture shown in “big picture style” by the notification, default is to not save. (Android 4.1+)
- Index — index of matching notification to output, only used when proceed is set to Immediately, default is 0. (Android 4.3+)

## Output variables

- Package — variable to assign the package name of the app that posted the notification.
- Title — variable to assign the notification title.
- Message — variable to assign the notification message.
- Ticker text — variable to assign the notification ticker text.
- Person URIs — variable to assign an array of contact, `mailto:`, `tel:` or `name:` URIs of persons relevant to this notification.
- Category — variable to assign the notification category.
- When timestamp — variable to assign the “when” timestamp, the optional time displayed.
- Extras — variable to assign a dictionary with extended notification data, content varies with Android version.
- Action labels — variable to assign an array of “action” button labels.
- Notification id — variable to assign id of the notification. (Android 4.3+)
- Removal reason — variable to assign the reason for notification removal. (Android 8+)
- Addition texts — deprecated in favor of extras, may not be visible, variable to assign an array of additional notification texts.