Alibaba Cloud Workspace Web SDK は、Web クライアント用のオープン API を提供します。この API を使用して、Elastic Desktop Service (EDS) のクラウドコンピューター、クラウドアプリケーション、およびクラウドフォンに接続できます。Web SDK を統合することで、必要に応じて Web クライアントを迅速にカスタマイズおよび構築できます。
1. クイックスタート
1.1 SDK とデモの取得
リソース
Web クライアント SDK のダウンロード
Web.SDK.Demo のダウンロード
このプラットフォーム上のすべてのドキュメント、SDK、およびクライアントプログラムは、個人または企業での使用のみを目的としています。Alibaba Cloud の同意なしに、第三者に配布することは許可されていません。
ディレクトリ構造
├── WuyingWebDemo.html // SDK サンプル。
├── WuyingWebSDK.js // SDK API ファイル。フロントエンドページでこのファイルを参照します。
└── sdk // iframe 埋め込みリソースファイル
└── ASP
└── container.htmlWeb.SDK.Demo は Vue プロジェクトです。プロジェクトを開始するには、次のステップを実行します。
コマンドラインインターフェイス (CLI) で次のコマンドを実行して、ローカル環境に Node.js がインストールされているかどうかを確認します。
nodeWelcome to Node.jsメッセージが表示された場合、Node.js はインストールされています。メッセージが表示されない場合は、Node.js をインストールする必要があります。
次のコマンドを実行して、Vue プロジェクトのルートディレクトリに移動します。
説明<ProjectRootPath>を Vue プロジェクトのルートディレクトリの実際のパスに置き換えます。cd <ProjectRootPath>次のコマンドを実行して、プロジェクトの依存関係をインストールします。
npm i次のコマンドを実行して、プロジェクトを開始します。
npm run devコマンドが実行されると、アクセス可能な URL が返されます。
WuyingWebDemo.html を開始するには、次のステップを実行します。
次のコマンドを実行して、HTML ファイルが配置されているディレクトリに移動します。
説明<HTMLPath>を HTML ファイルが配置されているディレクトリの実際のパスに置き換えます。cd <HTMLPath>次のコマンドを実行して、HTTP サーバーを開始します。
python3 -m http.serverブラウザで
http://localhost:8000/WuyingWebDemo.htmlを開きます。
1.2 統合フロー
1.3 ベストプラクティス
ソリューションの詳細については、「クラウドフォン統合のベストプラクティス」をご参照ください。次の図は、全体的な統合ソリューションを示しています。
SDK がクラウドフォンに接続するために必要なチケットを取得するには、複数のログイン方法が利用できます。次の図は、そのフローチャートです。
具体的なコードについては、ライフサイクル API のサンプルコードをご参照ください。
2. ライフサイクル API
2.1 セッションの初期化と作成
// チケットを使用してセッションを作成します。
var userInfo = {
ticket: 'xxx',
};
var appInfo = {
osType: 'Android', // 必須
appId: "android",
appInstanceId: "ai-xxxxxx", // appInstanceId は ai- で始まります。
productType: "AndroidCloud",
connectionProperties: JSON.stringify({ authMode: "Session" }) ,
};
var sessionParam = {
openType: openType,
iframeId: 'sessionIframe',
resourceType: "local",
connectType: 'app',
userInfo: userInfo,
appInfo: appInfo,
};
var wuyingSdk = Wuying.WebSDK;
session = wuyingSdk.createSession('appstream', sessionParam);// authCode を使用してセッションを作成します。
var userInfo = {
sessionId: sessionId,
authCode: authCode,
};
var appInfo = {
osType: 'Android', // 必須
appId: "android",
resourceId: "p-xxxxxx", // resourceId は p- で始まります。
productType: "AndroidCloud",
connectionProperties: JSON.stringify({ authMode: "Session" }) ,
};
var sessionParam = {
openType: openType,
iframeId: 'sessionIframe',
resourceType: "local",
connectType: 'app',
userInfo: userInfo,
appInfo: appInfo,
};
var wuyingSdk = Wuying.WebSDK;
session = wuyingSdk.createSession('appstream', sessionParam);// loginToken または stsToken を使用してセッションを作成します。
var userInfo = {
sessionId: sessionId,
loginToken: loginToken,
};
var appInfo = {
osType: 'Android', // 必須
appId: "android",
resourceId: "p-xxxxxx", // resourceId は p- で始まります。
productType: "AndroidCloud",
connectionProperties: JSON.stringify({ authMode: "Session" }) ,
};
var sessionParam = {
openType: openType,
iframeId: 'sessionIframe',
resourceType: "local",
connectType: 'app',
userInfo: userInfo,
appInfo: appInfo,
};
var wuyingSdk = Wuying.WebSDK;
session = wuyingSdk.createSession('appstream', sessionParam);createSession パラメーター
パラメーター | タイプ | 必須 | 説明 |
id | string | はい | 定数です。クラウドフォンの値は appstream です。 |
sessionParams | SessionParam | はい | セッションを作成するためのパラメーターです。詳細については、「4.1 SessionParam」をご参照ください。 |
sessionParams パラメーター
userInfo:
sessionId:GetLoginToken または GetStsToken を呼び出して取得する SessionId です。authCode:GetAuthCode API 操作を呼び出して取得します。loginToken:GetLoginToken API を呼び出して取得します。
ログイン方法には、権限付与なしのログインと簡便アカウントでのログインの 2 種類があります。簡便アカウントでのログインは Alibaba Cloud Workspace のユーザーシステムに依存します。権限付与なしのログインでは、独自のユーザーシステムを使用できます。権限付与なしのログインの認証パラメーターは authCode です。簡便アカウントでのログインの認証パラメーターは loginToken です。ticket はインスタンスに接続するための認証情報です。loginToken と authCode はどちらも、最終的にインスタンスに接続するためのチケットに変換されます。authCode、ticket、loginToken のいずれかのパラメーターを指定する必要があります。
appInfo:インスタンスに関する情報。
resourceId:簡便アカウントでログインする場合、クライアントで DescribeUserResources 操作を呼び出して `ResourceId` の値を取得できます。
権限付与なしでログインする場合、サーバーで DescribeAndroidInstances 操作を呼び出して `PersistentAppInstanceId` の値を取得できます。
openType:クラウドフォンを起動する方法です。詳細については、このトピックの openType 列挙型の定義をご参照ください。
2.2 接続の確立
session.start();2.3 接続の終了
session.stop();2.4 コールバックの説明
コールバック API: addHandle(name: SessionEventType, callback: Function)
コールバック API パラメーター:
名前 | タイプ | 説明 |
name | string | リッスンするイベントのタイプです。詳細については、5.9 SessionEventType 列挙型の定義をご参照ください。 |
callback | Function | コールバック関数です。 |
コールバックコードのサンプル:
session.addHandle('getConnectionTicketInfo', (data) => {
console.log(data);
});
session.addHandle('onConnected', (data) => {
console.log('connected', data);
});
session.addHandle('onDisConnected', (data) => {
console.log('disconnect', data);
});
session.addHandle('onRuntimeMsg', (data) => {
document.getElementById('GuestMsgContext').value = JSON.stringify(data);
});3. ビジネス API
API | 説明 |
WebSDK.apiVersion | Web SDK の現在のバージョン番号を取得します。タイプは |
setInputEnabled(param: boolean) enableInput(param: boolean) | 入力操作を有効または無効にします。
|
enableKeyBoard(param: boolean) | モバイルクライアントでキーボードを起動するかどうかを指定します。 |
setClipboardEnabled(param: boolean) | クリップボードコントロールを有効にするかどうかを指定します。 |
setMicrophoneEnabled(param: boolean) | マイクコントロールを有効にするかどうかを指定します。 |
setTouchEnabled(param: boolean) | タッチコントロールを有効にするかどうかを指定します。 |
setUiParams(param: UiConfig) | セッション確立後に、メニューの表示や横向きモードの強制など、UI 設定を動的に設定します。 説明 UiConfig の詳細については、「4.4 UiConfig」をご参照ください。 コードサンプル: |
dataChannel | クライアントとクラウドがデータを送受信するためのカスタムトンネルです。 |
lyncChannel | クライアントが ADB コマンドを送信するためのチャンネルです。 |
4. パラメーターの詳細
4.1 SessionParam
セッションを作成するためのパラメーターです。
パラメーター | タイプ | 必須 | 説明 |
openType | OpenType | はい | ページを埋め込み iframe で開くか、新しいタブで開くかを指定します。 |
iframeId | string | いいえ | ページを iframe で開く場合は、iframeId を指定する必要があります。 |
sdkPath | string | いいえ | SDK ファイルのパスです。このパラメーターを空のままにすると、 |
resourceType | ResourceType | はい | ローカル接続ページのオープンのみがサポートされています。 |
connectType | ConnectType | はい | クラウドフォンを起動するか、クラウドコンピューターを起動するかを指定します。 |
isOverseas | boolean | いいえ | アクセスが中国本土以外からであるかどうかを指定します。デフォルト値:false。 |
userInfo | UserInfo | はい | ユーザーのログインステータス情報です。 |
regionId | string | はい | クラウドフォンを起動する際に必須です。値はクラウドフォンが配置されているリージョンです。 |
appInfo | AppInfo | いいえ | クラウドフォンに関する情報です。 |
fileInfo | FileInfo | いいえ | クラウドドライブに関する情報です。 |
uiConfig | UiConfig | いいえ | UI 設定です。 |
logDisabled | bool | いいえ | ARMS 統計を無効にするかどうかを指定します。デフォルト値:false。この値は ARMS 統計が無効になっていないことを示します。 |
loginType | LoginType | いいえ | デフォルトのログイン方法は Alibaba Cloud Workspace アカウントを使用することです。 |
networkAccessType | string | いいえ | デフォルトでは、このパラメーターは空のままです。VPC ログインがサポートされています。 |
4.2 UserInfo
ユーザーのログインステータス情報です。authCode、ticket、または loginToken のいずれかのパラメーターを指定する必要があります。authCode は権限付与なしのログインに使用されます。loginToken は簡便アカウントでのログインに使用されます。ticket は authCode または loginToken のいずれかを使用して API を呼び出すことによって取得されます。
パラメーター | タイプ | 必須 | 説明 |
authCode | string | はい | 最も高い優先度を持つワンタイムログイン認証情報です。 |
ticket | string | はい | バージョン 1.4.7 以降では、チケットを直接渡して接続を確立できます。 |
loginToken | string | はい | 簡便アカウントでのログイン用の認証情報です。 |
sessionId | string | はい | GetLoginToken または GetStsToken を呼び出して取得される SessionId です。 |
4.3 AppInfo
クラウドフォンを起動するためのパラメーターです。
パラメーター | タイプ | 必須 | 説明 |
osType | string | はい | 定数値は Android です。 |
appId | string | はい | PersistentAppInstanceId を入力します。例:p-0caoet4e18cui****。 |
appVersion | string | いいえ | 起動するアプリケーションのバージョンです。 |
loginRegionId | string | はい | クラウドフォンのリソースが配置されているリージョンです。 |
connConfig | ConnConfig | いいえ | 接続設定パラメーターです。 |
appInstanceGroupId | string | いいえ | 配信グループ ID です。 |
appInstanceId | string | いいえ | インスタンス ID です。このパラメーターは、チケットを使用して接続を確立する場合に必須です。例:ai-0cc7s3n1iagyq****。 |
taskId | string | いいえ | アプリケーション起動タスク ID です。 |
bizRegionId | string | いいえ | アプリケーションリソースが配置されているリージョンです。 |
productType | string | いいえ | 配信グループのタイプです。クラウドフォンの場合、デフォルト値は |
4.4 UiConfig
接続ページの UI 設定です。
パラメーター | タイプ | 必須 | 説明 |
toolbar | ToolBarConfig | いいえ | 接続ページのツールバーの表示設定です。 |
exitCheck | bool | いいえ | 現在のページを終了する際にブラウザで二次確認を有効にするかどうかを指定します。この機能はデフォルトで有効になっています。 |
rotateDegree | number | いいえ | 横向きモードを強制するかどうかを指定します。 |
vconsoleVisiable | bool | いいえ | vconsole デバッグボックスを表示するかどうかを指定します。 |
debugPanelVisiable | bool | いいえ | ビットストリーム、フレームレート、その他の情報の情報ボックスを表示するかどうかを指定します。 |
reconnectType | ReconnectType | いいえ | 再接続プロンプトボックスのスタイルです。 |
defaultResolution | ResolutionType | いいえ | 初回接続時のデフォルト解像度です。デフォルト値:'A'。 |
language | Language | いいえ | 内部ポップアッププロンプトの言語です。デフォルト値:簡体字中国語。 |
allowErrorDialog | bool | いいえ | エラーポップアップウィンドウを表示するかどうかを指定します。 |
backgroundColor | string | いいえ | 読み込みプロセス用のカスタム背景です。 |
backgroundImg | string | いいえ | 読み込みプロセス用のカスタムイメージです。 |
4.5 ToolBarConfig
ツールバーの表示設定です。
パラメーター | タイプ | 必須 | 説明 |
visible | bool | いいえ | ツールバーを表示するかどうかを指定します。 |
noMenu | bool | いいえ | DesktopAssistant がコンテキストメニューの表示をサポートするかどうかを指定します。デフォルト値: |
4.6 ConnConfig
接続設定パラメーターです。
パラメーター | タイプ | 必須 | 説明 |
decodeType | ConnDecodeType (数値列挙型) | いいえ | コーディング設定です。 |
playSoundBackground | bool | いいえ | バックグラウンドに切り替えた後もサウンドを再生し続けるかどうかを指定します。 |
5. 列挙型
5.1 OpenType
クラウドフォンを起動する方法です。
列挙型 | 説明 |
newTab | 新しいタブで開きます。 |
inline | 埋め込み iframe ページで開きます。 |
urlScheme | ローカルのネイティブクライアントでのオープンをサポートします。このオプションには、Alibaba Cloud Workspace クライアント V6.2 以降をインストールする必要があります。 |
5.2 ConnectType
クラウドコンピューターを起動するか、クラウドフォンを起動するかを指定します。
列挙型 | 説明 |
app | クラウドフォンを起動します。 |
desktop | クラウドコンピューターを起動します。 |
現在、クラウドフォンでは app タイプが再利用されています。クラウドフォンに接続する際は、connectType を app に設定します。
5.3 ResourceType
ローカル接続ページを開くか、Alibaba Cloud Workspace Web クライアントを開くかを指定します。
列挙型 | 説明 |
local | ローカル接続の HTML ページを開きます。 |
クラウドフォンの統合では、このパラメーターを local に設定します。
5.4 ReconnectType
再接続プロンプトのポップアップウィンドウの UI です。
列挙型 | 説明 |
simple | シンプルな読み込みスタイルです。 |
normal | カウントダウンポップアップウィンドウです。 |
5.5 ResolutionType
初回接続時のデフォルト解像度です。ユーザーが優先解像度を設定している場合は、その解像度が代わりに使用されます。
列挙型 | 説明 |
A | 速度優先。現在のウィンドウサイズです。 |
B | 品質優先。現在のウィンドウサイズに window.devicePixelRatio を掛けたものです。 |
5.6 ChargeType
クラウドフォンの課金方法です。
列挙型 | 説明 | サポートされているバージョン |
PostPaid | 従量課金 | 1.4.0 以降 |
PrePaid | サブスクリプション | 1.4.0 以降 |
5.7 Language
言語設定です。デフォルト値:zh-CN。
列挙型 | 説明 |
zh-CN | 簡体字中国語 |
en-US | 英語 |
ja-JP | 日本語 |
5.8 LoginType
クラウドフォンにログインする方法です。
列挙型 | 説明 |
aliyunLogin | Alibaba Cloud アカウントでログインします。 |
normalLogin | Alibaba Cloud Workspace アカウントでログインします。クラウドフォンは |
5.9 SessionEventType
セッションイベントタイプのマッピングです。これにはクラウドフォンイベントの説明が含まれます。
列挙型 | 説明 | サポートされているバージョン |
getConnectionTicketInfo | クラウドフォンへの接続イベントです。 | 1.0.0 以降 |
onConnected | クラウドフォンへの接続確立イベントです。 | 1.0.0 以降 |
onDisConnected | クラウドフォンからの切断イベントです。 | 1.0.0 以降 |
onRuntimeMsg | ランタイムから SDK に送信されるメッセージです。 | 1.1.0 以降 |
networkData | ネットワークパフォーマンスパラメーターです。 | 1.3.1 以降 |
onError | 接続プロセス中に発生したエラーを受信します。 | 1.4.1 以降 |
5.10 ConnDecodeType
ストリームのデコードタイプです。
列挙型 | 説明 | サポートされているバージョン |
0 | ソフトウェアデコード | 1.2.0 以降 |
1 | ハードウェアデコード | 1.2.0 以降 |
2 | WebRTC | 1.2.0 以降 |
5.11 プロトコルタイプ
接続プロトコルのタイプです。
列挙型 | 説明 | サポートされているバージョン |
ASP | Alibaba Cloud 独自の ASP プロトコルです。クラウドフォンは ASP プロトコルのみをサポートします。 | 1.3.0 以降 |
HDX | Citrix プロトコル | 1.3.0 以降 |
6. エラーコード
6.1 onDisconnected: 接続切断エラーの受信
コード | 名前 | 説明 |
0 | ASP_CLIENT_DISCONNECT_CONNECT_ERROR | 接続が切断されました。 |
1 | ASP_CLIENT_DISCONNECT_SOCKET_CLOSE | ソケットが閉じられました。 |
2 | ASP_CLIENT_DISCONNECT_WEBRTC_CLOSE | WebRTC が閉じられました。 |
25 | チケットの検証に失敗しました。ユーザーが切断された後、同じチケットを使用して再度接続をリクエストした場合も、このエラーがトリガーされます。 | |
2001 | ASP_CLIENT_DISCONNECT_CLOUD_APP_STOP | クラウドアプリケーションが閉じられました。 |
2002 | ASP_CLIENT_DISCONNECT_CLIENT_PREEMPTION | 現在のクラウドフォンが占有されました。 |
2003 | ASP_CLIENT_DISCONNECT_GUEST_SHUTDOWN_REBOOT | ゲストが再起動されました。 |
2004 | 現在のユーザーが切断されました。 | |
2027 | ストリームフェッチングモードが切り替わりました。 | |
2200 | ASP_CLIENT_RTT_TIMEOUT | RTT タイムアウト。 |
2201 | ASP_CLIENT_NET_ERROR_IO | ネットワーク I/O エラー。 |
2202 | ASP_CLIENT_UPDATE_TICKET_FAILED | チケットの更新に失敗しました。 |
6.2 onError: 接続プロセスエラーの受信
フォーマット:{code: string, message: string, api: string}。message パラメーターには requestId が含まれ、api パラメーターはエラーを報告したリクエストを指定します。
エラーコード | 説明 |
AccountNotAvailable | ドメインアカウントがロックされているか、無効になっているか、または期限切れです。IT 管理者またはシステムドメインコントローラーの管理者に連絡して問題を解決してください。 |
ClientLockedForAliasFailed | 不正な試行回数が上限に達しました。5 分後にもう一度お試しください。 |
content-monthpackageenterpostpaidphase | このクラウドフォンの月額サブスクリプションパッケージは使い切りました。クラウドフォンを起動またはウェイクアップすると、従量課金制で課金されます。 |
content-recordingscreen | 企業の IT 管理者が、ご利用のクラウドフォンの画面録画および監査機能を有効にしました。クラウドフォンでのすべての操作は記録されます。画面録画および監査機能についてご不明な点がある場合は、管理者に連絡してください。 |
desktop-AgentUnbinding | 以前に接続した一時的なクラウドフォンが関連付け解除中のため、新しい一時的なクラウドフォンへの接続に失敗しました。後でもう一度接続してみてください。 |
desktop-AssignUserFailed | クラウドフォンの割り当てに失敗しました。後でもう一度お試しください。 |
desktop-ConnectTicket.Timeout | 接続タイムアウトのため、クラウドフォンへの接続に失敗しました。クラウドフォンを再起動してから、もう一度接続してください。 |
desktop-DesktopAgentFileLose | クラウドフォンのコアプロセスファイルが失われたため、接続に失敗しました。クラウドフォンを再起動して、もう一度接続してください。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-DesktopContainSecuritySoftware | セキュリティソフトウェアがインストールされているため、このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。IT 管理者に連絡してセキュリティソフトウェアを終了してから、もう一度接続してください。 |
desktop-DesktopContainVpn | VPN ソフトウェアがインストールされているため、このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-DesktopGuestStop | このクラウドフォンが「実行中」の状態ではないため、接続に失敗しました。 |
desktop-DesktopNetworkAnomaly | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-DesktopNetworkError | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-DesktopResourceStatusInvalid | Elastic Compute Service (ECS) インスタンスが実行中の状態ではないため、クラウドフォンへの接続に失敗しました。クラウドフォンを再起動してから、もう一度接続してください。 |
desktop-DesktopResourceStop | ECS インスタンスがシャットダウンされているため、クラウドフォンへの接続に失敗しました。クラウドフォンを再起動してから、もう一度接続してください。 |
desktop-DesktopsUnderMaintenance | このクラウドフォンが「実行中」の状態ではないため、接続に失敗しました。 |
desktop-DesktopUnavailable | 接続に失敗しました。後でもう一度お試しください。それでも接続に失敗する場合は、IT 管理者に連絡してこのクラウドフォンのステータスを更新してください。 |
desktop-DistributeLockFailed | 一時的なクラウドフォンに接続しているユーザーが多すぎるため、接続に失敗しました。後でもう一度接続してみてください。 |
desktop-GENERAL_ERROR | サービスエラーが発生しました。クラウドフォンに再接続してください。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-GET_TICKET_LOCK | クラウドフォンの接続リクエストが頻繁すぎます。後でもう一度お試しください。 |
desktop-INSUFFICIENT_QUOTA | IT 管理者アカウントのクラウドフォンクォータが不足しているため、利用可能な一時的なクラウドフォンがありません。O&M の支援については、IT 管理者に連絡してください。 |
desktop-INTERNAL_ERROR | サービスエラーが発生しました。クラウドフォンに再接続してください。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-InvalidBundleId.NotFound | このクラウドフォンのイメージテンプレートは異常です。IT 管理者に連絡してください。 |
desktop-InvalidClientIp.Policy | IT 管理者が IP アドレスホワイトリストポリシーを設定しているため、現在の IP 環境ではこのクラウドフォンに接続できません。IT 管理者に連絡してください。 |
desktop-InvalidClientType.AccessDenied | IT 管理者は、このクライアントでこのクラウドフォンを実行することを禁止しました。このクラウドフォンを引き続き使用するには、IT 管理者に連絡してください。 |
desktop-InvalidDesktopId.NotFound | IT 管理者は、このクラウドフォンを使用する権限を取り消しました。 |
desktop-InvalidDesktopId.Status | このクラウドフォンが「実行中」の状態ではないため、接続に失敗しました。 |
desktop-InvalidDesktopStatus.NotRunning | サーバーエラーのため、クラウドフォンのシャットダウンに失敗しました。後でもう一度試すか、IT 管理者に連絡してください。 |
desktop-InvalidDesktopStatus.NotStopped | サーバーエラーのため、クラウドフォンの起動に失敗しました。後でもう一度試すか、IT 管理者に連絡してください。 |
desktop-InvalidDesktopStatusInvalid | このクラウドフォンが実行中の状態ではないため、接続に失敗しました。 |
desktop-InvalidLiteConnectionCheck | プロトコルサービスエラーのため、クラウドフォンへの再接続に失敗しました。もう一度接続してみてください。 |
desktop-NoEnoughDesktops | IT 管理者の設定により、一時的なクラウドフォンを割り当てることができません。IT 管理者に連絡してください。 |
desktop-NotFindDesktopId | このクラウドフォンは IT 管理者によってリリースされました。 |
desktop-NotFoundUserDesktop | IT 管理者は、このクラウドフォンを使用する権限を取り消しました。 |
desktop-PermissionDeny.Desktop | IT 管理者が権限を取り消しました。クラウドフォンを引き続き使用するには、IT 管理者に連絡して再度権限を付与してもらってください。 |
desktop-RES_GW_ERROR | サービスエラーが発生しました。クラウドフォンに再接続してください。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-SDK.ReadTimeout | サービスエラーが発生しました。クラウドフォンに再接続してください。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-ServiceUnavailable | サービス接続がタイムアウトしました。クラウドフォンに再接続してください。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-THROTTLING_USER | サービスエラーが発生しました。クラウドフォンに再接続してください。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-UnavailableDesktop | クラウドフォンのログインがタイムアウトしました。この問題を解決するには、クラウドフォンに再接続するか、再起動します。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-UnavailableDesktop.2901 | プロトコルサービスとクラウド環境間の接続に失敗したため、クラウドフォンへの接続に失敗しました。この問題を解決するには、クラウドフォンを再起動できます。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-UnavailableDesktop.2902 | プロトコルサービスが応答しなかったため、クラウドフォンへの接続に失敗しました。この問題を解決するには、クラウドフォンを再起動できます。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-UnavailableDesktop.2903 | クラウド環境のエラーのため、クラウドフォンへの接続に失敗しました。この問題を解決するには、クラウドフォンを再起動できます。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-UnavailableDesktop.2904 | クラウド環境のエラーのため、クラウドフォンへの接続に失敗しました。この問題を解決するには、クラウドフォンを再起動できます。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-UnavailableDesktop.2905 | このクラウドフォンは複数のユーザーに割り当てられているため、別のユーザーのセッションからログオフする際にタイムアウトが発生し、接続に失敗しました。クラウドフォンに再接続するか、再起動してください。 |
desktop-UnavailableDesktop.2906 | システムログイン中に応答タイムアウトが発生したため、接続に失敗しました。クラウドフォンに再接続するか、再起動してください。 |
desktop-UnavailableDesktop.2907 | プロトコルサービスがまだ起動中のため、クラウドフォンへの接続に失敗しました。後で再接続するか、クラウドフォンを再起動してください。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
desktop-UnavailableDesktop.NotRegistered | IT 管理者がこのクラウドフォンを削除しました。 |
desktop-UnavailableDesktop.ServerNotReady | システムログイン中にエラーが発生したため、接続に失敗しました。IT 管理者に連絡して、クラウドフォンを使用する権限を再度付与してもらってください。 |
desktop.linux-UnavailableDesktop.AuthFailed | ドメインのデタッチの問題により、クラウドフォンへの接続に失敗した可能性があります。クラウドフォンを再起動してから再度接続するか、IT 管理者に連絡してください。 |
DesktopNetworkError.AbortBySoftware | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.BadHandShake | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.BindAddressFailed | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.ConnectAddressFailed | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.ConnectionClosedError | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.ConnectionRefusedError | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.ConnectionResetError | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.ConnectionTimeout | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.DnsLookupFailed | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.Forbidden | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.ReceivedUnexpectedEOF | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.SystemOutOfResource | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopNetworkError.UnKnowError | このクラウドフォンのネットワークは異常です。クラウド環境と管理サービス間の接続が中断されました。この問題を解決するには、クラウドフォンを再起動できます。 |
DesktopStatus-Desc-Updating | このクラウドフォンの設定が変更中です。クラウドフォンは一時的に利用できません。 |
DesktopStatus-Repairing | 修復中 |
DesktopStatus-Updating | スペックアップ/スペックダウン中 |
DeviceNotInManage | ログインに失敗しました。オフィスネットワークまたは組織で信頼済みデバイス認証が有効になっています。管理者に信頼済みデバイス認証を無効にするか、現在の端末を信頼済みデバイスとして手動で追加するよう依頼してください。 |
DirectoryLoginUnsupported | 入力された情報が正しくありません。組織 ID を使用してログインしてください。 |
DomainFailed | システムがドメインに追加されなかったため、クラウドフォンへの接続に失敗しました。 |
DomainRelationshipFailed | システムドメインの関係が異常なため、クラウドフォンへの接続に失敗しました。 |
ExistedEmail | メールアドレスは既に使用されています。別のメールアドレスを入力してください。 |
ExistedEndUserId | ユーザー名は既に使用されています。別のユーザー名を入力してください。 |
ExistedPhoneNumber | 携帯電話番号は既に使用されています。別の携帯電話番号を入力してください。 |
ExpiredEmailVerifyCode | メール検証コードの有効期限が切れています。もう一度取得してください。 |
FailedToSendEmailVerifyCode | メール検証コードの取得に失敗しました。もう一度お試しください。 |
ForbidByClientVersionForBusiness | 組織 ID はビジネス版用です。ログインするには、現在のクライアントを最新バージョンにアップグレードする必要があります。 |
ForbidByPasswordPolicy | パスワードの変更に失敗しました。IT 管理者が「ログインパスワードの変更」機能を無効にしています。 |
FOTA_DESKTOP_IN_USE | クラウドフォン「%s」は使用中です。接続を切断してから、もう一度更新してみてください。 |
FOTA_SNAPSHOT_IN_PROGRESS | クラウドフォン「%s」のシステムスナップショットが作成中のため、イメージを更新できません。後でもう一度お試しください。 |
GuestOperateDesktopFail | クラウドフォンのシャットダウンまたは再起動に失敗しました。 |
GuestOperateDesktopTimeout | クラウドフォンで実行したシャットダウンまたは再起動操作は、応答タイムアウトのため失敗しました。 |
GuestRebootOperateFail | クラウドフォンの再起動に失敗しました。 |
GuestRebootOperateTimeout | クラウドフォンで実行した再起動操作は、応答タイムアウトのため失敗しました。 |
GuestStopOperateFail | クラウドフォンのシャットダウンに失敗しました。 |
GuestStopOperateTimeout | クラウドフォンで実行したシャットダウン操作は、応答タイムアウトのため失敗しました。 |
InvalidDirectoryType | RAM ユーザーはオフラインです。IT 管理者に連絡してください。 |
InvalidEmailVerifyCode | メール検証コードが正しくありません。もう一度入力してください。 |
InvalidMfaDeviceStatus | 仮想多要素認証デバイスは無効です。アカウントに関連付けられているデバイスを使用してください。 |
InvalidPassword | ユーザー名またはパスワードが正しくありません。 |
LoginError.MissingConcatForVerify | このアカウントは管理者によって有効化されたアカウントであるため、ID 検証を完了できません。IT 管理者に連絡してください。 |
LoginForbidden | ログインに失敗しました。オフィスネットワークまたは組織で信頼済みデバイス認証が有効になっています。管理者に信頼済みデバイス認証を無効にするか、現在の端末を信頼済みデバイスとして手動で追加するよう依頼してください。 |
LoginForbidden.LockedByAdmin | 簡便アカウントはロックされています。IT 管理者に連絡して手動でロックを解除してもらってください。 |
LoginForbiddenByDevice | ログインに失敗しました。管理者は、この端末が特定のユーザーによってのみログインできることを指定しています。現在のアカウントは指定された範囲内にありません。 |
LoginForbiddenByUntrustedDevice | ログインに失敗しました。管理者が「信頼されていない端末のログインをブロック」を有効にしています。管理者はこの端末を信頼済みデバイスとして追加するか、この機能を無効にする必要があります。 |
LoginForbiddenByUser | ログインに失敗しました。管理者がユーザーログイン端末の制限を有効にしています。指定された端末からログインしてください。 |
MfaClientNotSupport | クライアントのバージョンが古すぎて、この多要素認証方法をサポートしていません。クライアントをアップグレードしてください。 |
MfaNotAllowed | アカウントにこの多要素認証方法に必要な情報がありません。IT 管理者に連絡して情報を追加してもらってください。 |
MfaTypeNotAllowed | IT 管理者がこの多要素認証方法を有効にしていません。 |
MfaUserGoingToBeLocked | 検証コードが正しくありません。10 回連続で間違ったコードを入力すると、アカウントは 20 分間ロックされます。 |
MfaUserNotExist | このアカウントは削除されました。詳細については、IT 管理者に連絡してください。 |
MfaVerifyCodeDiscarded | 検証コードは無効です。もう一度取得してください。 |
PhoneIsNotRegistered | 携帯電話番号が正しくないか、管理者が携帯電話番号をアカウントに関連付けていません。 |
SessionForceQuit | 自動的にログオフされました。原因:別の端末からログオフしたか、ログイン端末の数が IT 管理者によって設定された上限を超えました。 |
StartApplicationGuestTimeout | ネットワーク信号が不安定で、アプリケーションの起動に失敗しました。もう一度お試しください。 |
StartDesktopFail | クラウドフォンの起動に失敗しました。 |
ThrottlingSendEmailVerifyCodeLimit | 検証コードは 1 分に 1 回しか送信できません。 |
UnavailableDesktop.2907 | プロトコルサービスがまだ起動中のため、クラウドフォンへの接続に失敗しました。後で再接続するか、クラウドフォンを再起動してください。それでも接続に失敗する場合は、IT 管理者に連絡してください。 |
7. よくある質問
DesktopAssistant を無効にする方法
セッション作成 (createSession) フェーズで uiConfig を初期化する際に、DesktopAssistant を無効にできます。
uiConfig: {
toolbar: {
visible: false,
},
},ASP チャンネル経由で ADB コマンドを送信する方法
セッションを作成 (createSession) する際に lyncChannelConfig を初期化できます。
lyncChannelConfig: [
{
lyncChannelName: "lync_adb_shell",
},
],コマンドを送信する必要がある場合は、session.sendLyncMessage を呼び出すことができます。例:
session.sendLyncMessage(
"lync_adb_shell",
JSON. stringify({
id: crypto. randomUUID(),
cmd: 'input keyevent KEYCODE_VOLUME_UP',
})
);コマンド実行の結果を受け取るには、リスナー session.addLyncListener を追加できます。例:
session.addLyncListener('lync_adb_shell', 'onReceivedLyncData', data => console.log('data from lync_adb_shell', data));一般的なコマンド:
機能 | コマンド |
戻るキー | input keyevent KEYCODE_BACK |
ホームキー | input keyevent KEYCODE_HOME |
切り替えキー | input keyevent KEYCODE_APP_SWITCH |
ミュート | input keyevent 164 |
音量を上げる | input keyevent KEYCODE_VOLUME_UP |
音量を下げる | input keyevent KEYCODE_VOLUME_DOWN |
ナビゲーションバーを非表示 | setprop persist.wy.hasnavibar false; killall com.android.systemui |
ナビゲーションバーを表示 | setprop persist.wy.hasnavibar true; killall com.android.systemui |
スクリーンショットを撮る | screencap -p /sdcard/Download/abc.png |
カメラ使用に関するよくある質問
デモを使用してクラウドフォンに接続する場合、ブラウザがカメラの権限をコントロールします。そのため、カメラを正しく使用するには、デモの URL が https で始まる必要があります。
クライアントのフロントカメラまたはリアカメラのみが必要な場合など、特別なユースケースでは、次の設定を適用する必要があります。
// フロントカメラ
session.setLocalConfig('setCameraType', 1);
// リアカメラ
session.setLocalConfig('setCameraType', 2);クリップボード使用に関するよくある質問
クリップボードが機能しない
ブラウザでクリップボードの権限が有効になっているか確認してください。
クラウドフォンコンソールで、インスタンスに関連付けられているポリシーを確認し、クリップボードポリシーが双方向転送に対して有効になっていることを確認します。