Versions in this module Expand all Collapse all v0 v0.3.2 May 24, 2025 Changes in this version + type Call struct + ChannelID snowflake.ID + ChannelName string + End time.Time + Font *truetype.Font + Locale discord.Locale + MemberMap map[snowflake.ID]*Member + Members []*Member + Onlines int + Rule rule.Rule + Start time.Time + func New(locale discord.Locale, rule rule.Rule, channel discord.Channel, ...) *Call + func (c *Call) EndedEmbed() discord.Embed + func (c *Call) GenerateTimeline(rest rest.Rest, now time.Time, frame time.Time, opts ...GenerateOptions) (*discord.File, error) + func (c *Call) OnEnd(now time.Time) + func (c *Call) OnStart(now time.Time) + func (c *Call) OngoingEmbed(now time.Time) discord.Embed + type GenerateOptions func(b *timeline.TimelineBuilder) + func WithIndicator(indicator time.Time) GenerateOptions + type Handler interface + Close func(t time.Time) error + IsClosed func() bool + IsRegistered func(userID snowflake.ID) bool + MemberJoin func(userID snowflake.ID, now time.Time, mute, deaf bool) + MemberLeave func(userID snowflake.ID, now time.Time) (isEmpty bool) + MemberStartStreaming func(userID snowflake.ID, time time.Time) + MemberStopStreaming func(userID snowflake.ID, time time.Time) + MemberUpdate func(userID snowflake.ID, now time.Time, mute, deaf bool) + RegisterMember func(userID snowflake.ID, member *discord.Member) + Update func() error + func NewHandler(call *Call, rest rest.Rest, now time.Time) (Handler, error) + type Manager interface + Add func(call *Call, now time.Time) (Handler, error) + Get func(channelID snowflake.ID) (Handler, bool) + Remove func(channelID snowflake.ID) + func NewManager(rest rest.Rest) Manager + type Member struct + func NewMember(userID snowflake.ID, name string) *Member + func (m *Member) HasStreamed() bool + func (m *Member) MarkAsOnline(now time.Time, muted, deaf bool) + func (m *Member) MarkAsStreaming(now time.Time) + func (m *Member) UnmarkAsOnline(now time.Time) + func (m *Member) UnmarkAsStreaming(now time.Time) + func (m *Member) UpdateStatus(now time.Time, muted, deaf bool)