ChannelView class

Constructors

ChannelView({String? account, String? accountLabel, Capabilities? capabilities, bool? connected, String? dmPolicy, String? groupPolicy, String? id, int? pendingPairing})
Returns a new ChannelView instance.

Properties

account ↔ String?
Account is the id-shaped fact about that connection: the lowercased external id integrations custodies for it — a Discord guild id, a Slack team (workspace) id, a Teams AAD tenant id, or the Telegram chat the org bound. Empty when not connected. Informational: the access policy keys on (org, channel), so exactly one account is representable per pair.
getter/setter pair
accountLabel ↔ String?
AccountLabel is the human label of that same account — the Discord guild name, the Slack team name, the Teams tenant name (falling back to the tenant id), the Telegram chat title. DISPLAY ONLY: never a key, and never swapped with Account, on any surface.
getter/setter pair
capabilities ↔ Capabilities?
Capabilities is what this transport renders natively — read it before composing a message that needs threading, media or interactive actions.
getter/setter pair
connected ↔ bool?
Connected is whether integrations holds a connection for (this org, this transport) — whether someone finished its connect flow. False leaves Account and AccountLabel empty, and a send is then refused downstream rather than here: by the transport's own binding check (403 for a Telegram chat this org has not bound, 409 for a Discord or Teams room with no inbound-learned route), or on Slack by the absent per-org bot token, which surfaces as 502.
getter/setter pair
dmPolicy ↔ String?
DMPolicy is how this org admits direct messages here: "pairing", "allowlist" or "open", defaulting to "pairing" when the org has never set one.
getter/setter pair
groupPolicy ↔ String?
GroupPolicy is how this org admits group and thread rooms here: "open", "allowlist" or "disabled", defaulting to "open". Both policy fields come back EMPTY — rather than the listing failing — when the policy cannot be read; GET /v1/channels/allowlist carries the same two with the entries they consult.
getter/setter pair
hashCode → int
The hash code for this object.
no setteroverride
id ↔ String?
ID is the fixed transport identifier — discord, slack, teams, telegram or whatsapp — and the value every route on this surface names a channel by, including the :channel segment of the send path. The listing is always in that order.
getter/setter pair
pendingPairing ↔ int?
PendingPairing counts the org's UNEXPIRED pairing requests on this channel: exactly the rows GET /v1/channels/pairing returns for it, one per person waiting on an admin. It never exceeds three — the pending cap per (org, channel) — and expired requests are not counted.
getter/setter pair
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
toString() → String
A string representation of this object.
override

Operators

operator ==(Object other) → bool
The equality operator.
override

Static Methods

fromJson(dynamic value) → ChannelView?
Returns a new ChannelView instance and imports its values from value if it's a Map, null otherwise.
listFromJson(dynamic json, {bool growable = false}) → List<ChannelView>
mapFromJson(dynamic json) → Map<String, ChannelView>
mapListFromJson(dynamic json, {bool growable = false}) → Map<String, List<ChannelView>>

Constants

requiredKeys → const Set<String>
The list of required keys that must be present in a JSON.