# 被动回复用户消息
当用户发送消息给公众号时(或某些特定的用户操作引发的事件推送时),会产生一个POST请求,开发者可以在响应包(Get)中返回特定XML结构,来对该消息进行响应(现支持回复文本、图片、图文、语音、视频、音乐)。严格来说,发送被动响应消息其实并不是一种接口,而是对微信服务器发过来消息的一次回复。
[TOC]
## 回复文本消息
```
//消息管理模块
$instance = new Message;
//关注用户扫描二维码事件
if ($instance->isTextMsg())
{
$message = $instance->getMessage();
//向用户回复消息
return $instance->text("你发送的内容是".$message->Content);
}
```
## 回复图文消息
从2018年10月12日起,微信公众平台图文消息被限制为1条。
```
if ($instance->isTextMsg())
{
//向用户回复消息
$news=array(
array(
'title'=>'后盾人',
'discription'=>'后盾人 人人做后盾',
'picurl'=>'http://www.houdunwang.com/1.jpg',
'url'=>'点击图文消息跳转链接'
),
array(
'title'=>'后盾云',
'discription'=>'后盾云 快人一步',
'picurl'=>'http://www.houdunyun.cn/2.jpg',
'url'=>'点击图文消息跳转链接'
),
)
return $instance->news($news);
}
```
## 回复语音消息
```
if ($instance->isTextMsg())
{
//向用户回复消息
//$media_id 通过素材管理接口上传多媒体文件得到的media_id
return $instance->voice($media_id);
}
```
## 回复视频消息
```
//关注用户扫描二维码事件
if ($instance->isTextMsg())
{
//向用户回复消息
//$video=array('media_id'=>'素材id','title'=>'视频标题','description'=>'描述');
return $instance->video($video);
}
```
## 回复音乐消息
```
//关注用户扫描二维码事件
if ($instance->isTextMsg())
{
//向用户回复消息
//$video=array('title'=>'音乐标题','description'=>'描述','musicurl'=>'音乐链接','hqmusicurl'=>'高质量音乐链接,WIFI环境优先使用该链接播放音乐','thumbmediaid'=>'缩略图的媒体id,通过素材管理接口上传多媒体文件');
return $instance->video($video);
}
```