2using System.Collections.Generic;
4using System.Threading.Tasks;
48 Task<Message?>
NextMessage(CancellationToken cancellationToken);
55 ValueTask
Disconnect(CancellationToken cancellationToken);
63 ValueTask<Dictionary<ChatChannel, IEnumerable<ChannelRepresentation>>>
MapChannels(IEnumerable<ChatChannel> channels, CancellationToken cancellationToken);
96 Models.RevisionInformation revisionInformation,
97 Api.Models.EngineVersion engineVersion,
98 DateTimeOffset? estimatedCompletionTime,
102 bool localCommitPushed,
103 CancellationToken cancellationToken);
Represents a message received by a IProvider.
Represents a message to send to a chat provider.
For interacting with a chat service.
ValueTask Disconnect(CancellationToken cancellationToken)
Gracefully disconnects the provider. Permanently stops the reconnection timer.
ValueTask SendMessage(Message? replyTo, MessageContent message, ulong channelId, CancellationToken cancellationToken)
Send a message to the IProvider.
string BotMention
The string that indicates the IProvider was mentioned.
Task< Message?> NextMessage(CancellationToken cancellationToken)
Get a Task<TResult> resulting in the next Message the IProvider receives or null on a disconnect.
Task SetReconnectInterval(uint reconnectInterval, bool connectNow)
Set the interval at which the provider starts jobs to try to reconnect.
Task InitialConnectionJob
A Task that completes once the IProvider finishes it's first connection attempt regardless of success...
bool Connected
If the IProvider is currently connected.
ValueTask< Dictionary< ChatChannel, IEnumerable< ChannelRepresentation > > > MapChannels(IEnumerable< ChatChannel > channels, CancellationToken cancellationToken)
Get the ChannelRepresentations for given channels .
ValueTask< Func< string?, string, ValueTask< Func< bool, ValueTask > > > > SendUpdateMessage(Models.RevisionInformation revisionInformation, Api.Models.EngineVersion engineVersion, DateTimeOffset? estimatedCompletionTime, string? gitHubOwner, string? gitHubRepo, ulong channelId, bool localCommitPushed, CancellationToken cancellationToken)
Send the message for a deployment.
void InitialMappingComplete()
Indicate to the provider that at least one MapChannels(IEnumerable<ChatChannel>, CancellationToken) c...
bool Disposed
If the IProvider was disposed.