From a0115a0137cc1edccabcbf478e29a1ad68ffa29d Mon Sep 17 00:00:00 2001 From: ivhu Date: Sun, 24 Nov 2024 20:10:10 +0800 Subject: [PATCH 1/8] bugfix:can not stop typing --- ai/gemini/gemini.go | 1 + handler/gemini_handler.go | 1 + 2 files changed, 2 insertions(+) diff --git a/ai/gemini/gemini.go b/ai/gemini/gemini.go index 1897096..7749b11 100644 --- a/ai/gemini/gemini.go +++ b/ai/gemini/gemini.go @@ -104,6 +104,7 @@ func (g *gemini) Chat(chatId string, msg string) (string, error) { result := fmt.Sprint(resp.Candidates[0].Content.Parts[0]) if err := g.db.Add(models.NewChat(chatId, false, result)); err != nil { log.Error().Err(err).Msg("failed to add chat record") + return "", err } return result, nil } diff --git a/handler/gemini_handler.go b/handler/gemini_handler.go index b3db5ac..885e42f 100644 --- a/handler/gemini_handler.go +++ b/handler/gemini_handler.go @@ -163,6 +163,7 @@ func handlePrivateChat(b *gotgbot.Bot, ctx *ext.Context, ai ai.AiInterface) erro if err != nil { log.Error().Err(err).Msg("gemini chat error") ctx.EffectiveMessage.Reply(b, "gemini chat error", nil) + a <- struct{}{} return err } log.Debug().Msgf("%s say: %s", sender, input) From 38341447a46c4c174b88aacd3d2b563a1ed455d6 Mon Sep 17 00:00:00 2001 From: ivhu Date: Mon, 25 Nov 2024 21:02:49 +0800 Subject: [PATCH 2/8] bugfix:chat context to long to send message --- ai/gemini/gemini.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ai/gemini/gemini.go b/ai/gemini/gemini.go index 7749b11..572fe8e 100644 --- a/ai/gemini/gemini.go +++ b/ai/gemini/gemini.go @@ -93,6 +93,9 @@ func (g *gemini) Chat(chatId string, msg string) (string, error) { cs = g.model.StartChat() g.chats[chatId] = cs } + if len(cs.History) > 30 { + cs.History = cs.History[len(cs.History)-30:] + } if err := g.db.Add(models.NewChat(chatId, true, msg)); err != nil { log.Error().Err(err).Msg("failed to add chat record") } From b1937b64278847f587b4fa9c3cd43bb0b124dd6d Mon Sep 17 00:00:00 2001 From: bighu630 <64675547+bighu630@users.noreply.github.com> Date: Wed, 27 Nov 2024 00:49:15 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20quotation=5Fhandler.go?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- handler/quotation_handler.go | 1 + 1 file changed, 1 insertion(+) diff --git a/handler/quotation_handler.go b/handler/quotation_handler.go index b33d326..b98ef37 100644 --- a/handler/quotation_handler.go +++ b/handler/quotation_handler.go @@ -69,6 +69,7 @@ var quotationsKey = map[string]string{ "抱抱~": 情侣, "亲亲~": 情侣, "贴贴~": 情侣, + "rua": 情侣, } type quotationsHandler struct { From 5f110b4e51f98c9a50b7283a53c1f7ff209fa6c6 Mon Sep 17 00:00:00 2001 From: bighu630 <64675547+bighu630@users.noreply.github.com> Date: Sun, 1 Dec 2024 12:20:02 +0800 Subject: [PATCH 4/8] Update README.md --- README.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 9a29aec..f8ad736 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,28 @@ chatgpt待续... -## 使用教程 +## 使用教程(tg用户) +群互动机器人 +用法: + cp语录: + 1. 引用其他人的消息 + 2. 回复关键词 [mua,mua~,摸摸,抱抱] + 3. 有60%概率触发,摘星会引用你引用的话,并发🍬 + 骂人: + 1. 引用其他人的消息 + 2. 回复 [骂他,咬他],其中 他 可以替换为 她 它 ta + 3. 100%触发,摘星会引用你引用而话,并骂他 + chatgpt: + 1. 在群聊中使用 `/chat msg` 可以与摘星聊天,MSG可以是任意内容 + 2. 在群聊里应用摘星的话,摘星会以为你在和他聊天,@则不会 + 3. 私聊摘星,摘星会与你对话 + youtubeMusic下载: + 私聊或者群聊里发送youtubeMusic链接,摘星会下载音乐并唱给你听 + +另外你们的start是作者最大的动力:https://github.com/bighu630/tg_bot + + +## 使用教程(服务端) 修改config copy.toml为config.toml From e0f13311ed30f8eb0baaa0d44edc937f5ece9fc9 Mon Sep 17 00:00:00 2001 From: bighu630 <64675547+bighu630@users.noreply.github.com> Date: Sun, 1 Dec 2024 12:20:48 +0800 Subject: [PATCH 5/8] Update README.md --- README.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f8ad736..d6b219c 100644 --- a/README.md +++ b/README.md @@ -11,24 +11,40 @@ chatgpt待续... ## 使用教程(tg用户) + 群互动机器人 + 用法: + cp语录: + 1. 引用其他人的消息 + 2. 回复关键词 [mua,mua~,摸摸,抱抱] + 3. 有60%概率触发,摘星会引用你引用的话,并发🍬 + 骂人: + 1. 引用其他人的消息 + 2. 回复 [骂他,咬他],其中 他 可以替换为 她 它 ta + 3. 100%触发,摘星会引用你引用而话,并骂他 + chatgpt: + 1. 在群聊中使用 `/chat msg` 可以与摘星聊天,MSG可以是任意内容 + 2. 在群聊里应用摘星的话,摘星会以为你在和他聊天,@则不会 + 3. 私聊摘星,摘星会与你对话 + youtubeMusic下载: + 私聊或者群聊里发送youtubeMusic链接,摘星会下载音乐并唱给你听 -另外你们的start是作者最大的动力:https://github.com/bighu630/tg_bot +另外你们的start是作者最大的动力😀 ## 使用教程(服务端) From c9ac0395e006ba8d856dd1fb4b3dcce0cceddfff Mon Sep 17 00:00:00 2001 From: bighu630 <64675547+bighu630@users.noreply.github.com> Date: Sun, 1 Dec 2024 12:22:07 +0800 Subject: [PATCH 6/8] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index d6b219c..47fbae2 100644 --- a/README.md +++ b/README.md @@ -43,6 +43,8 @@ chatgpt待续... youtubeMusic下载: 私聊或者群聊里发送youtubeMusic链接,摘星会下载音乐并唱给你听 + +> 摘星是bot的名字:@ytbmusicPlaerBot 另外你们的start是作者最大的动力😀 From a6eb2e3cfcf45820ec40e452cd76c4d8e684d202 Mon Sep 17 00:00:00 2001 From: bighu630 <64675547+bighu630@users.noreply.github.com> Date: Sun, 1 Dec 2024 12:58:57 +0800 Subject: [PATCH 7/8] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 47fbae2..e88ebd7 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ chatgpt待续... 1. 在群聊中使用 `/chat msg` 可以与摘星聊天,MSG可以是任意内容 - 2. 在群聊里应用摘星的话,摘星会以为你在和他聊天,@则不会 + 2. 在群聊里引用摘星的话,摘星会以为你在和他聊天,@则不会 3. 私聊摘星,摘星会与你对话 From 6166157a8db0d8febb50a88d1cd2d69ffa375bbb Mon Sep 17 00:00:00 2001 From: bighu630 <64675547+bighu630@users.noreply.github.com> Date: Tue, 3 Dec 2024 16:23:30 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20quotation=5Fhandler.go?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- handler/quotation_handler.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/handler/quotation_handler.go b/handler/quotation_handler.go index b98ef37..28120e6 100644 --- a/handler/quotation_handler.go +++ b/handler/quotation_handler.go @@ -105,7 +105,7 @@ func (y *quotationsHandler) CheckUpdate(b *gotgbot.Bot, ctx *ext.Context) bool { crossR = true } if crossR { - return getRandomProbability(0.6) + return getRandomProbability(0.7) } return false }