# Engagement

URL: https://zerodev.ca/docs/medusa/modules/engagement

> Chat games that start when a busy channel goes quiet, daily posts, reputation and social actions.



Engagement keeps chat moving. It posts a quick game when an active channel starts to slow down, and never interrupts a busy channel or posts into a dead one. It also adds reputation and social action commands.

## When It Posts

A channel qualifies when it had at least **Minimum Recent Messages** within the **Activity Window**, then nobody has posted for **Quiet Minutes**. After an activity, the channel waits for the **Engagement Cooldown**, and each server posts at most **Maximum Engagements Per Day**.

## Activities

| Activity            | How it plays                                      |
| ------------------- | ------------------------------------------------- |
| Spell Racer         | First member to type the word wins.               |
| Scrambled Words     | First member to unscramble the word wins.         |
| Riddle Race         | First correct answer to the riddle wins.          |
| Emoji Guess         | First member to guess what the emojis mean wins.  |
| Quiz                | A multiple choice question with lettered buttons. |
| Would You Rather    | A two-option poll with a live tally.              |
| This Or That        | A two-option poll with a live tally.              |
| Question Of The Day | A daily discussion question.                      |
| Quote Of The Day    | A daily quote.                                    |

Races and the quiz end after the **Answer Window**. Winners get the **Winner Coin Reward** with the Economy module and the **Winner XP Reward** with the Leveling module. With **Open Discussion Threads** on, the daily question and quote get a thread.

The daily question and quote post at **Daily Post Time** in the **Daily Post Channel**.

## Reputation

Members give each other reputation for being helpful. A member can give or take one point every 12 hours, and cannot rate themselves. Scores show on `/rep leaderboard` and `/leaderboard`.

## Social Actions

`/interact` has 24 actions aimed at another member, such as `hug`, `pat`, `highfive`, `wave`, `poke`, `bonk` and `yeet`. `/emote` has 25 solo reactions, such as `dance`, `laugh`, `shrug`, `facepalm` and `tableflip`. Both take an optional note and show a GIF.

The target of an `/interact` gets a button to return the action, and Medusa counts how many times each pair has interacted.

## Settings

**Engagement Settings**

| Setting                       | Default | What it does                              |
| ----------------------------- | ------- | ----------------------------------------- |
| Enable Auto Engagement        | On      | Turns automatic activities on or off.     |
| Engagement Channels           | None    | Channels Medusa watches.                  |
| Activity Window (Minutes)     | 30      | How far back recent messages are counted. |
| Minimum Recent Messages       | 8       | Messages needed in the window.            |
| Quiet Minutes                 | 5       | Silence before an activity starts.        |
| Engagement Cooldown (Minutes) | 120     | Wait between activities in one channel.   |
| Maximum Engagements Per Day   | 6       | Daily limit per server.                   |
| Answer Window (Seconds)       | 60      | Time to answer a race or quiz.            |
| Open Discussion Threads       | On      | Adds a thread to daily posts.             |
| Enable Daily Question & Quote | On      | Turns daily posts on or off.              |
| Daily Post Channel            | None    | Where daily posts go.                     |
| Daily Post Time (HH:MM)       | 09:00   | When daily posts go out.                  |
| Winner Coin Reward            | 50      | Coins for a winner.                       |
| Winner XP Reward              | 25      | XP for a winner.                          |

**Activity Toggles**: turn each of the nine activities on or off.

**Social Actions**

| Setting                  | Default               | What it does                                |
| ------------------------ | --------------------- | ------------------------------------------- |
| Enable Social Actions    | On                    | Turns `/interact` and `/emote` on or off.   |
| Show GIFs                | On                    | Adds a GIF to each action.                  |
| GIF Source               | Custom GIFs, Then API | Use your own GIFs, the API, or yours first. |
| Custom GIFs              | None                  | Your GIF URLs, each tied to an action.      |
| Show Return Button       | On                    | Lets the target return the action.          |
| Track Interaction Counts | On                    | Counts interactions between members.        |

## Commands

| Command                                    | What it does                                                                                    |
| ------------------------------------------ | ----------------------------------------------------------------------------------------------- |
| `/engagement trigger [activity] [channel]` | Start an activity now. Needs &#x2A;*Engagement ( Manage )** or Administrator.                   |
| `/engagement stats [user]`                 | Show a member's wins and points.                                                                |
| `/rep give <user> [reason]`                | Give a reputation point.                                                                        |
| `/rep take <user> [reason]`                | Take a reputation point.                                                                        |
| `/rep check [user]`                        | Show a member's reputation.                                                                     |
| `/rep leaderboard`                         | Show the most reputable members.                                                                |
| `/interact <action> <user> [note]`         | Do an action to another member.                                                                 |
| `/emote <action> [note]`                   | Show a reaction.                                                                                |
| Give Reputation                            | Right-click a member, then **Apps > Give Reputation**. Off by default on the **Commands** page. |

The **Engagement Events** log records posted activities, winners and opened threads.
