mirror of
https://github.com/ZoneMinder/zoneminder.git
synced 2026-06-20 19:49:41 -04:00
CakePHP applies the datasource 'encoding' as SET NAMES, and it was 'utf8', MySQL's 3-byte utf8mb3 alias. Like the C++ daemon connection, this mangles 4-byte UTF-8 characters in utf8mb4 columns such as Monitors.Name to '?' on read and truncates them on write, so the API returned and stored corrupted names. Set it to utf8mb4 to match the schema. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ZoneMinder API
This is the ZoneMinder API. It should be, for now, installed under the webroot e.g. /api.
app/Config/database.php.default must be configured and copied to app/Config/database.php
In addition, Security.salt and Security.cipherSeed in app/Config/core.php should be changed.
The API can run on a dedicated / separate instance, so long as it can access the database as configured in app/Config/database.php