update
This commit is contained in:
@@ -27,8 +27,10 @@ type Sender interface {
|
||||
}
|
||||
|
||||
type Edit int
|
||||
type Replace int
|
||||
|
||||
var E Edit
|
||||
var R Replace
|
||||
|
||||
type Faker struct {
|
||||
Message interface{}
|
||||
|
||||
+19
-2
@@ -137,11 +137,15 @@ func (sender *Sender) IsMedia() bool {
|
||||
func (sender *Sender) Reply(msgs ...interface{}) (int, error) {
|
||||
msg := msgs[0]
|
||||
var edit *core.Edit
|
||||
var replace *core.Replace
|
||||
for _, item := range msgs {
|
||||
switch item.(type) {
|
||||
case core.Edit:
|
||||
v := item.(core.Edit)
|
||||
edit = &v
|
||||
case core.Replace:
|
||||
v := item.(core.Replace)
|
||||
replace = &v
|
||||
case time.Duration:
|
||||
du := item.(time.Duration)
|
||||
sender.Duration = &du
|
||||
@@ -165,10 +169,23 @@ func (sender *Sender) Reply(msgs ...interface{}) (int, error) {
|
||||
case []byte:
|
||||
rt, err = b.Send(r, string(msg.([]byte)), options...)
|
||||
case string:
|
||||
if edit != nil && sender.reply != nil {
|
||||
b.Edit(sender.reply, msg.(string))
|
||||
if edit != nil {
|
||||
if *edit == 0 {
|
||||
if sender.reply != nil {
|
||||
b.Edit(sender.reply, msg.(string))
|
||||
}
|
||||
} else {
|
||||
b.Edit(&tb.Message{
|
||||
ID: int(*edit),
|
||||
}, msg.(string))
|
||||
}
|
||||
return sender.reply.ID, nil
|
||||
}
|
||||
if replace != nil {
|
||||
b.Delete(&tb.Message{
|
||||
ID: int(*edit),
|
||||
})
|
||||
}
|
||||
rt, err = b.Send(r, msg.(string), options...)
|
||||
case *http.Response:
|
||||
_, err = b.SendAlbum(r, tb.Album{&tb.Photo{File: tb.FromReader(msg.(*http.Response).Body)}}, options...)
|
||||
|
||||
Reference in New Issue
Block a user