აღწერა
NS Chat Plugin enables real-time communication between WordPress users using WebSocket technology, powered by the Workerman library.
Key Features:
* Real-time private chat between users
* Visual unread message indicators
* Persistent chat history stored in the database
* Lightweight modular JS + PHP architecture
* Automatic migration and sync of WP users to chat system
* Linux daemon service with SSL support for secure connections
* Future-ready integration with NFS or AWS S3 for file upload/download
Planned Features:
* Message editing and deletion
* Read receipt indicators (message seen)
* File attachments with optional NFS or AWS S3 integration
Ideal for community websites, intranets, or any platform requiring internal messaging without third-party services.
For integration help or consulting on adapting the plugin to your project, contact the developer at: ns.group.tech@gmail.com
WebSocket Server Setup (Linux with SSL)
-
Create a systemd service file:
bash
sudo vim /etc/systemd/system/websocket_server.service -
Paste the following content:
bash
[Unit]
Description=WebSocket Server for NS Chat (SSL)
After=network.target
[Service]
ExecStart=/usr/bin/php /file/to/path/yourdomain/wp-content/plugins/ns-chat/server.php start
Restart=always
RestartSec=25
User=www-data
Group=www-data
StandardOutput=file:/var/log/websocket_server.out.log
StandardError=file:/var/log/websocket_server.err.log
[Install]
WantedBy=multi-user.target -
Add SSL context in
server.php
:
php
$context = [
'ssl' => [
'local_cert' => '/path/to/file.crt',
'local_pk' => '/path/to/file.key',
'verify_peer' => false,
]
]; -
Set permissions for plugin folder:
bash
sudo chown -R www-data:www-data /path/to/ns-chat/
sudo chmod -R 775 /path/to/ns-chat/ -
Reload and start the daemon:
bash
sudo systemctl daemon-reload
sudo systemctl enable websocket_server --now
sudo systemctl restart websocket_server
sudo systemctl status websocket_server -
Check logs if needed:
bash
/var/log/websocket_server.out.log
/var/log/websocket_server.err.log
Custom Port Configuration
By default, the WebSocket server listens on port 2346.
To use a different port:
-
Change the port in
server.php
:
php
$wsWorker = new Worker('websocket://0.0.0.0:2346', $context); -
Change the port in
chat-ui.js
:
js
wss://${chatData.domainName}:2346
this.socketManager = new WebSocketManager(, (message) => this.handleIncomingMessage(message));
-
If the port is closed, then open a new port on your server’s firewall:
bash
sudo ufw allow <your-port>/tcp
sudo firewall-cmd --permanent --add-port=<your-port>/tcp
sudo firewall-cmd --reload
sudo iptables -A INPUT -p tcp --dport <your-port> -j ACCEPT
sudo iptables-save > /etc/iptables/rules.v4
Database Tables
The plugin creates and uses the following tables:
wp_ns_chat_dialogues
wp_ns_chat_messages
wp_ns_chat_users
Tables are created and populated automatically on plugin activation.
User Synchronization
- Initial migration of all users from
wp_users
towp_ns_chat_users
on plugin activation. - New registrations are handled by:
php
add_action('user_register', 'ns_chat_add_user_on_registration'); - Profile updates are synced via:
php
add_action('profile_update', 'ns_chat_update_user_data');
You may bind these functions to custom hooks based on your app’s logic.
License
GPLv2 or later
დაყენება
- Upload the plugin folder
ns-chat
to/wp-content/plugins/
. - Activate the plugin through the ‘Plugins’ menu in WordPress.
- After activation, a new page template called “NS Chat Template” will be available when creating pages.
- Set up the WebSocket server on your Linux machine (see below).
ხდკ
-
No, it requires a persistent PHP process for the WebSocket server. Use a VPS or dedicated server.
-
Is SSL required?
-
Yes. To use secure WebSocket (wss://), SSL certificates must be configured in
server.php
. -
Can I use a different port than 2346?
-
Yes. See “Custom Port Configuration” section.
-
Can I get help with integration into my custom project?
-
Yes, you can contact the developer at ns.group.tech@gmail.com for custom integration support or consulting.
-
Does it support group chats?
-
Not yet. Planned in future versions.
მიმოხილვები
There are no reviews for this plugin.
მონაწილეები & დეველოპერები
“NS Chat” ღია პროგრამული უზრუნველყოფაა. შემდეგმა ადამიანებმა წვილი შეიტანეს მის განვითარებაში.
მონაწილეებიგადათარგმნეთ NS Chat თქვენს ენაზე.
დაინტერესებული ხართ დეველოპმენტით?
დაათვალიერეთ კოდი, შეამოწმეთ SVN რეპო, ან გამოიწერეთ შექმნის ჟურნალი : RSS.
ცვლილებები
1.0
- Initial public release.
- One-on-one messaging with WebSocket daemon
- User sync and message storage