Successfully built RMASS message push module, sender id resolver from DM room and included processing for 204 HTTP response with no content when handling incoming JSON

This commit is contained in:
Lyncoln
2026-10-17 00:41:52 -04:00
parent b3ac141315
commit d260d3681e
30 changed files with 211 additions and 42 deletions
+1 -1
View File
@@ -1 +1 @@
from . import actions, operations, inbound
from . import actions, operations, listeners
Binary file not shown.
+70
View File
@@ -0,0 +1,70 @@
name = "RMASS Message Push"
kind = "action"
showstatus = True
#recursive = {
# "source": "events",
# "reverse": False,
# "label": "outmessageitem",
#}
#Resolve sources its data from outputs. Ensure keys are in outputs
resolve = {
"get": {
"sender": ["room_name"],
"event_id": ["outmessageitem", "event_id"],
"message_body": ["outmessageitem", "content", "body"],
#"room_id": ["outmessageitem", "room_id"],
"timestamp": ["outmessageitem", "origin_server_ts"],
},
# "construct": {
# "matrixuser": [
# "@rmass_",
# {"resolved": "sender"},
# ":loxthelion.com",
# ],
# },
# "transform": {
# "matrixuser": {
# "@lyncoln:loxthelion.com": "@rmass_238302:loxthelion.com",
# },
# },
"deconstruct": {
"sender" : [
"#rmass_dm_",
":loxthelion.com",
],
},
}
keys = [
{
"keytitle": "message",
"keyvalue": {
"resolved": "message_body",
},
},
{
"keytitle": "profileId",
"keyvalue": {
"resolved": "sender",
},
},
]
method = "POST"
path = [
"https://rentmasseur.com/api/v1/mailbox",
]
headers = {
"Authorization": {
"output": "access_token",
"prefix": "Bearer ",
},
}
@@ -0,0 +1,54 @@
name = "Get Synapse Room Alias"
kind = "action"
showstatus = True
#recursive = {
# "source": "getmessage",
# "reverse": True,
# "label": "messageitem",
#}
resolve = {
"get": {
#"sender": ["messageitem", "senderId"],
#"event_id": ["messageitem", "id"],
#"message_body": ["events", 0, "content", "body"],
"room_id": ["outmessageitem", "room_id"],
#"timestamp": ["events", 0, "original_server_ts"],
},
# "construct": {
# "matrixuser": [
# "@rmass_",
# {"resolved": "sender"},
# ":loxthelion.com",
# ],
# },
# "transform": {
# "matrixuser": {
# "@lyncoln:loxthelion.com": "@rmass_238302:loxthelion.com",
# },
# },
}
method = "GET"
path = [
"https://loxthelion.com/_matrix/client/v3/rooms/",
{"resolved": "room_id"},
"/state/m.room.canonical_alias",
]
headers = {
"Authorization": {
"os": "ADMIN_TOKEN",
"prefix": "Bearer ",
},
"Content-Type": "application/json",
}
outputs = {
"room_name": "alias"
}
+1 -1
View File
@@ -1,4 +1,4 @@
import os
#import os
name = "Synapse Message Push"
+1 -1
View File
@@ -1 +1 @@
from . import receive
from . import synapselistener
@@ -0,0 +1,17 @@
from plugins.rmass.actions import rmassmessagepush, synapsegetroomalias, refresh_tokens
name = "RMASS Message Push"
kind = "operation"
actions = [
#Recursiveset is used to reference a nested operation inside an operation whose actions are listed in the recursiveset action list
"recursiveset",
]
recursiveset = {
"source": "events",
"outputlabel": "outmessageitem",
"actions": [synapsegetroomalias, refresh_tokens, rmassmessagepush],
}