@@ -167,9 +167,10 @@ def filter_func(room: Room) -> bool:
167
167
payload = room .payload
168
168
if not payload :
169
169
return False
170
- if query == payload .id or (query .lower () in payload .topic .lower ()): # type: ignore
170
+ if query == payload .id or (query .lower () in payload .topic .lower ()): # type: ignore
171
171
return True
172
172
return False
173
+
173
174
func = filter_func
174
175
elif isinstance (query , RoomQueryFilter ):
175
176
def filter_func (room : Room ) -> bool :
@@ -179,9 +180,10 @@ def filter_func(room: Room) -> bool:
179
180
if not payload :
180
181
return False
181
182
182
- if query .id == payload .id or (query .topic .lower () in payload .topic .lower ()): # noqa
183
+ if query .id == payload .id or (query .topic .lower () in payload .topic .lower ()): # noqa
183
184
return True
184
185
return False
186
+
185
187
func = filter_func
186
188
elif isinstance (query , types .FunctionType ):
187
189
func = query
@@ -230,7 +232,7 @@ async def find_all(cls,
230
232
rooms : List [Room ] = [cls .load (room_id ) for room_id in room_ids ]
231
233
tasks : List [Task ] = [asyncio .create_task (room .ready ()) for room in rooms ]
232
234
await gather_with_concurrency (PARALLEL_TASK_NUM , tasks )
233
-
235
+
234
236
# 2. filter the rooms
235
237
if not query :
236
238
return rooms
@@ -290,6 +292,15 @@ def load(cls, room_id: str) -> Room:
290
292
cls ._pool [room_id ] = room
291
293
return room
292
294
295
+ @classmethod
296
+ def upload_cache (cls , room_id : str )-> None :
297
+ """
298
+ dynamic upload
299
+ clear the room_id of _pool and upload it use load
300
+ """
301
+ cls ._pool [room_id ] = None
302
+ cls .load (room_id )
303
+
293
304
def __str__ (self ) -> str :
294
305
"""
295
306
string format for room instance
@@ -349,7 +360,7 @@ async def ready(self, force_sync: bool = False, load_members: bool = False) -> N
349
360
350
361
async def say (self ,
351
362
some_thing : Union [str , Contact ,
352
- FileBox , MiniProgram , UrlLink ],
363
+ FileBox , MiniProgram , UrlLink ],
353
364
mention_ids : Optional [List [str ]] = None
354
365
) -> Union [None , Message ]:
355
366
"""
0 commit comments