This is an old revision of the document!
User Reg Notifications
- nginx.conf
location = /_matrix/client/r0/register { #limit_req zone=limitregister burst=5; client_max_body_size 100M; client_body_buffer_size 100M; proxy_pass http://127.0.0.1:8008; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-SSL 1; body_filter_by_lua_block { local proc = io.popen('/usr/local/bin/matrix_user_registered ' .. ngx.var.remote_addr,'w') proc:write(ngx.arg[1]) proc:close() } }
- /usr/local/bin/matrix_user_registered
#!/usr/bin/zsh AT='MDMA...' ROOM='!x1y2z3:example.com' IP=$1 SI=`/bin/cat` echo `date` $SI >> /tmp/newuserlog U=`echo $SI|jq -r .user_id` [ -z "$U" ] && exit 0 [ "null" = "$U" ] && exit 0 curl -X PUT "https://asra.gr/_matrix/client/r0/rooms/${ROOM}/send/m.room.message/"`uuid -m -F SIV`"?access_token=${AT}" -H "accept: application/json" -H "Content-Type: application/json" -d "{ \"body\": \"@room New user registered: ${U} from ${IP}\", \"msgtype\": \"m.text\"}" >> /tmp/reguser.txt 2>> /tmp/reguser.txt