using System;
using System.Collections.Generic;
using System.Text;
namespace WeiXinKfSDK.Response
{
public class SyncMsgResponse : WxKfBaseResponse
{
///
/// 下次调用带上该值,则从当前的位置继续往后拉,以实现增量拉取。 强烈建议对该字段入库保存,每次请求读取带上,请求结束后更新。避免因意外丢,导致必须从头开始拉取,引起消息延迟。
///
public string next_cursor { get; set; }
///
/// 是否还有更多数据。0-否;1-是 不能通过判断msg_list是否空来停止拉取,可能会出现has_more为1,而msg_list为空的情况
///
public int has_more { get; set; }
///
/// 消息列表
///
public List msg_list { get; set; }
}
public class SyncMsgListDto
{
///
/// 消息ID
///
public string msgid { get; set; }
///
/// 客服帐号ID
///
public string open_kfid { get; set; }
///
/// 客户UserID
///
public string external_userid { get; set; }
///
/// 消息发送时间
///
public long send_time { get; set; }
///
/// 消息来源。3-客户回复的消息 4-系统推送的消息
///
public int origin { get; set; }
///
/// 对不同的msgtype,有相应的结构描述,下面进一步说明
///
public string msgtype { get; set; }
///
/// 事件消息
///
public EnterEventDto Event { get; set; }
///
/// 文本消息
///
public WxTextDto text { get; set; }
}
public class WxTextDto
{
public string content { get; set; }
public string menu_id { get; set; }
}
public class EnterEventDto
{
///
/// 事件类型。此处固定为:enter_session
///
public string event_type { get; set; }
///
/// 客服账号ID
///
public string open_kfid { get; set; }
///
/// 客户UserID
///
public string external_userid { get; set; }
///
/// 进入会话的场景值,获取客服帐号链接开发者自定义的场景值
///
public string scene { get; set; }
///
/// 进入会话的自定义参数,获取客服帐号链接返回的url,开发者按规范拼接的scene_param参数
///
public string scene_param { get; set; }
///
/// 如果满足发送欢迎语条件(条件为:用户在过去48小时里未收过欢迎语,且未向客服发过消息),会返回该字段。
///
public string welcome_code { get; set; }
///
/// 进入会话的视频号信息,从视频号进入会话才有值
///
public EnterEventDtoChannel wechat_channels { get; set; }
}
public class EnterEventDtoChannel
{
///
/// 视频号小店名称,视频号场景值为4、5时返回此项
///
public string nickname { get; set; }
///
/// 视频号场景值。1:视频号主页,2:视频号直播间商品列表页,3:视频号商品橱窗页,4:视频号小店商品详情页,5:视频号小店订单页
///
public int scene { get; set; }
}
}