Added readrow, saverow and filters to ensure deduplication
This commit is contained in:
@@ -6,14 +6,12 @@ kind = "action"
|
||||
|
||||
showstatus = True
|
||||
|
||||
#astoken = os.environ["AS_TOKEN"]
|
||||
|
||||
resolve = {
|
||||
"get": {
|
||||
"sender": ["messageheaders", "userCard", "id"],
|
||||
"avatar": ["uploadimage"],
|
||||
"username": ["messageheaders", "userCard", "username"],
|
||||
#"username": ["pullmessages", 0, "userCard", "username"],
|
||||
"avatar_hash": ["useravatar_hash"],
|
||||
},
|
||||
"construct": {
|
||||
"matrixuser": [
|
||||
@@ -50,3 +48,28 @@ headers = {
|
||||
"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_avatar_hash",
|
||||
"rowsearchvalue": [
|
||||
{"resolved": "avatar_hash"},
|
||||
{"resolved": "sender"},
|
||||
],
|
||||
"columnnumber": 3,
|
||||
}
|
||||
|
||||
filters = [
|
||||
{
|
||||
"filterkey": "avatar_hash",
|
||||
"operator": "==",
|
||||
"filtervalue": {"outputs": "databasetarget"},
|
||||
"print": "User avatar up to date. Continuing...",
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
@@ -33,6 +33,8 @@ keys = [
|
||||
},
|
||||
]
|
||||
|
||||
isrequest = True
|
||||
|
||||
method = "PUT"
|
||||
|
||||
path = [
|
||||
@@ -50,3 +52,26 @@ headers = {
|
||||
"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...",
|
||||
},
|
||||
]
|
||||
@@ -10,7 +10,6 @@ resolve = {
|
||||
"get": {
|
||||
"sender": ["messageheaders", "userCard", "id"],
|
||||
"location": ["profile", "location"],
|
||||
#"username": ["messageheaders", "username"],
|
||||
"username": ["messageheaders", "userCard", "username"],
|
||||
},
|
||||
"construct": {
|
||||
@@ -59,7 +58,10 @@ keys = [
|
||||
},
|
||||
{
|
||||
"keytitle": "invite",
|
||||
"keyvalue": ["@lyncoln:loxthelion.com"],
|
||||
"keyvalue": [
|
||||
"@lyncoln:loxthelion.com",
|
||||
#"@rmass_bridge:loxthelion.com",
|
||||
],
|
||||
},
|
||||
#{
|
||||
#"keytitle": "power_level_content_override",
|
||||
@@ -91,3 +93,44 @@ headers = {
|
||||
outputs = {
|
||||
"room_id": "room_id",
|
||||
}
|
||||
|
||||
|
||||
saverow = {
|
||||
"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"},
|
||||
],
|
||||
"rowitems": [
|
||||
{"resolved": "sender"},
|
||||
{"resolved": "username"},
|
||||
{"resolved": "matrixdm"},
|
||||
{"outputs" : "useravatar_hash"},
|
||||
],
|
||||
}
|
||||
|
||||
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_dm_room",
|
||||
"rowsearchvalue": [
|
||||
{"resolved": "matrixdm"},
|
||||
],
|
||||
"columnnumber": 2,
|
||||
}
|
||||
|
||||
filters = [
|
||||
{
|
||||
"filterkey": "matrixdm",
|
||||
"operator": "==",
|
||||
"filtervalue": {"outputs": "databasetarget"},
|
||||
"print": "DM Room already created. Continuing...",
|
||||
},
|
||||
]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#import os
|
||||
from . import synapsenotify
|
||||
|
||||
name = "Synapse Message Push"
|
||||
|
||||
@@ -34,6 +34,8 @@ resolve = {
|
||||
},
|
||||
}
|
||||
|
||||
isrequest = True
|
||||
|
||||
keys = [
|
||||
{
|
||||
"keytitle": "msgtype",
|
||||
@@ -85,4 +87,42 @@ headers = {
|
||||
"Content-Type": "application/json",
|
||||
}
|
||||
|
||||
outputs = {
|
||||
"event_id": "event_id"
|
||||
}
|
||||
|
||||
saverow = {
|
||||
"table": "message_mapping",
|
||||
"columns": [
|
||||
{"rmass_message_id": "INTEGER PRIMARY KEY"},
|
||||
{"matrix_event_id": "TEXT NOT NULL UNIQUE"},
|
||||
],
|
||||
|
||||
"rowitems": [
|
||||
{"resolved": "message_id"},
|
||||
{"outputs": "event_id"},
|
||||
],
|
||||
}
|
||||
|
||||
readrow = {
|
||||
"table": "message_mapping",
|
||||
"columns": [
|
||||
{"rmass_message_id": "INTEGER PRIMARY KEY"},
|
||||
{"matrix_event_id": "TEXT NOT NULL UNIQUE"},
|
||||
],
|
||||
"searchcolumn": "rmass_message_id",
|
||||
"rowsearchvalue": [
|
||||
{"resolved": "message_id"},
|
||||
],
|
||||
"columnnumber": 0,
|
||||
}
|
||||
|
||||
filters = [
|
||||
{
|
||||
"filterkey": "message_id",
|
||||
"operator": "==",
|
||||
"filtervalue": {"outputs": "databasetarget"},
|
||||
"print": "Message already forwarded. Continuing...",
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
@@ -9,9 +9,7 @@ showstatus = True
|
||||
resolve = {
|
||||
"get": {
|
||||
"sender": ["messageheaders", "userCard", "id"],
|
||||
#"sender": ["pullmessages", 0, "userCard", "id"],
|
||||
"username": ["messageheaders", "userCard", "username"],
|
||||
#"username": ["pullmessages", 0, "userCard", "username"],
|
||||
}
|
||||
}
|
||||
keys = [
|
||||
@@ -32,6 +30,8 @@ keys = [
|
||||
},
|
||||
]
|
||||
|
||||
isrequest = True
|
||||
|
||||
method = "POST"
|
||||
|
||||
path = "https://loxthelion.com/_matrix/client/v3/register"
|
||||
@@ -47,3 +47,27 @@ headers = {
|
||||
outputs = {
|
||||
"user_id": "user_id",
|
||||
}
|
||||
|
||||
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_user_id",
|
||||
"rowsearchvalue": [
|
||||
{"resolved": "sender"},
|
||||
],
|
||||
"columnnumber": 0,
|
||||
}
|
||||
|
||||
filters = [
|
||||
{
|
||||
"filterkey": "sender",
|
||||
"operator": "==",
|
||||
"filtervalue": {"outputs": "databasetarget"},
|
||||
"print": "User already registered. Continuing...",
|
||||
},
|
||||
]
|
||||
Reference in New Issue
Block a user