臨時素材
上傳的臨時多媒體文件有格式和大小限制,如下:
- 圖片(
image
): 2M,支持JPG
格式 - 語音(
voice
):2M,播放長度不超過60s
,支持AMR\MP3
格式 - 視頻(
video
):10MB,支持MP4
格式 - 縮略圖(
thumb
):64KB,支持JPG
格式
上傳圖片
注意:微信圖片上傳服務(wù)有敏感檢測系統(tǒng),圖片內(nèi)容如果含有敏感內(nèi)容,如色情,商品推廣,虛假信息等,上傳可能失敗。
$officialAccount->media->uploadImage($path);
上傳聲音
$officialAccount->media->uploadVoice($path);
上傳視頻
$officialAccount->media->uploadVideo($path);
上傳縮略圖
用于視頻封面或者音樂封面。
$officialAccount->media->uploadThumb($path);
上傳群發(fā)視頻
上傳視頻獲取 media_id
用以創(chuàng)建群發(fā)消息用。
<?php
$uploadRet = $officialAccount->media->uploadVideo($path);
$officialAccount->media->createVideoForBroadcasting($uploadRet['media_id'], $title, $description);
運行結(jié)果:
{
"media_id": "rF4UdIMfYK3efUfyoddYRMU50zMiRmmt_l0kszupYh_SzrcW5Gaheq05p_lHuOTQ",
"title": "TITLE",
"description": "Description"
}
創(chuàng)建群發(fā)消息
使用 media_id
加標(biāo)題和描述,創(chuàng)建一條消息素材 用來發(fā)送給用戶。詳情參見:消息群發(fā)
$officialAccount->media->createVideoForBroadcasting($mediaId, $title, $description);
$officialAccount->media->createVideoForBroadcasting($mediaId, $title, $description);
運行結(jié)果:
{
"type": "video",
"media_id": "IhdaAQXuvJtGzwwc0abfXnzeezfO0NgPK6AQYShD8RQYMTtfzbLdBIQkQziv2XJc",
"created_at": 1398848981
}
獲取臨時素材內(nèi)容
比如圖片、語音等二進制流內(nèi)容,響應(yīng)為 EasyWeChat\Kernel\Http\StreamResponse
實例。
<?php
$stream = $officialAccount->media->get($mediaId);
if ($stream instanceof \EasySwoole\WeChat\Kernel\Psr\StreamResponse) {
// 以內(nèi)容 md5 為文件名存到本地
$stream->save('保存目錄');
// 自定義文件名,不需要帶后綴
$stream->saveAs('保存目錄', '文件名');
}
獲取 JSSDK 上傳的高清語音
<?php
$stream = $officialAccount->media->getJssdkMedia($mediaId);
$stream->saveAs('保存目錄', 'custom-name.speex');