ums.management.process
1# Agenten Plattform 2# 3# (c) 2024 Magnus Bender 4# Institute of Humanities-Centered Artificial Intelligence (CHAI) 5# Universitaet Hamburg 6# https://www.chai.uni-hamburg.de/~bender 7# 8# source code released under the terms of GNU Public License Version 3 9# https://www.gnu.org/licenses/gpl-3.0.txt 10 11from fastapi import BackgroundTasks 12 13from ums.management.db import DB 14 15from ums.utils import AgentMessage, AgentResponse 16 17class MessageProcessor(): 18 19 def __init__(self, db:DB): 20 self.db = db 21 22 def new_message(self, 23 sender:str, receiver:str, message:AgentMessage, 24 background_tasks: BackgroundTasks 25 ) -> AgentResponse: 26 27 try: 28 db_count = self.db.add_message(sender, receiver, message) 29 background_tasks.add_task(self._process_message, db_count) 30 31 return AgentResponse( 32 count=db_count, 33 msg="Added message to queue" 34 ) 35 except Exception as e: 36 return AgentResponse( 37 count=-1, 38 error=True, 39 error_msg=str(e) 40 ) 41 42 def _process_message(self, count:int): 43 # TODO !!! 44 self.db.set_processed(count=count, processed=True)
class
MessageProcessor:
18class MessageProcessor(): 19 20 def __init__(self, db:DB): 21 self.db = db 22 23 def new_message(self, 24 sender:str, receiver:str, message:AgentMessage, 25 background_tasks: BackgroundTasks 26 ) -> AgentResponse: 27 28 try: 29 db_count = self.db.add_message(sender, receiver, message) 30 background_tasks.add_task(self._process_message, db_count) 31 32 return AgentResponse( 33 count=db_count, 34 msg="Added message to queue" 35 ) 36 except Exception as e: 37 return AgentResponse( 38 count=-1, 39 error=True, 40 error_msg=str(e) 41 ) 42 43 def _process_message(self, count:int): 44 # TODO !!! 45 self.db.set_processed(count=count, processed=True)
def
new_message( self, sender: str, receiver: str, message: ums.utils.types.AgentMessage, background_tasks: fastapi.background.BackgroundTasks) -> ums.utils.types.AgentResponse:
23 def new_message(self, 24 sender:str, receiver:str, message:AgentMessage, 25 background_tasks: BackgroundTasks 26 ) -> AgentResponse: 27 28 try: 29 db_count = self.db.add_message(sender, receiver, message) 30 background_tasks.add_task(self._process_message, db_count) 31 32 return AgentResponse( 33 count=db_count, 34 msg="Added message to queue" 35 ) 36 except Exception as e: 37 return AgentResponse( 38 count=-1, 39 error=True, 40 error_msg=str(e) 41 )