Gelen ve giden webhook'ları yapılandırabileceğiniz özel entegrasyon Chat'de mevcuttur.
Gelen webhook harici kaynaklardan gelen mesajları Chat'de yayınlayacaktır. Diğer opsiyonel ayarların yanında bir JSON yükü ile genel HTTP taleplerinden faydalanır.
Webhook URL'ye verileri göndermenin iki yolu vardır:
payload
parametresi olarak bir JSON komut dizesi.JSON yükü atanan kanala yayınlanacak bir text
özelliği içerebilir. Örnek:
payload={"text": "First line of message to post in the channel.\nAlso you can have a second line of message."}
Bir bağlantı eklemek için, bağlantısını doğrudan metne
girebilirsiniz. Örnek:
payload={"text": "<https://www.synology.com>"}
Başka bir örnek:
payload={"text": "Check this!! <https://www.synology.com|Click here> for details!"}
Ayrıca gelen gönderilerinize bir dosya da yükleyebilirsiniz. Bir dosyayı karşıya yüklemek için, JSON yükünüz bir file_url
özelliği ve ayrıca bir opsiyonel metin özelliği içermelidir. URL'nizi indireceğiz ve bir kullanıcı dosyası yükleme gönderisi olarak davranacağız. Örnek:
payload={"text": "a fun image", "file_url": "http://imgur.com/xxxxx"}
Giden webhook'lar Chat mesajlarında tetik kelimeleri dinler. Bu tetik kelimeler ilgili verileri harici bir URL'ye gönderir. Giden webhook'lar sadece aşağıdaki koşullardan biri veya her ikisi sağlandığında tetiklenebilir:
Eğer bir kanal belirtilirse, tetik kelimeleri opsiyoneldir. Tetik kelimeleri hiçbir kanal seçilmediyse gereklidir. Ancak, eğer iki koşulun her ikisi de tanımlıysa, giden webhook sadece iki koşul aynı anda sağlandığında gerçekleşir.
Alınan bir mesaj bir tetik ile uyum sağlarsa, bir GÖNDERİ atanan URL'ye gönderilir. Veri alanları aşağıda açıklanmıştır:
token: bot token channel_id channel_name user_id username post_id timestamp text trigger_word: which trigger word is matched
Harici hedef Chat kanalında yanıt vermek isterse, JSON'un yanıt gövdesinde geri gönderilmesi gerekir. Desteklenen alanlar gelen webhook JSON ile aynıdır.