Skip to content
ეს გვერდი შეიქმნა და ითარგმნა ხელოვნური ინტელექტის დახმარებით. თუ შეამჩნევთ უზუსტობას, გთხოვთ, დაგვეხმარეთ გაუმჯობესებაში. GitHub-ზე რედაქტირება

Mattermost

დაუკავშირეთ PRX Mattermost-ს REST API v4-ის გამოყენებით ამ ღია კოდის, თვითჰოსტინგის Slack-ის ალტერნატივაში შეტყობინებებისთვის.

წინაპირობები

  • Mattermost სერვერი (თვითჰოსტინგი ან ღრუბელი)
  • ბოტის ანგარიში შექმნილი Mattermost-ში პირადი წვდომის ტოკენით
  • ბოტი მოწვეული არხებში, სადაც უნდა იმუშაოს

სწრაფი დაყენება

1. ბოტის ანგარიშის შექმნა

  1. გადადით System Console > Integrations > Bot Accounts და ჩართეთ ბოტის ანგარიშები
  2. გადადით Integrations > Bot Accounts > Add Bot Account
  3. მიუთითეთ მომხმარებლის სახელი, საჩვენებელი სახელი და როლი
  4. დააკოპირეთ შექმნილი წვდომის ტოკენი

ალტერნატივად, შექმენით ჩვეულებრივი მომხმარებლის ანგარიში და შექმენით პირადი წვდომის ტოკენი Profile > Security > Personal Access Tokens-ში.

2. კონფიგურაცია

toml
[channels_config.mattermost]
url = "https://mattermost.example.com"
bot_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
channel_id = "abc123def456ghi789"
allowed_users = ["user123456"]

3. შემოწმება

bash
prx channel doctor mattermost

კონფიგურაციის მითითება

ველიტიპინაგულისხმევიაღწერა
urlStringსავალდებულოMattermost სერვერის URL (მაგ., "https://mattermost.example.com")
bot_tokenStringსავალდებულობოტის წვდომის ტოკენი ან პირადი წვდომის ტოკენი
channel_idStringnullარასავალდებულო არხის ID ბოტის ერთ არხზე შესაზღუდად
allowed_users[String][]ნებადართული Mattermost მომხმარებლის ID-ები. ცარიელი = ყველას უარყოფა. "*" = ყველას დაშვება
thread_repliesbooltrueჩართვისას პასუხები ორიგინალ პოსტზე თრედდება. გამორთვისას პასუხები არხის ძირში მიდის
mention_onlyboolfalseჩართვისას მხოლოდ @-მოხსენიების შეტყობინებებს პასუხობს

ფუნქციები

  • REST API v4 -- სტანდარტულ Mattermost API-ს იყენებს შეტყობინებების გაგზავნისა და მიღებისთვის
  • თრედული პასუხები -- ავტომატურად პასუხობს წყაროს თრედში
  • აკრეფის ინდიკატორები -- აჩვენებს აკრეფის სტატუსს პასუხის გენერირებისას
  • თვითჰოსტინგის მეგობრული -- მუშაობს ნებისმიერ Mattermost განთავსებასთან, გარე დამოკიდებულებების გარეშე
  • არხის შეზღუდვა -- არასავალდებულოდ შეზღუდეთ ბოტი ერთ არხზე channel_id-ით
  • მოხსენიების ფილტრაცია -- მხოლოდ @-მოხსენიებებს პასუხობს დატვირთულ არხებში

შეზღუდვები

  • შეტყობინებების მიტანისთვის პოლინგს იყენებს WebSocket-ის ნაცვლად, რაც მცირე შეყოვნებას ქმნის
  • ბოტი უნდა იყოს არხის წევრი შეტყობინებების წასაკითხად და გასაგზავნად
  • ბოტის ანგარიშები მოითხოვს სისტემის ადმინისტრატორის ჩართვას Mattermost სისტემის კონსოლში
  • ფაილური დანართების დამუშავება ამჟამად მხარდაჭერილი არ არის
  • URL-ში ბოლო სლეშები ავტომატურად ამოიღება

პრობლემების მოგვარება

ბოტი არ პასუხობს

  • შეამოწმეთ url-ს ბოლო სლეში არ აქვს (ავტომატურად ამოიღება, მაგრამ ორმაგად შეამოწმეთ)
  • დაადასტურეთ ბოტის ტოკენის სწორეობა: curl -H "Authorization: Bearer <token>" https://your-mm.com/api/v4/users/me
  • დარწმუნდით, რომ ბოტი არხში დამატებულია

პასუხები არასწორ ადგილას მიდის

  • თუ thread_replies = true, პასუხები ორიგინალი პოსტის root_id-ზე თრედდება
  • თუ ორიგინალი შეტყობინება თრედში არ არის, ახალი თრედი იქმნება
  • მიუთითეთ thread_replies = false ყოველთვის არხის ძირში პოსტის გასაკეთებლად

ბოტი არხში ყველაფერს პასუხობს

  • მიუთითეთ mention_only = true მხოლოდ @-მოხსენიებისას პასუხისთვის
  • ალტერნატივად, შეზღუდეთ გამოყოფილ არხზე channel_id-ით

Released under the Apache-2.0 License.