Documentation
¶
Index ¶
- func BulkChangeMessageOwner(ctx context.Context, oldUser *User, newUser *User) error
- func DeleteAllMessages(ctx context.Context) error
- func MergeUsers(ctx context.Context, users ...*User) error
- func MergeUsersByID(ctx context.Context, ids ...uint) error
- func Setup(ctx context.Context) (*gorm.DB, error)
- func Start(ctx context.Context)
- type APIKey
- type CLIMessageSource
- type DBLogger
- func (l DBLogger) Error(ctx context.Context, msg string, opts ...interface{})
- func (l DBLogger) Info(ctx context.Context, msg string, opts ...interface{})
- func (l DBLogger) LogMode(level logger.LogLevel) logger.Interface
- func (l DBLogger) Trace(ctx context.Context, begin time.Time, f func() (string, int64), err error)
- func (l DBLogger) Warn(ctx context.Context, msg string, opts ...interface{})
- type DiscordMessageSource
- type ExternalID
- type HTTPMessageSource
- type Message
- func (m *Message) AddAudio(path string)
- func (m *Message) AddImage(path string)
- func (m *Message) Copy() *Message
- func (m *Message) GetAudios() []string
- func (m *Message) GetContent() string
- func (m *Message) GetExternalMessageID() string
- func (m *Message) GetImages() []string
- func (m *Message) GetTexts() []string
- func (m *Message) NotifyAction(act string)
- func (m *Message) Save(ctx context.Context) error
- func (m *Message) SendError(err error) error
- func (m *Message) SendText(text string, notify bool, extraArgs ...interface{}) error
- func (m *Message) SetContent(content string)
- func (m *Message) SetSummary(ctx context.Context, summary string) error
- type MessageModeration
- type MessageSource
- type SlackMessageSource
- type TelegramMessageSource
- type User
- func (u *User) AddExternalID(ctx context.Context, externalID, interf string) error
- func (u *User) CreateAPIKey(ctx context.Context) (string, error)
- func (u *User) Delete(ctx context.Context) error
- func (u *User) DeleteExternalID(ctx context.Context, externalID, interf string) error
- func (u *User) DeleteMessages(ctx context.Context) error
- func (u *User) DeleteOldestMessage(ctx context.Context) error
- func (u *User) GetExternalIDs() ([]*ExternalID, error)
- func (u *User) ListMessages(ctx context.Context) ([]*Message, error)
- func (u *User) MustGetExternalID(ctx context.Context, interf string) *ExternalID
- func (u *User) Save(ctx context.Context) error
- func (u *User) SetMode(ctx context.Context, mode string) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BulkChangeMessageOwner ¶
func DeleteAllMessages ¶
Types ¶
type APIKey ¶
type CLIMessageSource ¶
type CLIMessageSource struct{}
type DBLogger ¶
type DBLogger struct {
// contains filtered or unexported fields
}
type DiscordMessageSource ¶
type ExternalID ¶
type HTTPMessageSource ¶
type Message ¶
type Message struct { gorm.Model Context context.Context `json:"-" gorm:"-"` ExternalID string `json:"externalId"` Interface string `json:"interface"` User *User `json:"user,omitempty"` UserID uint `json:"userId,omitempty"` Source *MessageSource `json:"source" gorm:"-"` Name string `json:"name"` Role string `json:"role"` Content string `json:"content"` Summary string `json:"summary"` FunctionCallName string `json:"functionCallName"` FunctionCallArguments string `json:"functionCallArguments"` Moderated bool `json:"moderated"` TokenCount int `json:"tokenCount"` Moderation *MessageModeration `json:"moderation" gorm:"embedded;embeddedPrefix:moderation_"` ErrorCh chan error `json:"-" gorm:"-"` // contains filtered or unexported fields }
func NewMessage ¶
func (*Message) GetContent ¶
func (*Message) GetExternalMessageID ¶
func (*Message) NotifyAction ¶
func (*Message) SetContent ¶
type MessageModeration ¶
type MessageModeration struct { CategoryHate bool `json:"categoryHate"` CategoryHateThreatening bool `json:"categoryHateThreatening"` CategorySelfHarm bool `json:"categorySelfHarm"` CategorySexual bool `json:"categorySexual"` CategorySexualMinors bool `json:"categorySexualMinors"` CategoryViolence bool `json:"categoryViolence"` CategoryViolenceGraphic bool `json:"categoryViolenceGraphic"` CategoryScoreHate float32 `json:"categoryScoreHate"` CategoryScoreHateThreatening float32 `json:"categoryScoreHateThreatening"` CategoryScoreSelfHarm float32 `json:"categoryScoreSelfHarm"` CategoryScoreSexual float32 `json:"categoryScoreSexual"` CategoryScoreSexualMinors float32 `json:"categoryScoreSexualMinors"` CategoryScoreViolence float32 `json:"categoryScoreViolence"` CategoryScoreViolenceGraphic float32 `json:"categoryScoreViolenceGraphic"` Flagged bool `json:"flagged"` }
type MessageSource ¶
type MessageSource struct { Telegram *TelegramMessageSource `json:"telegram,omitempty"` HTTP *HTTPMessageSource `json:"http,omitempty"` Discord *DiscordMessageSource `json:"discord,omitempty"` Slack *SlackMessageSource `json:"slack,omitempty"` CLI *CLIMessageSource `json:"cli,omitempty"` }
type SlackMessageSource ¶
type SlackMessageSource struct { API *slack.Client Message *slackevents.MessageEvent SlashCommand slack.SlashCommand }
type TelegramMessageSource ¶
type User ¶
type User struct { gorm.Model FirstName string `json:"first_name"` LastName string `json:"last_name"` Username string `json:"username"` Mode string `json:"mode"` }
func CreateUser ¶
func GetUserByExternalID ¶
func (*User) AddExternalID ¶
func (*User) DeleteExternalID ¶
func (*User) GetExternalIDs ¶
func (u *User) GetExternalIDs() ([]*ExternalID, error)
func (*User) MustGetExternalID ¶
func (u *User) MustGetExternalID(ctx context.Context, interf string) *ExternalID
Click to show internal directories.
Click to hide internal directories.