1. Web SDKとは何ですか?
Alibaba Cloud Workspace SDK for Webを使用すると、Alibaba cloud Workspace webクライアントからクラウドコンピューターおよびアプリケーションに接続できます。 Alibaba Cloud Workspace SDK for Webと統合することで、ビジネス要件に合ったwebクライアントを迅速に設定できます。
2. クイックスタート
このプラットフォームのすべてのドキュメント、SDK、およびクライアントプログラムは、ユーザーまたは組織による使用が制限されています。 Alibaba Cloudの事前の同意なしに、これらのリソースを第三者または他の組織と共有してはなりません。
ディレクトリ構造
├── WuyingWebDemo.html
├── WuyingWebSDK.js
├── HDXEngine.html
├── HDXLauncher.js
└── sdk
└── ASP
└── container.html 説明: WuyingWebDemo.htmlはサンプルSDKです。 WuyingWebSDK.jsは、フロントエンドで参照する必要があるSDK内のAPIファイルです。 HDXEngine.htmlは、Citrix Workspaceに必要なファイルです。 必要がない場合は、ファイルを削除できます。 HDXLauncher.jsは、Citrix Workspaceに必要なファイルです。 必要がない場合は、ファイルを削除できます。 sdkは、iframeを使用して埋め込まれたリソースファイルです。
3. APIの説明
3.1 WebSDK
名前 | タイプ | 説明 |
apiVersion | String | Web SDKのバージョン。 |
createSession(sessionId:string, sessionParams: SessionParam)
クラウドコンピュータまたはアプリケーションのセッションを作成します。 このセッションは、バックエンドで割り当てられたセッションと同じではありません。
パラメーター | タイプ | 説明 |
id | String | セッションの一意の識別子。 このパラメーターはユーザー定義です。 |
sessionParams | SessionParam | セッションパラメーター。 |
var userInfo = {
loginToken: loginToken,
sessionId: sessionId,
authCode: authCode,
};
var appInfo = {
appId: appId,
appVersion: appVersion,
loginRegionId: 'cn-shanghai',
};
var sessionParam = {
openType: openType,
iframeId: 'sessionIframe',
resourceType: resourceType,
connectType: 'app',
userInfo: userInfo,
appInfo: appInfo,
};
var wuyingSdk = Wuying.WebSDK;
var session = wuyingSdk.createSession('appstream', sessionParam);3.2 メソッド
start(): セッションを作成します。
var session = wuyingSdk.createSession('appstream', sessionParam);
session.start();stop(): セッションを停止します。
var session = wuyingSdk.createSession('appstream', sessionParam);
session.start();
....
session.stop();addHandle (name: SessionEventType、callback: Function)
イベントのリスナーを追加します。
パラメーター | タイプ | 説明 |
name | String | リッスンするイベントのタイプ。 詳細については、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);
});
session.start();sendRuntimeMsg(msg: string, appId: string)
ゲストOSのアプリケーションにメッセージを送信します。
パラメーター | タイプ | 説明 |
msg | String | メッセージ。 |
appId | String | メッセージの送信先のアプリケーション。 |
var msg = document.getElementById('sendMsgTypeData').value;
var appId = document.getElementById('sendMsgAppId').value;
session.sendRuntimeMsg(msg, appId);enableInput(param: boolean)
マウスとキーボードからの入力を有効または無効にします。
パラメーター | タイプ | 説明 |
param | bool | マウスとキーボードからの入力を有効にするかどうかを指定します。 |
enableKeyBoard(param: boolean)
キーボードを有効または無効にします。
パラメーター | タイプ | 説明 |
param | bool | キーボードを有効にするかどうかを指定します。 |
setClipboardEnabled(param: boolean)
クリップボードを有効または無効にします。
パラメーター | タイプ | 説明 |
param | bool | クリップボードを有効にするかどうかを指定します。 |
setMicrophoneEnabled(param: boolean)
マイクを有効または無効にします。
パラメーター | タイプ | 説明 |
param | bool | マイクを有効にするかどうかを指定します。 |
setInputEnabled(param: boolean)
入力を有効または無効にします。
パラメーター | タイプ | 説明 |
param | bool | 入力を有効にするかどうかを指定します。 |
setTouchEnabled(param: boolean)
タッチイベントへの応答を有効または無効にします。
パラメーター | タイプ | 説明 |
param | bool | タッチイベントへの応答を有効にするかどうかを指定します。 |
downloadFile()
クラウドコンピュータでファイルのダウンロードウィンドウを開きます。
uploadFile (ファイル: ファイル)
ファイルをアップロードします。
パラメーター | タイプ | 説明 |
file | ファイル | アップロードするファイル。 |
enableDataIsland(enable: boolean)
実行時にデータアイランドを表示または非表示にします。
パラメーター | タイプ | 説明 |
enable | Boolean | 実行時にデータアイランドを表示するかどうかを指定します。 |
uploadFileToPds(file: File[])
エンタープライズドライブにファイルをアップロードします。
まずFileTransferConfigを設定し、session.uploadFileToPdsを呼び出してファイルをアップロードする必要があります。
onTransferCallbackを呼び出して、アップロードの進行状況とエラーレポートを受け取ることができます。
パラメーター | タイプ | 説明 |
file | ファイル | アップロードするファイル。 |
downloadFileFromPds(filePath: 文字列)
エンタープライズドライブからファイルをダウンロードします。
まずFileTransferConfigを設定し、次にsession.downloadFileFromPdsを呼び出してファイルをダウンロードする必要があります。
パラメーター | タイプ | 説明 |
filePath | String | エンタープライズドライブからダウンロードするファイルのパス。 |
getScreenshot(callback :( blob: Blob) => any, immediate: boolean)
現在のスクリーンショットを取得します。 メソッドでコールバックを指定して、スクリーンショットのblobオブジェクトを取得できます。 immediateをtrueに設定すると、スクリーンショットはローカルデバイスにダウンロードされます。
setResolution (width: number, height: number, degree: number)
クラウドコンピュータまたはアプリケーションの表示解像度を設定します。 角度は時計回りの方向です。
パラメーター | タイプ | 説明 |
width | 数値 | 幅。 |
height | 数値 | 高さ。 |
degree | 数値 | degree。 有効な値: 0または90。 |
stopConnection()
クラウドコンピュータまたはアプリケーションから切断します。
getDesktopIdleTime (コールバック :( time: number) => any)
クラウドコンピューターのアイドル時間を照会します。 単位:ms。
setUiParams(param: UiConfig)
セッションの作成後に、メニューを表示するか、横向きモードを強制するかなどのUI設定を設定します。
パラメーター | タイプ | 説明 |
param | UiConfig | UI設定。 |
var uiConfig = {
toolbar: {
visible: false,
},
rotateDegree: 90,
};
session.setUiParams(uiConfig);3.3 パラメーターの説明
SessionParam
次の表に、セッションを作成するためのパラメーターを示します。
パラメーター | タイプ | 必須 | 説明 |
openType | OpenType | 必須 | iframeまたは新しいタブでセッションを開くかどうかを指定します。 |
iframeId | String | 選択可能 | iframe ID。 このパラメーターは、iframeでセッションを開くように設定する場合に必要です。 |
sdkPath | String | 選択可能 | SDKファイルのパス。 このパラメーターを指定しない場合、などの相対パスがデフォルトで使用されます。/ASP/container.html。 |
resourceType | ResourceType | 必須 | リソースタイプです。 オンプレミスのリソースのみがサポートされています。 |
connectType | ConnectType | 必須 | クラウドコンピューターとクラウドアプリケーションのどちらに接続するかを指定します。 |
isOverseas | Boolean | 選択可能 | Web SDKを中国以外のwebページに統合するかどうかを指定します。 デフォルト値:false |
userInfo | UserInfo | 必須 | ユーザーログインセッションに関する情報。 |
regionId | String | 必須 | クラウドコンピューターが配置されているリージョン。 このパラメーターは、クラウドコンピューターに接続するように設定する場合に必要です。 |
appInfo | AppInfo | 選択可能 | クラウドアプリケーションに関する情報。 |
desktopInfo | デスクトップ情報 | 選択可能 | クラウドコンピューターに関する情報。 |
fileInfo | FileInfo | 選択可能 | ドライブに関する情報。 |
uiConfig | UiConfig | 選択可能 | UI設定。 |
fileTransferConfig | FileTransferConfig | 選択可能 | ファイル転送の設定。 |
logDisabled | bool | 選択可能 | Application Real-Time Monitoring Service (ARMS) モニタリングを無効にするかどうかを指定します。 デフォルト値:false |
loginType | LoginType | 選択可能 | ログインアカウントの種類。 デフォルトでは、Alibaba Cloud Workspaceアカウントがログインに使用されます。 |
networkAccessType | 'vpc' | 選択可能 | ネットワークアクセスタイプ。 このパラメーターはデフォルトでは何も指定されていません。 VPCネットワークアクセスがサポートされています。 |
UserInfo
次の表に、ログオンセッション関連のパラメーターを示します。 authCodeを優先的に使用することを推奨します。
パラメーター | タイプ | 必須 | 説明 |
authCode | String | 必須 | 1回だけ使用できるログオン資格情報で、優先度が最も高くなります。 |
ticket | String | 必須 | 1.4.7以降のバージョンのWeb SDKで接続を確立するには、チケットを直接渡すことができます。 |
loginToken | String | 必須 | ユーザーログインセッションに関する情報 (非推奨) 。 |
sessionId | String | 必須 | ユーザーログインセッションに関する情報 (非推奨) 。 |
AppInfo
次の表に、接続されたクラウドアプリケーションに関するパラメーターを示します。
パラメーター | タイプ | 必須 | 説明 |
appId | String | 必須 | 接続されているクラウドアプリケーションのID。 |
appVersion | String | 必須 | 接続されているクラウドアプリケーションのバージョン。 |
loginRegionId | String | 必須 | クラウドアプリケーションリソースが存在するリージョン。 |
connConfig | ConnConfig | 選択可能 | 接続パラメータ。 |
appInstanceGroupId | String | 選択可能 | アプリケーション配信グループのID。 |
appInstanceId | String | 選択可能 | アプリケーションインスタンスのID。 |
taskId | String | 選択可能 | アプリケーション起動タスクのID。 |
bizRegionId | String | 選択可能 | クラウドアプリケーションリソースが存在するリージョン。 |
productType | String | 選択可能 | 配信グループのタイプ。 デフォルト値: 'CloudApp' 。 |
デスクトップ情報
接続されたクラウドコンピューターに関するパラメーターを次の表に示します。
パラメーター | タイプ | 必須 | 説明 |
desktopId | String | 必須 | 接続されたクラウドコンピュータのID。 |
realDesktopId | String | 選択可能 | このパラメーターは、クラウドコンピュータープール内のクラウドコンピューターに接続する場合に必要です。 |
protocolType | ProtocolType | 選択可能 | 接続されたクラウドコンピュータで使用されるプロトコルタイプ。 |
loginRegionId | String | 必須 | クラウドコンピューターリソースが存在するリージョン。 |
connConfig | ConnConfig | 選択可能 | 接続パラメータ。 |
assistanceConfig | AssistanceConfig | 選択可能 | リモートアシスト設定。 このパラメーターを設定しない場合、リモート支援は有効になりません。 |
creationTime | String | 選択可能 | クラウドコンピューターが作成された時刻。 時間をUTCで指定します。 |
expiredTime | String | 選択可能 | クラウドコンピューターの有効期限。 時間をUTCで指定します。 |
chargeType | ChargeType | 選択可能 | クラウドコンピューターの課金方法。 |
FileInfo
次の表に、ドライブを開くためのパラメーターを示します。 注: externalDomainId、externalDriveId、およびexternalUserIdパラメーターを指定して、Alibaba Cloud Ph oto and drive Serviceが提供するホストドライブにファイルをアップロードできます。 この場合、driveIdパラメーターを指定する必要はありません。
パラメーター | タイプ | 必須 | 説明 |
driveType | String | 必須 | ドライブタイプ。PDSのみにすることができます。 |
driveId | String | 必須 | ドライブID。 |
externalDomainId | String | 必須 | Ph oto and drive Serviceによって提供されるドライブが存在するドメインのID。 |
externalDriveId | String | 必須 | Ph oto and drive Serviceが提供するドライブのID。 |
externalUserId | String | 必須 | 外部ユーザーID。 |
fileId | String | 必須 | ファイルID。 |
filePath | String | 選択可能 | ファイルパス。 |
fileName | String | 選択可能 | ファイル名。 |
fileRegion | String | 選択可能 | ファイルが配置されているリージョン。 例:cn-hangzhou。 |
FileTransferConfig
次の表に、ファイルのアップロードとダウンロードのパラメーターを示します。
パラメーター | タイプ | 必須 | 説明 |
type | String | 選択可能 | ドライブタイプ。PDSのみにすることができます。 |
driveId | String | 選択可能 | ドライブID。 |
uploadPath | String | 選択可能 | ファイルがアップロードされるパス。 |
uploadType | string[] | 選択可能 | アップロードするファイルのタイプ。 詳細については、MIME TYPEの定義をご参照ください。 |
onTransferCallback | function | 選択可能 | データ転送ステータスのコールバック。 (type, data => any) |
TransferData
次の表に、onTransferCallbackが受信した情報を示します。
パラメーター | 説明 |
fileName | ファイル名。 |
fileSize | ファイルサイズ。 |
fileId | ファイルID。 |
progress | ファイルのアップロードの進行状況。 |
cancelFn | アップロードコールバックをキャンセルします。 アップロード中にコールバックをキャンセルすると、ファイルのアップロードがキャンセルされます。 |
Callback message code
type: 'result' data: {Code, Message?: string, RequestId?: string, fileName?: string, fileSize?: string, fileId?: string}
パラメーター | 説明 |
ERROR_DRIVE_ID | ドライブIDが正しくありません。 |
ERROR_UPLOAD_PATH | アップロードパスが正しくありません。 |
ERROR_UPLOAD_TYPE | ファイルタイプが無効です。 |
ERROR_FILE_EXISTS | 同じ名前のファイルが既に存在します。 |
ERROR_TOKEN | loginTokenが無効なため、アップロードに失敗しました。 |
ERROR_SERVER | サービスエラー。 開発担当者に連絡します。 |
ERROR_DOWNLOAD | ファイルのダウンロード中にエラーが発生しました。 |
SUCCESS_UPLOAD | アップロードされました。 |
UiConfig
次の表に、UI設定のパラメーターを示します。
パラメーター | タイプ | 必須 | 説明 |
toolbar | ToolBarConfig | 選択可能 | 接続ウィンドウのツールバーの設定。 |
exitCheck | bool | 選択可能 | 現在のページを終了するときに確認ダイアログボックスを有効にするかどうかを指定します。 デフォルトでは、このオプションは有効です。 |
rotateDegree | 数値 | 選択可能 | ランドスケープモードを強制するかどうかを指定します。 有効な値: 0と90。 値90はイエスを示す。 |
vconsoleVisiable | bool | 選択可能 | VConsoleデバッグボックスを表示するかどうかを指定します。 |
debugPanelVisiable | bool | 選択可能 | フレームレートやビットレートなどの情報を含むボックスを表示するかどうかを指定します。 |
reconnectType | ReconnectType | 選択可能 | 再接続のダイアログボックスのスタイル。 |
defaultResolution | ResolutionType | 選択可能 | 最初の接続時のデフォルトの画面解像度。 デフォルト値: 'A' 。 |
language | 言語 | 選択可能 | 内部ポップアッププロンプトに使用される言語。 デフォルトの言語は中国語です。 |
ToolBarConfig
次の表に、ツールバー設定のパラメーターを示します。
パラメーター | タイプ | 必須 | 説明 |
visible | bool | 選択可能 | ツールバーを表示するかどうかを指定します。 |
noMenu | bool | 選択可能 | DesktopAssistantを使用して右クリックメニューを開くことを許可するかどうかを指定します。 デフォルト値:false この機能は、1.4.20以降のWeb SDKバージョンでサポートされています。 |
ConnConfig
次の表に、接続パラメーターを示します。
パラメーター | タイプ | 必須 | 説明 |
decodeType | ConnDecodeType (数値列挙) | 選択可能 | エンコードタイプ。 |
playSoundBackground | bool | 選択可能 | 背景を切り替えた後にサウンドを再生し続けるかどうかを指定します。 |
AssistanceConfig
次の表は、遠隔支援を開始するためのパラメータを示す。 遠隔支援要求が管理者によって開始される場合、接続は1回限りである。 チケットは繰り返し使用できるため、その後の再接続を防ぐために、リモートアシスタンス接続が終了したらチケットをクリアする必要があります。
パラメーター | タイプ | 必須 | 説明 |
role | AssistanceRole | 必須 | 遠隔支援を開始した役割。 |
aliUid | String | 選択可能 | エンドユーザーのID。 このパラメーターは、roleパラメーターがuserに設定されている場合に必要です。 |
ticket | String | 選択可能 | このパラメーターは、roleパラメーターがadminに設定されている場合に必要です。 値は、GetCoordinateTicket操作を呼び出して取得できます。 |
taskId | String | 選択可能 | このパラメーターは、roleパラメーターがadminに設定されている場合に必要です。 値は、GetCoordinateTicket操作を呼び出して取得できます。 |
coId | String | 選択可能 | このパラメーターは、roleパラメーターがadminに設定されている場合に必要です。 値は、GetCoordinateTicket操作を呼び出して取得できます。 |
remoteAssistance | String | 選択可能 | このパラメーターは、roleパラメーターがadminに設定されている場合に必要です。 デフォルト値 : on。 |
accessKeyId | String | 選択可能 | キーボードとマウスを制御するために使用されます。 このパラメーターは、roleパラメーターがadminに設定されている場合に必要です。 |
accessKeySecret | String | 選択可能 | キーボードとマウスを制御するために使用されます。 このパラメーターは、roleパラメーターがadminに設定されている場合に必要です。 |
列挙型のパラメーター
OpenType
次の表に、接続されたクラウドコンピューターまたはアプリケーションを開くオプションを示します。
オプション | 説明 |
newTab | 接続されたクラウドコンピュータまたはアプリケーションを新しいタブで開きます。 |
inline | 接続されたクラウドコンピューターまたはアプリケーションをiframeページで開きます。 |
urlScheme | 接続されたクラウドコンピューターまたはアプリケーションをローカルネイティブクライアントで開きます。 このオプションでは、6.2インストールされているバージョンよりも後のバージョンのAlibaba Cloud Workspaceクライアントが必要です。 |
ConnectType
次の表は、クラウドコンピューターとクラウドアプリケーションのどちらに接続するかを示しています。
オプション | 説明 |
app | クラウドアプリケーションに接続します。 |
desktop | クラウドコンピューターに接続します。 |
ResourceType
次の表に、アクセスするリソースタイプを列挙します。
オプション | 説明 |
local | ローカルPCから読み込まれたHTMLページ。 |
ReconnectType
次の表に、プロンプトのポップアップウィンドウを設定するためのオプションを示します。
オプション | 説明 |
simple | 単純な読み込みを使用します。 |
normal | カウントダウンポップアップウィンドウを使用します。 |
ResolutionType
次の表に、接続の初期化時にデフォルトの解決策を設定するオプションを示します。 履歴解決設定は、接続中に優先的に使用される。
オプション | 説明 |
A | 現在のウィンドウサイズを使用して、読み込み速度を確保します。 |
B | 現在のウィンドウサイズにwindow.de vicePixelRatioを掛けた解像度を使用して、表示品質を確保します。 |
ChargeType
次の表に、クラウドコンピューターの課金方法を示します。
オプション | 説明 | から利用可能 |
PostPaid | 従量課金の課金方法。 | 1.4.0 |
PrePaid | サブスクリプションの課金方法。 | 1.4.0 |
Language
次の表に、言語オプションを列挙します。 デフォルト値: zh-CN
オプション | 説明 |
zh-CN | Chinese. |
en-US | 英語だ |
ja-JP | 日本人だ |
LoginType
次の表に、クラウドコンピューターにログオンする方法を示します。
オプション | 説明 |
aliyunLogin | Alibaba Cloudアカウントでログインします。 |
normalLogin | Alibaba Cloud Workspaceアカウントでログインします。 |
イベント
SessionEventType
セッション関連のイベントを次の表に示します。
イベント | 説明 | から利用可能 |
getConnectionTicketInfo | クラウドコンピュータまたはアプリケーションへの接続を試みます。 | 1.0.0 |
onConnected (onConnected) | クラウドコンピュータまたはアプリケーションへの接続に成功。 | 1.0.0 |
onDisConnected | クラウドコンピュータまたはアプリケーションからの切断。 | 1.0.0 |
onRuntimeMsg | ランタイムでのSDKへのメッセージ送信。 | 1.1.0 |
networkData | ネットワークパフォーマンスパラメータの設定。 | 1.3.1 |
onError | 接続中のエラー処理。 | 1.4.1 |
ゲストOSへのメッセージタイプ
GuestMsgType
ゲストOSに送信するメッセージの種類を次の表に示します。
名前 | 説明 | から利用可能 |
RUNTIME_API_MESSAGE | ゲストOSに送信されたメッセージ。 | 1.1.0 |
ストリーム復号タイプ
ConnDecodeType
名前 | 説明 | から利用可能 |
0 | ソフトウェアの解読。 | 1.2.0 |
1 | ハードウェア解読。 | 1.2.0 |
2 | WebRTC。 | 1.2.0 |
クラウドコンピュータ関連
ProtocolType
名前 | 説明 | から利用可能 |
ASP | 適応ストリーミングプロトコル (ASP) 。 | 1.3.0 |
HDX | シトリックスHDX。 | 1.3.0 |
リモート支援関連
AssistanceRole
名前 | 説明 | から利用可能 |
user | ユーザー。 | 1.3.0 |
admin | 管理者。 | 1.3.0 |
shared_user | コラボレーションのためにデスクトップを共有するユーザー。 | 1.3.1 |
assistant | コラボレーションに参加するユーザー。 | 1.4.0 |
3.4 エラーコード
次の表に、切断イベントの場合に報告されるエラーメッセージを示します。
エラーメッセージ | 説明 | コード |
ASP_CLIENT_DISCONNECT_CONNECT_ERROR | 切断されました。 | 0 |
ASP_CLIENT_DISCONNECT_SOCKET_CLOSE | ソケット接続が閉じました。 | 1 |
ASP_CLIENT_DISCONNECT_WEBRTC_CLOSE | WebRTC接続が閉じられました。 | 2 |
ASP_CLIENT_DISCONNECT_CLOUD_APP_STOP | クラウドアプリケーションが停止しました。 | 2001 |
ASP_CLIENT_DISCONNECT_CLIENT_PREEMPTION | リソースがプリエンプトされました。 | 2002 |
ASP_CLIENT_DISCONNECT_GUEST_SHUTDOWN_REBOOT | ゲストOSが再起動されました。 | 2003 |
ASP_CLIENT_RTT_TIMEOUT | RTTタイムアウト。 | 2200 |
ASP_CLIENT_NET_ERROR_IO | ネットワークI/Oエラー。 | 2201 |
ASP_CLIENT_UPDATE_TICKET_FAILED | チケットの更新に失敗しました。 | 2202 |
接続中にonErrorが受信したエラーメッセージ
メッセージの形式は {code: string, message: string, api: string} です。メッセージにはrequestIdが含まれ、apiはエラーをトリガーするリクエストです。 次の表に、エラーコードを示します。
エラーコード |
InvalidClientType.AccessDenied |
DesktopCpuHighLoad |
NotFindDesktopId |
UnavailableDesktop.NotRegistered |
NotFoundUserDesktop |
価格. WAN_HUA_TONG_SYS |
UnavailableDesktop |
AUTHORIZE_FAILED |
UnavailableDesktop.Initializing |
NotFindTaskId |
GENERAL_ERROR |
InvalidVersion |
UnavailableDesktop.Unregistered |
Forbidden |
InvalidDesktopId.NotFound |
PRICE.RATING_ACCOUNT_SYS |
AgentUnbinding |
USING_DESKTOP |
NoMoreActiveSessions |
GET_TICKET_LOCK |
DistributeLockFailed |
MissingLoginToken |
DesktopsUnderMaintenance |
NoEnoughDesktops |
InvalidTimeStamp.Expired |
GeneralAppLaunchError |
InvalidClientIp.Policy |
MissingClientId |
ACCOUNT.ALIYUN_ACCOUNT_NOT_EXIST |
DesktopNotReady |
InvalidAccessKeyId.NotFound |
CouldNotConnectToWorkstation |
AssignUserFailed |
InvalidTimeStamp.Format |
INVALID_CSRF_TOKEN |
INTERNAL_ERROR |
DesktopUnavailable |
UnavailableDesktop.ConnectionBroken |
AuthorizeFailed.OfficeSIteId |
SignatureDoesNotMatch |
USER_NOT_EXIST |
MissingAccessKeyId |
ServiceUnavailable |
NOT_LOGIN |
UnavailableDesktop.ServerNotReady |
InvalidDesktopId.Status |
PermissionDeny.Desktop |
InvalidOperation.NotSupportedEndpoint |
InvalidAccessKeyId |