使用.net 操作 微信公众平台 —— 接收用户操作 —— 接收用户发送的消息

目录

  1. 使用.net 操作 微信公众平台 —— 接入

  2. 使用.net 操作 微信公众平台 —— 生成微信菜单

  3. 使用.net 操作 微信公众平台 —— 接收并回复用户消息

    3.1 使用.net 操作 微信公众平台 —— 接收用户操作 —— 详细解析

        3.1.1 使用.net 操作 微信公众平台 —— 接收用户操作 —— 关注/取消关注 公众号

        3.1.2 使用.net 操作 微信公众平台 —— 接收用户操作 —— 接收用户发送的消息

    3.2 使用.net 操作 微信公众平台 —— 回复用户消息

        3.2.1 使用.net 操作 微信公众平台 —— 回复用户消息 —— 回复文本消息

        3.2.2 使用.net 操作 微信公众平台 —— 回复用户消息 —— 回复图片消息

        3.2.3 使用.net 操作 微信公众平台 —— 回复用户消息 —— 回复图文消息​​​​​​​

  4. 使用.net 操作 微信公众平台 —— 第三方登录​​​​​​​


文本消息

1. 接收到的xml

<xml>
  <ToUserName><![CDATA[gh_8f9d464d2……]]></ToUserName>
  <FromUserName><![CDATA[ouHTz1LfufLC5Idj5nUWh4CD8……]]></FromUserName>
  <CreateTime>1539928628</CreateTime>
  <MsgType><![CDATA[text]]></MsgType>
  <Content><![CDATA[你好]]></Content>
  <MsgId>6613943095868565010</MsgId>
</xml>
参数解释
ToUserName开发者微信号
FromUserName发送方帐号(操作者的openId)
CreateTime消息创建时间 (整型)
MsgType类型(text:文本)
Content文本内容
MsgId消息id,64位整型(由系统生成)

2. 代码

/// <summary>
/// 消息类型适配器
/// </summary>
/// <param name=""></param>
private void ResponseMsg(ExmlMsg xmlMsg)
{
    string messageType = xmlMsg.MsgType;//获取收到的消息类型。文本(text),图片(image),语音等。

    try
    {
        switch (messageType)
        {
            case "text":
                // 文本消息操作
                break;
        }
    }
    catch (Exception)
    {
    }
}

图片消息

1. 接收到的xml

<xml>
  <ToUserName><![CDATA[gh_8f9d464d2……]]></ToUserName>
  <FromUserName><![CDATA[ouHTz1LfufLC5Idj5nUWh4CD8……]]></FromUserName>
  <CreateTime>1540017837</CreateTime>
  <MsgType><![CDATA[image]]></MsgType>
  <PicUrl><![CDATA[http://mmbiz.qpic.cn/mmbiz_jpg/OcALibQAbwk3icOSkejAWbd86ROnQr3lZYlaNcM5LtDDlKWuQA7aJF8Sc196dkBKOUkUQvyibAhTeyiaVibRm4icpASQ/0]]></PicUrl>
  <MsgId>6614326245606103085</MsgId>
  <MediaId><![CDATA[6rPAfCAP05X72lbBAzVYRxsLXeWie8aFyE2Whh1Dw2TiJJNfc2lp6ywHLL5t8Rhs]]></MediaId>
</xml>
参数解释
ToUserName开发者微信号
FromUserName发送方帐号(操作者的openId)
CreateTime消息创建时间 (整型)
MsgType类型(text:图片)
PicUrl图片链接地址(由系统生成)
MsgId消息id,64位整型(由系统生成)
MediaId图片消息媒体id,可以调用多媒体文件下载接口拉取数据

2. 代码

/// <summary>
/// 消息类型适配器
/// </summary>
/// <param name=""></param>
private void ResponseMsg(ExmlMsg xmlMsg)
{
    string messageType = xmlMsg.MsgType;//获取收到的消息类型。文本(text),图片(image),语音等。

    try
    {
        switch (messageType)
        {
            case "image":
                // 图片消息操作
                break;
        }
    }
    catch (Exception)
    {
    }
}

语音消息

1. 接收到的xml

<xml>
  <ToUserName><![CDATA[gh_8f9d464d2……]]></ToUserName>
  <FromUserName><![CDATA[ouHTz1LfufLC5Idj5nUWh4CD8……]]></FromUserName>
  <CreateTime>1540018040</CreateTime>
  <MsgType><![CDATA[voice]]></MsgType>
  <MediaId><![CDATA[cm_O7Fqzvkp0ojY2LTf-fkCxj6GkJ5wUsL_xJN1J24ehKJcFvUtqcHd8VYQw-RgQ]]></MediaId>
  <Format><![CDATA[amr]]></Format>
  <MsgId>6614327117484464220</MsgId>
  <Recognition><![CDATA[]]></Recognition>
</xml>
参数解释
ToUserName开发者微信号
FromUserName发送方帐号(操作者的openId)
CreateTime消息创建时间 (整型)
MsgType类型(voice:语音)
MediaId图片消息媒体id,可以调用多媒体文件下载接口拉取数据
Format语音格式,如amr,speex等
MsgId消息id,64位整型(由系统生成)
Recognition

语音识别结果,UTF8编码(该字段需要 开通语音识别 才会有)

2. 代码

/// <summary>
/// 消息类型适配器
/// </summary>
/// <param name=""></param>
private void ResponseMsg(ExmlMsg xmlMsg)
{
    string messageType = xmlMsg.MsgType;//获取收到的消息类型。文本(text),图片(image),语音等。

    try
    {
        switch (messageType)
        {
            case "voice":
                // 语音消息操作
                break;
        }
    }
    catch (Exception)
    {
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值