Panduan API Plugin Chat

Pelajari cara mengontrol jendela chat, mengatur info pengguna, dan memantau pesan dengan API plugin chat ssq untuk manajemen layanan pelanggan yang lebih baik.

1. Perkenalan

Setelah memasukkan kode (ssq adalah variabel global), Anda dapat membuat perubahan pesan dan panggilan jendela obrolan dengan metode berikut.

2. API

2.1. Atur informasi login

Anda dapat mengatur informasi pengguna setelah pengguna login, dan dengan demikian, Anda dapat melihat informasi yang diatur dalam sistem layanan pelanggan.

ssq.push('setLoginInfo', {
  user_id: 'b58e64cfxs2ym', // Wajib, id pengguna terenkripsi
  user_name: 'test_yy', // Wajib, Nama Pengguna
  language: 'ru-RU', // Bahasa Plugin
  phone: '861592014xxxx', // Nomor ponsel harus diisi dalam format lengkap termasuk kode negara; nomor ponsel tanpa kode area dapat mengakibatkan kesalahan dalam mengidentifikasi negara atau wilayah atau diidentifikasi sebagai nomor yang tidak valid.
  email: 'test@test', // Email
  description: 'comboB\nKlien\nPelanggan yang membayar biaya', // Deskripsi
  label_names: ['Label1','Label2'], // Nama nilai tag. Ini adalah metode timpa. Hanya nilai tag yang dibuat oleh sistem yang dapat diteruskan.
  custom_fields_ext: {"1210":"test11","more":["s1","s2"]}, // Bidang khusus, temukan id dan nilai yang sesuai di bidang khusus dari pengaturan proyek dan isilah (pilih jenis yang akan diteruskan sebagai array), yang dapat dilihat di informasi pelanggan

2.2. Hapus informasi login pengguna

Anda dapat membersihkan informasi login pengguna secara manual untuk digunakan di situs PWA, yang dieksekusi setelah logout dan tidak menyegarkan halaman.

ssq.push('clearUser'); 

2.3. Buka jendela obrolan

Jendela obrolan dapat dibuka secara manual dengan program untuk beberapa skenario khusus di mana pengguna dapat dipandu untuk berkonsultasi dengan layanan pelanggan, seperti kegagalan pembayaran.

ssq.push('chatOpen'); 

2.4. Tutup jendela obrolan

Anda dapat menutup jendela obrolan secara manual dengan program.

ssq.push('chatClose'); 

2.5. Pantau pesan yang belum dibaca

Pantau pesan yang belum dibaca untuk notifikasi pesan khusus.

ssq.push('onUnRead', function(obj) {
    console.log(obj.num); // Jumlah pesan yang belum dibaca
    console.log(obj.list); // Konten pesan yang belum dibaca
});

2.6. Sembunyikan ikon

Ikon khusus dapat diimplementasikan dengan menggabungkan "pantau pesan yang belum dibaca" dan "buka jendela obrolan".

window.__ssc.setting = { hideIcon: true}; 

2.7. Pantau pesan yang dikirim oleh pengunjung

Pantau pesan pengunjung dan kemudian lakukan statistik atau pelaporan data, yang dapat digunakan untuk statistik atau atribusi efektivitas iklan.

ssq.push('onSendMessage', function(obj) {
    console.log(obj);
});

2.8. Mendengarkan pesan yang diterima oleh pengunjung

Pantau informasi yang diterima oleh pengunjung dan kemudian lakukan statistik atau pelaporan data, yang dapat digunakan untuk statistik atau atribusi efektivitas iklan.

ssq.push('onReceiveMessage', function(obj) {
    console.log(obj);
});

2.9. Pantau jendela terbuka

Pantau jendela yang terbuka, dan kemudian Anda melakukan statistik atau pelaporan data, yang dapat digunakan untuk statistik atau atribusi efektivitas iklan.

ssq.push('onOpenChat', function() {
    // Melaporkan data
});

2.10. Pantau jendela tertutup

Pantau jendela yang tertutup dan Anda dapat melaporkan data untuk analisis.

ssq.push('onCloseChat', function() {
    // Jalankan acara lainnya
});

2.11. Mendengarkan pengumpulan informasi terbuka

Dengarkan pengumpulan informasi terbuka (survei pra-obrolan dan penyimpanan informasi offline), dan laporkan data dalam panggilan balik.

ssq.push('onOpenCollection', (obj) => {
  // obj.type = 'offline' informasi offline
  // obj.type = 'survey' survei pra-obrolan
});

2.12. Memantau penyelesaian pengumpulan informasi

Setelah memantau penyelesaian pengumpulan informasi (penyelidikan pra-obrolan dan penyimpanan informasi offline), data dapat dilaporkan untuk analisis.

ssq.push('onCollectionInfo', (obj) => {
  // obj berisi data yang diberikan oleh pengguna selama proses pengumpulan informasi
});

2.13. Mendengarkan peristiwa klik ikon

Lakukan tindakan yang sesuai dengan mendengarkan berbagai acara klik ikon plug-in. Pendekatan ini dapat membantu Anda melacak perilaku interaksi pengguna.

// Mendengarkan klik Line
ssq.push('onOpenLine', (obj) => {
  console.log('Ikon Line diklik', obj);
});

// Mendengarkan klik Messenger
ssq.push('onOpenMessenger', (obj) => {
  console.log('Ikon Messenger diklik', obj);
});

// Mendengarkan klik Email
ssq.push('onOpenEmail', (obj) => {
  console.log('Ikon Email diklik', obj);
});

// Mendengarkan klik Telegram
ssq.push('onOpenTelegram', (obj) => {
  console.log('Ikon Telegram diklik', obj);
});

// Mendengarkan klik Whatsapp
ssq.push('onOpenWhatsapp', (obj) => {
  console.log('Ikon Whatsapp diklik', obj);
});

// Mendengarkan klik VKontakte
ssq.push('onOpenVKontakte',  (obj) => { 
  console.log('Ikon VKontakte diklik', obj); 
}); 

// Mendengarkan klik TikTok
ssq.push('onOpenTikTok', (obj) => {
  console.log('TikTok diklik', obj); 
}); 

// Mendengarkan klik Kustom
ssq.push('onOpenCustom', (obj) => { 
 // obj = {
 //     id, // custom_1、custom_2、custom_3
 //     content,
 // }
    console.log('Kustom diklik', obj); 
}); 

// Mendengarkan klik Zalo
ssq.push('onOpenZalo', (obj) => {
  console.log('Ikon Zalo diklik', obj);
});

2.14. Pantau penyelesaian pemuatan sumber daya plugin

Dengarkan penyelesaian pemuatan sumber daya di dalam plugin dan jalankan acara tertentu setelah pemuatan sumber daya selesai.

ssq.push('onReady', () => {
  // Menjalankan peristiwa lain
});

// Contoh Penggunaan:
<script id="ss_chat" defer src="https://example.js"></script>

<script>
   const ss_chat = document.getElementById('ss_chat');
   ss_chat.addEventListener('load', (e) => {
      window.ssq && window.ssq.push('onReady', () => {
        // Menjalankan peristiwa lain
      });
   })
</script>

2.15. Sesuaikan teks pengalihan WhatsApp

Memungkinkan Anda untuk mengatur salam atau pesan khusus yang ditampilkan saat pengguna mengklik ikon WhatsApp untuk melompat ke situs web resmi WhatsApp.

ssq.push('createWhatsappGreeting', function(msg){
    // msg defaultnya adalah Hello.
    return msg + 'tony'; // Output:Hello.tony
    // Jika Anda membutuhkan kustomisasi penuh, Anda dapat langsung mengembalikan teks yang disesuaikan
});

2.16. Mengirim pesan teks dari klien

Mengimplementasikan fitur yang memungkinkan pengunjung secara proaktif memulai informasi.

ssq.push('sendTextMessage', 'it is an error');

2.17. Menonaktifkan fungsi unggah

Dapat digunakan untuk mematikan fungsi unggah yang sesuai di sisi pengunjung.

ssq.push('hideUpload', ['img', 'video', 'document'])
// 'img' Tipe Gambar
// 'video' Tipe Video
// 'document' Tipe Dokumen

// Jika fungsi diatur untuk ditutup dan Anda ingin membukanya kembali dalam operasi tertentu, hapus item yang sesuai dalam array dan panggil lagi.
// Contoh:ssq.push('hideUpload', [])

2.18. Menyembunyikan tombol tutup jendela

Menyembunyikan tombol tutup jendela di pojok kanan atas jendela obrolan.

ssq.push('hideCloseIcon');