tgstation-server
The /tg/station 13 server suite
IProvider.cs
Go to the documentation of this file.
1 using System;
2 using System.Collections.Generic;
3 using System.Threading;
4 using System.Threading.Tasks;
5 
6 namespace Tgstation.Server.Host.Components.Chat.Providers
7 {
11  interface IProvider : IDisposable
12  {
16  bool Connected { get; }
17 
21  string BotMention { get; }
22 
29  Task<Message> NextMessage(CancellationToken cancellationToken);
30 
36  Task<bool> Connect(CancellationToken cancellationToken);
37 
43  Task Disconnect(CancellationToken cancellationToken);
44 
51  Task<IReadOnlyList<Channel>> MapChannels(IEnumerable<Api.Models.ChatChannel> channels, CancellationToken cancellationToken);
52 
60  Task SendMessage(ulong channelId, string message, CancellationToken cancellationToken);
61  }
62 }
For interacting with a chat service
Definition: IProvider.cs:11