package main import ( "github.com/kf5grd/keybasebot" "github.com/kf5grd/keybasebot/pkg/kvstore" "samhofi.us/x/keybase/v2/types/chat1" ) func setNsfw(m chat1.MsgSummary, b *keybasebot.Bot) (bool, error) { b.KB.SendMessageByConvID(m.ConvID, "Pong!") b.Logger.Info("owner command in convid %s", m.ConvID) return true, nil } func addNsfwTeam(b *keybasebot.Bot, c chat1.ConvIDStr) bool { allowedTeams := make(map[chat1.ConvIDStr]bool) // get the allowed teams data, ok := b.Meta["nsfwAllowed"] if !ok { // the key doesn't exist yet so go ahead and create it allowedTeams[c] = true } else { // the key exists and needs to be updated allowedTeams := data.(map[chat1.ConvIDStr]bool) allowedTeams[c] = true } // write the key to meta b.Meta["nsfwAllowed"] = allowedTeams // write the key to kvStore if enabled data, ok = b.Meta["kvstore"] if ok { team := data.(string) kvKey := kvstore.New("nsfwAllowed", allowedTeams, -1) err := kvstore.Put(b.KB, team, "ssh0le", kvKey) if err != nil { return false } } return true } func delNsfwTeam(b *keybasebot.Bot, c chat1.ConvIDStr) bool { allowedTeams := make(map[chat1.ConvIDStr]bool) // get the allowed teams data, ok := b.Meta["nsfwAllowed"] if !ok { // the key doesn't exist yet so go return return true } else { // the key exists and needs to be updated allowedTeams := data.(map[chat1.ConvIDStr]bool) delete(allowedTeams, c) } // write the key to meta b.Meta["nsfwAllowed"] = allowedTeams // write the key to kvStore if enabled data, ok = b.Meta["kvstore"] if ok { team := data.(string) kvKey := kvstore.New("nsfwAllowed", allowedTeams, -1) err := kvstore.Put(b.KB, team, "ssh0le", kvKey) if err != nil { return false } } return true }