getProperty('UID'); if ($uid === null) { // Nothing to do return; } if ($entry->getProperty('isLocalSystemBook') !== true) { // Not internal user return; } $user = $this->userManager->get($uid); if (!$user instanceof IUser) { // No valid user object return; } if ($this->config->isDisabledForUser($user)) { // User can not use Talk return; } $talkAction = $this->l10n->t('Talk to %s', [$user->getDisplayName()]); $iconUrl = $this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('spreed', 'app-dark.svg')); $callUrl = $this->urlGenerator->linkToRouteAbsolute('spreed.Page.index') . '?callUser=' . $user->getUID(); $action = $this->actionFactory->newLinkAction($iconUrl, $talkAction, $callUrl, Application::APP_ID); $entry->addAction($action); } }