diff --git a/src/infrastructure/daemon/bot/adapter/PhabricatorCampfireProtocolAdapter.php b/src/infrastructure/daemon/bot/adapter/PhabricatorCampfireProtocolAdapter.php index 74b280feff..b2e88e2c63 100644 --- a/src/infrastructure/daemon/bot/adapter/PhabricatorCampfireProtocolAdapter.php +++ b/src/infrastructure/daemon/bot/adapter/PhabricatorCampfireProtocolAdapter.php @@ -129,11 +129,23 @@ extends PhabricatorBaseProtocolAdapter { public function writeMessage(PhabricatorBotMessage $message) { switch ($message->getCommand()) { - case 'MESSAGE': - $this->speak( - $message->getBody(), - $message->getTarget()); - break; + case 'MESSAGE': + $this->speak( + $message->getBody(), + $message->getTarget()); + break; + case 'SOUND': + $this->speak( + $message->getBody(), + $message->getTarget(), + 'SoundMessage'); + break; + case 'PASTE': + $this->speak( + $message->getBody(), + $message->getTarget(), + 'PasteMessage'); + break; } } @@ -147,12 +159,12 @@ extends PhabricatorBaseProtocolAdapter { unset($this->inRooms[$room_id]); } - private function speak($message, $room_id) { + private function speak($message, $room_id, $type='TextMessage') { $this->performPost( "/room/{$room_id}/speak.json", array( 'message' => array( - 'type' => 'TextMessage', + 'type' => $type, 'body' => $message))); }