mirror of
https://github.com/silenceper/wechat.git
synced 2026-03-01 00:35:26 +08:00
Compare commits
3 Commits
046111b497
...
1889a2303b
| Author | SHA1 | Date | |
|---|---|---|---|
| 1889a2303b | |||
| 74795e86ee | |||
| d55a170570 |
Vendored
+6
@@ -26,25 +26,31 @@ func NewMemory() *Memory {
|
|||||||
|
|
||||||
// Get return cached value
|
// Get return cached value
|
||||||
func (mem *Memory) Get(key string) interface{} {
|
func (mem *Memory) Get(key string) interface{} {
|
||||||
|
mem.Lock()
|
||||||
if ret, ok := mem.data[key]; ok {
|
if ret, ok := mem.data[key]; ok {
|
||||||
|
mem.Unlock()
|
||||||
if ret.Expired.Before(time.Now()) {
|
if ret.Expired.Before(time.Now()) {
|
||||||
mem.deleteKey(key)
|
mem.deleteKey(key)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
return ret.Data
|
return ret.Data
|
||||||
}
|
}
|
||||||
|
mem.Unlock()
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// IsExist check value exists in memcache.
|
// IsExist check value exists in memcache.
|
||||||
func (mem *Memory) IsExist(key string) bool {
|
func (mem *Memory) IsExist(key string) bool {
|
||||||
|
mem.Lock()
|
||||||
if ret, ok := mem.data[key]; ok {
|
if ret, ok := mem.data[key]; ok {
|
||||||
|
mem.Unlock()
|
||||||
if ret.Expired.Before(time.Now()) {
|
if ret.Expired.Before(time.Now()) {
|
||||||
mem.deleteKey(key)
|
mem.deleteKey(key)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
mem.Unlock()
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -79,6 +79,10 @@ type sendRequest struct {
|
|||||||
Mpnews map[string]interface{} `json:"mpnews,omitempty"`
|
Mpnews map[string]interface{} `json:"mpnews,omitempty"`
|
||||||
// 发送语音
|
// 发送语音
|
||||||
Voice map[string]interface{} `json:"voice,omitempty"`
|
Voice map[string]interface{} `json:"voice,omitempty"`
|
||||||
|
// 发送视频
|
||||||
|
Mpvideo map[string]interface{} `json:"mpvideo,omitempty"`
|
||||||
|
// 发送图片-预览使用
|
||||||
|
Image map[string]interface{} `json:"image,omitempty"`
|
||||||
// 发送图片
|
// 发送图片
|
||||||
Images *Image `json:"images,omitempty"`
|
Images *Image `json:"images,omitempty"`
|
||||||
// 发送卡券
|
// 发送卡券
|
||||||
@@ -183,7 +187,13 @@ func (broadcast *Broadcast) SendImage(user *User, images *Image) (*Result, error
|
|||||||
ToUser: nil,
|
ToUser: nil,
|
||||||
MsgType: MsgTypeImage,
|
MsgType: MsgTypeImage,
|
||||||
}
|
}
|
||||||
req.Images = images
|
if broadcast.preview {
|
||||||
|
req.Image = map[string]interface{}{
|
||||||
|
"media_id": images.MediaIDs[0],
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
req.Images = images
|
||||||
|
}
|
||||||
req, sendURL := broadcast.chooseTagOrOpenID(user, req)
|
req, sendURL := broadcast.chooseTagOrOpenID(user, req)
|
||||||
url := fmt.Sprintf("%s?access_token=%s", sendURL, ak)
|
url := fmt.Sprintf("%s?access_token=%s", sendURL, ak)
|
||||||
data, err := util.PostJSON(url, req)
|
data, err := util.PostJSON(url, req)
|
||||||
@@ -205,7 +215,7 @@ func (broadcast *Broadcast) SendVideo(user *User, mediaID string, title, descrip
|
|||||||
ToUser: nil,
|
ToUser: nil,
|
||||||
MsgType: MsgTypeVideo,
|
MsgType: MsgTypeVideo,
|
||||||
}
|
}
|
||||||
req.Voice = map[string]interface{}{
|
req.Mpvideo = map[string]interface{}{
|
||||||
"media_id": mediaID,
|
"media_id": mediaID,
|
||||||
"title": title,
|
"title": title,
|
||||||
"description": description,
|
"description": description,
|
||||||
|
|||||||
Reference in New Issue
Block a user