- Модуль: imopenlines
- Путь к файлу: ~/bitrix/modules/imopenlines/lib/session.php
- Класс: BitrixImOpenLinesSession
- Вызов: Session::execAutoAction
public function execAutoAction($params): void
{
if (
$this->action === self::ACTION_CLOSED
&& $this->config['ACTIVE'] === 'N'
)
{
Im::addMessage([
'TO_CHAT_ID' => $this->session['CHAT_ID'],
'MESSAGE' => Loc::getMessage('IMOL_SESSION_LINE_IS_CLOSED'),
'SYSTEM' => 'Y',
]);
}
if (
$this->config['AGREEMENT_MESSAGE'] === 'Y'
&& $this->chat->isNowCreated()
&& $this->isEnableSendSystemMessage()
)
{
$addAgreementMessage = true;
if (Connector::isLiveChat($this->session['SOURCE']))
{
$parsedUserCode = SessionCommon::parseUserCode($this->session['USER_CODE']);
$addAgreementMessage = !Consent::getByContext(
(int)$this->config['AGREEMENT_ID'],
'imopenlines/livechat',
$parsedUserCode['EXTERNAL_CHAT_ID']
);
}
if ($addAgreementMessage)
{
$mess = Loc::loadLanguageFile(__FILE__, $this->config['LANGUAGE_ID']);
Im::addMessage([
'TO_CHAT_ID' => $this->session['CHAT_ID'],
'MESSAGE' => str_replace(
['#LINK_START#', '#LINK_END#'],
['[URL=' . Common::getAgreementLink($this->config['AGREEMENT_ID'], $this->config['LANGUAGE_ID']) . ']', '[/URL]'],
$mess['IMOL_SESSION_AGREEMENT_MESSAGE']
),
'SYSTEM' => 'Y',
'IMPORTANT_CONNECTOR' => 'Y',
'NO_SESSION_OL' => 'Y',
'PARAMS' => [
'CLASS'=> 'bx-messenger-content-item-ol-output',
]
]);
Im::addMessage([
'TO_CHAT_ID' => $this->session['CHAT_ID'],
'MESSAGE' => Loc::getMessage('IMOL_SESSION_AGREEMENT_MESSAGE_OPERATOR'),
'SYSTEM' => 'Y',
'PARAMS' => [
'CLASS' => 'bx-messenger-content-item-ol-attention',
]
]);
}
}
}