OnlineMeeting Plugin

The OnlineMeeting Plugin helps teams automate the process of scheduling and managing online meetings directly within their workflows. Instead of manually creating meetings and sending invites, users can set up automated actions that handle everything—from deciding when a meeting should be scheduled to sending meeting invitations to the right participants.

Whether it’s triggered through campaigns, form submissions, or manual actions, the plugin ensures meetings are created using the appropriate connected account and shared instantly with attendees. This makes it especially useful for marketing, sales, and support teams who regularly coordinate calls with contacts.

The plugin is designed to work seamlessly with popular meeting providers such as Google Meet, Microsoft Teams and Zoom, while also allowing flexibility to integrate additional providers through its extensible architecture.

Overall, the OnlineMeeting Plugin streamlines meeting scheduling, reduces manual effort, and enables teams to scale their communication workflows efficiently without missing important interactions.

Installation & Setup

Prerequisites

Installation Steps

php bin/console mautic:plugins:reload
php bin/console cache:clear
php bin/console mautic:assets:generate

Signing into the Meeting Provider

To start scheduling meetings, you first need to connect a meeting provider account. The plugin supports popular providers such as Google Meet, Microsoft Teams and Zoom, and allows both organization-level and user-level connections.

Connecting an Organization (Global) Account

An organization account is used when meetings should be scheduled from a central account rather than individual users.

You can also:

Connecting a User Account

Each user can connect their own meeting account for personalized scheduling (for example, meetings created on behalf of the contact owner).

Once connected, meetings can be scheduled using your personal account, depending on campaign or action settings.

How Account Selection Works

When a meeting is scheduled, the plugin automatically determines which account to use based on configuration:

This ensures meetings are always created using the correct credentials without manual intervention.

Notes

  • You must complete the sign-in process before using any scheduling features
  • If authentication expires or fails, simply reconnect using the same steps
  • Permissions may restrict using other users’ accounts depending on system configuration

Scheduling a Meet

The OnlineMeeting Plugin provides multiple ways to schedule meetings, allowing teams to choose the method that best fits their workflow. Whether you want to schedule a meeting for a single contact or automate it across large groups, the plugin offers flexible options to handle different use cases.

Meetings can be scheduled in the following ways:

Scheduling a Meeting with Contacts

The OnlineMeeting Plugin allows you to schedule meetings directly from the Contacts section, either for a single contact or for multiple contacts at once. This makes it easy to quickly arrange meetings without needing to navigate to campaigns or forms.

Individual Contact Scheduling

You can schedule a meeting for a single contact using the following options:

Once selected, a scheduling popup will appear where you can define meeting details such as date, time, duration, attendees, and credentials. This method is best suited for one-to-one interactions like follow-ups, demos, or support discussions.

Bulk Contact Scheduling

You can also schedule meetings for multiple contacts simultaneously using bulk actions:

A scheduling popup will open, preloading the selected contacts as recipients. You can review, add, or remove attendees before confirming the meeting.

This method is ideal for reaching out to a group of contacts efficiently while maintaining consistent meeting details across all recipients.

Scheduling a Meeting with Segments

The OnlineMeeting Plugin allows you to schedule meetings for an entire group of contacts using segments. This is useful when you want to target a specific audience—such as qualified leads, event attendees, or a filtered contact group—without selecting each contact individually.

To schedule a meeting with a segment:

All contacts within the selected segment will be considered for meeting scheduling. The system will automatically use their available details (such as email and timezone, if configured) to send out invitations.

This approach is ideal for running structured outreach to a defined audience group while ensuring consistency in meeting setup. It eliminates the need for manual selection and helps scale scheduling efforts efficiently across larger contact lists.

Scheduling a Meet with Form Action

The OnlineMeeting Plugin allows you to automatically schedule meetings when a contact submits a form. This is especially useful for scenarios like demo requests, consultation bookings, event registrations, or any situation where a user is expecting a follow-up meeting after submitting their details.

Instead of manually reaching out and scheduling meetings, this feature ensures that the process is handled instantly and consistently.

How It Works

When a contact fills out and submits a form, the plugin can automatically trigger meeting scheduling based on the configuration you define. The meeting is created using the selected account and invitations are sent to the contact and any additional participants.

This helps reduce response time and ensures no opportunity is missed.

Setting Up Form-Based Meeting Scheduling

To enable this feature:

Choosing When the Meeting Should Be Scheduled

The plugin provides flexible options to decide when the meeting should take place:

  • Immediately
    • The meeting is scheduled as soon as the form is submitted.
  • After a Delay
    • You can set a delay of time to schedule meeting after form submission for eg: if you set a delay of 1 hour and a contact is submitted form at 10:00 then meet will be scheduled at 11:00
    • And you can see available units in the picture below.
  • Specific Date and Time
    • Set a fixed date time to schedule a meet for the submissions
  • Using Form Field Values
    • If your form includes fields like “Preferred Date” or “Preferred Date Time,” the plugin can use those values to schedule the meeting accordingly with the contact’s timezone if datetimefield is used in the form.
    • Or if only data is used in the form then admin can choose the timezone and the schedule time accordingly.

Timezone Handling

The plugin intelligently handles timezones to ensure meetings are scheduled correctly:

  • It can detect the user’s browser timezone (if enabled)
  • It can use the contact’s saved timezone
  • It can fall back to the system default timezone if needed

This ensures that meetings are scheduled at the correct time for both your team and the contact.

When to Use This Feature

Form-based scheduling is ideal for:

  • Demo or consultation requests
  • Lead capture forms with immediate follow-up
  • Event or webinar registrations
  • Customer onboarding workflows

Benefits

  • Eliminates manual scheduling effort
  • Provides instant response to user actions
  • Ensures consistent meeting setup
  • Improves lead engagement and conversion rates

Scheduling a Meeting with Campaign Action

The OnlineMeeting Plugin allows you to schedule meetings automatically as part of your campaign workflows. This means meetings can be triggered based on a contact’s behavior, journey stage, or specific conditions—without any manual effort.

This feature is especially useful for nurturing leads, following up at the right time, and creating structured communication flows.

How It Works

When a contact reaches a specific step in a campaign, the “Schedule Online Meeting” action can automatically create a meeting for that contact. The system determines the timing, selects the appropriate account, and sends out invitations based on your configuration.

This ensures that meetings happen at the right moment in the customer journey.

Setting Up Campaign-Based Meeting Scheduling

To use this feature:

  1. Go to the Campaign Builder
  2. Create a new campaign or edit an existing one
  3. Add an action called “Schedule Online Meeting” at the desired step
  4. Configure the meeting details such as:
    • Meeting title and description
    • Duration
    • Credentials (contact owner account or organization account)
    • Additional attendees (internal users or external emails)
    • Timezone (if contact field mode is selected it’ll use contact’s timezone if available else fall back to selected timezone)

Choosing When the Meeting Should Be Scheduled

Campaign actions provide multiple scheduling options to control when the meeting takes place:

  • Immediately
    • The meeting is scheduled as soon as the contact reaches this step in the campaign.
  • After a Delay
    • Schedule the meeting after a defined time but schedules can be sent by the moment the event triggered (e.g., 1 day after an email is opened or a form is submitted).
    • Events can be triggered immediately but scheduling can happen with a defined time.
  • Specific Date and Time
    • Set a fixed date and time for all contacts in the campaign.
  • Using Contact Field Values
    • Schedule meetings based on date or datetime values stored in the contact’s profile.

Smart Scheduling (Advanced Meeting Distribution)

The Smart Scheduling option is designed to handle meeting bookings at scale in a structured and organized way. Instead of scheduling all meetings at the same time or manually spacing them out, this feature automatically distributes meetings across contacts based on defined rules such as start time, duration, gap intervals, working hours, and allowed days.

How Smart Scheduling Works

When Smart Scheduling is enabled, the system follows a sequence-based approach:

  1. A start date and time is defined
  2. Each meeting is assigned a fixed duration
  3. A gap interval is applied between consecutive meetings
  4. Meetings are distributed across contacts automatically

For example:
If the start time is 10:00 AM, duration is 30 minutes, and gap is 10 minutes, meetings will be scheduled like:

  • 10:00 AM – 10:30 AM
  • 10:40 AM – 11:10 AM
  • 11:20 AM – 11:50 AM
    …and so on.

Handling Multiple Contacts and Owners

This becomes more powerful when used with segments and multiple users:

  • Suppose a segment contains 100 contacts
  • Each contact is assigned to a contact owner
  • There are 5 users (owners) in the system
  • The meeting action is configured to use Contact Owner Credentials

In this case:

  • Meetings are distributed among the 5 users based on contact ownership
  • Each user gets meetings scheduled only for their assigned contacts
  • Scheduling happens independently per user, avoiding overlap within their own calendar
  • The defined start time, duration, and gap rules are applied separately for each owner

This ensures balanced workload distribution and avoids conflicts in individual calendars.

Time Window Control

You can further refine scheduling using time constraints:

  • Send From / Time Range
    Define working hours (e.g., 10:00 AM to 6:00 PM)
    Meetings will only be scheduled within this time window
  • If the time exceeds the allowed range, scheduling continues on the next valid time slot

Day Restrictions

You can control which days meetings are allowed:

  • Select specific days (e.g., Monday to Friday)
  • Exclude weekends or non-working days
  • Option to quickly apply Weekdays only

If a meeting falls outside allowed days, it will automatically move to the next valid day

Key Benefits

  • Automatically handles large volumes of contacts
  • Prevents meeting overlaps for individual users
  • Ensures meetings are scheduled within working hours
  • Distributes workload fairly across team members
  • Eliminates the need for manual planning and coordination 

When to Use Smart Scheduling

This feature is ideal when:

  • Scheduling meetings for large segments or campaigns
  • Lead nurturing workflows
  • Automated follow-ups after specific actions (e.g., email clicks, page visits)
  • Sales pipeline stages (e.g., booking a call after qualification)
  • Customer engagement and retention campaigns
  • Multiple team members are involved in handling meetings
  • You want to maintain consistent gaps and avoid overload
  • You need meetings to follow business hours and working days

Smart Scheduling ensures that meetings are not just automated, but also intelligently planned—making it easier to manage time, resources, and customer interactions efficiently.