# 接收普通消息
[toc]
當普通微信用戶向公眾賬號發消息時,微信服務器將POST消息的XML數據包到開發者填寫的URL上。
## 消息類型
獲取用戶發送的消息類型,微信提供的消息類型請查看上面的微信官方文檔查看。
```php
WeChat::instance('message')->getMessageType();
```
## 獲取消息內容
獲取消息內容可以使用幾種方法
第一種方式是使用getMessage()獲取消息內容。
```php
$instance =WeChat::instance('message');
$message = $instance->getMessage();
$message->Content;
```
也可以直接使用實例屬性方式獲取。
```php
$instance =WeChat::instance('message');
$instance->Content;
```
## 文本消息
```php
//消息管理模塊
$instance =WeChat::instance('message');
//判斷是否是文本消息
if ($instance->isTextMsg())
{
//向用戶回復消息
$instance->text('xxxx收到你的消息了...:' . $instance->Content);
}
```
## 圖片消息
```php
//消息管理模塊
$instance = WeChat::instance('message');
//判斷是否是圖片消息
if ($instance->isImageMsg())
{
//向用戶回復消息
$instance->text("圖片url:{$instance->PicUrl},圖片MediaId: {$instance->MediaId}");
}
```
## 語音消息
```php
//消息管理模塊
$instance = Weixin::instance('message');
//判斷是否是語音消息
if ($instance->isVoiceMsg())
{
//向用戶回復消息
$instance->text("你發送的語音消息MediaId: {$instance->MediaId} ,語音格式: {$instance->Format}");
}
```
## 地理位置消息
第三方在收到地理位置上報信息之后,只需要回復success表明收到即可,是不允許回復消息給粉絲的
```php
//消息管理模塊
$instance = WeChat::instance('message');
//判斷是否是地理位置消息
if ($instance->isLocationMsg())
{
$instance->text("你發送的地理位置消息,緯度: {$instance->Location_X} ,經度: {$instance->Location_Y},縮放級別: {$instance->Scale},位置: {$instance->Label}");
}
```
## 鏈接消息
微信默認將鏈接做為文本使用,所以鏈接消息指微信收藏夾中的消息
```php
//消息管理模塊
$instance = WeChat::instance('message');
//判斷是否是鏈接消息
if ($instance->isLinkMsg())
{
//向用戶回復消息
$instance->text("你發送的鏈接消息,標題: {$instance->Title},接要: {$instance->Description} ,鏈接: {$instance->Url}");
}
```
## 視頻消息
視頻指用手機拍攝的視頻
```php
//消息管理模塊
$instance = WeChat::instance('message');
//判斷是否是視頻消息
if ($instance->isVideoMsg())
{
//獲取消息內容
$message = $instance->getMessage();
//向用戶回復消息
$instance->text("你發送的視頻消息 MediaId: {$message->MediaId} ,縮略圖的媒體id: {$message->ThumbMediaId}");
}
```
## 小視頻消息
用手機微信拍攝的小視頻
```php
//消息管理模塊
$instance = WeChat::instance('message');
//判斷是否是小視頻消息
if ($instance->isSmallVideoMsg())
{
//獲取消息內容
$message = $instance->getMessage();
//向用戶回復消息
$instance->text("你發送的小視頻消息 MediaId: {$message->MediaId} ,縮略圖的媒體id: {$message->ThumbMediaId}");
}
```