Table of Contents

Interface ISupportPresence

Namespace
Tharga.Team
Assembly
Tharga.Team.dll

Whether anybody is on support right now.

public interface ISupportPresence

Remarks

Advisory, and never a gate. It answers "is somebody likely to see this soon", which changes what a customer expects — not whether they may ask. Nothing on the path that raises a case may wait on this or be refused by it.

Registered only when a support channel and a bot token are configured, so resolve it with GetService rather than GetRequiredService: absent is the ordinary state for a host that does not use Slack, and it means the same thing as Unknown — say nothing.

It lives here, with the contracts, rather than in the support package for the same reason ISupportCaseService does: a component has to be able to reach it without Tharga.Team.Blazor taking a dependency on a package that carries a mail stack.

Methods

GetAsync(CancellationToken)

Whether support is reachable, as far as can be told.

Task<SupportPresenceState> GetAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

Returns

Task<SupportPresenceState>

Remarks

Never throws and never blocks meaningfully: a transport failure, a rate limit or a missing configuration all come back as Unknown.