Add message
(
self,
messages: list[dict[str, Any]],
user_id: str,
conversation_id: str,
info: dict[str, Any] | None = None,
source: str | None = None,
app_id: str | None = None,
agent_id: str | None = None,
async_mode: bool = True,
tags: list[str] | None = None,
allow_public: bool = False,
allow_knowledgebase_ids: list[str] | None = None,
)
| 100 | raise |
| 101 | |
| 102 | def add_message( |
| 103 | self, |
| 104 | messages: list[dict[str, Any]], |
| 105 | user_id: str, |
| 106 | conversation_id: str, |
| 107 | info: dict[str, Any] | None = None, |
| 108 | source: str | None = None, |
| 109 | app_id: str | None = None, |
| 110 | agent_id: str | None = None, |
| 111 | async_mode: bool = True, |
| 112 | tags: list[str] | None = None, |
| 113 | allow_public: bool = False, |
| 114 | allow_knowledgebase_ids: list[str] | None = None, |
| 115 | ) -> MemOSAddResponse | None: |
| 116 | """Add message""" |
| 117 | # Validate required parameters |
| 118 | self._validate_required_params( |
| 119 | messages=messages, user_id=user_id, conversation_id=conversation_id |
| 120 | ) |
| 121 | |
| 122 | url = f"{self.base_url}/add/message" |
| 123 | payload = { |
| 124 | "messages": messages, |
| 125 | "user_id": user_id, |
| 126 | "conversation_id": conversation_id, |
| 127 | "info": info, |
| 128 | "source": source, |
| 129 | "app_id": app_id, |
| 130 | "agent_id": agent_id, |
| 131 | "allow_public": allow_public, |
| 132 | "allow_knowledgebase_ids": allow_knowledgebase_ids, |
| 133 | "tags": tags, |
| 134 | "asyncMode": async_mode, |
| 135 | } |
| 136 | for retry in range(MAX_RETRY_COUNT): |
| 137 | try: |
| 138 | response = requests.post( |
| 139 | url, data=json.dumps(payload), headers=self.headers, timeout=30 |
| 140 | ) |
| 141 | response.raise_for_status() |
| 142 | response_data = response.json() |
| 143 | |
| 144 | return MemOSAddResponse(**response_data) |
| 145 | except Exception as e: |
| 146 | logger.error(f"Failed to add message (retry {retry + 1}/3): {e}") |
| 147 | if retry == MAX_RETRY_COUNT - 1: |
| 148 | raise |
| 149 | |
| 150 | def search_memory( |
| 151 | self, |
nothing calls this directly
no test coverage detected