|
- from bridge.context import Context, ContextType
- from bridge.reply import Reply, ReplyType
- from common.log import logger
- from linkai import LinkAIClient, PushMsg
- from config import conf
-
- chat_client: LinkAIClient
-
- class ChatClient(LinkAIClient):
- def __init__(self, api_key, host, channel):
- super().__init__(api_key, host)
- self.channel = channel
- self.client_type = channel.channel_type
-
- def on_message(self, push_msg: PushMsg):
- session_id = push_msg.session_id
- msg_content = push_msg.msg_content
- logger.info(f"receive msg push, session_id={session_id}, msg_content={msg_content}")
- context = Context()
- context.type = ContextType.TEXT
- context["receiver"] = session_id
- context["isgroup"] = push_msg.is_group
- self.channel.send(Reply(ReplyType.TEXT, content=msg_content), context)
-
-
- def start(channel):
- global chat_client
- chat_client = ChatClient(api_key=conf().get("linkai_api_key"),
- host="link-ai.chat", channel=channel)
- chat_client.start()
|