Broadcast

Deprecated

This feature has been deprecated as of 2026-06-11 and is no longer available. See Sunset Decision for details.


Overview

The Broadcast feature allows administrators to send messages to all auditors or a targeted subset of users within an organization. Messages can be sent immediately or scheduled for a future date and time, and can be targeted to specific users, sites, or departments.


Purpose & Value

  • Mass Communication: Send messages to all users in an organization in one action
  • Targeted Messaging: Send to specific users, sites, or departments
  • Scheduling: Queue messages to be delivered at a future date and time
  • Draft Support: Save messages as drafts before sending
  • Message History: View all sent, scheduled, and draft broadcasts in one place

Current Status & Compatibility

CategoryDetails
StatusDeprecated (2026-06-11)
PlatformWeb (admin.hellonimbly.com)
Route/admin/broadcast
Sidebar LocationBroadcast
Feature FlagMESSAGE_BROADCAST

Access & Permissions

CategoryDescription
Authenticated UsersUsers must be logged into the Nimbly web application
Role-Based AccessControlled by admin.broadcast.all.permissions (view, create)
Feature FlagMust have MESSAGE_BROADCAST enabled for the organization

System Architecture & Workflow

graph TB
    A[Admin opens Broadcast] --> B[BroadcastManager]
    B --> C[Firebase RTDB listener]
    C --> D{Target type}

    D --> E[All Users / Selected Users]
    D --> F[Sites / Departments]

    E --> G[organizationBroadcast orgId]
    F --> H[messageBoard orgId siteKey]

    subgraph Delivery
        I[Send Now] --> J[broadcasted: true, status: complete]
        K[Schedule] --> L[broadcasted: false, status: pending]
        M[Draft] --> N[broadcasted: false, status: draft]
    end

Key Components

1. Broadcast List (BroadcastList)

Paginated list of broadcasts organized into three tabs:

  • Broadcasted — Already sent messages
  • Scheduled — Queued for future delivery
  • Draft — Unsent drafts

Each card shows: recipient list, message text, creator name, and sent/scheduled time.

2. Create / Edit Modal (BroadcastModal)

Form for composing and scheduling a broadcast:

  • Message text input (280 character limit)
  • Receiver type selector: Departments, Sites, or Users
  • Multi-select dropdown for specific recipients
  • “Send to all users” toggle (Users tab only)
  • Delivery options: Send Now or Specific Date and Time
  • Actions: Send, Save as Draft, Cancel

3. Delete Confirmation (BroadcastModalDelete)

Confirmation dialog before permanently removing a broadcast.


Core Workflows

Sending a Broadcast

  1. Navigate to Broadcast in the sidebar
  2. Click New Broadcast
  3. Enter message text (max 280 characters)
  4. Select receiver type: Departments, Sites, or Users
  5. Choose specific recipients or toggle “Send to all users”
  6. Select Send Now or pick a scheduled date and time
  7. Click Send

Saving a Draft

  1. Follow steps 1–6 above
  2. Click Save as Draft instead of Send
  3. The message appears in the Draft tab

Editing or Deleting

  • Edit: Available for Draft and Scheduled broadcasts only (not Broadcasted)
  • Delete: Available for all statuses; requires confirmation

Data Storage

Broadcast data is stored in Firebase Realtime Database (not MongoDB):

PathUsed for
organizationBroadcast/{orgId}User-targeted broadcasts
messageBoard/{orgId}/{siteId}Site/department-targeted messages
userUnreadBroadcast/{userId}Per-user unread tracking

Broadcast statuses: draftpendingcomplete


System Integrations

SystemIntegration
Firebase RTDBPrimary data store for all broadcast messages
Organizations APIOrganization and timezone context
Users APIRecipient user lookup
Sites APISite-based targeting
Departments APIDepartment-to-site resolution for targeting