Add support for message.notification.image in FCM v1 push

This commit is contained in:
Kijin Sung 2024-04-24 15:54:14 +09:00
parent 296f37f5f5
commit 1bdb414291
2 changed files with 29 additions and 0 deletions

View file

@ -16,6 +16,7 @@ class Push
protected $topics = [];
protected $subject = '';
protected $content = '';
protected $image = '';
protected $metadata = [];
protected $data = [];
protected $errors = [];
@ -221,6 +222,29 @@ class Push
return $this->content;
}
/**
* Set the image.
*
* @param string $url
* @return bool
*/
public function setImage(string $url): bool
{
$url = preg_replace('!^\./!', URL::getCurrentDomainURL(\RX_BASEURL), $url);
$this->image = $url;
return true;
}
/**
* Get the image.
*
* @return string
*/
public function getImage(): string
{
return $this->image;
}
/**
* Set an click-action to associate with this push notification.
*

View file

@ -91,6 +91,7 @@ class FCMv1 extends Base implements PushInterface
$payload = ['message' => []];
$title = $message->getSubject();
$body = $message->getContent();
$image = $message->getImage();
if ($title !== '')
{
$payload['message']['notification']['title'] = $title;
@ -99,6 +100,10 @@ class FCMv1 extends Base implements PushInterface
{
$payload['message']['notification']['body'] = $body;
}
if ($image !== '')
{
$payload['message']['notification']['image'] = $image;
}
$metadata = $message->getMetadata();
if (count($metadata))