public static function Users::getAllUsersBatched in Rocket.Chat 8.2
Retrieve Chat User List. (in batch size)
@todo needs better Error checking / missing detection.
Parameters
\Drupal\rocket_chat_api\RocketChat\ApiClient $api:
array $users:
int $offset:
int $size:
Return value
float|int
float|int
1 call to Users::getAllUsersBatched()
- Users::refreshCache in modules/
rocket_chat_api/ src/ RocketChat/ Collection/ Users.php
File
- modules/
rocket_chat_api/ src/ RocketChat/ Collection/ Users.php, line 92
Class
Namespace
Drupal\rocket_chat_api\RocketChat\CollectionCode
public static function getAllUsersBatched(ApiClient &$api, array &$users, $offset = 0, $size = 500) {
$ret = $api
->getFromRocketChat("users.list", [
"query" => [
"offset" => $offset,
"count" => $size,
],
]);
foreach ($ret['body']['users'] as $index => $user) {
$users[] = $user;
}
$total = $ret['body']['total'];
$count = $ret['body']['count'];
$retOffset = $ret['body']['offset'];
$subTotal = $count * (1 + $retOffset);
$usersLeft = $total - $subTotal;
if ($usersLeft > 0) {
self::getAllUsersBatched($api, $users, ++$offset, $size);
}
return $subTotal;
}