import os name = "Synapse Assign Username" kind = "action" showstatus = True #astoken = os.environ["AS_TOKEN"] resolve = { "get": { "sender": ["messageheaders", "userCard", "id"], #"sender": ["pullmessages", 0, "userCard", "id"], "username": ["messageheaders", "userCard", "username"], #"username": ["pullmessages", 0, "userCard", "username"], }, "construct": { "matrixuser": [ "@rmass_", {"resolved": "sender"}, ":loxthelion.com", ], }, } keys = [ { "keytitle": "displayname", "keyvalue": { "resolved": "username", }, }, ] isrequest = True method = "PUT" path = [ "https://loxthelion.com/_matrix/client/v3/profile/", {"resolved": "matrixuser"}, "/displayname?user_id=", {"resolved": "matrixuser"}, ] headers = { "Authorization": { "os": "AS_TOKEN", "prefix": "Bearer ", }, "Content-Type": "application/json", } readrow = { "table": "user_profiles", "columns": [ {"rmass_user_id": "INTEGER PRIMARY KEY"}, {"rmass_username": "TEXT NOT NULL UNIQUE"}, {"rmass_dm_room": "TEXT NOT NULL UNIQUE"}, {"rmass_avatar_hash": "TEXT"}, ], "searchcolumn": "rmass_username", "rowsearchvalue": [ {"resolved": "username"}, ], "columnnumber": 1, } filters = [ { "filterkey": "username", "operator": "==", "filtervalue": {"outputs": "databasetarget"}, "print": "Username up to date. Continuing...", }, ]