Esempio n. 1
0
        /// <summary>
        /// 在线查询消息
        /// </summary>
        /// <param name="id">会话id,对方的account id或者群组tid</param>
        /// <param name="sType">会话类型</param>
        /// <param name="limit">本次查询的消息条数上限(最多100条)</param>
        /// <param name="sTimetag">起始时间点,单位:毫秒</param>
        /// <param name="eTimetag">结束时间点,单位:毫秒</param>
        /// <param name="endMsgId">结束查询的最后一条消息的server_msg_id(不包含在查询结果中) </param>
        /// <param name="reverse">true:反向查询(按时间正序起查,正序排列),false:按时间逆序起查,逆序排列(建议默认为false)</param>
        /// <param name="saveLocal">true: 将在线查询结果保存到本地,false: 不保存</param>
        /// <param name="action"></param>
        public static void QueryMsglogOnline(string id, NIMSessionType sType, int limit, long sTimetag, long eTimetag,
                                             long endMsgId, bool reverse, bool saveLocal, QueryMsglogResultDelegate action)
        {
            var ptr = NimUtility.DelegateConverter.ConvertToIntPtr(action);

            MsglogNativeMethods.nim_msglog_query_msg_online_async(id, sType, limit, sTimetag, eTimetag, endMsgId, reverse, saveLocal, null, QueryLogCompleted, ptr);
        }
Esempio n. 2
0
        /// <summary>
        ///     在线查询消息
        /// </summary>
        /// <param name="id">会话id,对方的account id或者群组tid</param>
        /// <param name="sType">会话类型</param>
        /// <param name="limit">本次查询的消息条数上限(最多100条)</param>
        /// <param name="sTimetag">起始时间点,单位:毫秒</param>
        /// <param name="eTimetag">结束时间点,单位:毫秒</param>
        /// <param name="endMsgId">结束查询的最后一条消息的server_msg_id(不包含在查询结果中) </param>
        /// <param name="reverse">true:反向查询(按时间正序起查,正序排列),false:按时间逆序起查,逆序排列(建议默认为false)</param>
        /// <param name="saveLocal">true: 将在线查询结果保存到本地,false: 不保存</param>
        /// <param name="autoDownloadAttach">查询结果回来后,是否需要sdk自动下载消息附件</param>
        /// <param name="action"></param>
        public static void QueryMsglogOnline(string id, NIMSessionType sType, int limit, long sTimetag, long eTimetag,
                                             long endMsgId, bool reverse, bool saveLocal, bool autoDownloadAttach, QueryMsglogResultDelegate action)
        {
            var ptr = DelegateConverter.ConvertToIntPtr(action);

            System.Collections.Generic.Dictionary <string, bool> dic = new System.Collections.Generic.Dictionary <string, bool>();
            dic[QueryMsglogParams.AutoDownloadAttachJsonKey] = autoDownloadAttach;
            var jsonExt = JsonParser.Serialize(dic);

            MsglogNativeMethods.nim_msglog_query_msg_online_async(id, sType, limit, sTimetag, eTimetag, endMsgId, reverse, saveLocal, jsonExt, QueryLogCompleted, ptr);
        }