• Модуль: imopenlines
  • Путь к файлу: ~/bitrix/modules/imopenlines/lib/rest.php
  • Класс: BitrixImOpenLinesRest
  • Вызов: Rest::onRestServiceBuildDescription
static function onRestServiceBuildDescription(): array
{
	return [
		'imopenlines' => [
			'imopenlines.revision.get' => [__CLASS__, 'revisionGet'],

			'imopenlines.dialog.get' => [__CLASS__, 'dialogGet'],
			'imopenlines.dialog.user.depersonalization' => ['callback' => [__CLASS__, 'dialogUserDepersonalization'], 'options' => ['private' => true]],
			'imopenlines.dialog.form.send' => [__CLASS__, 'dialogFormSend'],

			'imopenlines.operator.answer' => [__CLASS__, 'operatorAnswer'],
			'imopenlines.operator.skip' => [__CLASS__, 'operatorSkip'],
			'imopenlines.operator.spam' => [__CLASS__, 'operatorSpam'],
			'imopenlines.operator.transfer' => [__CLASS__, 'operatorTransfer'],
			'imopenlines.operator.finish' => [__CLASS__, 'operatorFinish'],
			'imopenlines.operator.another.finish' => [__CLASS__, 'operatorFinishAnother'],
			'imopenlines.operator.pause.start' => [__CLASS__, 'startSoftPause'],
			'imopenlines.operator.pause.stop' => [__CLASS__, 'stopSoftPause'],
			'imopenlines.operator.pause.get' => [__CLASS__, 'getSoftPauseStatus'],
			'imopenlines.operator.pause.getAll' => [__CLASS__, 'getAllSoftPause'],
			'imopenlines.operator.pause.getHistory' => [__CLASS__, 'getSoftPauseHistory'],

			'imopenlines.session.intercept' => [__CLASS__, 'sessionIntercept'],
			'imopenlines.session.open' => [__CLASS__, 'sessionOpen'],
			'imopenlines.session.mode.silent' => [__CLASS__, 'sessionSilent'],
			'imopenlines.session.mode.pin' => [__CLASS__, 'sessionPin'],
			'imopenlines.session.mode.unpin' => [__CLASS__, 'sessionUnpin'],
			'imopenlines.session.mode.pinAll' => [__CLASS__, 'sessionPinAll'],
			'imopenlines.session.mode.unpinAll' => [__CLASS__, 'sessionUnpinAll'],
			'imopenlines.session.head.vote' => [__CLASS__, 'sessionVoteAsHead'],
			'imopenlines.session.join' => [__CLASS__, 'sessionJoin'],
			'imopenlines.session.start' => [__CLASS__, 'sessionStart'],
			'imopenlines.session.history.get' => [__CLASS__, 'sessionGetHistory'],

			'imopenlines.message.session.start' => [__CLASS__, 'sessionStartByMessage'],
			'imopenlines.message.quick.save' => [__CLASS__, 'messageSaveToQuickAnswer'],

			'imopenlines.bot.session.operator' => [__CLASS__, 'botSessionOperator'],
			'imopenlines.bot.session.send.message' => ['callback' => [__CLASS__, 'botSessionSendAutoMessage'], 'options' => ['private' => true]], // legacy
			'imopenlines.bot.session.message.send' => [__CLASS__, 'botSessionSendAutoMessage'],
			'imopenlines.bot.session.transfer' => [__CLASS__, 'botSessionTransfer'],
			'imopenlines.bot.session.finish' => [__CLASS__, 'botSessionFinish'],

			'imopenlines.network.join' => [__CLASS__, 'networkJoin'],
			'imopenlines.network.message.add' => [__CLASS__, 'networkMessageAdd'],

			'imopenlines.widget.config.get' => ['callback' => [__CLASS__, 'widgetConfigGet'], 'options' => []],
			'imopenlines.widget.dialog.get' => ['callback' => [__CLASS__, 'widgetDialogGet'], 'options' => []],
			'imopenlines.widget.dialog.list' => ['callback' => [__CLASS__, 'widgetDialogList'], 'options' => []],
			'imopenlines.widget.user.register' => ['callback' => [__CLASS__, 'widgetUserRegister'], 'options' => []],
			'imopenlines.widget.chat.create' => ['callback' => [__CLASS__, 'widgetChatCreate'], 'options' => []],
			'imopenlines.widget.user.consent.apply' => ['callback' => [__CLASS__, 'widgetUserConsentApply'], 'options' => []],
			'imopenlines.widget.user.get' => ['callback' => [__CLASS__, 'widgetUserGet'], 'options' => []],
			'imopenlines.widget.operator.get' => ['callback' => [__CLASS__, 'widgetOperatorGet'], 'options' => []],
			'imopenlines.widget.vote.send' => ['callback' => [__CLASS__, 'widgetVoteSend'], 'options' => []],
			'imopenlines.widget.action.send' => ['callback' => [__CLASS__, 'widgetActionSend'], 'options' => []],
			'imopenlines.widget.crm.bindings.get' => ['callback' => [__CLASS__, 'widgetCrmBindingsGet'], 'options' => []],

			'imopenlines.config.path.get' => [__CLASS__, 'configGetPath'],
			'imopenlines.config.get' => [__CLASS__, 'configGet'],
			'imopenlines.config.list.get' => [__CLASS__, 'configListGet'],
			'imopenlines.config.update' => [__CLASS__, 'configUpdate'],
			'imopenlines.config.add' => [__CLASS__, 'configAdd'],
			'imopenlines.config.delete' => [__CLASS__, 'configDelete'],

			'imopenlines.crm.chat.user.add' => [__CLASS__, 'crmChatUserAdd'],
			'imopenlines.crm.chat.getLastId' => [__CLASS__, 'crmLastChatIdGet'],
			'imopenlines.crm.lead.create' => [__CLASS__, 'crmCreateLead'],
		],
	];
}