MPNews.php 701 B

12345678910111213141516171819202122232425262728293031323334
  1. <?php
  2. namespace WeWork\Message;
  3. class MPNews implements ResponseMessageInterface
  4. {
  5. /**
  6. * @var MPArticle[]
  7. */
  8. private $articles;
  9. /**
  10. * @param MPArticle[] $articles
  11. */
  12. public function __construct(array $articles)
  13. {
  14. $this->articles = $articles;
  15. }
  16. /**
  17. * @return array
  18. */
  19. public function formatForResponse(): array
  20. {
  21. return [
  22. 'msgtype' => 'mpnews',
  23. 'mpnews' => [
  24. 'articles' => array_map(function (MPArticle $article) {
  25. return $article->formatForResponse();
  26. }, $this->articles)
  27. ]
  28. ];
  29. }
  30. }