/** * @param array $item * @param ChannelContext $context */ protected function generateResponse(array $item, ChannelContext $context) { $duration = new \DateInterval($item['contentDetails']['duration']); if (preg_match(self::$anyUrlPattern, $item['snippet']['title'])) { $context->getLogger()->notice("Blocked possible YouTube loop."); return; } $replace = array('%title' => $item['snippet']['title'], '%views' => $this->formatBigNumber($item['statistics']['viewCount']), '%duration' => TimeDuration::format($duration), '%likes' => number_format($item['statistics']['likeCount'], 0, '.', ','), '%dislikes' => number_format($item['statistics']['dislikeCount'], 0, '.', ',')); $response = "01,00You00,04Tube %title (%duration), %views views," . " 03▲ %likes 04▼ %dislikes"; $context->send(strtr($response, $replace)); }