diff --git a/README.md b/README.md
index b2086ac..c500fa2 100644
--- a/README.md
+++ b/README.md
@@ -58,13 +58,71 @@
 
    ```
 
+## 同时监听多个直播间
+
+```python
+import asyncio
+from blive import BLiver, Events, BLiverCtx
+from blive.msg import DanMuMsg
+
+
+# 定义弹幕事件handler
+async def listen(ctx: BLiverCtx):
+   danmu = DanMuMsg(ctx.body)
+   print(
+      f'\n{danmu.sender.name} ({danmu.sender.medal.medal_name}:{danmu.sender.medal.medal_level}): "{danmu.content}"\n'
+   )
+
+
+async def main():
+   # 两个直播间
+   ke = BLiver(605)
+   azi = BLiver(510)
+
+   # 注册handler
+   ke.register_handler(Events.DANMU_MSG, listen)
+   azi.register_handler(Events.DANMU_MSG, listen)
+
+   # 以异步task的形式运行
+   task1 = ke.run_as_task()
+   task2 = azi.run_as_task()
+
+   # await 两个任务
+   await asyncio.gather(*[task1, task2])
+
+
+if __name__ == "__main__":
+   loop = asyncio.get_event_loop()
+   loop.run_until_complete(main()) 
+```
+
+## 作为协议解析工具在其他地方使用(伪代码)
+
+```python
+from blive.core import BWS_MsgPackage
+
+packman = BWS_MsgPackage() # 实例化一个消息包处理器
+
+while True:
+   data = ws.receive() # 当收到消息时
+   msg = packman.unpack(data) # 使用packman解析消息,返回一个形如 [(header,body), (header,body), ... ] 数组
+   # 如果你想发送弹幕之类的消息,可以自行构建消息数据并使用packman.pack方法打包消息
+   print(msg)
+```
+
 ## 项目简介
 
 - blive 文件夹为框架代码
-- app.py 为一个简单示例
+
+  - core.py 为B站ws直播聊天室协议包处理的核心代码
+
+  - framework.py 为框架代码
+
+  - msg.py 为消息操作类代码
+
+- app.py , multi_room.py 为2个简单示例,分别是以框架运行和同时监听多个直播间的实现
 
 ## TODO
 
-- 打包发布
-- 更多的消息操作类
-- 尝试加入中间件架构
+- 更多的消息操作类(欢迎各位提pr)
+- 尝试加入中间件架构(目前感觉需求不大)
diff --git a/blive/framework.py b/blive/framework.py
index 908d1ec..08e40a1 100644
--- a/blive/framework.py
+++ b/blive/framework.py
@@ -74,8 +74,9 @@ class Processor:
 
 
 class BLiver:
-    def __init__(self, roomid, logger=None, log_level="INFO"):
+    def __init__(self, roomid, uid=0, logger=None, log_level="INFO"):
         self.roomid = roomid
+        self.uid = uid
         self.real_roomid, self.uname = get_blive_room_info(roomid)
         if not logger:
             self.logger = loguru.logger
@@ -175,7 +176,8 @@ class BLiver:
                 # 发送认证
                 await ws.send_bytes(
                     self.packman.pack(
-                        certification(self.real_roomid, token), Operation.AUTH
+                        certification(self.real_roomid, token, uid=self.uid),
+                        Operation.AUTH,
                     )
                 )
                 return