- Модуль: imbot
- Путь к файлу: ~/bitrix/modules/imbot/lib/bot/openlinesmenuexample.php
- Класс: BitrixImBotBotOpenlinesMenuExample
- Вызов: OpenlinesMenuExample::itrRun
static function itrRun($dialogId, $userId, $message = '')
{
if ($userId <= 0)
return false;
$menu0 = new ItrMenu(0);
$menu0->setText('Main menu (#0)');
$menu0->addItem(1, 'Text', ItrItem::sendText('Text message (for #USER_NAME#)'));
$menu0->addItem(2, 'Text without menu', ItrItem::sendText('Text message without menu', true));
$menu0->addItem(3, 'Open menu #1', ItrItem::openMenu(1));
$menu0->addItem(0, 'Wait operator answer', ItrItem::sendText('Wait operator answer', true));
$menu1 = new ItrMenu(1);
$menu1->setText('Second menu (#1)');
$menu1->addItem(2, 'Transfer to queue', ItrItem::transferToQueue('Transfer to queue'));
$menu1->addItem(3, 'Transfer to user', ItrItem::transferToUser(1, false, 'Transfer to user #1'));
$menu1->addItem(4, 'Transfer to bot', ItrItem::transferToBot('marta', false, 'Transfer to bot Marta', 'Marta not found :('));
$menu1->addItem(5, 'Finish session', ItrItem::finishSession('Finish session'));
$menu1->addItem(6, 'Exec function', ItrItem::execFunction(function($context){
BitrixImBot::addMessage(Array('BOT_ID' => $context->botId), Array(
'DIALOG_ID' => $context->dialogId,
'MESSAGE' => 'Function executed (action)'
));
}, 'Function executed (text)'));
$menu1->addItem(9, 'Back to main menu', ItrItem::openMenu(0));
$itr = new ItrDesigner('box', $dialogId, self::getBotId(), $userId);
$itr->addMenu($menu0);
$itr->addMenu($menu1);
$itr->run(self::prepareText($message));
return true;
}