# Communication Campaign

The Communication Campaign feature encompasses the suite of in-app messaging tools designed to provide timely and relevant feedback to users about their driving behavior, challenges, streaks, and nudges. Based on configuration set, the Sentiance Engagement Platform generates user-specific messages informed by their behavior and journeys.

Ideally, these messages are designed to be versatile in their presentation, allowing for display as widgets on a screen, as popup messages (for example, "You have succeeded in your challenge"), or within a dedicated page for listing notifications.

Every message belongs to a **category** and a **type**

### Message Category

<table><thead><tr><th width="191">Category</th><th></th></tr></thead><tbody><tr><td>ALL</td><td>Messages relevant to all aspects of the app's engagement features.</td></tr><tr><td>CHALLENGES</td><td>Communications specific to the challenges users are participating in or have completed.</td></tr><tr><td>BADGES</td><td>Messages related to badges earned for various achievements.</td></tr><tr><td>STREAKS</td><td>Updates and information on users' streaks.</td></tr><tr><td>SCORES</td><td>Communications concerning users' scores from their driving behavior</td></tr><tr><td>LEADERBOARD</td><td>Messages related to leaderboard standings, encouraging competitive engagement.</td></tr><tr><td>TRIPS</td><td>Updates on users' trips.</td></tr><tr><td>PROFILE</td><td>Messages related to the user's profile information or updates.</td></tr><tr><td>SCHEDULED</td><td>Scheduled messages meant for timely delivery on specific dates or events.</td></tr></tbody></table>

### Message Types

<table><thead><tr><th width="217">Type</th><th>Comment</th></tr></thead><tbody><tr><td>IN_APP_MESSAGE</td><td>Direct messages displayed within the app, providing immediate feedback or information.</td></tr><tr><td>REACTIVE_MESSAGE</td><td>Messages triggered by specific user actions or behaviors, offering real-time engagement.<br>(e.g you have successfully completed your challenge)</td></tr></tbody></table>

{% hint style="info" %}
**GQL Definition**: UserEngagementCommunication

**GQL Path**: user.engagement.communications
{% endhint %}

```graphql
query User($user_id: String) {
  user(user_id: $user_id) {
    engagement {
      communications {
        new(type: IN_APP_MESSAGE) {
          limit: 1
          slice {
            message
          }
        }
      }
    }
  }
}
```

## Sample Wireframe & Workflow

<figure><img src="/files/eMXBuhP8uJXvkNFeuEu1" alt=""><figcaption></figcaption></figure>

***

Additional helpful links:

* GQL [UserEngagementCommunication](https://graphqldocs.sentiance.com/#definition-UserEngagementCommunication) definition


---

# 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://docs.sentiance.com/sentiance-insights/engagement/communication-campaign.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.
