Omnithread docs
v1.0.0
Get help
● Omnithread · Reference

Every setting, address and limit.
In one place.

Settings with their defaults, permissions, the cron work, the Perfex hooks the module uses, its addresses and tables, merge fields, limits and how to translate the texts.

Version 1.0.0

01Settings

Omnithread > Setup > Settings (permission Settings). Each value is a Perfex option named omnithread_<key>. Secret values are stored encrypted, never shown again, and kept when you leave their field empty.

TabSettingDefaultAllowed
GeneralThemeLightLight, Dark, Follow the browser
GeneralStatus after a replyWaitingOpen, Waiting, Closed
GeneralReopen window (days)70 to 365
GeneralPresence window (seconds)9020 to 600
GeneralReopen a closed conversation when the customer writes againOnOn, Off
GeneralNotify a staff member when a conversation is assigned to themOnOn, Off
E-mailImport the last N days (default for new mailboxes)300 (everything) to 3650
E-mailMessages per cron run and mailbox501 to 500
E-mailMax message (MB)251 to 200
E-mailMax attachment (MB)151 to 100
E-mailMax upload (MB)101 to 100
E-mailDelete stored attachments after N days0 (keep)0 to 3650
E-mailStorage folder (optional)Empty = uploads/omnithread/filesAn absolute path without ..
E-mailAllow mail servers on the local networkOffOn, Off
Mailbox sign-inGoogle client ID and client secretEmptyFrom your Google Cloud OAuth client
Mailbox sign-inMicrosoft client ID and client secretEmptyFrom your Microsoft Entra app
Mailbox sign-inTenantcommoncommon, organizations, consumers or a tenant ID
Chat channelsMeta Graph API versionv27.0v and a number
Chat channelsMailbox check warning (minutes)605 to 10080
Chat channelsWebsite chat messages per visitor per minute201 to 600
Chat channelsLargest file a visitor may send (KB)5120100 to 51200
Chat channelsForget idle website chat sessions after (days)301 to 365
Chat channelsClient portal messages go throughThe first website chat that is onAny website chat channel
Chat channelsKeep the content of incoming webhooks for 14 daysOnOn, Off
ServiceDefault business hoursAround the clockAny calendar
ServiceTime zone of reportsThe CRM's time zoneAny time zone
ServiceAsk customers to rate closed conversationsOffOn, Off
ServiceAsk on these channelsNone ticked = every channelChannel types
ServiceMessage with the linkEmpty = default textUp to 500 characters, {link} for the link
ServiceThe link works for (days)71 to 90
ServiceReopen the conversationNeverWhen the score is below 2, 3, 4 or 5
Tickets and leadsDepartment for new tickets, Status of new leads, Source of new leadsPerfex default (0)A Perfex department, lead status, lead source
AI assistantSwitch on the AI assistantOffOn, Off
AI assistantProviderAnthropic ClaudeAnthropic Claude, OpenAI, Google Gemini, OpenRouter, Ollama (local), OpenAI-compatible endpoint
AI assistantModel, API key, AddressEmptyAddress only for Ollama and custom endpoints
AI assistantRequests per month (whole install)5000 (no limit) to 1,000,000
AI assistantRequests per staff member per day300 (no limit) to 100,000
AI assistantTone for all mailboxesEmptyUp to 300 characters
AI assistantApply suggested labels / priority without approvalOffOn, Off
AI queue pageTranscription modelEmpty (OpenAI: gpt-transcribe)A model name
Settings, General tab: theme, status after a reply, reopen window, presence window and two switches
Settings > General
Settings, E-mail tab: import days, messages per cron run, size limits, attachment retention, storage folder and the local network switch
Settings > E-mail
Settings, Tickets and leads tab: department for new tickets, status and source of new leads
Settings > Tickets and leads

02Setup pages and who opens them

PagePermission
Getting startedManage channels, Manage rules or Settings
Channels, WhatsApp templates (and each channel, the website chat, webhook log)Manage channels
Teams, Business hours, SLA policies, RulesManage teams, business hours, SLA policies and rules
Canned repliesWrite, reply and add notes
LabelsAssign, change status, labels and links
SettingsSettings
System checkSettings or Manage channels

The full permission list is in Staff permissions.

03Cron work

One task registered with Perfex's cron (or, on installs without cron task registration, attached to the end of the Perfex cron run). Steps, in order: mail sync, link new records, release stuck drafts, outgoing queue, wake snoozed, automatic translation, SLA, ticket replies, channel health, report tables; once a day the clean-up. Each step runs on its own; one failing step does not stop the others, and the module never breaks Perfex's cron. Details: The cron job.

04Perfex hooks used

HookUsed for
admin_initPermissions, the Omnithread menu, the customer profile tab
app_admin_head, app_admin_footerThe module's styles and scripts, only on its own pages and the customer profile
module_omnithread_action_linksSetup and Settings links in Setup > Modules
customer_profile_tabsThe Conversations tab
clients_initThe Messages item in the client portal
register_cron_task (fallback after_cron_run)The cron work
steward_ai_register_toolsTools for the separate Steward AI module, when installed

Version 1.0.0 fires no hooks of its own.

05Addresses

AddressPage
admin/omnithread/inboxInbox
admin/omnithread/reportsDashboard
admin/omnithread/reports/overview (agents, channels, heatmap, sla, csat)Reports
admin/omnithread/setup/<page>Setup pages
admin/omnithread/aiAI queue (when AI is on)
admin/omnithread/setup/oauth_callback/google, …/microsoftRedirect addresses for mailbox sign-in
omnithread/hook/in/<id>-<key>Webhooks (public)
omnithread/widget/jsThe website chat script (public)
omnithread/rate/<token>Satisfaction page (public)
omnithread/portalMessages in the client portal (logged-in contacts)

06Database tables

39 tables, each with your Perfex prefix (usually tbl) before the name:

ot_accounts, ot_account_access, ot_folders, ot_threads, ot_messages, ot_attachments, ot_labels, ot_thread_labels, ot_notes, ot_templates, ot_drafts, ot_presence, ot_staff_prefs, ot_ops, ot_ai_actions, ot_undo, ot_audit, ot_people, ot_identities, ot_saved_views, ot_mentions, ot_ticket_links, ot_teams, ot_team_members, ot_assign_state, ot_rules, ot_rule_runs, ot_calendars, ot_holidays, ot_sla_policies, ot_csat, ot_webhook_log, ot_outbox, ot_wa_templates, ot_widget_sessions, ot_stats_daily, ot_stats_times, ot_stats_hourly, ot_channel_health.

Perfex's own tables are never altered. The module reads some of them (staff, roles, departments, customers, contacts, leads, lead statuses and sources, customer groups, knowledge base, invoices, tickets, projects) and creates leads, tickets, ticket replies and tasks through Perfex's own functions.

07Merge fields for canned replies

Write them with double braces, for example {{contact_firstname}}. A field without a value becomes empty.

{{contact_firstname}}, {{contact_lastname}}, {{contact_name}}, {{company}}, {{staff_firstname}}, {{staff_lastname}}, {{staff_name}}, {{mailbox_name}}, {{mailbox_email}}, {{subject}}, {{today}}

Canned replies list with shared and personal replies
Setup > Canned replies

08Limits built into the module

WhatLimit
Webhook request body1 MB
Webhook log14 days
Website chat message / new chats4,000 characters / 10 per hour from one network address per chat
Client portal messages4,000 characters, 30 per contact per hour
Telegram message / SMS reply4,096 / 1,600 characters
E-mail recipients100 per message
Rule size20 conditions and 20 actions
Undo of bulk changes and merges1 hour
Satisfaction comment2,000 characters
Outgoing retriesAfter 1, 5, 15, 60 and 240 minutes
AI context60 most recent messages, each up to 3,000 characters, about 14,000 characters in total

09Languages

Every text goes through Perfex's translation function. The module ships English in five files under modules/omnithread/language/english/: omnithread_lang.php (main), omnithread_inbox_lang.php, omnithread_setup_lang.php, omnithread_insights_lang.php (dashboard, reports, rating page, portal) and omnithread_ai_lang.php.

  • Change a few texts: override the keys in Perfex's custom_lang.php for your language, as you do for Perfex's own texts. Updates of the module do not touch it.
  • Translate the module: copy the five files into modules/omnithread/language/<language>/, using the folder name Perfex uses for that language, and translate the texts on the right of each =. Keep %s placeholders. Keep a copy: an update replaces the module folder.