kundencenter/migrations/027_discord_linking.sql

24 lines
1 KiB
MySQL
Raw Permalink Normal View History

-- Discord-OAuth: Kunden verknüpfen ihr Discord-Konto mit ihrem Kundencenter-Konto (für Ticket-Kanäle je Ticket).
ALTER TABLE discord_settings
ADD COLUMN client_id VARCHAR(32) NULL,
ADD COLUMN client_secret_enc TEXT NULL,
ADD COLUMN ticket_channel_id VARCHAR(32) NULL;
ALTER TABLE users
ADD COLUMN discord_user_id VARCHAR(32) NULL UNIQUE,
ADD COLUMN discord_username VARCHAR(100) NULL;
-- Kurzlebiger Zustand für den OAuth-Redirect (CSRF-Schutz), wird beim erfolgreichen Callback gelöscht.
CREATE TABLE discord_oauth_states (
state CHAR(43) PRIMARY KEY,
user_id CHAR(36) NOT NULL REFERENCES users(id),
created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- Ticket <-> Discord-Thread-Zuordnung.
CREATE TABLE ticket_discord_threads (
ticket_id CHAR(36) PRIMARY KEY REFERENCES tickets(id),
thread_id VARCHAR(32) NOT NULL UNIQUE,
created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;