diff --git a/plugins/covid.go b/plugins/covid.go deleted file mode 100644 index 45ade8f..0000000 --- a/plugins/covid.go +++ /dev/null @@ -1,83 +0,0 @@ -package plugins - -import ( - "fmt" - "regexp" - "strings" - - "github.com/matrix-org/gomatrix" -) - -// Covid responds to covid requests -type Covid struct { -} - -// State represents a individual state from the json api -type State struct { - Confirmed int `json:"confirmed"` - Recovered int `json:"recovered"` - Deaths int `json:"deaths"` -} - -// Descr describes this plugin -func (h *Covid) Descr() string { - return "Queries [thebigboard.cc](http://www.thebigboard.cc)'s api for information on COVID-19." -} - -// Re returns the beer matching string -func (h *Covid) Re() string { - return `(?i)^covid: (.+)$` -} - -func (h *Covid) fix(msg string) string { - re := regexp.MustCompile(h.Re()) - return re.ReplaceAllString(msg, "$1") -} - -// Match determines if we should call the response for Covid -func (h *Covid) Match(_, msg string) bool { - re := regexp.MustCompile(h.Re()) - return re.MatchString(msg) -} - -// SetStore we don't need a store here. -func (h *Covid) SetStore(_ PluginStore) {} - -// Process does the heavy lifting -func (h *Covid) Process(from, msg string) string { - state := h.fix(msg) - if state != "" { - var states = make(map[string]State) - req := HTTPRequest{ - Method: "GET", - ResBody: &states, - URL: "http://www.thebigboard.cc/feeds/v1/us.json", - } - _ = req.DoJSON() - // updated and source cause some issues here - //if err != nil { - // SendText(c, ev.RoomID, fmt.Sprintf("Computer says no: %s", err)) - //} - - var s State - for i, p := range states { - if strings.EqualFold(i, state) { - s = p - state = i - } - } - return fmt.Sprintf("_%s_: confirmed cases: **%d**, recovered: _%d_, deaths: _%d_", state, s.Confirmed, s.Recovered, s.Deaths) - } - return fmt.Sprintf("invalid state: %q", state) -} - -// RespondText to looking up of beer requests -func (h *Covid) RespondText(c *gomatrix.Client, ev *gomatrix.Event, _, post string) error { - return SendMD(c, ev.RoomID, h.Process(ev.Sender, post)) - -} - -// Name Covid! -func (h *Covid) Name() string { - return "Covid" -} diff --git a/plugins/plugins.go b/plugins/plugins.go index a7f2567..85ecbb8 100644 --- a/plugins/plugins.go +++ b/plugins/plugins.go @@ -287,7 +287,6 @@ var Plugs = Plugins{ &Beat{}, &Beer{}, &BotSnack{}, - &Covid{}, &DMR{}, &Feder{}, &Groan{},