DirectAccessServiceAsyncClient(*, credentials: typing.Optional[google.auth.credentials.Credentials] = None, transport: typing.Optional[typing.Union[str, google.cloud.devicestreaming_v1.services.direct_access_service.transports.base.DirectAccessServiceTransport, typing.Callable[[...], google.cloud.devicestreaming_v1.services.direct_access_service.transports.base.DirectAccessServiceTransport]]] = 'grpc_asyncio', client_options: typing.Optional[google.api_core.client_options.ClientOptions] = None, client_info: google.api_core.gapic_v1.client_info.ClientInfo = <google.api_core.gapic_v1.client_info.ClientInfo object>)
A service for allocating Android devices and interacting with the live-allocated devices.
Each Session will wait for available capacity, at a higher priority over Test Execution. When allocated, the session will be exposed through a stream for integration.
DirectAccessService is currently available as a preview to select developers. You can register today on behalf of you and your team at https://developer.android.com/studio/preview/android-device-streaming
Properties
api_endpoint
Return the API endpoint used by the client instance.
Returns | |
---|---|
Type | Description |
str |
The API endpoint used by the client instance. |
transport
Returns the transport used by the client instance.
Returns | |
---|---|
Type | Description |
DirectAccessServiceTransport |
The transport used by the client instance. |
universe_domain
Return the universe domain used by the client instance.
Returns | |
---|---|
Type | Description |
str |
The universe domain used by the client instance. |
Methods
DirectAccessServiceAsyncClient
DirectAccessServiceAsyncClient(*, credentials: typing.Optional[google.auth.credentials.Credentials] = None, transport: typing.Optional[typing.Union[str, google.cloud.devicestreaming_v1.services.direct_access_service.transports.base.DirectAccessServiceTransport, typing.Callable[[...], google.cloud.devicestreaming_v1.services.direct_access_service.transports.base.DirectAccessServiceTransport]]] = 'grpc_asyncio', client_options: typing.Optional[google.api_core.client_options.ClientOptions] = None, client_info: google.api_core.gapic_v1.client_info.ClientInfo = <google.api_core.gapic_v1.client_info.ClientInfo object>)
Instantiates the direct access service async client.
Parameters | |
---|---|
Name | Description |
credentials |
Optional[google.auth.credentials.Credentials]
The authorization credentials to attach to requests. These credentials identify the application to the service; if none are specified, the client will attempt to ascertain the credentials from the environment. |
transport |
Optional[Union[str,DirectAccessServiceTransport,Callable[..., DirectAccessServiceTransport]]]
The transport to use, or a Callable that constructs and returns a new transport to use. If a Callable is given, it will be called with the same set of initialization arguments as used in the DirectAccessServiceTransport constructor. If set to None, a transport is chosen automatically. |
client_options |
Optional[Union[google.api_core.client_options.ClientOptions, dict]]
Custom options for the client. 1. The |
client_info |
google.api_core.gapic_v1.client_info.ClientInfo
The client info used to send a user-agent string along with API requests. If |
Exceptions | |
---|---|
Type | Description |
google.auth.exceptions.MutualTlsChannelError |
If mutual TLS transport creation failed for any reason. |
adb_connect
adb_connect(
requests: typing.Optional[
typing.AsyncIterator[
google.cloud.devicestreaming_v1.types.adb_service.AdbMessage
]
] = None,
*,
retry: typing.Optional[
typing.Union[
google.api_core.retry.retry_unary_async.AsyncRetry,
google.api_core.gapic_v1.method._MethodDefault,
]
] = _MethodDefault._DEFAULT_VALUE,
timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
metadata: typing.Sequence[typing.Tuple[str, typing.Union[str, bytes]]] = ()
) -> typing.Awaitable[
typing.AsyncIterable[
google.cloud.devicestreaming_v1.types.adb_service.DeviceMessage
]
]
Exposes an ADB connection if the device supports ADB. gRPC headers are used to authenticate the Connect RPC, as well as associate to a particular DeviceSession. In particular, the user must specify the "X-Omnilab-Session-Name" header.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import devicestreaming_v1
async def sample_adb_connect():
# Create a client
client = devicestreaming_v1.DirectAccessServiceAsyncClient()
# Initialize request argument(s)
open_ = devicestreaming_v1.Open()
open_.stream_id = 952
request = devicestreaming_v1.AdbMessage(
open_=open_,
)
# This method expects an iterator which contains
# 'devicestreaming_v1.AdbMessage' objects
# Here we create a generator that yields a single `request` for
# demonstrative purposes.
requests = [request]
def request_generator():
for request in requests:
yield request
# Make the request
stream = await client.adb_connect(requests=request_generator())
# Handle the response
async for response in stream:
print(response)
Parameters | |
---|---|
Name | Description |
requests |
AsyncIterator[
The request object AsyncIterator. A message to an ADB server. |
retry |
google.api_core.retry_async.AsyncRetry
Designation of what errors, if any, should be retried. |
timeout |
float
The timeout for this request. |
metadata |
Sequence[Tuple[str, Union[str, bytes]]]
Key/value pairs which should be sent along with the request as metadata. Normally, each value must be of type |
Returns | |
---|---|
Type | Description |
AsyncIterable[google.cloud.devicestreaming_v1.types.DeviceMessage] |
A message returned from a device. |
cancel_device_session
cancel_device_session(
request: typing.Optional[
typing.Union[
google.cloud.devicestreaming_v1.types.service.CancelDeviceSessionRequest,
dict,
]
] = None,
*,
retry: typing.Optional[
typing.Union[
google.api_core.retry.retry_unary_async.AsyncRetry,
google.api_core.gapic_v1.method._MethodDefault,
]
] = _MethodDefault._DEFAULT_VALUE,
timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
metadata: typing.Sequence[typing.Tuple[str, typing.Union[str, bytes]]] = ()
) -> None
Cancel a DeviceSession. This RPC changes the DeviceSession to state FINISHED and terminates all connections. Canceled sessions are not deleted and can be retrieved or listed by the user until they expire based on the 28 day deletion policy.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import devicestreaming_v1
async def sample_cancel_device_session():
# Create a client
client = devicestreaming_v1.DirectAccessServiceAsyncClient()
# Initialize request argument(s)
request = devicestreaming_v1.CancelDeviceSessionRequest(
name="name_value",
)
# Make the request
await client.cancel_device_session(request=request)
Parameters | |
---|---|
Name | Description |
request |
Optional[Union[google.cloud.devicestreaming_v1.types.CancelDeviceSessionRequest, dict]]
The request object. Request message for DirectAccessService.CancelDeviceSession. |
retry |
google.api_core.retry_async.AsyncRetry
Designation of what errors, if any, should be retried. |
timeout |
float
The timeout for this request. |
metadata |
Sequence[Tuple[str, Union[str, bytes]]]
Key/value pairs which should be sent along with the request as metadata. Normally, each value must be of type |
common_billing_account_path
common_billing_account_path(billing_account: str) -> str
Returns a fully-qualified billing_account string.
common_folder_path
common_folder_path(folder: str) -> str
Returns a fully-qualified folder string.
common_location_path
common_location_path(project: str, location: str) -> str
Returns a fully-qualified location string.
common_organization_path
common_organization_path(organization: str) -> str
Returns a fully-qualified organization string.
common_project_path
common_project_path(project: str) -> str
Returns a fully-qualified project string.
create_device_session
create_device_session(
request: typing.Optional[
typing.Union[
google.cloud.devicestreaming_v1.types.service.CreateDeviceSessionRequest,
dict,
]
] = None,
*,
parent: typing.Optional[str] = None,
device_session: typing.Optional[
google.cloud.devicestreaming_v1.types.service.DeviceSession
] = None,
device_session_id: typing.Optional[str] = None,
retry: typing.Optional[
typing.Union[
google.api_core.retry.retry_unary_async.AsyncRetry,
google.api_core.gapic_v1.method._MethodDefault,
]
] = _MethodDefault._DEFAULT_VALUE,
timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
metadata: typing.Sequence[typing.Tuple[str, typing.Union[str, bytes]]] = ()
) -> google.cloud.devicestreaming_v1.types.service.DeviceSession
Creates a DeviceSession.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import devicestreaming_v1
async def sample_create_device_session():
# Create a client
client = devicestreaming_v1.DirectAccessServiceAsyncClient()
# Initialize request argument(s)
device_session = devicestreaming_v1.DeviceSession()
device_session.android_device.android_model_id = "android_model_id_value"
device_session.android_device.android_version_id = "android_version_id_value"
request = devicestreaming_v1.CreateDeviceSessionRequest(
parent="parent_value",
device_session=device_session,
)
# Make the request
response = await client.create_device_session(request=request)
# Handle the response
print(response)
Parameters | |
---|---|
Name | Description |
request |
Optional[Union[google.cloud.devicestreaming_v1.types.CreateDeviceSessionRequest, dict]]
The request object. Request message for DirectAccessService.CreateDeviceSession. |
parent |
Required. The Compute Engine project under which this device will be allocated. "projects/{project_id}" This corresponds to the |
device_session |
DeviceSession
Required. A DeviceSession to create. This corresponds to the |
device_session_id |
Optional. The ID to use for the DeviceSession, which will become the final component of the DeviceSession's resource name. This value should be 4-63 characters, and valid characters are / |
retry |
google.api_core.retry_async.AsyncRetry
Designation of what errors, if any, should be retried. |
timeout |
float
The timeout for this request. |
metadata |
Sequence[Tuple[str, Union[str, bytes]]]
Key/value pairs which should be sent along with the request as metadata. Normally, each value must be of type |
Returns | |
---|---|
Type | Description |
google.cloud.devicestreaming_v1.types.DeviceSession |
Protobuf message describing the device message, used from several RPCs. |
device_session_path
device_session_path(project: str, device_session: str) -> str
Returns a fully-qualified device_session string.
from_service_account_file
from_service_account_file(filename: str, *args, **kwargs)
Creates an instance of this client using the provided credentials file.
Parameter | |
---|---|
Name | Description |
filename |
str
The path to the service account private key json file. |
Returns | |
---|---|
Type | Description |
DirectAccessServiceAsyncClient |
The constructed client. |
from_service_account_info
from_service_account_info(info: dict, *args, **kwargs)
Creates an instance of this client using the provided credentials info.
Parameter | |
---|---|
Name | Description |
info |
dict
The service account private key info. |
Returns | |
---|---|
Type | Description |
DirectAccessServiceAsyncClient |
The constructed client. |
from_service_account_json
from_service_account_json(filename: str, *args, **kwargs)
Creates an instance of this client using the provided credentials file.
Parameter | |
---|---|
Name | Description |
filename |
str
The path to the service account private key json file. |
Returns | |
---|---|
Type | Description |
DirectAccessServiceAsyncClient |
The constructed client. |
get_device_session
get_device_session(
request: typing.Optional[
typing.Union[
google.cloud.devicestreaming_v1.types.service.GetDeviceSessionRequest, dict
]
] = None,
*,
name: typing.Optional[str] = None,
retry: typing.Optional[
typing.Union[
google.api_core.retry.retry_unary_async.AsyncRetry,
google.api_core.gapic_v1.method._MethodDefault,
]
] = _MethodDefault._DEFAULT_VALUE,
timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
metadata: typing.Sequence[typing.Tuple[str, typing.Union[str, bytes]]] = ()
) -> google.cloud.devicestreaming_v1.types.service.DeviceSession
Gets a DeviceSession, which documents the allocation status and whether the device is allocated. Clients making requests from this API must poll GetDeviceSession.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import devicestreaming_v1
async def sample_get_device_session():
# Create a client
client = devicestreaming_v1.DirectAccessServiceAsyncClient()
# Initialize request argument(s)
request = devicestreaming_v1.GetDeviceSessionRequest(
name="name_value",
)
# Make the request
response = await client.get_device_session(request=request)
# Handle the response
print(response)
Parameters | |
---|---|
Name | Description |
request |
Optional[Union[google.cloud.devicestreaming_v1.types.GetDeviceSessionRequest, dict]]
The request object. Request message for DirectAccessService.GetDeviceSession. |
name |
Required. Name of the DeviceSession, e.g. "projects/{project_id}/deviceSessions/{session_id}" This corresponds to the |
retry |
google.api_core.retry_async.AsyncRetry
Designation of what errors, if any, should be retried. |
timeout |
float
The timeout for this request. |
metadata |
Sequence[Tuple[str, Union[str, bytes]]]
Key/value pairs which should be sent along with the request as metadata. Normally, each value must be of type |
Returns | |
---|---|
Type | Description |
google.cloud.devicestreaming_v1.types.DeviceSession |
Protobuf message describing the device message, used from several RPCs. |
get_mtls_endpoint_and_cert_source
get_mtls_endpoint_and_cert_source(
client_options: typing.Optional[
google.api_core.client_options.ClientOptions
] = None,
)
Return the API endpoint and client cert source for mutual TLS.
The client cert source is determined in the following order:
(1) if GOOGLE_API_USE_CLIENT_CERTIFICATE
environment variable is not "true", the
client cert source is None.
(2) if client_options.client_cert_source
is provided, use the provided one; if the
default client cert source exists, use the default one; otherwise the client cert
source is None.
The API endpoint is determined in the following order:
(1) if client_options.api_endpoint
if provided, use the provided one.
(2) if GOOGLE_API_USE_CLIENT_CERTIFICATE
environment variable is "always", use the
default mTLS endpoint; if the environment variable is "never", use the default API
endpoint; otherwise if client cert source exists, use the default mTLS endpoint, otherwise
use the default API endpoint.
More details can be found at https://google.aip.dev/auth/4114.
Parameter | |
---|---|
Name | Description |
client_options |
google.api_core.client_options.ClientOptions
Custom options for the client. Only the |
Exceptions | |
---|---|
Type | Description |
google.auth.exceptions.MutualTLSChannelError |
If any errors happen. |
Returns | |
---|---|
Type | Description |
Tuple[str, Callable[[], Tuple[bytes, bytes]]] |
returns the API endpoint and the client cert source to use. |
get_transport_class
get_transport_class(
label: typing.Optional[str] = None,
) -> typing.Type[
google.cloud.devicestreaming_v1.services.direct_access_service.transports.base.DirectAccessServiceTransport
]
Returns an appropriate transport class.
Parameter | |
---|---|
Name | Description |
label |
typing.Optional[str]
The name of the desired transport. If none is provided, then the first transport in the registry is used. |
list_device_sessions
list_device_sessions(
request: typing.Optional[
typing.Union[
google.cloud.devicestreaming_v1.types.service.ListDeviceSessionsRequest,
dict,
]
] = None,
*,
parent: typing.Optional[str] = None,
retry: typing.Optional[
typing.Union[
google.api_core.retry.retry_unary_async.AsyncRetry,
google.api_core.gapic_v1.method._MethodDefault,
]
] = _MethodDefault._DEFAULT_VALUE,
timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
metadata: typing.Sequence[typing.Tuple[str, typing.Union[str, bytes]]] = ()
) -> (
google.cloud.devicestreaming_v1.services.direct_access_service.pagers.ListDeviceSessionsAsyncPager
)
Lists DeviceSessions owned by the project user.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import devicestreaming_v1
async def sample_list_device_sessions():
# Create a client
client = devicestreaming_v1.DirectAccessServiceAsyncClient()
# Initialize request argument(s)
request = devicestreaming_v1.ListDeviceSessionsRequest(
parent="parent_value",
)
# Make the request
page_result = client.list_device_sessions(request=request)
# Handle the response
async for response in page_result:
print(response)
Parameters | |
---|---|
Name | Description |
request |
Optional[Union[google.cloud.devicestreaming_v1.types.ListDeviceSessionsRequest, dict]]
The request object. Request message for DirectAccessService.ListDeviceSessions. |
parent |
Required. The name of the parent to request, e.g. "projects/{project_id}" This corresponds to the |
retry |
google.api_core.retry_async.AsyncRetry
Designation of what errors, if any, should be retried. |
timeout |
float
The timeout for this request. |
metadata |
Sequence[Tuple[str, Union[str, bytes]]]
Key/value pairs which should be sent along with the request as metadata. Normally, each value must be of type |
Returns | |
---|---|
Type | Description |
google.cloud.devicestreaming_v1.services.direct_access_service.pagers.ListDeviceSessionsAsyncPager |
Response message for DirectAccessService.ListDeviceSessions. Iterating over this object will yield results and resolve additional pages automatically. |
parse_common_billing_account_path
parse_common_billing_account_path(path: str) -> typing.Dict[str, str]
Parse a billing_account path into its component segments.
parse_common_folder_path
parse_common_folder_path(path: str) -> typing.Dict[str, str]
Parse a folder path into its component segments.
parse_common_location_path
parse_common_location_path(path: str) -> typing.Dict[str, str]
Parse a location path into its component segments.
parse_common_organization_path
parse_common_organization_path(path: str) -> typing.Dict[str, str]
Parse a organization path into its component segments.
parse_common_project_path
parse_common_project_path(path: str) -> typing.Dict[str, str]
Parse a project path into its component segments.
parse_device_session_path
parse_device_session_path(path: str) -> typing.Dict[str, str]
Parses a device_session path into its component segments.
update_device_session
update_device_session(
request: typing.Optional[
typing.Union[
google.cloud.devicestreaming_v1.types.service.UpdateDeviceSessionRequest,
dict,
]
] = None,
*,
device_session: typing.Optional[
google.cloud.devicestreaming_v1.types.service.DeviceSession
] = None,
update_mask: typing.Optional[google.protobuf.field_mask_pb2.FieldMask] = None,
retry: typing.Optional[
typing.Union[
google.api_core.retry.retry_unary_async.AsyncRetry,
google.api_core.gapic_v1.method._MethodDefault,
]
] = _MethodDefault._DEFAULT_VALUE,
timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
metadata: typing.Sequence[typing.Tuple[str, typing.Union[str, bytes]]] = ()
) -> google.cloud.devicestreaming_v1.types.service.DeviceSession
Updates the current DeviceSession to the fields described by the update_mask.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import devicestreaming_v1
async def sample_update_device_session():
# Create a client
client = devicestreaming_v1.DirectAccessServiceAsyncClient()
# Initialize request argument(s)
device_session = devicestreaming_v1.DeviceSession()
device_session.android_device.android_model_id = "android_model_id_value"
device_session.android_device.android_version_id = "android_version_id_value"
request = devicestreaming_v1.UpdateDeviceSessionRequest(
device_session=device_session,
)
# Make the request
response = await client.update_device_session(request=request)
# Handle the response
print(response)
Parameters | |
---|---|
Name | Description |
request |
Optional[Union[google.cloud.devicestreaming_v1.types.UpdateDeviceSessionRequest, dict]]
The request object. Request message for DirectAccessService.UpdateDeviceSession. |
device_session |
DeviceSession
Required. DeviceSession to update. The DeviceSession's |
update_mask |
Optional. The list of fields to update. This corresponds to the |
retry |
google.api_core.retry_async.AsyncRetry
Designation of what errors, if any, should be retried. |
timeout |
float
The timeout for this request. |
metadata |
Sequence[Tuple[str, Union[str, bytes]]]
Key/value pairs which should be sent along with the request as metadata. Normally, each value must be of type |
Returns | |
---|---|
Type | Description |
google.cloud.devicestreaming_v1.types.DeviceSession |
Protobuf message describing the device message, used from several RPCs. |