Skip to content

Commit 8888d72

Browse files
authored
Merge pull request #9 from commonlispbr/feature/remove-not-ban
Only remove users instead ban: give a chance
2 parents 5931fc6 + 228ec11 commit 8888d72

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed

troll_shield.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import (
2020
type TrollShieldBot interface {
2121
GetChatMember(telegram.ChatConfigWithUser) (telegram.ChatMember, error)
2222
KickChatMember(telegram.KickChatMemberConfig) (telegram.APIResponse, error)
23+
UnbanChatMember(telegram.ChatMemberConfig) (telegram.APIResponse, error)
2324
Send(telegram.Chattable) (telegram.Message, error)
2425
LeaveChat(telegram.ChatConfig) (telegram.APIResponse, error)
2526
GetUpdatesChan(telegram.UpdateConfig) (telegram.UpdatesChannel, error)
@@ -158,6 +159,11 @@ func kickTroll(bot TrollShieldBot, update *telegram.Update, user telegram.User,
158159
telegram.KickChatMemberConfig{ChatMemberConfig: chatMember},
159160
)
160161

162+
if err == nil {
163+
// only kick, don't ban
164+
_, err = bot.UnbanChatMember(chatMember)
165+
}
166+
161167
if !resp.Ok || err != nil {
162168
log.Printf(
163169
"[!] Kicking %q did not work, error code %v: %v",
@@ -166,7 +172,7 @@ func kickTroll(bot TrollShieldBot, update *telegram.Update, user telegram.User,
166172
} else {
167173
username := getUserName(user)
168174
text := fmt.Sprintf(
169-
"%v foi banido porque é membro do grupo: %v. Adeus.",
175+
"%v foi removido porque é membro do grupo: %v. Para mais informações, acione o nosso SAC 24h: @skhaz.",
170176
username, trollHouse,
171177
)
172178
reply(bot, update, text)

troll_shield_test.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,16 @@ func (bot *BotMockup) KickChatMember(c telegram.KickChatMemberConfig) (telegram.
3636

3737
}
3838

39+
func (bot *BotMockup) UnbanChatMember(c telegram.ChatMemberConfig) (telegram.APIResponse, error) {
40+
switch c.UserID {
41+
case 0:
42+
return telegram.APIResponse{Ok: true}, nil
43+
default:
44+
return telegram.APIResponse{Ok: false}, errors.New("error")
45+
}
46+
47+
}
48+
3949
func (bot *BotMockup) Send(c telegram.Chattable) (telegram.Message, error) {
4050
return telegram.Message{}, nil
4151
}

0 commit comments

Comments
 (0)