# Show Notification

## Description

```javascript
'show notification <notification_id> [time]'
```

The `notification` action let's you show a notification to the player. Notifications can be useful for letting them know about a certain event, or even achievement unlock.

**Action ID**: `Notification`

**Reversible**: Yes

**Requires User Interaction**: If no time was provided, the player will need to dismiss the notification but the game will not be interrupted.

## Parameters

| Name             | Type     | Description                                                                                                                 |
| ---------------- | -------- | --------------------------------------------------------------------------------------------------------------------------- |
| notification\_id | `string` | The name of the notification you want to show. These must be declared beforehand using this action configuration functions. |
| time             | `number` | Optional. The time in **milliseconds** after which the notification will be automatically dismissed.                        |

## Configuration

To show a notification, you must first declare it with all of it's characteristics. To do so, the notification action has a configuration function where you can define your id or name for each notification and their respective information.

```javascript
Monogatari.action ('Notification').notifications ({
    '<notification_id>': {
        title: '',
        body: '',
        icon: ''
    }
});
```

### Properties

| Name  | Type     | Description                                                            |
| ----- | -------- | ---------------------------------------------------------------------- |
| title | `string` | The title for the notification                                         |
| body  | `string` | The body of the notification                                           |
| icon  | `string` | A path to an image that will be shown as the icon for the notification |

## Examples

### Simple Notification

The following script will show a notification that the player will have to manually dismiss.

{% tabs %}
{% tab title="Script" %}

```javascript
Monogatari.script ({
    'Start': [
        'show notification SampleNotification',
        'end'
    ] 
});
```

{% endtab %}

{% tab title="Notification Configuration" %}

```javascript
Monogatari.action ('Notification').notifications ({
    'SampleNotification':{
        title: 'Hey!',
        body: 'This is a notification',
        icon: 'assets/images/notification.png'
    },
});
```

{% endtab %}
{% endtabs %}

### Timed Notification

The following script will make the notification go away automatically after 5 seconds have elapsed. Remember this action receives the time in **milliseconds** so we'll use `5000` to dismiss it after the 5 seconds

{% tabs %}
{% tab title="Script" %}

```javascript
Monogatari.script ({
    'Start': [
        'show notification SampleNotification 5000',
        'end'
    ] 
});
```

{% endtab %}

{% tab title="Notification Configuration" %}

```javascript
Monogatari.action ('Notification').notifications ({
    'SampleNotification':{
        title: 'Hey!',
        body: 'This is a notification',
        icon: 'assets/images/notification.png'
    },
});
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.monogatari.io/documentation/develop/script-actions/notifications.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
