Documentation
¶
Overview ¶
Package webapi provides a web API spam detection service.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateRandomPassword ¶
GenerateRandomPassword generates a random password of a given length
Types ¶
type ApprovedUsersStore ¶ added in v1.5.1
type ApprovedUsersStore interface { Store(ids []string) error Timestamp(id string) (time.Time, error) Delete(id string) error }
ApprovedUsersStore is a storage interface for approved users.
type Config ¶
type Config struct { Version string // version to show in /ping ListenAddr string // listen address Detector Detector // spam detector SpamFilter SpamFilter // spam filter (bot) Locator Locator // locator for user info ApprovedUsersStore ApprovedUsersStore // storage for approved users AuthPasswd string // basic auth password for user "tg-spam" Dbg bool // debug mode }
Config defines server parameters
type Detector ¶ added in v1.5.0
type Detector interface { Check(msg string, userID string) (spam bool, cr []lib.CheckResult) AddApprovedUsers(ids ...string) RemoveApprovedUsers(ids ...string) ApprovedUsers() (res []string) }
Detector is a spam detector interface.
type Locator ¶ added in v1.5.0
Locator is a storage interface used to get user id by name and vice versa.
type SpamFilter ¶
type SpamFilter interface { UpdateSpam(msg string) error UpdateHam(msg string) error ReloadSamples() (err error) DynamicSamples() (spam, ham []string, err error) RemoveDynamicSpamSample(sample string) (int, error) RemoveDynamicHamSample(sample string) (int, error) }
SpamFilter is a spam filter, bot interface.
Click to show internal directories.
Click to hide internal directories.