Вручную инициировать переход на страницу всех чатов и на страницу чата с конкретным пользователем

Здравствуйте, как я могу вручную инициировать переход к чату с пользователем?

У меня есть собственный список пользователей, отображаемый на странице пользователей. Я хочу добавить кнопку чата, которая будет инициировать переход на страницу чата с этим пользователем, аналогично тому, как это делает кнопка чата на скриншоте:

Я пробовал привязать этот обратный вызов к кнопке:

customChatButton.addEventListener('click', () => {
    window.Discourse.router.transitionTo(`/chat/c/${username}`)
});

но это приводит к сообщению «страница не существует или является приватной».

Также в этой таблице пользователей у меня есть собственная кнопка «Все чаты», и я хочу, чтобы при нажатии на неё пользователя перекидывало на страницу всех чатов в полноэкранном режиме, а не открывало всплывающее окно чата в правом нижнем углу экрана.

Эта команда, похоже, не работает:

goToAllChatButton.addEventListener('click', () => {
    window.Discourse.router.transitionTo(`/chat`)
});

Вы можете использовать этот компонент напрямую:

<Chat::DirectMessageButton @user={{user}} @modal={{true}} />

Спасибо за ответ @j.jaffeux, можно ли сделать это напрямую с объектом роутера?