Skip to content
This repository was archived by the owner on Apr 5, 2020. It is now read-only.

Commit 6bea6eb

Browse files
committed
Extract method to send message to group chat
1 parent bfc5e26 commit 6bea6eb

File tree

1 file changed

+29
-16
lines changed

1 file changed

+29
-16
lines changed

Notification/Jabber.php

Lines changed: 29 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -62,19 +62,7 @@ public function notifyProject(array $project, $eventName, array $eventData)
6262
$room = $this->projectMetadataModel->get($project['id'], 'jabber_room');
6363

6464
if (! empty($room)) {
65-
$client = $this->getClient();
66-
67-
$channel = new Presence();
68-
$channel->setTo($room)->setNickname($this->configModel->get('jabber_nickname'));
69-
$client->send($channel);
70-
71-
$message = new Message();
72-
$message->setMessage($this->getMessage($project, $eventName, $eventData))
73-
->setTo($room)
74-
->setType(Message::TYPE_GROUPCHAT);
75-
76-
$client->send($message);
77-
$client->disconnect();
65+
$this->sendGroupMessage($project, $room, $eventName, $eventData);
7866
}
7967

8068
} catch (Exception $e) {
@@ -131,9 +119,9 @@ public function getMessage(array $project, $event_name, array $event_data)
131119
/**
132120
* Send XMPP message to someone
133121
*
134-
* @param $jid
135-
* @param $eventName
136-
* @param $eventData
122+
* @param string $jid
123+
* @param string $eventName
124+
* @param array $eventData
137125
*/
138126
public function sendDirectMessage($jid, $eventName, $eventData)
139127
{
@@ -147,4 +135,29 @@ public function sendDirectMessage($jid, $eventName, $eventData)
147135
$client->send($message);
148136
$client->disconnect();
149137
}
138+
139+
/**
140+
* Send XMPP GroupChat message
141+
*
142+
* @param array $project
143+
* @param string $room
144+
* @param string $eventName
145+
* @param array $eventData
146+
*/
147+
public function sendGroupMessage(array $project, $room, $eventName, array $eventData)
148+
{
149+
$client = $this->getClient();
150+
151+
$channel = new Presence();
152+
$channel->setTo($room)->setNickname($this->configModel->get('jabber_nickname'));
153+
$client->send($channel);
154+
155+
$message = new Message();
156+
$message->setMessage($this->getMessage($project, $eventName, $eventData))
157+
->setTo($room)
158+
->setType(Message::TYPE_GROUPCHAT);
159+
160+
$client->send($message);
161+
$client->disconnect();
162+
}
150163
}

0 commit comments

Comments
 (0)