Alibaba Cloud Workspace Web SDK menyediakan API terbuka untuk menghubungkan Workspace Web Client ke Elastic Desktop Service (EDS), aplikasi cloud, dan Cloud Phone. Dengan mengintegrasikan SDK ini, Anda dapat dengan cepat menyesuaikan dan membangun klien web sesuai kebutuhan bisnis Anda.
1. Memulai dengan cepat
1.1 SDK dan demo
Dengan mengunduh dan menggunakan SDK, Anda menyetujui Kebijakan Privasi Alibaba Cloud Workspace SDK.
Jangan mendistribusikannya kepada pihak ketiga tanpa persetujuan Alibaba Cloud.
Struktur direktori
├── WuyingWebDemo.html // Halaman contoh yang menunjukkan penggunaan SDK.
├── WuyingWebSDK.js // File API SDK. Anda harus mereferensikan file ini di halaman frontend Anda.
└── sdk // File sumber daya untuk penyematan iframe.
└── ASP
└── container.htmlWeb.SDK.Demo adalah proyek Vue. Untuk menjalankan proyek:
Periksa apakah Node.js telah terinstal:
nodePesan
Welcome to Node.jsmenunjukkan bahwa Node.js telah terinstal.Jika Anda tidak melihat pesan ini, instal Node.js.
Buka direktori root proyek Vue:
CatatanGanti
<ProjectRootPath>dengan path ke direktori root proyek Vue.cd <ProjectRootPath>Instal dependensi:
npm iJalankan proyek:
npm run devJika berhasil, URL yang dapat diakses akan dikembalikan.
Untuk menjalankan WuyingWebDemo.html:
Buka direktori tempat file HTML berada:
CatatanGanti
<HTMLPath>dengan path ke direktori file HTML.cd <HTMLPath>Jalankan server HTTP:
python3 -m http.serverBuka
http://localhost:8000/WuyingWebDemo.htmldi browser Anda.
1.2 Alur integrasi
1.3 Praktik terbaik
Lihat Praktik terbaik untuk integrasi cepat Cloud Phone. Gambar berikut menunjukkan arsitektur integrasi.
Anda dapat menggunakan beberapa metode logon untuk mendapatkan tiket yang diperlukan oleh SDK guna menghubungkan ke Cloud Phone. Gambar berikut menunjukkan bagan alirnya.
Untuk kode spesifik, lihat contoh kode untuk API siklus hidup.
2. API Siklus Hidup
2.1 Inisialisasi dan buat sesi
// Buat sesi menggunakan tiket.
var userInfo = {
ticket: 'xxx',
};
var appInfo = {
osType: 'Android', // Wajib
appId: "android",
appInstanceId: "ai-xxxxxx", // appInstanceId dimulai dengan 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);// Buat sesi menggunakan authCode.
var userInfo = {
authCode: authCode,
};
var appInfo = {
osType: 'Android', // Wajib
appId: "android",
resourceId: "p-xxxxxx", // resourceId dimulai dengan 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);// Buat sesi menggunakan loginToken atau stsToken.
var userInfo = {
sessionId: sessionId,
loginToken: loginToken,
};
var appInfo = {
osType: 'Android', // Wajib
appId: "android",
resourceId: "p-xxxxxx", // resourceId dimulai dengan 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);Parameter createSession
Parameter | Type | Wajib | Deskripsi |
id | string | Ya | Atur ke konstanta |
sessionParams | SessionParam | Ya | Parameter untuk membuat sesi. Lihat 4.1 SessionParam. |
Parameter sessionParams
userInfo:
sessionId:SessionIdyang dikembalikan oleh operasiGetLoginTokenatauGetStsToken.authCode: Kode otorisasi yang diperoleh dengan memanggil API GetAuthCode.loginToken: Token login yang diperoleh dengan memanggil API GetLoginToken.
Terdapat dua metode logon: logon tanpa otorisasi dan logon dengan akun kemudahan. Logon dengan akun kemudahan bergantung pada sistem pengguna Alibaba Cloud Workspace. Logon tanpa otorisasi memungkinkan Anda menggunakan sistem pengguna sendiri. Parameter autentikasi untuk logon tanpa otorisasi adalah authCode, sedangkan parameter autentikasi untuk logon dengan akun kemudahan adalah loginToken. ticket adalah kredensial untuk menghubungkan ke instans. Baik loginToken maupun authCode pada akhirnya dikonversi menjadi tiket untuk menghubungkan ke instans. Anda harus menentukan salah satu dari parameter berikut: authCode, ticket, atau loginToken.
appInfo: Informasi tentang instans.
resourceId:Jika Anda logon dengan akun kemudahan, Anda dapat memanggil operasi DescribeUserResources di klien untuk mendapatkan nilai
ResourceId.Jika Anda logon tanpa otorisasi, Anda dapat memanggil operasi DescribeAndroidInstances di server Anda untuk mendapatkan nilai
PersistentAppInstanceId.
openType: Cara membuka Cloud Phone. Lihat enumerasi
openTypedalam dokumen ini.
2.2 Membangun koneksi
session.start();2.3 Menghentikan koneksi
session.stop();2.4 Callback
API: addHandle(name: SessionEventType, callback: Function)
Parameter:
Parameter | Type | Deskripsi |
name | string | Tipe event yang akan didengarkan. Lihat 5.9 SessionEventType. |
callback | Function | Fungsi callback. |
Contoh:
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 | Deskripsi |
WebSDK.apiVersion | Mengembalikan nomor versi WebSDK sebagai |
setInputEnabled(param: boolean) enableInput(param: boolean) | Mengaktifkan atau menonaktifkan input.
|
enableKeyBoard(param: boolean) | Mengaktifkan atau menonaktifkan keyboard layar di cloud phone. |
setClipboardEnabled(param: boolean) | Mengaktifkan atau menonaktifkan clipboard. |
setMicrophoneEnabled(param: boolean) | Mengaktifkan atau menonaktifkan mikrofon. |
setTouchEnabled(param: boolean) | Mengaktifkan atau menonaktifkan input sentuh. |
setUiParams(param: UiConfig) | Menetapkan konfigurasi UI setelah sesi dibuat, seperti menampilkan atau menyembunyikan menu dan memaksa mode lanskap. Catatan Lihat 4.4 UiConfig. Contoh: |
dataChannel | Saluran data kustom untuk mengirim dan menerima data antara klien dan cloud. |
lyncChannel | Saluran bagi klien untuk mengirim perintah ADB. |
4. Parameter
4.1 SessionParam
Parameter untuk membuat sesi.
Parameter | Tipe | Wajib | Deskripsi |
openType | OpenType | Ya | Apakah membuka halaman dalam iframe tertanam atau tab baru. |
iframeId | string | Tidak | Wajib jika halaman dibuka dalam iframe. |
sdkPath | string | Tidak | Path ke file SDK. Jika dikosongkan, path relatif default digunakan. Contoh: |
resourceType | ResourceType | Ya | Tipe sumber daya. Saat ini hanya halaman koneksi lokal yang didukung. |
connectType | ConnectType | Ya | Apakah menghubungkan ke cloud phone atau cloud computer. |
isOverseas | boolean | Tidak | Apakah akses berasal dari lokasi luar negeri. Default: |
userInfo | UserInfo | Ya | Informasi autentikasi pengguna. |
regionId | string | Ya | Wajib saat menghubungkan ke cloud phone. Wilayah tempat cloud phone berada. |
appInfo | AppInfo | Tidak | Informasi tentang aplikasi yang akan dijalankan di cloud phone. |
fileInfo | FileInfo | Tidak | Parameter untuk cloud drive. |
uiConfig | UiConfig | Tidak | Pengaturan UI untuk halaman koneksi. |
logDisabled | bool | Tidak | Apakah menonaktifkan statistik ARMS. Default: |
loginType | LoginType | Tidak | Metode login. Default: akun Alibaba Cloud Workspace. |
networkAccessType | string | Tidak | Tipe akses jaringan, seperti login VPC. Default: kosong. |
4.2 UserInfo
Berisi informasi autentikasi pengguna. Pilih salah satu dari parameter berikut: authCode, ticket, atau loginToken. authCode diperoleh dari alur login yang telah diotorisasi sebelumnya. loginToken diperoleh dari login akun kemudahan. Anda dapat memperoleh ticket dengan membuat permintaan menggunakan authCode atau loginToken.
Parameter | Tipe | Wajib | Deskripsi |
authCode | string | Ya | Kredensial login sekali pakai. Parameter ini memiliki prioritas tertinggi. |
ticket | string | Ya | Mulai dari v1.4.7, Anda dapat menggunakan tiket untuk terhubung secara langsung. |
loginToken | string | Ya | Kredensial autentikasi untuk akun kemudahan. |
sessionId | string | Ya | ID sesi yang diperoleh dari permintaan |
4.3 AppInfo
Parameter untuk menjalankan Cloud Phone.
Parameter | Tipe | Wajib | Deskripsi |
osType | string | Ya | Harus diatur ke |
appId | string | Ya | ID instans aplikasi persisten ( |
appVersion | string | Tidak | Versi aplikasi yang akan dijalankan. |
loginRegionId | string | Ya | Wilayah tempat sumber daya cloud phone berada. |
connConfig | ConnConfig | Tidak | Parameter konfigurasi koneksi. |
appInstanceGroupId | string | Tidak | ID grup pengiriman. |
appInstanceId | string | Tidak | ID instans. Wajib saat membangun koneksi dengan tiket. Contoh: |
taskId | string | Tidak | ID tugas startup aplikasi. |
bizRegionId | string | Tidak | Wilayah tempat sumber daya aplikasi berada. |
productType | string | Tidak | Tipe grup pengiriman. Untuk cloud phone, nilai ini harus |
4.4 UiConfig
Pengaturan UI untuk halaman koneksi.
Parameter | Tipe | Wajib | Deskripsi |
toolbar | ToolBarConfig | Tidak | Pengaturan tampilan bilah alat. |
exitCheck | bool | Tidak | Apakah menampilkan prompt konfirmasi saat pengguna keluar dari halaman. Default: diaktifkan. |
rotateDegree | number | Tidak | Memaksa mode lanskap ( |
vconsoleVisiable | bool | Tidak | Apakah menampilkan kotak debug vConsole. |
debugPanelVisiable | bool | Tidak | Apakah menampilkan panel debug dengan metrik seperti bitrate dan laju frame. |
reconnectType | ReconnectType | Tidak | Gaya dialog prompt koneksi ulang. |
defaultResolution | ResolutionType | Tidak | Resolusi default untuk koneksi awal. Default: |
language | Language | Tidak | Bahasa untuk prompt internal. Default: Bahasa Tionghoa Sederhana. |
allowErrorDialog | bool | Tidak | Apakah menampilkan dialog error. |
backgroundColor | string | Tidak | Warna latar belakang kustom untuk layar pemuatan. |
backgroundImg | string | Tidak | Gambar latar belakang kustom untuk layar pemuatan. |
4.5 ToolBarConfig
Pengaturan tampilan bilah alat.
Parameter | Tipe | Wajib | Deskripsi |
visible | bool | Tidak | Apakah menampilkan bilah alat. |
noMenu | bool | Tidak | Apakah DesktopAssistant dapat membuka menu konteks. Default: |
4.6 ConnConfig
Parameter konfigurasi koneksi.
Parameter | Tipe | Wajib | Deskripsi |
decodeType | ConnDecodeType (enumerasi numerik) | Tidak | Metode decoding. |
playSoundBackground | bool | Tidak | Apakah suara tetap diputar saat aplikasi berjalan di latar belakang. |
5. Jenis enumerasi
5.1 Open type
Cara sesi Cloud Phone dibuka.
Nilai | Deskripsi |
newTab | Membuka sesi di tab browser baru. |
inline | Membuka sesi dalam iframe tertanam. |
urlScheme | Memulai sesi menggunakan klien lokal. Memerlukan klien Alibaba Cloud Workspace V6.2 atau lebih baru. |
5.2 Jenis koneksi
Apakah memulai cloud computer atau Cloud Phone.
Nilai | Deskripsi |
app | Memulai cloud phone. |
desktop | Memulai cloud computer. |
Layanan Cloud Phone saat ini menggunakan tipe app. Saat Anda menghubungkan ke Cloud Phone, parameter connectType tetap diatur ke app.
5.3 Jenis sumber daya
Apakah membuka halaman koneksi lokal atau klien web Alibaba Cloud Workspace.
Nilai | Deskripsi |
local | Membuka halaman HTML koneksi lokal. |
Integrasi Cloud Phone Wuying menggunakan nilai tetap local.
5.4 Jenis koneksi ulang
Gaya UI untuk prompt koneksi ulang.
Nilai | Deskripsi |
simple | Indikator pemuatan sederhana. |
normal | Kotak dialog dengan timer mundur. |
5.5 Jenis resolusi
Resolusi default untuk koneksi awal. Pengaturan pengguna menggantikan default ini.
Nilai | Deskripsi |
A | Diprioritaskan kecepatan. Menggunakan ukuran jendela saat ini. |
B | Diprioritaskan kualitas. Menggunakan ukuran jendela saat ini dikalikan dengan |
5.6 Jenis penagihan
Metode penagihan untuk Cloud Phone.
Nilai | Deskripsi | Didukung sejak |
PostPaid | pay-as-you-go | 1.4.0 |
PrePaid | subscription | 1.4.0 |
5.7 Bahasa
Pengaturan bahasa. Default: zh-CN.
Nilai | Deskripsi |
zh-CN | Bahasa Tionghoa Sederhana |
en-US | Bahasa Inggris |
ja-JP | Bahasa Jepang |
5.8 Jenis login
Metode untuk login ke Cloud Phone.
Nilai | Deskripsi |
aliyunLogin | Login dengan akun Alibaba Cloud. |
normalLogin | Login akun Alibaba Cloud Workspace (Cloud Phone hanya mendukung |
5.9 Jenis event sesi
Jenis event untuk sesi, termasuk event khusus Cloud Phone.
Nilai | Deskripsi | Didukung sejak |
getConnectionTicketInfo | Dipicu saat koneksi ke cloud phone dimulai. | 1.0.0 |
onConnected | Dipicu saat koneksi ke cloud phone berhasil dibangun. | 1.0.0 |
onDisConnected | Dipicu saat koneksi ke cloud phone dihentikan. | 1.0.0 |
onRuntimeMsg | Pesan yang dikirim dari lingkungan runtime ke SDK. | 1.1.0 |
networkData | Metrik kinerja jaringan. | 1.3.1 |
onError | Dipicu saat terjadi error selama koneksi. | 1.4.1 |
5.10 Jenis decoding koneksi
Jenis decoding untuk aliran.
Nilai | Deskripsi | Didukung sejak |
0 | software decoding | 1.2.0 |
1 | decoding hardware | 1.2.0 |
2 | WebRTC | 1.2.0 |
5.11 Jenis protokol
Jenis protokol.
Nilai | Deskripsi | Didukung sejak |
ASP | Protokol ASP internal Alibaba Cloud. Cloud phone hanya mendukung protokol ini. | 1.3.0 |
HDX | Protokol Citrix | 1.3.0 |
Kode error
Error dari onDisconnected
Kode | Parameter | Deskripsi |
0 | ASP_CLIENT_DISCONNECT_CONNECT_ERROR | Terputus. |
1 | ASP_CLIENT_DISCONNECT_SOCKET_CLOSE | Socket ditutup. |
2 | ASP_CLIENT_DISCONNECT_WEBRTC_CLOSE | WebRTC ditutup. |
25 | Verifikasi tiket gagal. Error ini juga terjadi jika Anda mencoba menggunakan kembali tiket dari sesi yang telah terputus untuk koneksi baru. | |
1206 | Tiket hanya mendukung satu koneksi bersamaan. Error ini terjadi jika Anda mencoba memulai koneksi baru saat cloud phone sudah terhubung. | |
1207 | Me-restart instans membuat tiket tidak valid. | |
2000 | ASP_CLIENT_DISCONNECT_OK | Cloud phone terputus secara normal. |
2001 | ASP_CLIENT_DISCONNECT_CLOUD_APP_STOP | Aplikasi cloud ditutup. |
2002 | ASP_CLIENT_DISCONNECT_CLIENT_PREEMPTION | Sesi cloud phone saat ini telah diambil alih. |
2003 | ASP_CLIENT_DISCONNECT_GUEST_SHUTDOWN_REBOOT | Tamu direstart. |
2004 | Pengguna saat ini terputus. | |
2027 | Mode penarikan aliran berubah. | |
2200 | ASP_CLIENT_RTT_TIMEOUT | Timeout RTT. |
2201 | ASP_CLIENT_NET_ERROR_IO | Error I/O jaringan. |
2202 | ASP_CLIENT_UPDATE_TICKET_FAILED | Gagal memperbarui tiket. |
Error dari onError
Format: {code: string, message: string, api: string}. Parameter message berisi requestId, dan parameter api menentukan permintaan yang melaporkan error tersebut.
Kode | Deskripsi |
AccountNotAvailable | Akun domain terkunci, dinonaktifkan, atau kedaluwarsa. Hubungi administrator IT atau administrator pengontrol domain Anda untuk menyelesaikan masalah ini. |
ClientLockedForAliasFailed | Anda telah mencapai jumlah maksimum percobaan salah. Coba lagi dalam 5 menit. |
content-monthpackageenterpostpaidphase | Paket langganan untuk cloud phone ini telah habis untuk siklus penagihan saat ini. Penggunaan selanjutnya akan dikenakan biaya berdasarkan metode bayar sesuai penggunaan. |
content-recordingscreen | Administrator IT perusahaan Anda telah mengaktifkan perekaman layar dan audit untuk cloud phone Anda, dan semua operasi akan direkam. Jika Anda memiliki pertanyaan tentang fitur ini, hubungi administrator Anda. |
desktop-AgentUnbinding | Koneksi ke cloud phone sementara baru gagal karena cloud phone sementara sebelumnya masih dalam proses pemutusan asosiasi. Coba sambungkan kembali nanti. |
desktop-AssignUserFailed | Gagal menetapkan cloud phone. Coba lagi nanti. |
desktop-ConnectTicket.Timeout | Koneksi ke cloud phone gagal karena timeout. Restart cloud phone dan coba sambungkan kembali. |
desktop-DesktopAgentFileLose | Koneksi gagal karena file proses inti cloud phone hilang. Restart cloud phone dan sambungkan kembali. Jika masalah berlanjut, hubungi administrator IT Anda. |
desktop-DesktopContainSecuritySoftware | Perangkat lunak keamanan yang diinstal pada cloud phone mengganggu koneksi ke layanan manajemen. Hubungi administrator IT Anda untuk menonaktifkan perangkat lunak keamanan tersebut, lalu coba sambungkan kembali. |
desktop-DesktopContainVpn | Perangkat lunak VPN yang diinstal pada cloud phone mengganggu koneksi ke layanan manajemen. Anda dapat me-restart cloud phone untuk menyelesaikan masalah ini. Jika koneksi tetap gagal, hubungi administrator IT Anda. |
desktop-DesktopGuestStop | Koneksi gagal karena cloud phone tidak dalam status "Berjalan". |
desktop-DesktopNetworkAnomaly | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Anda dapat me-restart cloud phone untuk menyelesaikan masalah ini. Jika koneksi tetap gagal, hubungi administrator IT Anda. |
desktop-DesktopNetworkError | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Anda dapat me-restart cloud phone untuk menyelesaikan masalah ini. Jika koneksi tetap gagal, hubungi administrator IT Anda. |
desktop-DesktopResourceStatusInvalid | Koneksi ke cloud phone gagal karena instans ECS dasar tidak dalam status "Berjalan". Restart cloud phone dan coba sambungkan kembali. |
desktop-DesktopResourceStop | Koneksi ke cloud phone gagal karena instans ECS dasar dihentikan. Restart cloud phone dan coba sambungkan kembali. |
desktop-DesktopsUnderMaintenance | Koneksi gagal karena cloud phone tidak dalam status "Berjalan". |
desktop-DesktopUnavailable | Koneksi gagal. Coba lagi nanti. Jika masalah berlanjut, hubungi administrator IT Anda untuk memeriksa status cloud phone. |
desktop-DistributeLockFailed | Koneksi gagal karena terlalu banyak pengguna yang mencoba menghubungkan ke cloud phone sementara. Coba sambungkan kembali nanti. |
desktop-GENERAL_ERROR | Terjadi error layanan. Coba sambungkan kembali ke cloud phone. Jika masalah berlanjut, hubungi administrator IT Anda. |
desktop-GET_TICKET_LOCK | Permintaan koneksi cloud phone terlalu sering. Coba lagi nanti. |
desktop-INSUFFICIENT_QUOTA | Tidak ada cloud phone sementara yang tersedia karena kuota cloud phone untuk akun administrator IT tidak mencukupi. Hubungi administrator IT Anda untuk bantuan. |
desktop-INTERNAL_ERROR | Terjadi error layanan. Coba sambungkan kembali ke cloud phone. Jika masalah berlanjut, hubungi administrator IT Anda. |
desktop-InvalidBundleId.NotFound | Templat gambar untuk cloud phone ini tidak valid. Hubungi administrator IT Anda. |
desktop-InvalidClientIp.Policy | Anda tidak dapat terhubung dari alamat IP saat ini karena administrator IT Anda telah mengonfigurasi daftar putih alamat IP untuk cloud phone ini. Hubungi administrator IT Anda untuk bantuan. |
desktop-InvalidClientType.AccessDenied | Administrator IT Anda telah melarang menjalankan cloud phone ini pada klien saat ini. Untuk menggunakan cloud phone ini, hubungi administrator IT Anda. |
desktop-InvalidDesktopId.NotFound | Administrator IT Anda telah mencabut izin Anda untuk menggunakan cloud phone ini. |
desktop-InvalidDesktopId.Status | Koneksi gagal karena cloud phone tidak dalam status "Berjalan". |
desktop-InvalidDesktopStatus.NotRunning | Cloud phone gagal dimatikan karena error server. Coba lagi nanti atau hubungi administrator IT Anda. |
desktop-InvalidDesktopStatus.NotStopped | Cloud phone gagal dijalankan karena error server. Coba lagi nanti atau hubungi administrator IT Anda. |
desktop-InvalidDesktopStatusInvalid | Koneksi gagal karena cloud phone tidak dalam status "Berjalan". |
desktop-InvalidLiteConnectionCheck | Cloud phone gagal menyambung kembali karena error layanan protokol. Coba sambungkan kembali. |
desktop-NoEnoughDesktops | Tidak ada cloud phone sementara yang dapat ditetapkan karena pengaturan administrator IT Anda. Hubungi administrator IT Anda. |
desktop-NotFindDesktopId | Administrator IT telah melepas cloud phone ini. |
desktop-NotFoundUserDesktop | Administrator IT Anda telah mencabut izin Anda untuk menggunakan cloud phone ini. |
desktop-PermissionDeny.Desktop | Administrator IT Anda telah mencabut izin Anda. Untuk terus menggunakan cloud phone, hubungi administrator IT Anda untuk memulihkan izin Anda. |
desktop-RES_GW_ERROR | Terjadi error layanan. Coba sambungkan kembali ke cloud phone. Jika masalah berlanjut, hubungi administrator IT Anda. |
desktop-SDK.ReadTimeout | Terjadi error layanan. Coba sambungkan kembali ke cloud phone. Jika masalah berlanjut, hubungi administrator IT Anda. |
desktop-ServiceUnavailable | Koneksi layanan timeout. Coba sambungkan kembali ke cloud phone. Jika masalah berlanjut, hubungi administrator IT Anda. |
desktop-THROTTLING_USER | Terjadi error layanan. Coba sambungkan kembali ke cloud phone. Jika masalah berlanjut, hubungi administrator IT Anda. |
desktop-UnavailableDesktop | Timeout login cloud phone. Sambungkan kembali atau restart cloud phone untuk menyelesaikan masalah ini. Jika koneksi tetap gagal, hubungi administrator IT Anda. |
desktop-UnavailableDesktop.2901 | Koneksi ke cloud phone gagal karena layanan protokol tidak dapat terhubung ke lingkungan cloud. Restart cloud phone untuk menyelesaikan masalah ini. Jika koneksi tetap gagal, hubungi administrator IT Anda. |
desktop-UnavailableDesktop.2902 | Koneksi ke cloud phone gagal karena layanan protokol tidak merespons. Restart cloud phone untuk menyelesaikan masalah ini. Jika koneksi tetap gagal, hubungi administrator IT Anda. |
desktop-UnavailableDesktop.2903 | Koneksi ke cloud phone gagal karena masalah di lingkungan cloud. Restart cloud phone untuk menyelesaikan masalah ini. Jika koneksi tetap gagal, hubungi administrator IT Anda. |
desktop-UnavailableDesktop.2904 | Koneksi ke cloud phone gagal karena masalah di lingkungan cloud. Restart cloud phone untuk menyelesaikan masalah ini. Jika koneksi tetap gagal, hubungi administrator IT Anda. |
desktop-UnavailableDesktop.2905 | Koneksi gagal karena timeout saat logout sesi lain pada cloud phone bersama ini. Sambungkan kembali atau restart cloud phone. |
desktop-UnavailableDesktop.2906 | Koneksi gagal karena timeout respons selama login sistem. Sambungkan kembali atau restart cloud phone. |
desktop-UnavailableDesktop.2907 | Koneksi ke cloud phone gagal karena layanan protokol masih dalam proses startup. Coba sambungkan kembali nanti atau restart cloud phone. Jika masalah berlanjut, hubungi administrator IT Anda. |
desktop-UnavailableDesktop.NotRegistered | Administrator IT telah menghapus cloud phone ini. |
desktop-UnavailableDesktop.ServerNotReady | Koneksi gagal karena error selama login sistem. Hubungi administrator IT Anda untuk memulihkan izin Anda menggunakan cloud phone. |
desktop.linux-UnavailableDesktop.AuthFailed | Koneksi ke cloud phone mungkin gagal karena instans tidak lagi bergabung ke domain. Restart cloud phone dan coba sambungkan kembali, atau hubungi administrator IT Anda. |
DesktopNetworkError.AbortBySoftware | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.BadHandShake | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.BindAddressFailed | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.ConnectAddressFailed | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.ConnectionClosedError | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.ConnectionRefusedError | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.ConnectionResetError | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.ConnectionTimeout | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.DnsLookupFailed | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.Forbidden | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.ReceivedUnexpectedEOF | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.SystemOutOfResource | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopNetworkError.UnKnowError | Masalah jaringan pada cloud phone telah mengganggu koneksi ke layanan manajemen. Restart cloud phone untuk menyelesaikan masalah ini. |
DesktopStatus-Desc-Updating | Cloud phone ini sementara tidak tersedia saat konfigurasinya sedang diubah. |
DesktopStatus-Repairing | Memperbaiki. |
DesktopStatus-Updating | Memperbarui konfigurasi. |
DeviceNotInManage | Login gagal. Autentikasi perangkat tepercaya diaktifkan untuk jaringan kantor atau organisasi. Hubungi administrator untuk menonaktifkan autentikasi perangkat tepercaya atau tambahkan terminal saat ini secara manual sebagai perangkat tepercaya. |
DirectoryLoginUnsupported | Informasi yang Anda masukkan salah. Gunakan ID organisasi Anda untuk login. |
DomainFailed | Koneksi ke cloud phone gagal karena sistem tidak dapat bergabung ke domain. |
DomainRelationshipFailed | Koneksi ke cloud phone gagal karena masalah pada hubungan kepercayaan domain sistem. |
ExistedEmail | Alamat email sudah digunakan. Masukkan alamat email yang berbeda. |
ExistedEndUserId | Username sudah digunakan. Masukkan username yang berbeda. |
ExistedPhoneNumber | Nomor telepon sudah digunakan. Masukkan nomor telepon yang berbeda. |
ExpiredEmailVerifyCode | Kode verifikasi email telah kedaluwarsa. Minta yang baru. |
FailedToSendEmailVerifyCode | Gagal mengirim kode verifikasi email. Coba lagi. |
ForbidByClientVersionForBusiness | ID organisasi ini untuk edisi bisnis. Anda harus meningkatkan klien ke versi terbaru untuk login. |
ForbidByPasswordPolicy | Gagal mengubah kata sandi. Administrator IT Anda telah menonaktifkan fitur "Ubah kata sandi logon". |
FOTA_DESKTOP_IN_USE | Cloud phone "%s" sedang digunakan. Putuskan koneksi darinya lalu coba perbarui lagi. |
FOTA_SNAPSHOT_IN_PROGRESS | Gambar tidak dapat diperbarui karena sistem sedang membuat snapshot untuk cloud phone "%s". Coba lagi nanti. |
GuestOperateDesktopFail | Gagal mematikan atau me-restart cloud phone. |
GuestOperateDesktopTimeout | Operasi shutdown atau restart yang Anda lakukan pada cloud phone gagal karena timeout respons. |
GuestRebootOperateFail | Gagal me-restart cloud phone. |
GuestRebootOperateTimeout | Operasi restart yang Anda lakukan pada cloud phone gagal karena timeout respons. |
GuestStopOperateFail | Gagal mematikan cloud phone. |
GuestStopOperateTimeout | Operasi shutdown yang Anda lakukan pada cloud phone gagal karena timeout respons. |
InvalidDirectoryType | Login pengguna RAM tidak lagi didukung. Hubungi administrator IT Anda. |
InvalidEmailVerifyCode | Kode verifikasi email salah. Masukkan kembali. |
InvalidMfaDeviceStatus | Perangkat autentikasi multi-faktor virtual tidak valid. Gunakan perangkat yang terkait dengan akun Anda. |
InvalidPassword | Username atau kata sandi salah. |
LoginError.MissingConcatForVerify | Anda tidak dapat menyelesaikan verifikasi identitas karena ini adalah akun yang diaktifkan administrator. Hubungi administrator IT Anda. |
LoginForbidden | Login gagal. Autentikasi perangkat tepercaya diaktifkan untuk jaringan kantor atau organisasi. Hubungi administrator untuk menonaktifkan autentikasi perangkat tepercaya atau tambahkan terminal saat ini secara manual sebagai perangkat tepercaya. |
LoginForbidden.LockedByAdmin | Akun kemudahan terkunci. Hubungi administrator IT Anda untuk membukanya secara manual. |
LoginForbiddenByDevice | Login gagal. Administrator telah menentukan bahwa terminal ini hanya dapat diloginkan oleh pengguna tertentu, dan akun Anda tidak diizinkan. |
LoginForbiddenByUntrustedDevice | Login gagal. Administrator telah mengaktifkan "Blokir Login Terminal Tidak Tepercaya". Administrator perlu menambahkan terminal ini sebagai perangkat tepercaya atau menonaktifkan fitur ini. |
LoginForbiddenByUser | Login gagal. Administrator telah mengaktifkan batasan login terminal pengguna. Login dari terminal yang ditentukan. |
MfaClientNotSupport | Versi klien terlalu lama untuk mendukung metode autentikasi multi-faktor ini. Tingkatkan klien. |
MfaNotAllowed | Akun Anda tidak memiliki informasi yang diperlukan untuk metode autentikasi multi-faktor ini. Hubungi administrator IT Anda untuk menambahkan informasi tersebut. |
MfaTypeNotAllowed | Administrator IT Anda belum mengaktifkan metode autentikasi multi-faktor ini. |
MfaUserGoingToBeLocked | Kode verifikasi salah. Jika Anda memasukkan kode salah sebanyak 10 kali berturut-turut, akun Anda akan dikunci selama 20 menit. |
MfaUserNotExist | Akun ini telah dihapus. Hubungi administrator IT Anda untuk detailnya. |
MfaVerifyCodeDiscarded | Kode verifikasi tidak valid. Minta yang baru. |
PhoneIsNotRegistered | Nomor telepon salah, atau administrator belum mengaitkan nomor telepon ini dengan akun. |
SessionForceQuit | Anda telah otomatis logout. Ini mungkin karena Anda telah logout dari terminal lain, atau jumlah terminal yang login melebihi batas yang ditetapkan administrator IT Anda. |
StartApplicationGuestTimeout | Aplikasi gagal dijalankan karena koneksi jaringan tidak stabil. Coba lagi. |
StartDesktopFail | Gagal menjalankan cloud phone. |
ThrottlingSendEmailVerifyCodeLimit | Anda hanya dapat meminta kode verifikasi sekali per menit. |
UnavailableDesktop.2907 | Koneksi ke cloud phone gagal karena layanan protokol masih dalam proses startup. Coba sambungkan kembali nanti atau restart cloud phone. Jika masalah berlanjut, hubungi administrator IT Anda. |
FAQ
Menonaktifkan DesktopAssistant
Anda dapat menonaktifkan DesktopAssistant dengan menginisialisasi uiConfig saat memanggil createSession.
uiConfig: {
toolbar: {
visible: false,
},
},Mengirim perintah ADB melalui saluran ASP
Inisialisasi lyncChannelConfig saat memanggil createSession.
lyncChannelConfig: [
{
lyncChannelName: "lync_adb_shell",
},
],Untuk mengirim perintah, panggil session.sendLyncMessage. Contoh:
session.sendLyncMessage(
"lync_adb_shell",
JSON. stringify({
id: crypto. randomUUID(),
cmd: 'input keyevent KEYCODE_VOLUME_UP',
})
);Untuk menerima hasil perintah, tambahkan listener dengan memanggil session.addLyncListener. Contoh:
session.addLyncListener('lync_adb_shell', 'onReceivedLyncData', data => console.log('data from lync_adb_shell', data));Perintah umum:
Fitur | Perintah |
Tombol kembali | input keyevent KEYCODE_BACK |
Tombol home | input keyevent KEYCODE_HOME |
Tombol switch | input keyevent KEYCODE_APP_SWITCH |
Bisukan | input keyevent 164 |
Volume naik | input keyevent KEYCODE_VOLUME_UP |
Volume turun | input keyevent KEYCODE_VOLUME_DOWN |
Sembunyikan bilah navigasi | setprop persist.wy.hasnavibar false; killall com.android.systemui |
Tampilkan bilah navigasi | setprop persist.wy.hasnavibar true; killall com.android.systemui |
Tangkapan layar | screencap -p /sdcard/Download/abc.png |
Penggunaan kamera
Saat menggunakan demo untuk menghubungkan ke Cloud Phone, perhatikan bahwa browser mengontrol izin kamera. Agar kamera berfungsi dengan benar, URL demo harus dimulai dengan
https.Untuk hanya menggunakan kamera depan atau belakang klien, gunakan pengaturan berikut.
// Kamera depan
session.setLocalConfig('setCameraType', 1);
// Kamera belakang
session.setLocalConfig('setCameraType', 2);Penggunaan clipboard
Jika clipboard tidak berfungsi:
Periksa apakah izin clipboard diaktifkan di browser Anda.
Di Konsol Cloud Phone, periksa kebijakan untuk instans guna memastikan transfer clipboard dua arah diaktifkan.