ChatJox – چت آنلاین و پشتیبانی

Kuvaus

ChatJox is a self-hosted live chat and customer support plugin for WordPress. It lets site visitors start conversations from a responsive chat widget while site administrators manage messages from an operator inbox inside the WordPress dashboard.

Chat messages are stored on the WordPress site. ChatJox does not require a ChatJox account, license key, paid activation, trial period, or external ChatJox service.

Live chat and operator inbox

  • Responsive live chat for desktop, Android and iOS.
  • Operator inbox inside the WordPress dashboard.
  • Search, open, close, archive and delete conversations.
  • Clickable URLs inside messages.
  • File uploads with configurable size and extension limits.
  • Optional visitor name, email and mobile-number collection before a conversation starts.
  • Local contact archive for unique email addresses and mobile numbers.

Working hours and automated replies

  • Scheduled working hours with configurable working days, start and end times, and overnight shifts.
  • Manual always-online and always-offline modes.
  • Keyword-based automated replies with per-rule enable/disable controls.
  • Configurable quick replies for visitors.

RTL, Persian and mobile support

  • RTL-first interface suitable for Persian websites.
  • Responsive desktop and mobile layouts.
  • Full-screen mobile mode.
  • iOS Visual Viewport and Safe Area handling.
  • Persian-oriented typography choices for Vazirmatn, Estedad and Shabnam when those fonts are available locally or supplied by the active site or theme.
  • No mandatory external font CDN.

Appearance and floating contact menu

  • Custom desktop and mobile chat dimensions.
  • Detailed colors for header, messages, composer, launcher, badge, quick replies and action menu.
  • Configurable typography, bubble radius, input radius and shadows.
  • Launcher position, desktop/mobile size, shape, animation, label mode, colors, preset icon, emoji or uploaded image.
  • Optional floating contact menu for live chat, phone, WhatsApp, Telegram, Rubika and custom links.
  • Icon, compact and card menu layouts.
  • Per-channel title, description, color and ordering.
  • Optional prefilled WhatsApp text.

Optional advanced support modules

Version 0.0.5 adds an opt-in advanced support center. Every module has its own ON/OFF switch and is disabled by default on existing installations so the established 0.0.4 behavior is preserved until an administrator enables a module.

  • Multi-operator inbox using selected WordPress users, with per-operator reply and assignment permissions.
  • Operator presence with automatic Online/Offline detection plus manual Online, Away and Offline modes.
  • Departments and visitor department selection, plus operator/department assignment and transfer controls.
  • Browser/Desktop notifications with sound and an unread badge, using the browser Notification API without an external notification service.
  • Faster adaptive real-time polling with reconnect/backoff behavior; no external WebSocket service is required.
  • Optional typing indicators and Delivered/Seen message states.
  • Customer context with current/start/referrer pages, device information, last activity and related conversation history.
  • Timed consultations with start, extend, stop and expiry status.
  • Operator audit logging for supported actions.
  • Read-only compatibility center for WordPress/PHP/HTTPS/REST/Upload/WP-Cron checks.

Version 0.0.7 modules

Version 0.0.7 adds five further opt-in modules. Every one of them is switched OFF after an upgrade, so an existing site behaves exactly as it did on 0.0.6 until an administrator turns a module on. While a module is off, none of its assets, polling, queries or admin screens are loaded.

  • Customer satisfaction rating (CSAT): after an operator closes a conversation the widget can ask for a 1-5 star rating and an optional comment. One rating per conversation, shown in the operator panel and in reports.
  • Reports and statistics: a dedicated screen with conversation, response, resolution and satisfaction KPIs, a per-day table and a sortable operator table. Statistics are calculated only when that screen is opened and are never queried from the chat widget or the inbox poll.
  • Conversation transcript: a responsive HTML copy of a conversation can be emailed to the visitor with wp_mail(), with a configurable per-conversation send limit. Conversation tokens, log data and IP addresses are never included.
  • Block list and anti-spam: a persistent block list plus message flood, repeated message, link flood, session flood, file flood, honeypot and minimum form time checks, layered on top of the existing rate limiting. Sensitive identifiers are stored as an irreversible hash. Permanent blocks are only ever created manually.
  • Duplicate conversation merge: related conversations of the same customer are suggested from an exact email, an exact mobile number or a WordPress user id, never from an IP address. Merging is non-destructive: the secondary conversation and all of its data are kept, an old visitor token keeps working and resolves to the canonical conversation.

Each module’s own options live on the Advanced Features screen next to its switch, so no extra settings menu is added.

Optional Telegram replies

Telegram integration is disabled by default. When explicitly enabled and configured by the site administrator, ChatJox can send visitor messages and uploaded-file links to a Telegram bot and receive administrator replies from Telegram.

Text and file metadata can be delivered as one Telegram notification where supported by the current workflow.

Performance and cleanup

  • Lazy loading where applicable.
  • Adaptive polling and hidden-tab suspension by default; when Browser Notifications are enabled, the operator inbox uses a low-frequency background check so permitted notifications can still appear while the tab remains open.
  • Selective cleanup for chats, files and logs.
  • No artificial feature gating, usage quotas or license checks.

External services

ChatJox works without any external ChatJox service. It contacts an external service only when the site administrator explicitly enables and configures the Telegram integration.

Telegram Bot API

When Telegram integration is enabled, ChatJox communicates with the Telegram Bot API at api.telegram.org to register a webhook, validate the configured bot, deliver visitor messages and uploaded-file links to the connected administrator chat, and receive administrator replies.

Data that may be sent to Telegram when this optional integration is enabled includes the visitor display name, conversation ID, message text, uploaded-file URL and file name, plus the administrator bot/chat identifiers required for message delivery. The plugin does not enable this connection by default.

Telegram Terms of Service: https://telegram.org/tos
Telegram Privacy Policy: https://telegram.org/privacy
Telegram Bot API documentation: https://core.telegram.org/bots/api

The optional WhatsApp, Telegram and Rubika contact buttons are ordinary administrator-configured links. ChatJox does not call those services merely by displaying the buttons; a visitor chooses whether to open a configured link.

Privacy

ChatJox can store chat messages, uploaded files, visitor IP addresses and browser user-agent strings on the WordPress site. Depending on administrator settings, it can also collect visitor names, email addresses and mobile numbers.

When email or mobile collection is enabled, unique email addresses and mobile numbers are additionally retained in a separate ChatJox contact-archive table in the local WordPress database. Normal chat cleanup does not remove this archive. If the administrator disables the plugin’s keep-data option before uninstalling ChatJox, the archive table is removed together with the other ChatJox tables.

ChatJox also adds suggested privacy-policy text to WordPress Privacy settings so site owners can adapt it to their site and jurisdiction. Version 0.0.5 integrates ChatJox conversation data with the WordPress personal-data Export and Erase tools for email-based requests.

If Telegram integration is enabled, see the External services section above for information about data sent to Telegram.

Kuvankaappaukset

Asennus

  1. Install ChatJox from Plugins > Add New in WordPress, or upload the plugin ZIP.
  2. Activate ChatJox.
  3. Open the ChatJox menu in the WordPress dashboard.
  4. Configure the chat widget, appearance, working hours, automated replies, file settings and optional communication channels.
  5. If Telegram replies are needed, enable Telegram integration and enter a BotFather token.

UKK

Is ChatJox self-hosted?

Yes. Chat messages and ChatJox data are stored on the WordPress site. ChatJox does not require an external ChatJox account or service.

Does ChatJox require an account, license or paid plan?

No. The plugin does not include a license check, trial period, paid activation or artificial feature gate.

Does ChatJox support Persian and RTL websites?

Yes. The interface is RTL-first and includes responsive behavior intended for Persian websites on desktop and mobile devices.

Can I control when the chat is online or offline?

Yes. ChatJox supports scheduled working hours, always-online mode and always-offline mode.

Can ChatJox send and receive files?

Visitors can upload allowed file types within the configured size limit, and operators can send files from the WordPress conversation interface.

Does ChatJox support WhatsApp, Telegram and Rubika?

The floating contact menu can open administrator-configured WhatsApp, Telegram and Rubika links. Telegram also has an optional Bot API integration for receiving website messages and replying from Telegram.

Is Telegram required?

No. Telegram integration is disabled by default and is only used after the site administrator explicitly enables it and provides a bot token.

Why does the Telegram webhook require HTTPS?

Telegram must be able to reach the WordPress REST endpoint from the internet, so the site needs a valid HTTPS connection and an accessible REST API.

Are the advanced modules mandatory?

No. Each new 0.0.5 advanced module has an independent switch. Existing installations receive them disabled by default and can enable only the modules they need.

Does advanced real-time mode require an external WebSocket service?

No. The 0.0.5 real-time option uses faster adaptive polling, retry and reconnect behavior on the WordPress site.

Can different WordPress users work as ChatJox operators?

Yes. When Multi-Operator is enabled, administrators can select existing WordPress users as operators and separately control reply and assignment permissions. Destructive cleanup and conversation deletion remain administrator-only operations.

Can the floating chat launcher be customized?

Yes. The launcher supports configurable position, desktop/mobile size, shape, colors, animation, icon, emoji, label mode or uploaded image.

Does chat cleanup remove the email and mobile contact archive?

No. The local contact archive is stored separately in the WordPress database. It is removed on uninstall only when the administrator has disabled the keep-data option.

Arvostelut

There are no reviews for this plugin.

Avustajat & Kehittäjät

“ChatJox – چت آنلاین و پشتیبانی” perustuu avoimeen lähdekoodiin. Seuraavat henkilöt ovat osallistuneet tämän lisäosan kehittämiseen.

Avustajat

Muutosloki

0.0.8

  • Fixed the file-upload button on mobile, where only a narrow strip near its bottom edge opened the file picker. The floating launcher wrapper is fixed above the panel and keeps the launcher’s layout box even while the launcher is hidden, so it covered the composer and absorbed taps aimed at the attachment button. The wrapper no longer takes pointer events; the launcher and the contact menu still do.
  • The attachment control is now a label bound to a visually hidden file input, instead of a stretched input whose real tap target was the native select button sitting on the text baseline.
  • The attachment picker lock now always releases on a timer, so the button can no longer stay dead if a browser sends no change, cancel or focus event after the picker closes.
  • The upload button is now exactly the same square as the send button, so the whole of what the visitor sees is the part that responds to a tap, with no empty margin around it.

0.0.7

  • Fixed conversations being duplicated in the operator inbox: opening the widget, sending a message, a quick reply and the start button could each issue a separate start request, and every one of them created a new conversation. All callers now share a single in-flight start request.
  • Removed the voice-message feature completely, at the site owner’s request: the switch, its settings, the recorder script, the recording UI in the widget and in the operator composer, the voice upload path and every related style are gone. Voice was never actually reachable in 0.0.6 either, because its switch was missing from the advanced-features registry.
  • The message refresh interval can now be set as low as 1 second (previously the minimum was 4 seconds).
  • Redesigned the feature toggles across the admin: larger switches with a real knob, a focus ring, an active card state and a readable ON/OFF badge, so a feature’s state is never communicated by colour alone.
  • Redesigned the in-widget satisfaction rating: vector stars with hover preview and a written label for each score, a clearer comment field, a proper submit button and a confirmation state.
  • Added many more launcher icon presets and a per-channel custom icon image, so a site can use its own official platform icon files in the floating contact menu.
  • The operator avatar now accepts a list of images with optional rotation; the previously configured avatar stays first, so existing sites look unchanged.
  • Added customer satisfaction rating with a dedicated table, configurable timing and texts, operator display and an inbox badge.
  • Added a reports and statistics screen with KPIs, a per-day table and per-operator figures, calculated only when that screen is opened and cached briefly.
  • Added conversation transcript email with a responsive HTML template, masked visitor address, per-conversation rate limit and audit logging.
  • Added a block list and anti-spam layer built on top of the existing rate limiting, with hashed identifiers, configurable thresholds and manual-only permanent blocks.
  • Added non-destructive duplicate conversation merge with canonical resolution for old visitor tokens.
  • Added granular operator permissions for reports, transcripts, merging, blocking and ratings instead of gating every new screen on manage_options.
  • Added first_operator_reply_at and closed_at conversation columns with a one-time, non-destructive backfill for existing conversations.
  • Updated the privacy-policy text and the WordPress personal-data exporter/eraser for ratings.
  • Extended the cleanup screen with ratings and anti-spam log actions. The permanent block list is never removed by ordinary cleanup.
  • Removed a duplicate copy of the entire plugin that was shipped inside the /assets/ directory, plus five superseded stylesheet and script files that were no longer enqueued.
  • Database schema raised to 0.0.4. Upgrading from 0.0.6 needs no reinstall and preserves all conversations, contacts, settings, Telegram configuration, operators, departments, appearance and notification configuration.

0.0.6

  • Fixes Advanced Features saving so redirects happen before admin output and no blank/incomplete page is produced.
  • Adds an isolated Advanced Features stylesheet with versioned cache-busting for reliable rendering after updates.
  • Rebuilds the optional professional notification module with independent admin/visitor polling, sound, unread badges, permission UX and Service Worker based mobile notifications.
  • Plays the in-page alert sound for new chat messages after the browser has received the required user interaction, and shows visual system notifications only while the tab is in the background.
  • Makes operator notifications available across WordPress admin pages and visitor notifications across site pages while an active ChatJox conversation token exists.
  • Adds the approved 0.0.6 appearance defaults for fresh installs and Appearance Reset only; existing installations keep their current appearance automatically.
  • Declares testing through WordPress 7.1.
  • Keeps the database schema at 0.0.3 and preserves existing chats, settings, Telegram behavior and unrelated modules.

0.0.5

  • Adds optional voice messages for visitors and operators with recording, timer, preview, cancel, send and a custom inline audio player.
  • Adds an independent ”ارسال وویس” switch under Advanced Features; disabled by default.
  • Fixes browser-recorded WebM/MP4 voice MIME compatibility with WordPress uploads.
  • Keeps the existing database schema and text/file chat behavior unchanged.
  • Added 13 independently switchable advanced support modules, disabled by default for upgrades.
  • Added multi-operator access with per-operator reply/assignment permissions and administrator-only destructive actions.
  • Added operator presence, departments, visitor department selection, conversation assignment and transfer.
  • Added browser notifications, unread badge, optional sound, faster adaptive polling and reconnect/backoff behavior.
  • Added typing indicators and Delivered/Seen states.
  • Added customer page/device context plus related-conversation history.
  • Added timed consultations, operator audit logging and a read-only compatibility center.
  • Added WordPress personal-data exporter/eraser integration and cleanup for the new tables/capabilities.
  • Preserved the existing ChatJox settings structure, approved UI, Telegram workflow, mobile/iPhone safeguards and launcher behavior.

0.0.4

  • رفع مشکل ناپدید شدن کادر پیام و دکمه ارسال در پنل مدیریت پس از چند پیام.
  • اصلاح جایگاه پیام خوش‌آمدگویی اولیه در سمت چپ چت.
  • اصلاح نمایش فیلد شماره موبایل در فرم شروع گفتگو.
  • اصلاح آیکن ارسال تا مستقیم به سمت چپ نمایش داده شود.
  • حذف تب‌بندی تکراری از بالای صفحه تنظیمات و اتکا به دسته‌بندی منوی کناری.
  • Fixed the initial welcome message alignment so operator/system messages appear on the incoming-message side in RTL chat.
  • Fixed the operator composer being pushed out of view after multiple messages by correcting the admin flex/scroll layout.
  • Refined the WordPress.org listing, FAQ, tags and screenshot captions.
  • Added five-category settings navigation and an accurate online/offline badge in the operator screen.
  • Hardened visitor session tokens, profile validation and public request throttling.
  • Hardened file uploads with configured extensions plus WordPress-approved MIME validation on server and client.
  • Improved database-write failure handling for sessions, messages, files, auto replies and Telegram replies.
  • Improved cleanup and uninstall handling for ChatJox-created attachments when data removal is selected.
  • Removed the generic full object-cache flush after settings saves while retaining supported page-cache integrations.
  • Fixed legacy contact-line parsing while preserving the Windows launcher and iPhone/mobile safeguards from previous releases.

0.0.3

  • Fixed clipping of custom launcher emoji/icons on Windows browsers.
  • Added a cross-platform emoji font fallback stack for the launcher.
  • Improved custom launcher image fitting so uploaded icons are contained instead of cropped.

0.0.2

  • Rebuilt the frontend chat UI around one consistent design system.
  • Added advanced appearance, typography and floating action-menu controls.
  • Improved mobile and iPhone viewport, safe-area, keyboard and composer handling.

0.0.1

  • Initial public release of ChatJox.