v2.8 🚀
This commit is contained in:
parent
64462d2313
commit
833ce00581
22
README.md
22
README.md
@ -127,6 +127,28 @@ xiaomoinfo/wechatgpt-amd64:latest
|
|||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
如果运行`telegram`智能机器人时希望在群里回复别人消息,可以指定一个关键字触发
|
||||||
|
|
||||||
|
```
|
||||||
|
# apple silicon
|
||||||
|
docker run -d \
|
||||||
|
--name wechatgpt \
|
||||||
|
-e apiKey="你的chatgpt apiKey" \
|
||||||
|
-e telegram="你的telegram token" \
|
||||||
|
-e tg_keyword="小莫" \
|
||||||
|
xiaomoinfo/wechatgpt:latest
|
||||||
|
|
||||||
|
# linux amd64
|
||||||
|
docker run -d \
|
||||||
|
--name wechatgpt \
|
||||||
|
-e apiKey="你的chatgpt apiKey" \
|
||||||
|
-e telegram="你的telegram token" \
|
||||||
|
-e tg_keyword="小莫" \
|
||||||
|
xiaomoinfo/wechatgpt-amd64:latest
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<img src="screenshots/docker部署.png" alt="drawing" style="width:450px;"/>
|
<img src="screenshots/docker部署.png" alt="drawing" style="width:450px;"/>
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ tasks:
|
|||||||
|
|
||||||
version:
|
version:
|
||||||
cmds:
|
cmds:
|
||||||
- docker build --platform linux/amd64 -t xiaomoinfo/wechatgpt-amd64:2.6 .
|
- docker build --platform linux/amd64 -t xiaomoinfo/wechatgpt-amd64:2.8.0 .
|
||||||
- docker push xiaomoinfo/wechatgpt-amd64:2.6
|
- docker push xiaomoinfo/wechatgpt-amd64:2.8.0
|
||||||
- docker build -t xiaomoinfo/wechatgpt:2.6 .
|
- docker build -t xiaomoinfo/wechatgpt:2.8.0 .
|
||||||
- docker push xiaomoinfo/wechatgpt:2.6
|
- docker push xiaomoinfo/wechatgpt:2.8.0
|
@ -6,6 +6,7 @@ import (
|
|||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
"github.com/wechatgpt/wechatbot/config"
|
"github.com/wechatgpt/wechatbot/config"
|
||||||
"github.com/wechatgpt/wechatbot/handler/telegram"
|
"github.com/wechatgpt/wechatbot/handler/telegram"
|
||||||
|
"github.com/wechatgpt/wechatbot/utils"
|
||||||
"os"
|
"os"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
@ -51,10 +52,8 @@ func StartTelegramBot() {
|
|||||||
chatUserName := update.Message.Chat.UserName
|
chatUserName := update.Message.Chat.UserName
|
||||||
|
|
||||||
tgUserNameStr := os.Getenv("tg_whitelist")
|
tgUserNameStr := os.Getenv("tg_whitelist")
|
||||||
|
|
||||||
tgUserNames := strings.Split(tgUserNameStr, ",")
|
tgUserNames := strings.Split(tgUserNameStr, ",")
|
||||||
|
if len(tgUserNames) > 0 && len(tgUserNameStr) > 0 {
|
||||||
if len(tgUserNames) > 0 {
|
|
||||||
found := false
|
found := false
|
||||||
for _, name := range tgUserNames {
|
for _, name := range tgUserNames {
|
||||||
if name == chatUserName {
|
if name == chatUserName {
|
||||||
@ -65,19 +64,36 @@ func StartTelegramBot() {
|
|||||||
|
|
||||||
if !found {
|
if !found {
|
||||||
log.Error("用户设置了私人私用,白名单以外的人不生效: ", chatUserName)
|
log.Error("用户设置了私人私用,白名单以外的人不生效: ", chatUserName)
|
||||||
return
|
continue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
responseMsg := telegram.Handle(text)
|
tgKeyWord := os.Getenv("tg_keyword")
|
||||||
if responseMsg == nil {
|
var reply *string
|
||||||
|
// 如果设置了关键字就以关键字为准,没设置就所有消息都监听
|
||||||
|
if len(tgKeyWord) > 0 {
|
||||||
|
content, key := utils.ContainsI(text, tgKeyWord)
|
||||||
|
if len(key) == 0 {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
msg := tgbotapi.NewMessage(chatID, *responseMsg)
|
splitItems := strings.Split(content, key)
|
||||||
|
if len(splitItems) < 2 {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
requestText := strings.TrimSpace(splitItems[1])
|
||||||
|
log.Println("问题:", requestText)
|
||||||
|
reply = telegram.Handle(requestText)
|
||||||
|
} else {
|
||||||
|
reply = telegram.Handle(text)
|
||||||
|
}
|
||||||
|
if reply == nil {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
msg := tgbotapi.NewMessage(chatID, *reply)
|
||||||
send, err := bot.Send(msg)
|
send, err := bot.Send(msg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Errorf("发送消息出错:%s", err.Error())
|
log.Errorf("发送消息出错:%s", err.Error())
|
||||||
return
|
continue
|
||||||
}
|
}
|
||||||
fmt.Println(send.Text)
|
fmt.Println(send.Text)
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user