Example #1
0
def parse_ros_dic(ros_dic, name=False):
    """
    parse roster dictionary(collection.OrderedDict) to name_list or jid_list due to param:name
    :param ros_dic:
    :param name:
    :return:
    """
    jid_list = list()
    name_list = list()
    if ros_dic.get('roster', None):
        roster_item = ros_dic['roster']['rosterItem']
        if isinstance(roster_item, list):
            for item in roster_item:
                jid_list.append(item['jid'])
        else:
            jid_list.append(roster_item['jid'])
    if not name:
        return jid_list
    else:
        for jid in jid_list:
            name_list.append(JidMgr.gen_user_name(jid))
        return name_list