Привязать устройство
В этом руководстве показано, как привязать телефон к Control Center, чтобы читать сообщения и тикеты и отвечать откуда угодно. Тот же порядок действий привязывает второй браузер или приложение для компьютера. О том, как работает эта связь и какова её модель безопасности, см. Удалённое управление и мобильный клиент.
Что понадобится
Заголовок раздела «Что понадобится»- Подключённый к вашему серверу клиент для компьютера или веб-клиент и настроенное рабочее пространство. Операции привязки требуют полного клиента, поэтому привязанный телефон никогда не сможет привязать — или отозвать — другое устройство.
- Сервер, доступный с того устройства, которое вы привязываете. В одной сети это работает само собой; извне трафик несёт брокер-реле. Если панель отвечает Недоступен вместо QR-кода или учётных данных, сначала опубликуйте путь — включите туннель в разделе Настройки → Сервер → Подключение и состояние (Открыть доступ к серверу) или задайте флаг
--public-urlсервера (см. Запустить headless-сервер). - Для телефона: устанавливать ничего не нужно. QR-код открывает веб-приложение Remote (remote.usectrl.dev по умолчанию).
Самостоятельный хостинг. Remote и брокер-реле — открытый исходный код в этом
репозитории: приложение для телефона (apps/cc_remote, веб-PWA на Flutter, которую
можно развернуть в Cloudflare Pages через её wrangler.jsonc, в nginx-образ
docker/cc_remote или на любом статическом хосте с HTTPS — service workers и
IndexedDB доступны только в защищённом контексте) и реле
(apps/cc_signaling_server, единственный stateless-бинарник на Dart, который не
хранит данных приложения и никогда не видит секрет сопряжения — оно пересылает
только кадры, запечатанные сквозным шифрованием). Шаги сборки и запуска — в их
README.
Шаг 1. Откройте панель сопряжения
Заголовок раздела «Шаг 1. Откройте панель сопряжения»Откройте Настройки → Вы → Ваши устройства. Раздел Ваши устройства перечисляет клиентов, привязанных к вашей учётной записи на этом сервере. (Владелец сервера видит все устройства на сервере; все остальные — только свои.)
Шаг 2. Привяжите новый клиент
Заголовок раздела «Шаг 2. Привяжите новый клиент»Нажмите Привязать новый клиент в заголовке страницы, задайте название (например, «Мой телефон»), выберите тип — Веб-браузер, Приложение для компьютера или Телефон — и нажмите Привязать.
- Для телефона появится QR-код. Отсканируйте его камерой телефона или скопируйте ссылку и откройте её в любом браузере. Она направляет приложение Remote на ваш сервер и несёт учётные данные.
- Для браузера или компьютера вместо этого скопируйте показанную ссылку (или ID устройства и ключ сопряжения) в новый клиент. Ссылка для привязки в одно нажатие предлагается, только когда вы привязываете из веб-клиента: у бинарника для компьютера нет веб-источника, из которого её можно построить.
QR-код для телефона и ссылка, которую команда cc_server pair --client-url выводит
в CLI, — это разные полезные нагрузки, и они не взаимозаменяемы: ссылка из CLI
заполняет форму подключения веб-клиента, а этот QR-код несёт полный дескриптор
подключения и отпечаток идентичности сервера для PWA Remote.
На стороне телефона открытие ссылки для привязки не привязывает устройство молча. Remote показывает объявленное имя сервера и просит подтвердить, прежде чем что-либо сохранить, поэтому подделанная ссылка не может увести приложение на чужой сервер.
Управление привязанными устройствами
Заголовок раздела «Управление привязанными устройствами»Из раздела Настройки → Вы → Ваши устройства вы можете:
- Переименовать устройство
- Отозвать устройство, которому больше не доверяете. Отзыв уничтожает его учётные данные и в течение нескольких секунд разрывает живую сессию, поэтому при повторном подключении устройство безопасно отказывает
Отзыв — верный шаг для потерянного или заменённого телефона. Он мгновенный и, с точки зрения устройства, необратимый.
Учётные данные, выпущенные с этой панели, ограничены по времени: они истекают через
30 дней после выпуска, и после этого барьер подключения отклоняет их. Учётные
данные, выпущенные командой cc_server pair в командной строке, не имеют срока
действия вообще — отзовите их вручную, когда машина, для которой они
предназначались, выводится из эксплуатации.
Переключение рабочих пространств с телефона
Заголовок раздела «Переключение рабочих пространств с телефона»Привязанный телефон может переключаться между рабочими пространствами независимо от компьютера. Телефон передаёт рабочее пространство с каждым вызовом, и при каждом вызове сервер проверяет ваше членство и роль в этом рабочем пространстве, — поэтому телефон добирается только до тех рабочих пространств, где вы состоите, и переключение на нём никогда не меняет то, что показано на компьютере.
Кроме того, сессия телефона ограничена небольшим списком разрешённых инструментов, преимущественно читающих: она может перечислять и читать тикеты, агентов, пространства, сообщения и статьи ленты, а также обновлять или назначать тикет, отправлять сообщение в пространстве и отмечать статью прочитанной или сохранённой. Всё, что выходит за пределы этого набора, отклоняется до того, как достигнет диспетчера сервера.
Связанные руководства
Заголовок раздела «Связанные руководства»- Запустить headless-сервер: чтобы сервер вообще стал доступен
- Подключиться к удалённому серверу: направьте на него полный клиент
- Использовать пространства: то, чем вы в основном будете заниматься с телефона
- Создавать и управлять тикетами: разбирайте входящие в дороге