• Модуль: imconnector
  • Путь к файлу: ~/bitrix/modules/imconnector/lib/provider/messageservice/output.php
  • Класс: BitrixImConnectorProviderMessageserviceOutput
  • Вызов: Output::getSenderInfo
public function getSenderInfo(): array
{
	static $senderInfo = [];
	if (
		$this->sender instanceof MessageServiceSenderBase
		&& empty($senderInfo)
	)
	{
		$default = MessageServiceSenderSmsManager::getDefaultSender();

		$senderInfo = [
			'id' => $this->sender->getId(),
			'isConfigurable' => $this->sender->isConfigurable(),
			'name' => $this->sender->getName(),
			'shortName' => $this->sender->getShortName(),
			'canUse' => $this->sender->canUse(),
			'isDemo' => $this->sender->isConfigurable() ? $this->sender->isDemo() : null,
			'isDefault' => ($default && $default->getId() === $this->sender->getId()),
			'manageUrl' => $this->sender->getManageUrl(),
			'isTemplatesBased' => $this->sender->isConfigurable() ? $this->sender->isTemplatesBased() : false,
			'defaultFrom' => $this->sender->getDefaultFrom(),
			'fromList' => [],
		];

		$list = $this->sender->getFromList();
		foreach ($list as $from)
		{
			$senderInfo['fromList'][$from['id']] = $from;
			if ($senderInfo['defaultFrom'] == $from['id'])
			{
				$senderInfo['channelName'] = $from['name'];
				$senderInfo['channelPhone'] = $from['channelPhone'];
			}
		}
	}

	return $senderInfo;
}