FAQ
Frequently asked questions (FAQ) about SPChat: Learn about server requirements, shared hosting installations, domain licensing, and GDPR compliance.
SPCast customers with a web radio package receive SPChat at no extra cost. Download and license are available in the Customer Center.
For everyone else, there are two options:
- €99 one-time (incl. 1 year of updates) for the self-hosted download license
- €15 per month for the ready-to-use Hosted version
All features are fully included in both options. There are no feature limits.
Yes, that's exactly what it was built for. No VPS, no root access required. SPChat uses Server-Sent Events (SSE) instead of WebSockets, which works on any standard Apache hosting without special port configuration. On low-performance hosting environments, a proven HTTP polling fallback is also available.
Requirements: PHP 8.2+, MySQL, Apache with .htaccess enabled. That's it.
Once released, the download will be available in the STREAMPANEL customer center. Download the ZIP package, extract it, and upload the files via FTP to your web server.
The license is bound to your domain. If you switch domains, you can update it at any time in the customer center, free of charge.
Since SPChat uses Server-Sent Events (SSE) for real-time delivery, every active user standardly keeps a permanent connection open to the server. Each connection occupies one PHP process (PHP-FPM worker) for up to 50 seconds. The capacity therefore directly depends on your web hosting environment:
- Up to 25 concurrent users: Runs smoothly on standard shared hosting (many shared hosts limit simultaneous PHP processes to 20–30).
- 50 to 100 concurrent users: A VPS (Virtual Private Server) is recommended. The PHP setting
pm.max_childrenshould be configured to at least 120. - Over 100 concurrent users: A powerful VPS/VDS (min. 4 CPU cores, 8 GB RAM,
pm.max_children > 300) is required. Optimized VPS hosting packages for SPChat are available from us upon request.
Resource-Saving Alternative: If your webspace resources are limited or your host's PHP process limits are reached, the chat can easily be switched from SSE to classic HTTP polling in the configuration. This mode polls messages at short intervals, does not block permanent PHP processes, and massively reduces the server load.
The SPChat license is bound to a specific domain. This means you install SPChat on your web server under a particular domain (e.g. chat.my-webradio.com) and the software verifies this binding.
If you want to run SPChat under a different domain, you can update the registered domain at any time via the STREAMPANEL customer center, at no additional cost and without repurchasing.
SPChat comes with a web installer. The short version:
- Download the ZIP package from the customer center
- Upload the files via FTP to your web server (
public/= document root) - Create an empty MySQL database
- Open
/install/in your browser and complete the setup
The installer checks PHP extensions, configures the database, and creates the first admin account. No SSH or terminal required.
PHP 8.2+ and a MySQL/MariaDB database - that's it. Required PHP extensions: pdo_mysql, mbstring, json, fileinfo. No root access, no VPS, no Composer at runtime.
- Apache or Litespeed with
mod_rewriteand.htaccessenabled - InnoDB engine & utf8mb4 charset
- Write permissions on the
media/uploads/andstorage/logs/directories - PHP Settings:
max_execution_timeof at least 60 seconds inphp.ini. Since SPChat uses Server-Sent Events (SSE) for real-time delivery and keeps each connection open for about 50 seconds, this prevents unexpected client disconnects.
No. SPChat requires neither Composer nor Node.js at runtime. All dependencies are included in the download package. This makes deployment on shared hosting simple: extract the ZIP, upload via FTP, run the web installer - done.
For local development, php -S localhost:8000 -t public is sufficient. No build step needed.
Yes. In addition to local storage, SPChat supports S3-compatible storage such as AWS S3, Cloudflare R2, or MinIO. Configuration is done in the admin panel or in config/config.php under the storage key.
Without S3 configuration, uploads are stored securely in a local directory outside the webroot. No direct browser access is possible.
SPChat uses Argon2id for password hashing, the current gold standard. Plaintext passwords are never stored. On admin-triggered resets, the new password is sent to the user by email and immediately hashed.
Yes. SPChat doesn't make any direct third-party connections from the browser. Emojis are bundled locally, GIPHY runs via a server-side proxy. Your user data stays entirely on your own server.
Yes. SPChat supports TOTP-based 2FA (Time-based One-Time Passwords), compatible with Google Authenticator, Aegis, Authy, and other TOTP apps. Users enable 2FA independently in their profile settings.
The word filter in SPChat can respond in two ways:
- Block: The message is rejected and the user sees an error message
- Replace: The term is replaced with a defined placeholder (e.g.
***)
Matches are also logged in the audit log so admins can identify patterns. Filters are applied server-side. A client-side bypass is not possible.
Admins can ban users temporarily or permanently. A ban automatically triggers an IP ban as well. Banned users lose access immediately on their next API request, with no waiting for session timeouts.
There is also a kick function: the user is removed from the chat immediately without a permanent ban. All actions are logged in the filterable audit log.
Yes. Via the admin panel you can create Scheduled Messages: messages that automatically appear in a room at a defined time. This runs via a cron job and is useful for announcements, daily greetings, or planned events during web radio broadcasts.