Sekatan Kandungan
Hadkan topik tertentu daripada pelawat widget yang tanpa nama (tidak disahkan). Pengguna yang disahkan dengan identiti yang sah melihat jawapan penuh.
Gambaran Keseluruhan#
Sekatan Kandungan membolehkan anda menetapkan topik yang hanya boleh dibincangkan dengan pengguna yang disahkan. Apabila pelawat tanpa nama bertanya tentang topik yang disekat, AI membalas dengan mesej tersuai dan bukannya jawapan sebenar.
Ini berguna untuk melindungi maklumat sensitif seperti:
- Butiran harga dan struktur diskaun
- Ciri Enterprise atau peta jalan dalaman
- Dokumentasi API atau spesifikasi teknikal
- Maklumat khusus rakan kongsi
Persediaan#
Sekatan topik buat masa ini dikonfigurasikan melalui API tetapan ejen. Kemas kini ejen anda dengan tiga kunci tetapan:
gated_enabled(boolean) — menghidupkan atau mematikan sekatan topikgated_topics(tatasusunan rentetan) — topik yang perlu dihadkan. Jadilah spesifik — contohnya, gunakan "enterprise pricing tiers" dan bukan sekadar "pricing" bagi mengelakkan padanan palsu.gated_message(rentetan) — mesej yang dilihat pengguna tanpa nama apabila bertanya tentang topik yang disekat. Apabila kosong, nilai lalainya ialah: "This information is available to registered users. Please sign in or contact us for details."
curl -X PATCH https://api.respondo.ai/api/v1/agents/<agent-uuid> \
-H "Authorization: Bearer <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"settings": {
"gated_enabled": true,
"gated_topics": ["enterprise pricing tiers", "internal roadmap"],
"gated_message": "This information is available to registered users. Please sign in or contact our sales team for details."
}
}'Sekatan Kandungan juga memerlukan pengenalan pengguna untuk membezakan pelawat yang disahkan daripada yang tanpa nama. Lihat dokumentasi Pengenalan Pengguna untuk arahan persediaan.
Cara Ia Berfungsi#
Apabila mesej tiba daripada widget, sistem memeriksa sama ada pengguna mempunyai identiti yang disahkan:
| Jenis pengguna | Medan identiti | Topik disekat |
|---|---|---|
| Disahkan | Mempunyai userId atau email (disahkan HMAC apabila identity_secret dikonfigurasi) | Jawapan penuh — tiada sekatan |
| Tanpa nama | Hanya visitorId, atau tiada identiti langsung | Melihat mesej balasan yang disekat |
| HMAC gagal | Mempunyai userId tetapi userHash tidak sah | Dianggap tanpa nama — melihat balasan yang disekat |
identity_secret yang dikonfigurasi, sebarang userId/email yang dihantar kepada identify() dikira sebagai disahkan tanpa pengesahan — pelawat boleh mengenal pasti dirinya sendiri daripada konsol pelayar dan membuka topik yang disekat. Tetapkan identity_secret dan hantar userHash supaya pengesahan boleh disemak; lihat Pengesahan Identiti (HMAC). Baris "HMAC gagal" di atas hanya terpakai apabila identity_secret ditetapkan.Keperluan Identiti#
Supaya Sekatan Kandungan berfungsi, anda perlu menghantar identiti pengguna semasa memulakan widget. Berikut ialah contoh minimum:
<!-- For authenticated users -->
<script>
Respondo.init({ agentId: 'YOUR_AGENT_ID' });
Respondo.identify({
userId: 'user-123',
email: 'user@example.com',
userHash: 'HMAC_SHA256_HASH' // Required if identity_secret is set
});
</script>
<!-- For anonymous visitors — just init without identify -->
<script>
Respondo.init({ agentId: 'YOUR_AGENT_ID' });
// No identify() call — user is anonymous, gated topics will be restricted
</script>Untuk persediaan pengesahan HMAC, lihat Pengesahan Identiti (HMAC).
Sekatan Kandungan berbanding Topik Yang Perlu Dielakkan
Topik Yang Perlu Dielakkan menyekat topik bagi semua pengguna — yang disahkan mahupun tanpa nama. Gunakannya untuk topik yang ejen tidak sepatutnya bincangkan langsung (contohnya, perbandingan dengan pesaing, nasihat undang-undang).
Sekatan Kandungan menyekat topik hanya bagi pengguna tanpa nama. Pengguna yang disahkan melihat jawapan penuh. Gunakannya untuk maklumat yang ingin anda kongsi dengan pelanggan tetapi bukan dengan orang awam (contohnya, harga, ciri dalaman).