- Модуль: socialservices
- Путь к файлу: ~/bitrix/modules/socialservices/lib/apmanager.php
- Класс: BitrixSocialservicesApManager
- Вызов: ApManager::receive
static function receive($userId, $connectionString)
{
if(static::checkState())
{
$connection = static::parseConnectionString($connectionString);
if($connection)
{
$uri = new Uri($connection['endpoint']);
if($uri->getHost())
{
$dbRes = ApTable::getList(array(
'filter' => array(
'=USER_ID' => $userId,
'=DOMAIN' => $uri->getHost()
),
'select' => array('ID')
));
$existingEntry = $dbRes->fetch();
if($existingEntry)
{
$result = ApTable::update($existingEntry['ID'], array(
'ENDPOINT' => $uri->getLocator(),
'LAST_AUTHORIZE' => '',
));
}
else
{
$result = ApTable::add(array(
'USER_ID' => $userId,
'DOMAIN' => $uri->getHost(),
'ENDPOINT' => $uri->getLocator(),
));
}
return $result->isSuccess();
}
}
}
return false;
}