- Модуль: imconnector
- Путь к файлу: ~/bitrix/modules/imconnector/lib/update/updatemicrosoftbotframework.php
- Класс: BitrixImconnectorUpdateUpdateMicrosoftBotFramework
- Вызов: UpdateMicrosoftBotFramework::execute
public function execute(array &$result): bool
{
$return = false;
if (Loader::includeModule(static::$moduleId))
{
$status = $this->loadCurrentStatus();
if ($status['count'] > 0)
{
$result['steps'] = '';
$result['count'] = $status['count'];
$cursor = StatusConnectorsTable::getList([
'select' => ['ID', 'LINE'],
'filter' => [
'=CONNECTOR' => self::CONNECTOR_ID,
'=ACTIVE' => 'Y',
],
'offset' => 0,
'limit' => self::PORTION,
'order' => ['ID' => 'ASC'],
]);
$found = false;
while ($row = $cursor->fetch())
{
$deleteResult = Connector::delete($row['LINE'], self::CONNECTOR_ID);
if (!$deleteResult->isSuccess())
{
Status::delete(self::CONNECTOR_ID, $row['LINE']);
}
$status['lastId'] = $row['ID'];
$status['number']++;
$found = true;
}
if ($found)
{
Option::set(static::$moduleId, self::OPTION_NAME, serialize($status));
$return = true;
}
$result['steps'] = $status['number'];
if ($found === false)
{
self::deactivateConnector();
Option::delete(static::$moduleId, ['name' => self::OPTION_NAME]);
}
}
else
{
self::deactivateConnector();
}
}
return $return;
}