| Index: components/policy/proto/device_management_backend.proto | 
| diff --git a/components/policy/proto/device_management_backend.proto b/components/policy/proto/device_management_backend.proto | 
| index e90ff5b7d60a530607038895097b7491fb527f6b..12948d0d55bc0170d154d0381565f5d8989d5a2a 100644 | 
| --- a/components/policy/proto/device_management_backend.proto | 
| +++ b/components/policy/proto/device_management_backend.proto | 
| @@ -451,6 +451,21 @@ message RemoteCommandResult { | 
| optional bytes payload = 4; | 
| } | 
|  | 
| +message DeviceRemoteCommandRequest { | 
| +  // The command id of the last command received from the server until | 
| +  // now.  Omitted if no commands have been received yet. | 
| +  optional int64 last_command_unique_id = 1; | 
| + | 
| +  // The execution results of previously fetched commands. | 
| +  // The client should send back the command result whenever possible. | 
| +  repeated RemoteCommandResult command_results = 2; | 
| +} | 
| + | 
| +message DeviceRemoteCommandResponse { | 
| +  // The queue of pending commands. | 
| +  repeated RemoteCommand commands = 1; | 
| +} | 
| + | 
| // Request from device to server for reading policies. | 
| message DevicePolicyRequest { | 
| // The policy fetch request.  If this field exists, the request must | 
| @@ -928,6 +943,7 @@ message CheckDevicePairingResponse { | 
| //     * register | 
| //     * status | 
| //     * unregister | 
| +//     * remote_commands | 
| // | 
| //   * devicetype: MUST BE "1" for Android or "2" for Chrome OS. | 
| //   * apptype: MUST BE Android or Chrome. | 
| @@ -957,6 +973,7 @@ message CheckDevicePairingResponse { | 
| //   register: register_request | 
| //   status: device_status_report_request or session_status_report_request | 
| //   unregister: unregister_request | 
| +//   remote_commands: remote_command_request | 
| // | 
| // | 
| message DeviceManagementRequest { | 
| @@ -993,6 +1010,9 @@ message DeviceManagementRequest { | 
|  | 
| // Check if two devices are paired. | 
| optional CheckDevicePairingRequest check_device_pairing_request = 12; | 
| + | 
| +  // Remote command fetching. | 
| +  optional DeviceRemoteCommandRequest remote_command_request = 13; | 
| } | 
|  | 
| // Response from server to device. | 
| @@ -1047,4 +1067,7 @@ message DeviceManagementResponse { | 
|  | 
| // Response to check device pairing request. | 
| optional CheckDevicePairingResponse check_device_pairing_response = 13; | 
| + | 
| +  // Response to remote command request. | 
| +  optional DeviceRemoteCommandResponse remote_command_response = 14; | 
| } | 
|  |