Path: blob/master/src/applications/notification/client/PhabricatorNotificationClient.php
12256 views
<?php12final class PhabricatorNotificationClient extends Phobject {34public static function tryAnyConnection() {5$servers = PhabricatorNotificationServerRef::getEnabledAdminServers();67if (!$servers) {8return;9}1011foreach ($servers as $server) {12$server->loadServerStatus();13return;14}1516return;17}1819public static function tryToPostMessage(array $data) {20$unique_id = Filesystem::readRandomCharacters(32);21$data = $data + array(22'uniqueID' => $unique_id,23);2425$servers = PhabricatorNotificationServerRef::getEnabledAdminServers();2627shuffle($servers);2829foreach ($servers as $server) {30try {31$server->postMessage($data);32return;33} catch (Exception $ex) {34// Just ignore any issues here.35}36}37}3839public static function isEnabled() {40return (bool)PhabricatorNotificationServerRef::getEnabledAdminServers();41}4243}444546