• Модуль: voximplant
  • Путь к файлу: ~/bitrix/modules/voximplant/lib/model/call.php
  • Класс: BitrixVoximplantModelCallTable
  • Вызов: CallTable::getMap
static function getMap()
{
	return array(
		'ID' => array(
			'data_type' => 'integer',
			'primary' => true,
			'autocomplete' => true,
			'title' => Loc::getMessage('CALL_ENTITY_ID_FIELD'),
		),
		'CONFIG_ID' => array(
			'data_type' => 'integer',
			'title' => Loc::getMessage('CALL_ENTITY_CONFIG_ID_FIELD'),
		),
		'USER_ID' => array(
			'data_type' => 'integer',
			'title' => Loc::getMessage('CALL_ENTITY_USER_ID_FIELD'),
		),
		'PORTAL_USER_ID' => array(
			'data_type' => 'integer',
			'title' => Loc::getMessage('CALL_ENTITY_PORTAL_USER_ID_FIELD'),
		),
		'CALL_ID' => array(
			'data_type' => 'string',
			'required' => true,
			'validation' => array(__CLASS__, 'validateCallId'),
			'title' => Loc::getMessage('CALL_ENTITY_CALL_ID_FIELD'),
		),
		'EXTERNAL_CALL_ID' => array(
			'data_type' => 'string',
		),
		'INCOMING' => array(
			'data_type' => 'string',
			'title' => '',
		),
		'CALLER_ID' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateCallerId'),
			'title' => Loc::getMessage('CALL_ENTITY_CALLER_ID_FIELD'),
		),
		'STATUS' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateStatus'),
			'title' => Loc::getMessage('CALL_ENTITY_STATUS_FIELD'),
		),
		'CRM' => array(
			'data_type' => 'boolean',
			'values' => array('N', 'Y'),
			'title' => '',
		),
		'CRM_ACTIVITY_ID' => array(
			'data_type' => 'integer',
			'title' => '',
		),
		'CRM_CALL_LIST' => array(
			'data_type' => 'integer',
			'title' => '',
		),
		'CRM_BINDINGS' => array(
			'data_type' => 'text',
			'serialized' => true
		),
		'ACCESS_URL' => array(
			'data_type' => 'string',
			'required' => false,
			'validation' => array(__CLASS__, 'validateAccessUrl'),
			'title' => Loc::getMessage('CALL_ENTITY_ACCESS_URL_FIELD'),
		),
		'DATE_CREATE' => array(
			'data_type' => 'datetime',
			'title' => Loc::getMessage('CALL_ENTITY_DATE_CREATE_FIELD'),
		),
		'REST_APP_ID' => array(
			'data_type' => 'integer',
			'title' => ''
		),
		'EXTERNAL_LINE_ID' => array(
			'data_type' => 'integer',
		),
		'PORTAL_NUMBER' => array(
			'data_type' => 'string',
		),
		'STAGE' => array(
			'data_type' => 'string'
		),
		'IVR_ACTION_ID' => array(
			'data_type' => 'integer',
		),
		'QUEUE_ID' => array(
			'data_type' => 'integer',
			'title' => ''
		),
		'QUEUE_HISTORY' => array(
			'data_type' => 'text',
			'serialized' => true,
			'default_value' => array()
		),
		'SESSION_ID' => array(
			'data_type' => 'integer'
		),
		'CALLBACK_PARAMETERS' => array(
			'data_type' => 'text',
			'serialized' => true,
			'default_value' => array()
		),
		'COMMENT' => array(
			'data_type' => 'text',
		),
		'WORKTIME_SKIPPED' => array(
			'data_type' => 'boolean',
			'values' => array('N', 'Y'),
			'title' => '',
		),
		'SIP_HEADERS' => array(
			'data_type' => 'text',
			'serialized' => true,
			'default_value' => array(),
		),
		'GATHERED_DIGITS' => array(
			'data_type' => 'string'
		),
		'PARENT_CALL_ID' => array(
			'data_type' => 'string'
		),
		'LAST_PING' => array(
			'data_type' => 'datetime',
			'default_value' => function()
			{
				return new DateTime();
			}
		),
		'EXECUTION_GRAPH' => array(
			'data_type' => 'text',
			'serialized' => true,
		),
		'QUEUE' => new EntityReferenceField(
			'QUEUE',
			QueueTable::getEntity(),
			array('=this.QUEUE_ID' => 'ref.ID'),
			array('join_type' => 'left')
		),
		'CONFIG' => new EntityReferenceField(
			'CONFIG',
			ConfigTable::getEntity(),
			array('=this.CONFIG_ID' => 'ref.ID'),
			array('join_type' => 'left')
		),
		'EXTERNAL_LINE' => new EntityReferenceField(
			'EXTERNAL_LINE',
			ExternalLineTable::getEntity(),
			array('=this.EXTERNAL_LINE_ID' => 'ref.ID'),
			array('join_type' => 'left')
		)
	);
}