Project
Function
Sample CLI
gway odoo read-chat
Full Code
def read_chat(*,
unread: bool = True,
username: str = "[ODOO_USERNAME]",
) -> list[dict]:
"""
Read chat messages from an Odoo user by username.
If unread is True, only return unread messages.
"""
user_info = get_user_info(username=username)
if not user_info: return []
user_id = user_info["id"]
domain = [["author_id", "=", user_id]]
if unread:
domain.append(["message_read", "=", False])
messages = execute_kw(
model="mail.message",
method="search_read",
domain=domain,
fields=["id", "body", "date", "author_id", "message_type"],
)
return messages