format
This commit is contained in:
parent
db2ffadb43
commit
98ef0dfcb1
5 changed files with 18 additions and 7 deletions
|
|
@ -408,6 +408,7 @@ async def create_diagonalley_market_stalls(
|
||||||
async def update_diagonalley_market(market_id):
|
async def update_diagonalley_market(market_id):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
async def create_chat_message(data: CreateChatMessage):
|
async def create_chat_message(data: CreateChatMessage):
|
||||||
print("DATA", data)
|
print("DATA", data)
|
||||||
await db.execute(
|
await db.execute(
|
||||||
|
|
@ -422,17 +423,20 @@ async def create_chat_message(data: CreateChatMessage):
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
async def get_diagonalley_latest_chat_messages(room_name: str):
|
async def get_diagonalley_latest_chat_messages(room_name: str):
|
||||||
rows = await db.fetchall(
|
rows = await db.fetchall(
|
||||||
"SELECT * FROM diagonalley.messages WHERE id_conversation = ? ORDER BY timestamp DESC LIMIT 20", (room_name,)
|
"SELECT * FROM diagonalley.messages WHERE id_conversation = ? ORDER BY timestamp DESC LIMIT 20",
|
||||||
|
(room_name,),
|
||||||
)
|
)
|
||||||
|
|
||||||
return [ChatMessage(**row) for row in rows]
|
return [ChatMessage(**row) for row in rows]
|
||||||
|
|
||||||
|
|
||||||
async def get_diagonalley_chat_messages(room_name: str):
|
async def get_diagonalley_chat_messages(room_name: str):
|
||||||
rows = await db.fetchall(
|
rows = await db.fetchall(
|
||||||
"SELECT * FROM diagonalley.messages WHERE id_conversation = ? ORDER BY timestamp DESC", (room_name,)
|
"SELECT * FROM diagonalley.messages WHERE id_conversation = ? ORDER BY timestamp DESC",
|
||||||
|
(room_name,),
|
||||||
)
|
)
|
||||||
|
|
||||||
return [ChatMessage(**row) for row in rows]
|
return [ChatMessage(**row) for row in rows]
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -114,6 +114,7 @@ async def m001_initial(db):
|
||||||
"""
|
"""
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
async def m002_add_chat_messages(db):
|
async def m002_add_chat_messages(db):
|
||||||
"""
|
"""
|
||||||
Initial chat messages table.
|
Initial chat messages table.
|
||||||
|
|
@ -135,5 +136,9 @@ async def m002_add_chat_messages(db):
|
||||||
"""
|
"""
|
||||||
Create indexes for message fetching
|
Create indexes for message fetching
|
||||||
"""
|
"""
|
||||||
await db.execute("CREATE INDEX idx_messages_timestamp ON diagonalley.messages (timestamp DESC)")
|
await db.execute(
|
||||||
await db.execute("CREATE INDEX idx_messages_conversations ON diagonalley.messages (id_conversation)")
|
"CREATE INDEX idx_messages_timestamp ON diagonalley.messages (timestamp DESC)"
|
||||||
|
)
|
||||||
|
await db.execute(
|
||||||
|
"CREATE INDEX idx_messages_conversations ON diagonalley.messages (id_conversation)"
|
||||||
|
)
|
||||||
|
|
|
||||||
|
|
@ -116,6 +116,7 @@ class ChatMessage(BaseModel):
|
||||||
id_conversation: str
|
id_conversation: str
|
||||||
timestamp: int
|
timestamp: int
|
||||||
|
|
||||||
|
|
||||||
class CreateChatMessage(BaseModel):
|
class CreateChatMessage(BaseModel):
|
||||||
msg: str = Query(..., min_length=1)
|
msg: str = Query(..., min_length=1)
|
||||||
pubkey: str = Query(...)
|
pubkey: str = Query(...)
|
||||||
|
|
|
||||||
|
|
@ -138,7 +138,7 @@ async def websocket_endpoint(
|
||||||
if websocket not in room_members:
|
if websocket not in room_members:
|
||||||
print("Sender not in room member: Reconnecting...")
|
print("Sender not in room member: Reconnecting...")
|
||||||
await notifier.connect(websocket, room_name)
|
await notifier.connect(websocket, room_name)
|
||||||
|
|
||||||
await notifier._notify(data, room_name)
|
await notifier._notify(data, room_name)
|
||||||
|
|
||||||
except WebSocketDisconnect:
|
except WebSocketDisconnect:
|
||||||
|
|
|
||||||
|
|
@ -487,9 +487,10 @@ async def api_diagonalley_generate_keys():
|
||||||
|
|
||||||
## MESSAGES/CHAT
|
## MESSAGES/CHAT
|
||||||
|
|
||||||
|
|
||||||
@diagonalley_ext.get("/api/v1/chat/messages/{room_name}")
|
@diagonalley_ext.get("/api/v1/chat/messages/{room_name}")
|
||||||
async def api_get_latest_chat_msg(room_name: str, all_messages: bool = Query(False)):
|
async def api_get_latest_chat_msg(room_name: str, all_messages: bool = Query(False)):
|
||||||
if(all_messages):
|
if all_messages:
|
||||||
messages = await get_diagonalley_chat_messages(room_name)
|
messages = await get_diagonalley_chat_messages(room_name)
|
||||||
else:
|
else:
|
||||||
messages = await get_diagonalley_latest_chat_messages(room_name)
|
messages = await get_diagonalley_latest_chat_messages(room_name)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue