All Products
Search
Document Center

ApsaraVideo Live:Integrasi sisi server

Last Updated:Nov 29, 2025

Messaging interaktif adalah fitur yang digunakan untuk meningkatkan komunikasi pesan di ruang siaran langsung dan memperkaya pengalaman interaktif. ApsaraVideo Live menyediakan SDK yang kaya dan mudah diintegrasikan untuk membantu Anda mengimplementasikan kemampuan seperti komentar, komentar berjalan (bullet comments), dan like dalam aplikasi siaran langsung yang dikembangkan oleh bisnis Anda. Topik ini menjelaskan cara mengintegrasikan messaging interaktif di sisi server.

Prasyarat

  • Akun Alibaba Cloud yang dapat mengakses API ApsaraVideo Live telah dibuat, serta Pengguna Resource Access Management (RAM) dengan izin terkait telah dibuat. Untuk informasi selengkapnya, lihat Buat Pengguna RAM dan berikan izin kepada Pengguna RAM.

  • Aplikasi messaging interaktif telah dibuat, dan informasi terkait aplikasi tersebut telah dicatat. Jika belum tersedia aplikasi messaging interaktif, buat satu di Konsol ApsaraVideo Live.

Deploy AppServer

  1. Setelah aplikasi messaging interaktif dibuat, Anda dapat memperoleh informasi berikut tentang aplikasi tersebut:

    1. ID Aplikasi (AppID)

    2. Kunci Aplikasi (AppKey)

    3. Tanda Tangan Aplikasi (AppSign)

    4. Wilayah tempat aplikasi berada, yaitu Pusat Siaran Langsung tempat aplikasi dideploy.

      Anda perlu mencatat informasi di atas di penyimpanan backend Anda.

  2. Implementasikan AppServer Anda.

    AppServer memungkinkan Anda menyediakan kredensial bagi client untuk login ke messaging interaktif Alibaba Cloud.image.png

    Token dihasilkan menggunakan algoritma berikut. Untuk informasi lebih lanjut tentang role, lihat bagian "Izin berbasis identitas" dalam topik ini.

    token = sha256(appId + appKey  + userId + nonce + timestamp + role)

    Bidang

    Deskripsi

    Batas

    appId

    ID aplikasi.

    ID ini dikembalikan oleh Konsol saat Anda membuat aplikasi.

    appKey

    AppKey.

    Kunci ini dikembalikan oleh Konsol saat Anda membuat aplikasi.

    userId

    User ID.

    ID ini panjangnya maksimal 64 karakter dan hanya boleh berisi huruf, angka, dan garis bawah (_).

    nonce

    Nonce. Formatnya AK-String dan panjangnya maksimal 64 byte.

    Nilai field ini hanya boleh berisi huruf, angka, dan garis bawah (_). Field ini juga boleh dikosongkan.

    role

    Role. Nilai admin menunjukkan bahwa pengguna dapat melakukan operasi management.

    Field ini boleh dikosongkan. Jika ingin memberikan izin administrator kepada pengguna, atur nilainya menjadi admin. Nilai selain admin menunjukkan bahwa pengguna tidak dapat melakukan operasi management. Untuk informasi selengkapnya, lihat bagian "Izin berbasis identitas" dalam topik ini.

    timestamp

    Waktu kedaluwarsa. Satuan: detik. Waktu kedaluwarsa = Waktu saat ini + Periode validitas.

    Nilainya berupa Unix timestamp, yaitu jumlah detik yang telah berlalu sejak pukul 00:00:00 UTC pada 1 Januari 1970 hingga token kedaluwarsa.

    Setelah token dihasilkan, Anda perlu mengirimkan token tersebut, nilai appId, userId, nonce, role, dan timestamp, serta application signature ke client. Contoh kode:

    {
        "auth": {
            "nonce": "Nonce yang ditentukan saat menghasilkan token.",
            "timestamp": 131231234, //<Timestamp yang ditentukan saat menghasilkan token, berupa nilai numerik.>
            "role": "Role yang ditentukan saat menghasilkan token.",
            "user_id": "User ID yang ditentukan saat menghasilkan token."
        },
        "app_id": "{Application ID Anda.}", 
        "app_sign": "{Application signature Anda.}",
        "app_token": "{Token yang dihasilkan.}"
    }

Izin berbasis identitas

Role login

Role login pengguna diteruskan saat pengguna login.

Nama peran

Nilai

Deskripsi

Pengguna biasa

Nilai selain admin

Pengguna dengan role ini dapat melakukan operasi biasa, seperti bergabung ke grup dan mengirim pesan.

Administrator

admin

Pengguna dengan role ini dapat melakukan operasi biasa dan operasi management, seperti membuat grup.

Role terkait grup

Nama peran

Metode penugasan

Deskripsi

Group creator

Role ini secara otomatis diberikan kepada pengguna yang membuat grup.

Pengguna dengan role ini dapat melakukan operasi management, seperti membisukan pengguna atau grup, serta menghapus grup. Jika grup dibisukan, pengguna dengan role ini tetap dapat mengirim pesan.

Group administrator

Role ini diberikan kepada pengguna oleh pembuat grup saat grup dibuat atau melalui pemanggilan operasi API untuk memodifikasi informasi grup.

Pengguna dengan role ini dapat melakukan operasi management, seperti membisukan pengguna atau grup, serta menghapus grup. Jika grup dibisukan, pengguna dengan role ini tetap dapat mengirim pesan.

Others

Role ini secara otomatis diberikan kepada pengguna yang bukan pembuat grup maupun administrator grup saat pengguna tersebut bergabung ke grup. Jika pengguna logout atau keluar karena exception, pengguna tersebut secara otomatis meninggalkan grup.

Pengguna dengan role ini dapat melakukan operasi seperti bergabung ke grup, meninggalkan grup, dan mengirim pesan. Jika grup dibisukan, pengguna dengan role ini tidak dapat mengirim pesan.

Integrasikan messaging interaktif di sisi server

Anda dapat mengintegrasikan API sisi server di server bisnis atau AppServer Anda. Untuk informasi lebih lanjut tentang operasi API tertentu, lihat Messaging interaktif (baru). Anda dapat mengklik tombol Debug di halaman operasi di OpenAPI Explorer untuk membuka halaman pemanggilan operasi tersebut. Di halaman pemanggilan operasi, Anda dapat melihat informasi integrasi SDK.

Catatan
  • ApsaraVideo Live menyediakan SDK (termasuk SDK messaging interaktif) dalam versi 1.0 dan 2.0. Kami merekomendasikan penggunaan V2.0.

  • Dalam contoh kode berikut, tentukan wilayah tempat aplikasi yang Anda buat berada. Nilai yang valid: cn-shanghai dan ap-southeast-1 (Singapura).

    • Saat membuat aplikasi, pilih wilayah sesuai kebutuhan bisnis Anda. Data di wilayah berbeda saling terisolasi.

    • Saat memanggil operasi API, wilayah yang Anda tentukan harus sama dengan wilayah tempat aplikasi berada. Jika tidak, pemanggilan Anda tidak valid.

 // Konfigurasikan informasi autentikasi Credentials, termasuk ak, secret, token
        StaticCredentialProvider provider = StaticCredentialProvider.create(Credential.builder()
                // Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET telah diatur.
                .accessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                .accessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
                //.securityToken(System.getenv("ALIBABA_CLOUD_SECURITY_TOKEN")) // gunakan STS token
                .build());

        // Konfigurasikan Client
        AsyncClient client = AsyncClient.builder()
                .region("cn-qingdao") // Region ID
                //.httpClient(httpClient) // Gunakan HttpClient yang telah dikonfigurasi, jika tidak maka gunakan HttpClient default (Apache HttpClient)
                .credentialsProvider(provider)
                //.serviceConfiguration(Configuration.create()) // Konfigurasi tingkat layanan
                // Rewrite konfigurasi tingkat client, dapat mengatur Endpoint, parameter permintaan Http, dll.
                .overrideConfiguration(
                        ClientOverrideConfiguration.create()
                                  // Endpoint. Kunjungi https://api.alibabacloud.com/product/live sebagai referensi.
                                .setEndpointOverride("live.aliyuncs.com")
                        //.setConnectTimeout(Duration.ofSeconds(30))
                )
                .build();

Izin pemanggilan API sisi server

Setelah Anda mengintegrasikan SDK server yang disediakan oleh ApsaraVideo Live, Anda dapat memanggil operasi API terkait di server bisnis Anda. Misalnya, Anda dapat memanggil operasi API untuk mengirim pesan ke grup Anda. Untuk informasi lebih lanjut tentang operasi API tertentu, lihat Messaging interaktif (baru).

Pemanggilan sisi server dan sisi client memiliki perbedaan berikut:

  • Server melakukan autentikasi berdasarkan Pengguna RAM.

  • Pemanggilan sisi server memiliki hak istimewa tertinggi, sehingga memberikan Anda izin administrator dan pembuat.

  • Jika grup dibisukan, Anda tetap dapat melakukan pemanggilan sisi server untuk mengirim pesan di grup tersebut. Pesan yang dikirim melalui pemanggilan sisi server tidak memerlukan moderasi konten.

Callbacks

Anda dapat mengonfigurasi callbacks untuk mendengarkan event pengguna aplikasi, termasuk login, logout, bergabung ke grup, dan meninggalkan grup. Untuk informasi selengkapnya, lihat CreateLiveMessageApp.

Moderasi konten

Pengaturan moderasi tingkat pesan

Jika Anda mengaktifkan moderasi konten untuk aplikasi, Anda dapat mengonfigurasi pengaturan moderasi berikut di tingkat pesan.

  • Tentukan apakah akan memoderasi pesan yang dikirim. Misalnya, Anda dapat memilih untuk tidak memoderasi konten non-chat kustom seperti pesan hadiah.

  • Pisahkan pesan yang dikirim dari bagian konten dalam pesan yang ingin dimoderasi. Misalnya, jika teks pesan kustom yang Anda kirim adalah "hello", tetapi pesan tersebut berisi informasi tambahan seperti avatar pengguna, Anda dapat memisahkan pesan yang dikirim dari informasi tambahan yang menunggu moderasi.