|
|
|
|
@ -73,6 +73,12 @@ class Notification implements INotification { |
|
|
|
|
/** @var string */ |
|
|
|
|
protected $messageParsed; |
|
|
|
|
|
|
|
|
|
/** @var string */ |
|
|
|
|
protected $messageRich; |
|
|
|
|
|
|
|
|
|
/** @var array */ |
|
|
|
|
protected $messageRichParameters; |
|
|
|
|
|
|
|
|
|
/** @var string */ |
|
|
|
|
protected $link; |
|
|
|
|
|
|
|
|
|
@ -112,6 +118,8 @@ class Notification implements INotification { |
|
|
|
|
$this->message = ''; |
|
|
|
|
$this->messageParameters = []; |
|
|
|
|
$this->messageParsed = ''; |
|
|
|
|
$this->messageRich = ''; |
|
|
|
|
$this->messageRichParameters = []; |
|
|
|
|
$this->link = ''; |
|
|
|
|
$this->icon = ''; |
|
|
|
|
$this->actions = []; |
|
|
|
|
@ -373,6 +381,43 @@ class Notification implements INotification { |
|
|
|
|
return $this->messageParsed; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @param string $message |
|
|
|
|
* @param array $parameters |
|
|
|
|
* @return $this |
|
|
|
|
* @throws \InvalidArgumentException if the message or parameters are invalid |
|
|
|
|
* @since 9.2.0 |
|
|
|
|
*/ |
|
|
|
|
public function setRichMessage($message, array $parameters = []) { |
|
|
|
|
if (!is_string($message) || $message === '') { |
|
|
|
|
throw new \InvalidArgumentException('The given parsed message is invalid'); |
|
|
|
|
} |
|
|
|
|
$this->messageRich = $message; |
|
|
|
|
|
|
|
|
|
if (!is_array($parameters)) { |
|
|
|
|
throw new \InvalidArgumentException('The given message parameters are invalid'); |
|
|
|
|
} |
|
|
|
|
$this->messageRichParameters = $parameters; |
|
|
|
|
|
|
|
|
|
return $this; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @return string |
|
|
|
|
* @since 9.2.0 |
|
|
|
|
*/ |
|
|
|
|
public function getRichMessage() { |
|
|
|
|
return $this->messageRich; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @return array[] |
|
|
|
|
* @since 9.2.0 |
|
|
|
|
*/ |
|
|
|
|
public function getRichMessageParameters() { |
|
|
|
|
return $this->messageRichParameters; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @param string $link |
|
|
|
|
* @return $this |
|
|
|
|
@ -516,6 +561,14 @@ class Notification implements INotification { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($this->getRichMessage() !== '' || !empty($this->getRichMessageParameters())) { |
|
|
|
|
try { |
|
|
|
|
$this->richValidator->validate($this->getRichMessage(), $this->getRichMessageParameters()); |
|
|
|
|
} catch (InvalidObjectExeption $e) { |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return |
|
|
|
|
$this->isValidCommon() |
|
|
|
|
&& |
|
|
|
|
|