/*M!999999\- enable the sandbox mode */ -- MariaDB dump 10.19 Distrib 10.11.14-MariaDB, for debian-linux-gnu (x86_64) -- -- Host: 127.0.0.1 Database: app_38443 -- ------------------------------------------------------ -- Server version 10.11.14-MariaDB-0+deb12u2 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; -- -- Table structure for table `channel_autoroles` -- DROP TABLE IF EXISTS `channel_autoroles`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `channel_autoroles` ( `id` int(11) NOT NULL AUTO_INCREMENT, `channel_id` int(11) NOT NULL, `icon` varchar(50) NOT NULL, `title` varchar(255) NOT NULL, `role_id` int(11) NOT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), KEY `channel_id` (`channel_id`), KEY `role_id` (`role_id`), CONSTRAINT `channel_autoroles_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE, CONSTRAINT `channel_autoroles_ibfk_2` FOREIGN KEY (`role_id`) REFERENCES `roles` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `channel_last_read` -- DROP TABLE IF EXISTS `channel_last_read`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `channel_last_read` ( `channel_id` int(11) NOT NULL, `user_id` int(11) NOT NULL, `last_read_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`channel_id`,`user_id`), KEY `user_id` (`user_id`), CONSTRAINT `channel_last_read_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE, CONSTRAINT `channel_last_read_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `channel_members` -- DROP TABLE IF EXISTS `channel_members`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `channel_members` ( `channel_id` int(11) NOT NULL, `user_id` int(11) NOT NULL, `joined_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`channel_id`,`user_id`), KEY `user_id` (`user_id`), CONSTRAINT `channel_members_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE, CONSTRAINT `channel_members_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `channel_permissions` -- DROP TABLE IF EXISTS `channel_permissions`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `channel_permissions` ( `id` int(11) NOT NULL AUTO_INCREMENT, `channel_id` int(11) NOT NULL, `role_id` int(11) DEFAULT NULL, `user_id` int(11) DEFAULT NULL, `allow_permissions` int(11) DEFAULT 0, `deny_permissions` int(11) DEFAULT 0, `role_id_idx` int(11) GENERATED ALWAYS AS (ifnull(`role_id`,0)) VIRTUAL, `user_id_idx` int(11) GENERATED ALWAYS AS (ifnull(`user_id`,0)) VIRTUAL, PRIMARY KEY (`id`), UNIQUE KEY `channel_role_user_fixed` (`channel_id`,`role_id_idx`,`user_id_idx`), KEY `role_id` (`role_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `channel_rss_feeds` -- DROP TABLE IF EXISTS `channel_rss_feeds`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `channel_rss_feeds` ( `id` int(11) NOT NULL AUTO_INCREMENT, `channel_id` int(11) NOT NULL, `url` varchar(255) NOT NULL, `last_fetched_at` timestamp NULL DEFAULT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), KEY `channel_id` (`channel_id`), CONSTRAINT `channel_rss_feeds_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `channel_rules` -- DROP TABLE IF EXISTS `channel_rules`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `channel_rules` ( `id` int(11) NOT NULL AUTO_INCREMENT, `channel_id` int(11) NOT NULL, `content` text NOT NULL, `position` int(11) DEFAULT 0, `created_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), KEY `channel_id` (`channel_id`), CONSTRAINT `channel_rules_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `channels` -- DROP TABLE IF EXISTS `channels`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `channels` ( `id` int(11) NOT NULL AUTO_INCREMENT, `server_id` int(11) DEFAULT NULL, `name` varchar(100) NOT NULL, `type` varchar(50) DEFAULT 'chat', `created_at` timestamp NULL DEFAULT current_timestamp(), `allow_file_sharing` tinyint(1) DEFAULT 1, `theme_color` varchar(20) DEFAULT NULL, `message_limit` int(11) DEFAULT NULL, `status` varchar(255) DEFAULT NULL, `icon` varchar(50) DEFAULT NULL, `position` int(11) DEFAULT 0, `category_id` int(11) DEFAULT NULL, `rules_role_id` int(11) DEFAULT NULL, PRIMARY KEY (`id`), KEY `server_id` (`server_id`), CONSTRAINT `channels_ibfk_1` FOREIGN KEY (`server_id`) REFERENCES `servers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `custom_emotes` -- DROP TABLE IF EXISTS `custom_emotes`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `custom_emotes` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `path` varchar(255) NOT NULL, `code` varchar(60) NOT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `forum_tags` -- DROP TABLE IF EXISTS `forum_tags`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `forum_tags` ( `id` int(11) NOT NULL AUTO_INCREMENT, `channel_id` int(11) NOT NULL, `name` varchar(50) NOT NULL, `color` varchar(20) DEFAULT '#7289da', PRIMARY KEY (`id`), KEY `channel_id` (`channel_id`), CONSTRAINT `forum_tags_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `forum_threads` -- DROP TABLE IF EXISTS `forum_threads`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `forum_threads` ( `id` int(11) NOT NULL AUTO_INCREMENT, `channel_id` int(11) NOT NULL, `user_id` int(11) NOT NULL, `title` varchar(255) NOT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), `solution_message_id` int(11) DEFAULT NULL, `is_pinned` tinyint(1) NOT NULL DEFAULT 0, `is_locked` tinyint(1) NOT NULL DEFAULT 0, `last_activity_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), KEY `channel_id` (`channel_id`), KEY `user_id` (`user_id`), KEY `solution_message_id` (`solution_message_id`), CONSTRAINT `forum_threads_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE, CONSTRAINT `forum_threads_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE, CONSTRAINT `forum_threads_ibfk_3` FOREIGN KEY (`solution_message_id`) REFERENCES `messages` (`id`) ON DELETE SET NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `message_reactions` -- DROP TABLE IF EXISTS `message_reactions`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `message_reactions` ( `id` int(11) NOT NULL AUTO_INCREMENT, `message_id` int(11) NOT NULL, `user_id` int(11) NOT NULL, `emoji` varchar(50) NOT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), UNIQUE KEY `message_id` (`message_id`,`user_id`,`emoji`), KEY `user_id` (`user_id`), CONSTRAINT `message_reactions_ibfk_1` FOREIGN KEY (`message_id`) REFERENCES `messages` (`id`) ON DELETE CASCADE, CONSTRAINT `message_reactions_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `messages` -- DROP TABLE IF EXISTS `messages`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `messages` ( `id` int(11) NOT NULL AUTO_INCREMENT, `channel_id` int(11) NOT NULL, `user_id` int(11) NOT NULL, `content` text NOT NULL, `attachment_url` varchar(255) DEFAULT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), `updated_at` timestamp NULL DEFAULT NULL ON UPDATE current_timestamp(), `metadata` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL CHECK (json_valid(`metadata`)), `is_pinned` tinyint(1) DEFAULT 0, `thread_id` int(11) DEFAULT NULL, `rss_guid` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`), KEY `channel_id` (`channel_id`), KEY `user_id` (`user_id`), KEY `fk_thread` (`thread_id`), KEY `idx_rss_guid` (`rss_guid`), CONSTRAINT `fk_thread` FOREIGN KEY (`thread_id`) REFERENCES `forum_threads` (`id`) ON DELETE CASCADE, CONSTRAINT `messages_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE, CONSTRAINT `messages_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `roles` -- DROP TABLE IF EXISTS `roles`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `roles` ( `id` int(11) NOT NULL AUTO_INCREMENT, `server_id` int(11) NOT NULL, `name` varchar(50) NOT NULL, `color` varchar(7) DEFAULT '#99aab5', `permissions` int(11) DEFAULT 0, `position` int(11) DEFAULT 0, `icon_url` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`), KEY `server_id` (`server_id`), CONSTRAINT `roles_ibfk_1` FOREIGN KEY (`server_id`) REFERENCES `servers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `rss_processed_items` -- DROP TABLE IF EXISTS `rss_processed_items`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `rss_processed_items` ( `id` int(11) NOT NULL AUTO_INCREMENT, `channel_id` int(11) NOT NULL, `rss_guid` varchar(255) NOT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), UNIQUE KEY `idx_channel_guid` (`channel_id`,`rss_guid`), CONSTRAINT `rss_processed_items_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `rule_acceptances` -- DROP TABLE IF EXISTS `rule_acceptances`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `rule_acceptances` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` int(11) NOT NULL, `channel_id` int(11) NOT NULL, `accepted_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), UNIQUE KEY `user_channel` (`user_id`,`channel_id`), KEY `channel_id` (`channel_id`), CONSTRAINT `rule_acceptances_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE, CONSTRAINT `rule_acceptances_ibfk_2` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `server_members` -- DROP TABLE IF EXISTS `server_members`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `server_members` ( `server_id` int(11) NOT NULL, `user_id` int(11) NOT NULL, `joined_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`server_id`,`user_id`), KEY `user_id` (`user_id`), CONSTRAINT `server_members_ibfk_1` FOREIGN KEY (`server_id`) REFERENCES `servers` (`id`) ON DELETE CASCADE, CONSTRAINT `server_members_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `servers` -- DROP TABLE IF EXISTS `servers`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `servers` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(100) NOT NULL, `owner_id` int(11) NOT NULL, `icon_url` varchar(255) DEFAULT NULL, `invite_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), `theme_color` varchar(20) DEFAULT NULL, `invite_code_expires_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `invite_code` (`invite_code`), UNIQUE KEY `invite_code_2` (`invite_code`), KEY `owner_id` (`owner_id`), CONSTRAINT `servers_ibfk_1` FOREIGN KEY (`owner_id`) REFERENCES `users` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `thread_tags` -- DROP TABLE IF EXISTS `thread_tags`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `thread_tags` ( `thread_id` int(11) NOT NULL, `tag_id` int(11) NOT NULL, PRIMARY KEY (`thread_id`,`tag_id`), KEY `tag_id` (`tag_id`), CONSTRAINT `thread_tags_ibfk_1` FOREIGN KEY (`thread_id`) REFERENCES `forum_threads` (`id`) ON DELETE CASCADE, CONSTRAINT `thread_tags_ibfk_2` FOREIGN KEY (`tag_id`) REFERENCES `forum_tags` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `user_roles` -- DROP TABLE IF EXISTS `user_roles`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `user_roles` ( `user_id` int(11) NOT NULL, `role_id` int(11) NOT NULL, PRIMARY KEY (`user_id`,`role_id`), KEY `role_id` (`role_id`), CONSTRAINT `user_roles_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE, CONSTRAINT `user_roles_ibfk_2` FOREIGN KEY (`role_id`) REFERENCES `roles` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `users` -- DROP TABLE IF EXISTS `users`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL, `display_name` varchar(50) DEFAULT NULL, `email` varchar(100) NOT NULL, `password_hash` varchar(255) NOT NULL, `avatar_url` varchar(255) DEFAULT NULL, `status` varchar(20) DEFAULT 'offline', `created_at` timestamp NULL DEFAULT current_timestamp(), `is_bot` tinyint(1) DEFAULT 0, `bot_token` varchar(64) DEFAULT NULL, `dnd_mode` tinyint(1) DEFAULT 0, `theme` varchar(20) DEFAULT 'dark', `sound_notifications` tinyint(1) DEFAULT 0, `is_admin` tinyint(1) DEFAULT 0, `voice_mode` enum('vox','ptt') DEFAULT 'vox', `voice_ptt_key` varchar(20) DEFAULT 'v', `voice_vox_threshold` float DEFAULT 0.1, `voice_echo_cancellation` tinyint(1) DEFAULT 1, `voice_noise_suppression` tinyint(1) DEFAULT 1, PRIMARY KEY (`id`), UNIQUE KEY `username` (`username`), UNIQUE KEY `email` (`email`), UNIQUE KEY `bot_token` (`bot_token`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `voice_sessions` -- DROP TABLE IF EXISTS `voice_sessions`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `voice_sessions` ( `user_id` int(11) NOT NULL, `channel_id` int(11) NOT NULL, `joined_at` timestamp NULL DEFAULT current_timestamp(), `last_seen` bigint(20) DEFAULT 0, `peer_id` varchar(16) NOT NULL, `name` varchar(50) DEFAULT NULL, `is_muted` tinyint(1) DEFAULT 0, `is_deafened` tinyint(1) DEFAULT 0, PRIMARY KEY (`user_id`), KEY `channel_id` (`channel_id`), CONSTRAINT `voice_sessions_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE, CONSTRAINT `voice_sessions_ibfk_2` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `voice_signals` -- DROP TABLE IF EXISTS `voice_signals`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `voice_signals` ( `id` int(11) NOT NULL AUTO_INCREMENT, `room_id` varchar(50) NOT NULL, `from_peer_id` varchar(16) NOT NULL, `to_peer_id` varchar(16) NOT NULL, `data` text NOT NULL, `created_at_ms` bigint(20) NOT NULL, PRIMARY KEY (`id`), KEY `to_peer_id` (`to_peer_id`), KEY `room_id` (`room_id`), KEY `created_at` (`created_at_ms`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `voice_whispers` -- DROP TABLE IF EXISTS `voice_whispers`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `voice_whispers` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` int(11) NOT NULL, `target_type` enum('user','channel') NOT NULL, `target_id` int(11) NOT NULL, `whisper_key` varchar(50) NOT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), UNIQUE KEY `user_id` (`user_id`,`whisper_key`), CONSTRAINT `voice_whispers_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `webhooks` -- DROP TABLE IF EXISTS `webhooks`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `webhooks` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(100) NOT NULL, `token` varchar(64) NOT NULL, `channel_id` int(11) NOT NULL, `created_at` timestamp NULL DEFAULT current_timestamp(), PRIMARY KEY (`id`), UNIQUE KEY `token` (`token`), KEY `channel_id` (`channel_id`), CONSTRAINT `webhooks_ibfk_1` FOREIGN KEY (`channel_id`) REFERENCES `channels` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; -- Seed initial data INSERT INTO `users` (id, username, display_name, email, password_hash, status, is_admin) VALUES (1, 'System', 'System Bot', 'system@local', '$2y$10$4DDos6MKhMCbsvw1Yquuj.o0NwWCRlbgy85QCmGIJV6GlL8QC4cWW', 'online', 1); INSERT INTO `servers` (id, name, owner_id, invite_code) VALUES (1, 'General Community', 1, 'GEN-123'), (2, 'Flatlogic Devs', 1, 'DEV-456'); INSERT INTO `server_members` (server_id, user_id) VALUES (1, 1), (2, 1); INSERT INTO `channels` (id, server_id, name, type) VALUES (1, 1, 'general', 'chat'), (2, 1, 'random', 'chat'), (3, 1, 'Voice General', 'voice'), (4, 2, 'announcements', 'chat'), (5, 2, 'coding-help', 'chat'); -- Dump completed on 2026-02-19 16:49:04