Site eylemi tanımlamak
Sitenize özgü işler (sepete ekleme, randevu formu, kupon) SmartOperator.eylemTanimla ile tanımlanır. Temsilci yalnız tanımlı eylemleri çağırabilir.
- Geliştirici
<script>
SmartOperator.eylemTanimla("sepeteEkle", {
aciklama: "Ürünü sepete ekler",
parametreler: {
urunId: { tur: "metin" },
adet: { tur: "sayi", en_az: 1 }
},
onayGerekir: false
}, async function ({ urunId, adet }) {
await sepet.ekle(urunId, Number(adet) || 1);
return { tamam: true, sepetAdedi: sepet.adet() };
});
</script>
Adımlar
Eylemi sayfalarınızda, betik etiketinden önce ya da sonra tanımlayın; etiketin hazırlık satırı erken çağrıları sıraya alır.
aciklama: temsilcinin eylemi ne zaman kullanacağını anlayacağı kısa açıklama.parametreler: her parametre içintur(metinya dasayi); isteğe bağlıen_azvesecenekler(izin verilen değerler listesi).onayGerekir:trueise eylem ziyaretçi sohbette “Onayla” demeden çalışmaz.İşleyici bir sonuç nesnesi döndürür (örneğin
{ tamam: true }); sonuç temsilciye iletilir. Hata fırlatırsa{ tamam: false, hata }olarak iletilir.
Parametre denetimiParametreler işleyiciye gelmeden önce tanımınıza göre denetlenir: tanımda olmayan alanlar atılır; tür,
en_az ya da secenekler tutmazsa işleyici çağrılmaz ve temsilciye gecersiz_parametre hatası döner. Ürünün var olup olmadığı gibi iş kurallarını işleyicinizde yine siz denetleyin.Ödeme sayfasıÖdeme sayfalarında hiçbir eylem çalışmaz; işleyiciniz bu sayfalarda çağrılmaz.