Logo

Docs / MsgGO

Discover how to integrate and manage your notification system with our simple yet powerful messaging service.

Docs

How to Create Events

Learn how to create and configure events in MsgGO to manage your message delivery effectively.

Before You Start

To create an event in MsgGO, you need:

  • A Mumu account
  • Basic understanding of JSON structure
  • Clear idea of what triggers you want to track

Creating Your First Event

  1. Log in to your MsgGO account
  2. Navigate to "Events" in the left sidebar
  3. Click the "Add Event" button
  4. Fill in the required fields:
    • Name (3-255 characters)
    • Group (for organization)
  5. Add an optional description (recommended)

Understanding Event Matching

Default Matching

By default, MsgGO creates a matching rule based on your event name. For example, if you create an event named "Daily Database Backup", MsgGO will look for messages with:

{"event": "daily-database-backup"}

MsgGO's matching system is intentionally designed to be flexible. While we suggest using the event key, you're free to use any identifier that fits your needs, such as "id", "event", "type", or "uid". This flexibility allows you to integrate MsgGO with existing systems without modifying your current event structure or naming conventions.

Custom Matching Rules

You can define custom matching rules based on JSON keys and values. For example:

{
	"type": "backup",    
	"database": "production",    
	"status": "completed"
}

When creating event definitions, it's important to understand how overlapping rules work. Consider this example:

Event Definition A:

  • Matches events with: {"event": "database"}

Event Definition B:

  • Matches events with: {"event": "database", "status": "success"}

If you send this event:

{    
	"event": "database",    
	"status": "success",    
	"timestamp": "2023-12-01 12:00:00"
}

To avoid unpredictable matching:

  • Create distinct matching rules for each event definition
  • Use more specific identifiers
  • Avoid creating overlapping rule sets

Organizing Events

Using Groups

Groups help organize your events logically. You can create groups based on:

  • Teams (Development, Marketing, HR)
  • Functions (DevOps, Architecture, Management)
  • Applications or Services
  • Departments (Sales, Billing, Support)

Nested Groups

You can create nested groups up to two levels deep, for example:

  • DevOps
    • Backups
    • Deployments
  • HR
    • Onboarding
    • Announcements

Naming Best Practices

Event Names

Choose names that clearly indicate the event's purpose:

  • "Daily Database Backup"
  • "Production Deployment"
  • "New Contact Form Submission"
  • "Server CPU Alert"

Group Names

Select group names that reflect your organization's structure or workflow:

  • By Department: "HR", "Sales", "Engineering"
  • By Function: "Monitoring", "Automation", "Communication"
  • By Team: "Team Alpha", "Backend Team", "Frontend Team"

Managing Your Events

Finding Events with Search

When you have many events, use the search functionality to quickly find what you need:

  • Navigate to the Events page
  • Use the search bar in the top right corner
  • Type any part of the event name, description
  • Results filter in real-time as you type

The search helps you quickly locate events across all your groups without manually expanding each one.

Quick Actions Menu

Each event in your Events list has a quick actions menu (three dots ...) that provides fast access to common operations:

Available Actions:

  1. Edit event
    • Opens the full event definition editor
    • Modify name, description, matching rules, deliveries, and templates
    • Access all event configuration options
  2. Send event
    • Manually trigger a test event
    • Useful for testing your deliveries and templates
    • Sends an event to all configured delivery targets
    • Great for debugging and verification
  3. Remove event
    • Permanently delete the event definition
    • Warning: This action cannot be undone
    • All configured deliveries and templates will be removed

Viewing Event History

You can see when events were received and how they were delivered:

  1. Click on the "events" dropdown next to any event definition
  2. A table will show all received events with:
    • Event name
    • Received timestamp
    • Number of deliveries executed

This helps you monitor event activity and verify that your matching rules are working correctly.

Viewing Delivery Targets

To see where an event is configured to deliver messages:

  1. Click on the "X deliveries" dropdown next to any event
  2. A table will show all configured delivery targets:
    • Delivery type (E-mail, Slack, Telegram, etc.)
    • Target destination (email address, Slack channel, etc.)
    • Delete button for each delivery

This gives you a quick overview of all destinations for an event without opening the full edit view.

Need Help?