def pushChatToObjectList(id,tid):
    '''推送私聊角色列表'''
    from app.chatServer.core.ChaterManager import ChaterManager
    from app.chatServer.core.ChaterLogManager import ChaterLogManager
    response=ChatToObjectListInfo1010_pb2.ChatToObjectListResponse()
    clog=ChaterLogManager().addChatLog(id) #获取聊天类
    listid=clog.getFriends()#获取角色私聊对象id列表
    if len(listid)<0:
        return
    player=ChaterManager().getChaterByCharacterId(id)
#    player=PlayersManager().getPlayerByID(id)
    if not player:
        #print "推送私聊角色列表时没有角色"+str(id)
        return 
    #print "角色私聊角色列表发送给"+player.baseInfo.getNickName()
    playerid=player.getDynamicId()
    for cid in listid:
        player1=ChaterManager().getChaterByCharacterId(cid)
        info=response.chatObjectInfo.add()
        info.chatObjectId=cid
        info.name=player1.getCharacterName()
        #print "私聊信息角色列表:"+player1.baseInfo.getNickName()
        info.level=str(player1.level)
        info.perfession=player1.getProfessionName()
        if player1.island:
                info.chatObjectPos=player1.scenename
        else:
            info.chatObjectPos=Lg().g(106)
        info.readFlag=ChaterLogManager().getFriendReaderState(id, cid)
    #print "------------------------------------------------------------------"
    msg = response.SerializeToString()
    pushApplyMessage(1010,msg,[playerid])
    def getLog(self, id, tid):
        """获取聊天记录
        @param id: int 当前角色id
        @param tid: int 私聊对象id
        """
        from app.chatServer.core.ChaterManager import ChaterManager

        clog = self.addChatLog(id)  # 获取或添加私聊类
        result = clog.getChat(tid)  # 获取私聊信息
        clog.delReaderList(tid)  # 在未读信息列表中删除此角色id相应数据
        clog.addFriends(tid)  # 添加私聊最近联系人
        clog.setReading(tid)  # 设置当前跟谁聊天

        data = {}
        players = ChaterManager().getChaterByCharacterId(tid)
        data["name"] = players.charactername
        data["level"] = str(players.level)
        data["perfession"] = players.getProfessionName()

        if not players.island:  # 如果角色不在线
            data["chatObjectPos"] = Lg().g(106)
        else:
            data["chatObjectPos"] = players.scenename
        data["result"] = result
        return data
    def getLog(self, id, tid):
        '''获取聊天记录
        @param id: int 当前角色id
        @param tid: int 私聊对象id
        '''
        from app.chatServer.core.ChaterManager import ChaterManager
        clog = self.addChatLog(id)  #获取或添加私聊类
        result = clog.getChat(tid)  #获取私聊信息
        clog.delReaderList(tid)  #在未读信息列表中删除此角色id相应数据
        clog.addFriends(tid)  #添加私聊最近联系人
        clog.setReading(tid)  #设置当前跟谁聊天

        data = {}
        players = ChaterManager().getChaterByCharacterId(tid)
        data['name'] = players.charactername
        data['level'] = str(players.level)
        data['perfession'] = players.getProfessionName()

        if not players.island:  #如果角色不在线
            data['chatObjectPos'] = Lg().g(106)
        else:
            data['chatObjectPos'] = players.scenename
        data['result'] = result
        return data