Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
72a2e694f8 | ||
|
|
2238e23c8d | ||
|
|
a13e39dc0a | ||
|
|
0f506e5afc | ||
|
|
74f19e9d03 | ||
|
|
44c45d11f2 | ||
|
|
50e91680bb | ||
|
|
3554c95edc | ||
|
|
b2598f2406 |
@@ -4,6 +4,7 @@ import (
|
|||||||
"github.com/go-resty/resty/v2"
|
"github.com/go-resty/resty/v2"
|
||||||
"go-wechat/utils"
|
"go-wechat/utils"
|
||||||
"log"
|
"log"
|
||||||
|
"net/http"
|
||||||
)
|
)
|
||||||
|
|
||||||
// KfcCrazyThursdayCmd
|
// KfcCrazyThursdayCmd
|
||||||
@@ -33,8 +34,9 @@ func kfcApi1() string {
|
|||||||
res := resty.New()
|
res := resty.New()
|
||||||
resp, err := res.R().
|
resp, err := res.R().
|
||||||
Post("https://api.jixs.cc/api/wenan-fkxqs/index.php")
|
Post("https://api.jixs.cc/api/wenan-fkxqs/index.php")
|
||||||
if err != nil {
|
if err != nil || resp.StatusCode() != http.StatusOK {
|
||||||
log.Panicf("KFC接口1文案获取失败: %s", err.Error())
|
log.Printf("KFC接口1文案获取失败: %v", err)
|
||||||
|
return ""
|
||||||
}
|
}
|
||||||
log.Printf("KFC接口1文案获取结果: %s", resp.String())
|
log.Printf("KFC接口1文案获取结果: %s", resp.String())
|
||||||
return resp.String()
|
return resp.String()
|
||||||
@@ -58,8 +60,9 @@ func kfcApi2() string {
|
|||||||
resp, err := res.R().
|
resp, err := res.R().
|
||||||
SetResult(&resData).
|
SetResult(&resData).
|
||||||
Post("https://api.jixs.cc/api/wenan-fkxqs/index.php")
|
Post("https://api.jixs.cc/api/wenan-fkxqs/index.php")
|
||||||
if err != nil {
|
if err != nil || resp.StatusCode() != http.StatusOK {
|
||||||
log.Panicf("KFC接口2文案获取失败: %s", err.Error())
|
log.Printf("KFC接口2文案获取失败: %v", err)
|
||||||
|
return ""
|
||||||
}
|
}
|
||||||
log.Printf("KFC接口2文案获取结果: %s", resp.String())
|
log.Printf("KFC接口2文案获取结果: %s", resp.String())
|
||||||
if resData.Data.Msg != "" {
|
if resData.Data.Msg != "" {
|
||||||
@@ -84,8 +87,9 @@ func kfcApi3() string {
|
|||||||
resp, err := res.R().
|
resp, err := res.R().
|
||||||
SetResult(&resData).
|
SetResult(&resData).
|
||||||
Post("https://api.pearktrue.cn/api/kfc")
|
Post("https://api.pearktrue.cn/api/kfc")
|
||||||
if err != nil {
|
if err != nil || resp.StatusCode() != http.StatusOK {
|
||||||
log.Panicf("KFC接口3文案获取失败: %s", err.Error())
|
log.Printf("KFC接口3文案获取失败: %v", err)
|
||||||
|
return ""
|
||||||
}
|
}
|
||||||
log.Printf("KFC接口3文案获取结果: %s", resp.String())
|
log.Printf("KFC接口3文案获取结果: %s", resp.String())
|
||||||
if resData.Text != "" {
|
if resData.Text != "" {
|
||||||
|
|||||||
@@ -73,6 +73,8 @@ func GetTextMessagesById(id string) (records []vo.TextMessageItem, err error) {
|
|||||||
Where("tm.`from_user` = ?", id).
|
Where("tm.`from_user` = ?", id).
|
||||||
Where(`(tm.type = 1 OR ( tm.type = 49 AND EXTRACTVALUE ( tm.content, "/msg/appmsg/type" ) IN (?) ))`, appMsgList).
|
Where(`(tm.type = 1 OR ( tm.type = 49 AND EXTRACTVALUE ( tm.content, "/msg/appmsg/type" ) IN (?) ))`, appMsgList).
|
||||||
Where("DATE ( tm.create_at ) = DATE ( CURDATE() - INTERVAL 1 DAY )").
|
Where("DATE ( tm.create_at ) = DATE ( CURDATE() - INTERVAL 1 DAY )").
|
||||||
|
Where("tm.content NOT LIKE '#昨日水群排行榜%'").
|
||||||
|
Where("tm.content NOT LIKE '#昨日消息总结%'").
|
||||||
Order("tm.create_at ASC")
|
Order("tm.create_at ASC")
|
||||||
|
|
||||||
err = tx.Find(&records).Error
|
err = tx.Find(&records).Error
|
||||||
|
|||||||
@@ -103,6 +103,7 @@ func Sync() {
|
|||||||
"custom_account": friend.CustomAccount,
|
"custom_account": friend.CustomAccount,
|
||||||
"pinyin": friend.Pinyin,
|
"pinyin": friend.Pinyin,
|
||||||
"pinyin_all": friend.PinyinAll,
|
"pinyin_all": friend.PinyinAll,
|
||||||
|
"is_ok": true,
|
||||||
}
|
}
|
||||||
err = tx.Model(&entity.Friend{}).Where("wxid = ?", friend.Wxid).Updates(pm).Error
|
err = tx.Model(&entity.Friend{}).Where("wxid = ?", friend.Wxid).Updates(pm).Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -133,7 +134,19 @@ func Sync() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 清理不在列表中的好友
|
// 清理不在列表中的好友
|
||||||
err = tx.Model(&entity.Friend{}).Where("wxid NOT IN (?)", nowIds).Update("is_ok", false).Error
|
clearPm := map[string]any{
|
||||||
|
"is_ok": false,
|
||||||
|
"enable_chat_rank": false,
|
||||||
|
"enable_welcome": false,
|
||||||
|
"enable_summary": false,
|
||||||
|
"enable_news": false,
|
||||||
|
"clear_member": false,
|
||||||
|
"enable_ai": false,
|
||||||
|
}
|
||||||
|
err = tx.Model(&entity.Friend{}).Where("wxid NOT IN (?)", nowIds).Updates(clearPm).Error
|
||||||
|
if err != nil {
|
||||||
|
log.Printf("清理好友失败: %s", err.Error())
|
||||||
|
}
|
||||||
|
|
||||||
log.Println("同步好友列表完成")
|
log.Println("同步好友列表完成")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,11 +42,12 @@ func AiSummary() {
|
|||||||
注意,他们可能是多个话题,请仔细甄别。
|
注意,他们可能是多个话题,请仔细甄别。
|
||||||
每一行代表一个人的发言,每一行的的格式为: {"{nickname}": "{content}"}--end--
|
每一行代表一个人的发言,每一行的的格式为: {"{nickname}": "{content}"}--end--
|
||||||
|
|
||||||
|
群名称: %s
|
||||||
聊天记录如下:
|
聊天记录如下:
|
||||||
%s
|
%s
|
||||||
`
|
`
|
||||||
|
|
||||||
msg := fmt.Sprintf(msgTmp, strings.Join(content, "\n"))
|
msg := fmt.Sprintf(msgTmp, group.Nickname, strings.Join(content, "\n"))
|
||||||
|
|
||||||
// AI总结
|
// AI总结
|
||||||
messages := []openai.ChatCompletionMessage{
|
messages := []openai.ChatCompletionMessage{
|
||||||
|
|||||||
Reference in New Issue
Block a user