AppFlowy-Cloud/migrations/20231113074418_user_change.sql
Nathan.fooo 54ef875f5f
feat: notify user profile change (#163)
* feat: send user profile changes via ws

* test: add tests
2023-11-13 22:58:18 +08:00

25 lines
641 B
PL/PgSQL

-- Add migration script here
-- Drop the existing trigger if it exists
DROP TRIGGER IF EXISTS af_user_change_trigger ON af_user;
-- Create or replace the function
CREATE OR REPLACE FUNCTION notify_af_user_change() RETURNS TRIGGER AS $$
DECLARE
payload TEXT;
BEGIN
payload := json_build_object(
'payload', row_to_json(NEW),
'action_type', TG_OP
)::text;
PERFORM pg_notify('af_user_channel', payload);
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
-- Create the trigger
CREATE TRIGGER af_user_change_trigger
AFTER UPDATE ON af_user
FOR EACH ROW
EXECUTE FUNCTION notify_af_user_change();