Separated listener by introducing create listener. Working State. Message loop prevention filters added to server
This commit is contained in:
+2
-33
@@ -9,6 +9,7 @@ from core.runtime.resolver import resolveItem
|
||||
from plugins.rmass.listeners import synapselistener
|
||||
from plugins.rmass.operations import rmassmessagepush
|
||||
from core.execution.operation import buildOperation
|
||||
from core.server.createlistener import buildListener
|
||||
|
||||
port = int(os.environ.get("SERVER_PORT", 19001))
|
||||
|
||||
@@ -97,39 +98,7 @@ class RequestHandler(BaseHTTPRequestHandler):
|
||||
def do_PUT(self):
|
||||
print("PUT request received")
|
||||
|
||||
if self.path.startswith("/_matrix/app/v1/transactions/"):
|
||||
print("Matrix transaction received")
|
||||
|
||||
outputs = {}
|
||||
|
||||
content_length = int(self.headers["Content-Length"])
|
||||
data = self.rfile.read(content_length)
|
||||
request = json.loads(data)
|
||||
|
||||
requestjson = json.dumps(request, indent=4)
|
||||
#print (request)
|
||||
#print(requestjson)
|
||||
for event in request["events"]:
|
||||
if "state_key" in event:
|
||||
# Room state event
|
||||
continue
|
||||
|
||||
if event.get("type") == "m.room.message":
|
||||
# Process the message
|
||||
print (event)
|
||||
outputs = buildOutput(data, synapselistener, outputs)
|
||||
#print (event)
|
||||
|
||||
outputs = buildOperation(rmassmessagepush, outputs)
|
||||
|
||||
self.send_response(200)
|
||||
self.send_header("Content-Type", "application/json")
|
||||
self.send_header("Content-Length", "2")
|
||||
self.end_headers()
|
||||
self.wfile.write(b"{}")
|
||||
|
||||
else:
|
||||
self.send_error(404)
|
||||
outputs = buildListener(synapselistener, self)
|
||||
|
||||
def startServer():
|
||||
server = HTTPServer(("0.0.0.0", port), RequestHandler)
|
||||
|
||||
Reference in New Issue
Block a user