def get_queued_tasks(cls): channels = ['cq-tasks'] cl = Channel('cq-tasks').channel_layer indexes = cl._receive_list_names(channels) if indexes is None: return [] index = random.choice(list(indexes.keys())) list_names = indexes[index] random.shuffle(list_names) conn = cl.connection(index) messages = conn.lrange(list_names[0], 0, -1) if not messages: return {} task_ids = set() results = conn.mget(messages) for content in results: if content is None: continue content = cl.deserialize(content) task_ids.add(content['task_id']) return task_ids