tree: 1b09bea99a7ac0e94f2c90dd2bc8c95b9a1f32fa [path history] [tgz]
  1. public/
  2. BUILD.gn
  3. crd_admin_session_controller.cc
  4. crd_admin_session_controller.h
  5. crd_admin_session_controller_unittest.cc
  6. crd_logging.h
  7. crd_oauth_token_fetcher.cc
  8. crd_oauth_token_fetcher.h
  9. crd_remote_command_utils.cc
  10. crd_remote_command_utils.h
  11. crd_session_observer.h
  12. crd_support_host_observer_proxy.cc
  13. crd_support_host_observer_proxy.h
  14. crd_uma_logger.cc
  15. crd_uma_logger.h
  16. device_command_fetch_crd_availability_info_job.cc
  17. device_command_fetch_crd_availability_info_job.h
  18. device_command_fetch_crd_availability_info_job_unittest.cc
  19. device_command_start_crd_session_job.cc
  20. device_command_start_crd_session_job.h
  21. device_command_start_crd_session_job_unittest.cc
  22. fake_start_crd_session_job_delegate.cc
  23. fake_start_crd_session_job_delegate.h
  24. OWNERS
  25. README.md
  26. remote_activity_notification_controller.cc
  27. remote_activity_notification_controller.h
  28. shared_crd_session_impl.cc
  29. shared_crd_session_impl.h
  30. shared_crd_session_impl_unittest.cc
  31. start_crd_session_job_delegate.cc
  32. start_crd_session_job_delegate.h
chrome/browser/ash/policy/remote_commands/crd/README.md

Chrome Remote Desktop

This directory contains the code that controls the remotely triggered Chrome Remote Desktop (CRD) sessions.

These sessions are started through a remote command typically sent from the DPanel devices page or issued by Class Tools (boca) teachers.

Remote Commands

There are 2 remote commands involved in starting CRD sessions:

  • FETCH_CRD_AVAILABILITY_INFO: This command queries the state of the device, and returns if CRD sessions are possible and if not, why.
  • START_CRD_SESSION: This command actually starts a CRD session.

Public APIs

The public API of this folder exists out of 3 classes:

  • DeviceCommandFetchCrdAvailabilityInfoJob: The RemoteCommandJob that handles the FETCH_CRD_AVAILABILITY_INFO remote command.
  • DeviceCommandStartCrdSessionJob: The RemoteCommandJob that handles the START_CRD_SESSION remote command.
  • CrdAdminSessionController: The long-lived controller that keeps track of the currently active CRD session.