Pushing Files

Function Description

  • API Name

    PushFile

  • Function

    Push files to the cloud phone file system. The system downloads and decompresses the specified file, and pushes the decompressed content to the root directory of the cloud phone. Only .tar files can be pushed. You need to upload the .tar files to your OBS bucket in advance. This API is an asynchronous API. You can call APIs in Querying the Task Execution Status and Querying the Task Execution Status List to query the task execution result.

  • Notes

    You have granted the read-only permission on the OBS bucket to the Cloud Phone service system account. For details, see Managing Cloud Phones in Batches in the Cloud Phone User Guide.

    The management plane performance is limited. Therefore, executing ADB commands in batches on the same server blocks the execution of other tasks on the cloud phone.

URI

POST /v1/{project_id}/cloud-phone/phones/commands

For details, see Table 1.
Table 1 Parameter description

Parameter

Mandatory

Type

Description

project_id

Yes

String

Specifies the project ID.

For details about how to obtain the project ID, see Obtaining a Project ID.

Request

  • Request parameters

    Parameter

    Mandatory

    Type

    Description

    command

    Yes

    String

    Specifies the command for managing the cloud phones. Set this parameter to push for file pushing.

    content

    Yes

    String

    Specifies the specified .tar file in the OBS bucket.

    The value can contain a maximum of 1024 bytes, including only uppercase letters, lowercase letters, digits, underscores (_), periods (.), slashes (/), colons (:), and hyphens (-).

    Only .tar files can be pushed.

    File format: obs://obs-bucket-name/obs-file-path/file.tar

    phone_ids

    No

    This parameter is mandatory when parameter server_ids does not exist. If parameter server_ids exists, set phone_ids only.

    Array of strings

    Specifies the cloud phone ID list.

    Obtain it from Querying the Cloud Phones.

    server_ids

    No

    This parameter is mandatory when parameter phone_ids does not exist. If parameter phone_ids exists, set phone_ids only.

    Array of strings

    Specifies the ID list of the cloud phone servers.

    Obtain it from Querying the Cloud Phone Servers.

  • Example request
    POST https://{CPH Endpoint}/v1/{project_id}/cloud-phone/phones/commands
    {
        "command": "push",
        "content": "obs://push-bucket/my_apps/test.tar",
        "phone_ids": [
            "1234567b8bab40ffb711234cb80d0234",
            "1678567b8bab40f93711234cb80d0764"
        ]
    }

Response

  • Response parameters

    Parameter

    Type

    Description

    request_id

    String

    Specifies the request ID, which is unique.

    jobs

    Array of objects

    Specifies the task information. For details, see Table 2.

    Table 2 job field description

    Parameter

    Type

    Description

    phone_id

    String

    Specifies the unique ID of a cloud phone. This parameter is contained in tasks related to cloud phones.

    job_id

    String

    Specifies the unique ID of a task.

  • Example response
    {
        "request_id": "6837531fd3f54550927b930180a706bf",
        "jobs": [
            {
                "phone_id": "1234567b8bab40ffb711234cb80d0234",
                "job_id": "1564567b8bab40f34711234cb80d0123"
             },
             { 
                "phone_id": "1678567b8bab40f93711234cb80d0764",
                "job_id": "1564567b8bab40f34711234cb80d5678" 
            }
        ]
    }

Returned Values

See Returned Values.

Error Codes

See Error Codes.