2026-03-21 02:55:24 +08:00
|
|
|
<?php
|
2026-03-29 11:22:52 +08:00
|
|
|
// +----------------------------------------------------------------------
|
|
|
|
|
// | Author: ScottPan Team
|
|
|
|
|
// +----------------------------------------------------------------------
|
2026-03-21 02:55:24 +08:00
|
|
|
|
|
|
|
|
namespace crmeb\services\wechat\message;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
use think\helper\Str;
|
|
|
|
|
|
|
|
|
|
class Media extends Message
|
|
|
|
|
{
|
|
|
|
|
/**
|
|
|
|
|
* Properties.
|
|
|
|
|
*
|
|
|
|
|
* @var array
|
|
|
|
|
*/
|
|
|
|
|
protected array $properties = ['media_id'];
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @var array
|
|
|
|
|
*/
|
|
|
|
|
protected array $required = [
|
|
|
|
|
'media_id',
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* MaterialClient constructor.
|
|
|
|
|
*
|
|
|
|
|
* @param string $mediaId
|
|
|
|
|
* @param string|null $type
|
|
|
|
|
* @param array $attributes
|
|
|
|
|
*/
|
|
|
|
|
public function __construct(string $mediaId, string $type = null, array $attributes = [])
|
|
|
|
|
{
|
|
|
|
|
parent::__construct(array_merge(['media_id' => $mediaId], $attributes));
|
|
|
|
|
|
|
|
|
|
!empty($type) && $this->setType($type);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @return string
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
public function getMediaId(): string
|
|
|
|
|
{
|
|
|
|
|
$this->checkRequiredAttributes();
|
|
|
|
|
|
|
|
|
|
return $this->get('media_id');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function toXmlArray()
|
|
|
|
|
{
|
|
|
|
|
return [
|
|
|
|
|
Str::studly($this->getType()) => [
|
|
|
|
|
'MediaId' => $this->get('media_id'),
|
|
|
|
|
],
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|