diff --git a/core/init.go b/core/init.go index b774ec9..05f1e59 100644 --- a/core/init.go +++ b/core/init.go @@ -1,6 +1,11 @@ package core -import "os" +import ( + "os" + "time" +) + +var Duration = time.Duration(sillyGirl.GetInt("duration", 5)) * time.Second func init() { killp() diff --git a/im/im.go b/im/im.go index 881a049..b26a06d 100644 --- a/im/im.go +++ b/im/im.go @@ -1,6 +1,8 @@ package im -import "time" +import ( + "time" +) type Sender interface { GetUserID() int diff --git a/im/tg/tg.go b/im/tg/tg.go index 331423e..017da7b 100644 --- a/im/tg/tg.go +++ b/im/tg/tg.go @@ -158,8 +158,11 @@ func (sender *Sender) Reply(msgs ...interface{}) error { if err != nil { sender.Reply(err) } - if rt != nil { - + if rt != nil && sender.Duration != nil { + go func() { + time.Sleep(*sender.Duration) + b.Delete(rt) + }() } return err } @@ -171,5 +174,9 @@ func (sender *Sender) Delete() error { } func (sender *Sender) Disappear(lifetime ...time.Duration) { - + if len(lifetime) == 0 { + sender.Duration = &core.Duration + } else { + sender.Duration = &lifetime[0] + } }