Multica Docs

Slack Bot

Bir agent için Slack Bot oluşturun ve bunu DM'lerde, kanallarda, `/issue`, `/new` ve `/clear` komutlarında kullanın.

Multica kendi Slack uygulamanızı kullanır. Bağlandıktan sonra ekip üyeleri Bot'a DM gönderebilir, bir kanalda ondan @ ile bahsedebilir, iş oluşturmak için /issue, yeni bir Multica Sohbeti başlatmak için /new ya da geçerli Sohbetin agent bağlamını sıfırlamak için /clear kullanabilir.

Bir Slack uygulaması bir Multica agent'ına eşlenir. Birden fazla agent'ı bağlamak için her biri için ayrı bir uygulama oluşturun.

Başlamadan önce

Bağlantı bir çalışma alanı sahibi veya yöneticisi tarafından tamamlanmalıdır ve Multica'ya yapıştırılan iki kimlik bilgisiyle sonuçlanır:

  • xoxb- ile başlayan bir Bot User OAuth Token;
  • xapp- ile başlayan bir App-level Token.

1. Slack uygulamasını bir manifest'ten oluşturun

Slack API Apps'i açın, Create New App → From a manifest'e tıklayın, Slack çalışma alanını seçin, ardından aşağıdakini YAML altına yapıştırın:

display_information:
  name: Multica
features:
  app_home:
    home_tab_enabled: false
    messages_tab_enabled: true
    messages_tab_read_only_enabled: false
  bot_user:
    display_name: Multica
    always_online: true
  slash_commands:
    - command: /issue
      description: Create a Multica issue
      usage_hint: "[description]"
    - command: /new
      description: Start a new Multica chat
      usage_hint: "[message]"
    - command: /clear
      description: Clear the current Multica chat context
      usage_hint: "[message]"
oauth_config:
  scopes:
    bot:
      - app_mentions:read
      - channels:history
      - files:read
      - groups:history
      - im:history
      - mpim:history
      - chat:write
      - reactions:write
      - users:read
      - commands
settings:
  event_subscriptions:
    bot_events:
      - app_mention
      - message.im
      - message.channels
      - message.groups
      - message.mpim
  interactivity:
    is_enabled: false
  org_deploy_enabled: false
  socket_mode_enabled: true
  token_rotation_enabled: false

Oluşturmadan önce, her iki Multica geçtiği yeri agent'ın adıyla değiştirebilirsiniz. Manifest'ten kapsamları veya olayları kaldırmayın, aksi halde DM'ler, kanal bahsetmeleri, yanıtlar, /issue, /new veya /clear çalışmayı durdurabilir.

Slack slash komut adları çalışma alanı genelinde geçerlidir. Kurulu başka bir uygulama zaten /new veya /clear'a sahipse, Slack uygulamayı oluştururken veya güncellerken çakışan komutu reddeder. Çakışmayı çözün, ya da yerel slash komut yakalamayı atlamak için mesaj biçimini gönderin — @Multica /new [mesaj] veya @Multica /clear [mesaj].

Bu Slack uygulaması dosya eki desteği kullanıma sunulmadan önce kurulduysa, files:read Bot kapsamını ekleyin ve uygulamayı çalışma alanına yeniden kurun. Slack, uygulama yeniden kurulana kadar yeni eklenen kapsamları mevcut Bot token'ına uygulamaz.

Bot, Socket Mode üzerinden Slack'e dışa doğru bağlanır, bu yüzden herkese açık bir Request URL veya OAuth Redirect URL'sine gerek yoktur.

2. İki token'ı alın

Bot token'ı

  1. Slack uygulamasında Install App'i açın.
  2. Install to Workspace'e tıklayın ve izinleri onaylayın.
  3. Bot User OAuth Token'ı kopyalayın — xoxb- ile başlar.

Uygulama düzeyi token

  1. Basic Information → App-Level Tokens'ı açın.
  2. Generate Token and Scopes'a tıklayın.
  3. connections:write kapsamını ekleyin.
  4. Token'ı oluşturun ve xapp- ile başlayan token'ı kopyalayın.

3. Bir agent'a bağlayın

  1. Multica'da Agent'lar'ı açın ve Slack'e bağlanacak agent'ı seçin.
  2. Entegrasyonlar'a gidin ve Slack'e Bağlan'a tıklayın.
  3. Bot token'ını ve Uygulama düzeyi token'ını yapıştırın.
  4. Bağlan'a tıklayın.

Multica, iki token'ın aynı uygulamadan geldiğini doğrular. Bağlandıktan sonra sayfa Slack'e Bağlı gösterir.

Her iki token da Multica sunucusunda şifrelenmiş olarak saklanır. Token'lar kimlik bilgisidir — bunları işlere, yorumlara veya kod depolarına koymayın. Başka bir agent'a veya çalışma alanına zaten bağlı bir uygulama doğrudan yeniden kullanılamaz; önce orijinal bağlantıyı kesin.

İlk kullanım

Bir üye Bot'a ilk kez DM gönderdiğinde veya ondan @ ile bahsettiğinde, bir hesap bağlama bağlantısı alır. O çalışma alanı için Multica hesabıyla giriş yapın, ardından Slack'e dönüp mesajı yeniden gönderin.

Bağlantı tek kullanımlıktır ve 15 dakika sonra süresi dolar. Süresi dolduğunda, yenisi için Bot'a tekrar mesaj atın. Aynı Multica çalışma alanındaki birden fazla Bot, aynı Slack çalışma alanından geliyorlarsa genellikle mevcut bir bağlamayı yeniden kullanabilir.

Bot'u yalnızca geçerli Multica çalışma alanının üyeleri kullanabilir.

Slack üzerinden agent'a iş verin

Doğrudan mesajlar

Slack kenar çubuğundaki Apps'ten Bot'u açın ve doğrudan mesaj gönderin — @ ile bahsetmeye gerek yok.

Kanallar ve grup sohbetleri

Önce Bot'u kanala eklemek için /invite @your-bot çalıştırın, ardından @your-bot isteğiniz gönderin. Her thread kendi oturumunu oluşturur; takip mesajları için Bot'tan orijinal thread'de @ ile bahsetmeye devam edin.

Bot, yalnızca kendisinden açıkça @ ile bahseden kanal mesajlarına yanıt verir. Çalıştığında, izinlerinin izin verdiği kapsamlar dahilinde thread'in yakın geçmişteki bağlamını okur.

Dosya gönderin

Dosyaları bir DM'e veya Bot'tan @ ile bahseden bir kanal mesajına ekleyin. Dosyalar aynı işin eki olarak gelir, böylece agent onları isteğinizle birlikte okur.

Bunun için files:read kapsamı gerekir — uygulama dosya eki desteğinden önce kurulduysa, 1. adımdaki nota bakın. Her dosya 20 MiB veya daha küçük olmalı ve bir mesaj en fazla 10 dosya taşıyabilir. Daha büyük olan, hâlâ yüklenmekte olan veya Slack dışında barındırılan dosyalar (örneğin bir Google Drive veya Dropbox bağlantısı) atlanır; mesaj metni yine de agent'a ulaşır.

/issue ile iş oluşturun

Bir kanalda veya DM'de şunu yazın:

/issue Safari stays on the login page after a successful sign-in

Bu komut @ ile bahsetmeye gerek duymaz. Multica, açıklamayı geçerli Bot'un arkasındaki agent'a iletir; agent başlığı ve gövdeyi yazar ve işi oluşturur. Slack önce yalnızca size görünen bir onay gösterir; iş oluşturulduğunda Multica gelen kutunuzda bir bildirim alırsınız.

/new ile yeni bir Sohbet başlatın

Bot'la bir DM'de, /new hemen yeni, görünür ve boş bir Sohbet oluşturur. /new <mesaj> Sohbeti oluşturur ve mesajı onun ilk turu olarak kullanır. Boş bir /new, ilk gerçek kullanıcı mesajı gelene kadar Yeni sohbet olarak görünür; başlık daha sonra mevcut ilk-mesaj başlık davranışını izler.

Önceki Sohbet, Multica'da web, masaüstü ve mobilde kullanılabilir ve yazılabilir kalmaya devam eder. Bu Slack konuşmasından gelen yalnızca sonraki mesajlar yeni Sohbete yönlendirilir.

Bir kanalda veya thread'de, Slack'in yerel slash komut yükü hedef thread'i tanımlamaz. Bunun yerine hedef thread'de @Multica /new [mesaj] gönderin.

/clear ile geçerli Sohbet bağlamını temizleyin

Bot'la bir DM'de, /clear geçerli Multica Sohbetini korur ve yalnızca agent'a görünen bağlamı sıfırlar. Sohbetin tam geçmişi Multica'da saklı ve görünür kalmaya devam eder. /clear <mesaj>, mesajı yeni bağlamdaki ilk tur olarak kullanır; boş bir /clear sınırı bir sonraki gerçek mesaja uygular.

Bir kanalda veya thread'de, Multica'nın sınırı doğru konuşmaya uygulayabilmesi için hedef thread'de @Multica /clear [mesaj] gönderin.

Bağlantıları yönetin

Bağlı tüm Slack Botlarını görüntülemek için Settings → Integrations'ı açın. Çalışma alanı sahipleri ve yöneticileri bunların bağlantısını kesebilir.

Bağlantı kesildikten sonra Socket Mode bağlantısı durur ve Bot artık yeni mesaj almaz. Mevcut konuşmalar ve denetim kayıtları silinmez.

Kendi sunucunuzda barındırma kurulumu

Multica Cloud ek bir yapılandırma gerektirmez. Kendi sunucunuzda barındırılan bir dağıtımın önce Slack token'larını şifrelemek için kullanılan bir anahtar ayarlaması gerekir:

MULTICA_SLACK_SECRET_KEY=<base64-encoded 32-byte key>

Şunun gibi bir tane üretin:

openssl rand -base64 32

API sunucusunu yeniden başlatın, ardından Slack uygulamasını bağlayın. Bu anahtarı uzun vadeli olarak saklayın: döndürülür veya kaybedilirse, mevcut token'lar artık çözülemez ve Bot'un yeniden bağlanması gerekir.

Hesap bağlama bağlantıları MULTICA_APP_URL'yi kullanır, ayarlanmamışsa FRONTEND_ORIGIN'e döner; üyelerin erişebileceği bir Multica adresine işaret etmelidir.

Sorun giderme

  • Bağlanırken geçersiz token: önekleri kontrol edin ve her iki token'ın da aynı uygulamadan geldiğini doğrulayın.
  • Uygulama doğrulanamıyor: manifest'in users:read'i içerdiğini doğrulayın, ardından izinleri güncelledikten sonra uygulamayı yeniden kurun.
  • DM giriş noktası yok: app_home.messages_tab_enabled'ın true olduğunu doğrulayın.
  • Bir kanalda yanıt yok: Bot'un kanala davet edildiğini ve mesajın ondan @ ile bahsettiğini doğrulayın.
  • /issue, /new veya /clear yok: manifest'in her üç slash komutunu ve commands kapsamını içerdiğini doğrulayın, ardından uygulamayı yeniden kurun. Slack /new veya /clear'ın zaten alındığını bildirirse, @Multica mesaj biçimini kullanın veya önce çalışma alanı düzeyindeki komut çakışmasını çözün.
  • Dosyalar agent'a ulaşmıyor: manifest'in files:read'i içerdiğini ve kapsam eklendikten sonra uygulamanın yeniden kurulduğunu doğrulayın, ve dosyanın 20 MiB veya daha küçük olduğunu kontrol edin.
  • Bot çalışmıyor: agent'ın arşivlenip arşivlenmediğini ve kullandığı runtime'ın çevrimiçi olup olmadığını kontrol edin.

Sonraki adımlar

  • Sohbet entegrasyonları — platform karşılaştırması, oturum izolasyonu ve hesap bağlama mekanikleri.
  • Sohbet — Bot'un arkasındaki konuşma ve yürütme modeli.
  • İşler/issue'nun oluşturduğu iş birimi.