Badwolf Web IRC Client
A modern, feature-rich WebSocket IRC client for WordPress. Connect your website visitors to your IRC server with real-time chat, private messaging, desktop notifications, and a beautiful tabbed interface. Version 5.2.0 – What’s New 🔧 WordPress 6.9 Compatibility FIXED: Plugin now works perfectly with WordPress 6.9 FIXED: Script loading issues with block themes and Full Site Editing (FSE) FIXED: Configuration passing to JavaScript 🔌 WebSocket Improvements FIXED: Connection stability issues FIXED: Binary WebSocket data handling ADDED: IRC subprotocol support for UnrealIRCd ⚙️ User Experience ADDED: Settings link in plugin list for easy access IMPROVED: Error handling and logging IMPROVED: Connection reliability Features ✅ Real-time IRC chat via secure WebSocket (wss://) ✅ Private messaging between users ✅ Desktop notifications for mentions and PMs ✅ Multiple channel support with tabbed interface ✅ User list with right-click context menus ✅ Command history (use arrow keys) ✅ Auto-reconnection with smart retry logic ✅ Customizable themes (light/dark) ✅ Mobile-responsive design ✅ IRC commands support (/nick, /join, /part, /msg, /me) ✅ Tab completion for nicknames ✅ Unread message badges ✅ Message history (500 messages per channel) Requirements WordPress: 5.0 or higher (tested up to 6.9) PHP: 7.4 or higher IRC Server: UnrealIRCd 6.x with WebSocket support (recommended) SSL Certificate: Valid SSL/TLS certificate for secure WebSocket (wss://) Configuration WordPress Settings Navigate to Settings → Badwolf Web IRC Client and configure: WebSocket URL: Your IRC server WebSocket URL (e.g., wss://irc.example.com:7443) Default Channel: IRC channel to join (e.g., #general) Nickname Prefix: Prefix for auto-generated nicknames (e.g., guest) Real Name: Default real name for users Theme: Light or Dark theme Auto Connect: Automatically connect when page loads UnrealIRCd Server Configuration Your UnrealIRCd server must have WebSocket support enabled: `conf Load WebSocket module loadmodule “websocket”; Configure WebSocket listener listen { ip *; port 7443; options { tls; websocket; } tls-options { certificate “/path/to/fullchain.pem”; key “/path/to/privkey.pem”; options { no-client-certificate; } } } ` SSL Certificate Setup (Let’s Encrypt) `bash Install certbot if not already installed sudo apt-get install certbot Get certificate for your IRC domain sudo certbot certonly –standalone -d irc.yourdomain.com Copy certificates to UnrealIRCd sudo cp /etc/letsencrypt/live/irc.yourdomain.com/fullchain.pem /path/to/unrealircd/conf/tls/ sudo cp /etc/letsencrypt/live/irc.yourdomain.com/privkey.pem /path/to/unrealircd/conf/tls/ Set correct permissions sudo chown unrealircd:unrealircd /path/to/unrealircd/conf/tls/*.pem sudo chmod 600 /path/to/unrealircd/conf/tls/privkey.pem sudo chmod 644 /path/to/unrealircd/conf/tls/fullchain.pem Restart UnrealIRCd cd /path/to/unrealircd ./unrealircd restart ` Auto-Renewal Setup Create a renewal hook to automatically copy certificates: `bash Create renewal hook script sudo nano /etc/letsencrypt/renewal-hooks/deploy/copy-to-unrealircd.sh ` Add this content: `bash !/bin/bash cp /etc/letsencrypt/live/irc.yourdomain.com/fullchain.pem /path/to/unrealircd/conf/tls/ cp /etc/letsencrypt/live/irc.yourdomain.com/privkey.pem /path/to/unrealircd/conf/tls/ chown unrealircd:unrealircd /path/to/unrealircd/conf/tls/*.pem chmod 600 /path/to/unrealircd/conf/tls/privkey.pem chmod 644 /path/to/unrealircd/conf/tls/fullchain.pem /path/to/unrealircd/unrealircd rehash ` Make it executable: `bash sudo chmod +x /etc/letsencrypt/renewal-hooks/deploy/copy-to-unrealircd.sh ` Usage Basic Shortcode ` [web_irc_client] ` Shortcode with Attributes ` [web_irc_client theme=”dark” width=”100%” height=”600px”] ` Available attributes: theme – Override theme (light or dark) width – Set custom width (default: 100%) height – Set custom height (default: 70vh) IRC Commands Users can use standard IRC commands: /nick newname – Change nickname /join #channel – Join a channel /part – Leave current channel /msg username message – Send private message /me action – Send action message /help – Show available commands Troubleshooting Connection Issues Problem: “Reconnecting…” message appears Solutions: Verify UnrealIRCd is running: ps aux | grep unrealircd Check port is listening: sudo netstat -tlnp | grep 7443 Verify SSL certificate is valid and not expired Check UnrealIRCd logs: tail -f /path/to/unrealircd/logs/ircd.log Test WebSocket connection: https://www.piesocket.com/websocket-tester SSL Certificate Errors Problem: Certificate expired or invalid Solution: `bash Check certificate expiry sudo certbot certificates Renew if needed sudo certbot renew –force-renewal Copy to UnrealIRCd and restart sudo cp /etc/letsencrypt/live/irc.yourdomain.com/*.pem /path/to/unrealircd/conf/tls/ ./unrealircd restart ` Plugin Not Loading Problem: IRC client doesn’t appear on page Solutions: Verify shortcode is correct: [web_irc_client] Clear WordPress cache Clear browser cache (Ctrl+Shift+R) Check browser console for JavaScript errors (F12) Verify WebSocket URL is configured in plugin settings WordPress 6.9 Issues Problem: Plugin stopped working after WordPress 6.9 update Solution: Update to version 5.2.0 which includes WordPress 6.9 compatibility fixes. Support GitHub: https://github.com/badwolf1972/web-irc-client Issues: https://github.com/badwolf1972/web-irc-client/issues WordPress Support: https://wordpress.org/support/plugin/badwolf-web-irc-client/ Credits Author: Martin Cooper (badwolf72) Website: https://www.oo3dmodels.com License: GPL v2 or later
Top keywords
- unrealircd31×3.92%
- irc23×2.91%
- path16×2.02%
- websocket15×1.90%
- path to unrealircd14×1.77%
- pem13×1.64%
- sudo13×1.64%
- tls13×1.64%
- conf12×1.52%
- com11×1.39%
- conf tls11×1.39%
- unrealircd conf11×1.39%
Simple Ajax Chat – Add a Fast, Secure Chat Box
⭐ Lightweight and fast, persistent chat solution! ⭐ Fully self-hosted: No 3rd-party account required 🙂 Simple Ajax Chat makes it easy for your visitors to chat with each other on your website. Simply add a shortcode to any post or page and done! Instant chat forum anywhere. The chat form is fully customizable with many options, so you can create the perfect chat box for your visitors. 👉 Check out a Live Demo of Simple Ajax Chat at WP-Mix » 👉 Pro version supports unlimited chat forms! Simple Ajax Chat is fully self-hosted with NO 3rd-party service required. Many (if not all) of the other free chat plugins require registration and monthly service from a 3rd-party provider. With Simple Ajax Chat, there is no 3rd-party: WordPress is all that’s required. Own your chats! Difference between SAC free and SAC Pro The main difference between SAC free and SAC Pro? Easy: SAC free supports 1 chat form SAC Pro supports unlimited chat forms Pro can do everything free can do and SO much more. Customize each chat form with unique features. SAC Pro is an all new plugin written with smarter, faster code and all the latest techniques. Get SAC Pro » SAC Features The simplest possible persistent chat Fully self-hosted: No 3rd-party account required Ajax goodness loads new chats without page refresh Smart chat processing optimizes for performance Works with all browsers (Chrome, Firefox, Safari, etc.) Works with all mobile devices (iPhone, Android, etc.) Display easily via shortcode or template tag Display chat box in multiple locations Regularly updated & “future proof” Supports custom CSS styles Strong anti-spam security Clean HTML markup More Features Plug-&-play: no configuration required Built-in control panel to edit and delete chats Define your own list of banned words and phrases Display chat messages in ascending or descending order Display custom content before/after the chat form Option to play sound alert for chat messages Option to restrict chat to logged-in users Option to restore default plugin settings Option to enable browser notifications Export all chat messages via CSV file Supports emoticons and emojis 🙂 Customize Everything Limit maximum number of chat messages Limit maximum length of each chat message Advanced customization via filter hooks Option to use textarea for larger input field Option to use logged-in username as the chat name Option to enable/disable URL field for chat names Load JavaScript only when chat box is displayed Customize the update interval for Ajax requests Customize the fade-in colors for new chats Customize the fade-duration for new chats Plus much more! 👉 That’s a LOT of features, but the Pro version has WAY more. Compare features (free vs. pro) » Exclusive Pro Features Enable Google reCaptcha (invisible) for all chat forms Choose from six form styles, or use custom styles Advanced chat management tools and user statistics Mute any user so they are not allowed to chat Ban any non-admin users from any chat session Enable customizable emoji picker for any chat form Display user avatars next to chat messages Display the user role next to chat messages Define your own Bang (!bang) shortcuts Email notifications for new chat messages Limit number of users for any chat form Create private chat boxes between users Banned phrases in text messages and user names Fine-grain control over allowed chat content Built with vanilla JavaScript (jQuery not required) Optionally display inline images in chat messages Automatically clear chat messages and send email alert Display a “current online users” widget for any form Displays a max-character counter for messages Display a role-based chat box on the WP Dashboard Choose from six sound alerts for new chat messages Option to include your own CSS and JavaScript 👉 Learn more and get SAC Pro » Privacy This plugin collects voluntary user chat data (i.e., Name, Chat Message, and optional URL field). It also gives the administrator the option to collect or not collect user IP information. Aside from those two things, this plugin does not collect or store any user data. This plugin uses a few cookies for the chat functionality. It does not connect to any third-party locations. Minimal impact on privacy. Translations This plugin supports translation into any language » Developer Simple Ajax Chat is developed and maintained by Jeff Starr, 15-year WordPress developer and book author. Support development I develop and maintain this free plugin with love for the WordPress community. To show support, you can make a donation or purchase one of my books: The Tao of WordPress Digging into WordPress .htaccess made easy WordPress Themes In Depth Wizard’s SQL Recipes for WordPress And/or purchase one of my premium WordPress plugins: BBQ Pro – Blazing fast WordPress firewall Blackhole Pro – Automatically block bad bots Banhammer Pro – Monitor traffic and ban the bad guys GA Google Analytics Pro – Connect WordPress to Google Analytics Head Meta Pro – Ultimate Meta Tags for WordPress REST Pro Tools – Awesome tools for managing the WP REST API Simple Ajax Chat Pro – Unlimited chat rooms USP Pro – Unlimited front-end forms Links, tweets and likes also appreciated. Thank you! 🙂