mirror of
https://github.com/w7corp/easywechat.git
synced 2025-01-22 19:52:10 +00:00
Created 消息的使用 (markdown)
parent
07418c08be
commit
eca5266532
53
消息的使用.md
Normal file
53
消息的使用.md
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
我把微信的API里的所有“消息”都按类型抽象出来了,也就是说,你不用区分它是回复消息还是主动推送消息,免去了你去手动拼装微信那帮SB那么恶心的XML以及乱七八糟命名不统一的JSON了,我帮忙你承受这份苦。
|
||||||
|
|
||||||
|
### 消息的类型及属性
|
||||||
|
|
||||||
|
| 消息类型 | 类型名称 | 属性 | 除属性自身外提供的方法 |
|
||||||
|
|----------|----------|----------------------------------------------------------------------------------|-------------------------------------------|
|
||||||
|
| 文本 | `text` | `content` 内容 | |
|
||||||
|
| 图片 | `image` | `media_id` 媒体资源id | `media($path)` |
|
||||||
|
| 声音 | `voice` | `media_id` 媒体资源id | `media($path)` |
|
||||||
|
| 音乐 | `music` | `title` 标题 <br>`description` 描述 <br>`url` 音乐URL <br>`hq_url` 高清URL <br>`thumb_media_id` 封面资源id | `thumb($path)` |
|
||||||
|
| 视频 | `video` | `title` 标题 <br>`description` 描述 <br>`media_id` 媒体资源id <br>`thumb_media_id` 封面资源id | `media($path)` <br>`thumb($path)` |
|
||||||
|
| 位置 | `location` | `lat` 地理位置纬度 <br>`lon` 地理位置经度 <br>`scale` 地图缩放大小 <br>`label` 地理位置信息 | |
|
||||||
|
| 链接 | `link` | `title` 标题 <br>`description` 描述<br>url 链接URL | |
|
||||||
|
|
||||||
|
### 创建消息
|
||||||
|
|
||||||
|
**请注意:消息类的命名空间为 `Overtrue\Wechat\Services\Message`**
|
||||||
|
|
||||||
|
```php
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Overtrue\Wechat\Wechat;
|
||||||
|
use Overtrue\Wechat\Services\Message;
|
||||||
|
|
||||||
|
$options = array(...);
|
||||||
|
|
||||||
|
$wechat = Wechat::make($options);
|
||||||
|
|
||||||
|
$wechat->on('event', 'subscribe', function($event){
|
||||||
|
return Message::make('text')->content('您好!欢迎关注overtrue');
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
这里有一点需要注意,当属性带下划线的时候,方法名是支持两种的:`media_id()` 或者 `mediaId()` 都一样。
|
||||||
|
|
||||||
|
### 上传媒体文件
|
||||||
|
|
||||||
|
|
||||||
|
```php
|
||||||
|
$message = Message::make('image')->media('D:/test/demo.jpg');
|
||||||
|
```
|
||||||
|
|
||||||
|
媒体文件你不用上传,也就是说media_id是我来维护,你直接传本地文件就好了。
|
||||||
|
方法`media($file)`会上传文件然后赋值到`media_id`属性。如果想要获取上传后的media_id:
|
||||||
|
|
||||||
|
```php
|
||||||
|
$mediaId = $message->media_id;
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 这里有两个方法用于设置媒体文件:
|
||||||
|
|
||||||
|
- `media($file)` 对应设置 `media_id`
|
||||||
|
- `thumb($file)` 对应设置 `thumb_media_id`
|
Loading…
Reference in New Issue
Block a user