Compare commits

...

9 Commits

4 changed files with 28 additions and 8 deletions

View File

@@ -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 != "" {

View File

@@ -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

View File

@@ -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("同步好友列表完成")
} }

View File

@@ -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{