mirror of
https://github.com/Mrs4s/go-cqhttp.git
synced 2025-05-06 03:53:50 +08:00
Merge branch 'dev'
This commit is contained in:
commit
c1a36caa99
6
.github/workflows/ci.yml
vendored
6
.github/workflows/ci.yml
vendored
@ -14,14 +14,12 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
# build and publish in parallel: linux/386, linux/amd64, windows/386, windows/amd64, darwin/amd64
|
||||
# build and publish in parallel: linux/386, linux/amd64, windows/386, windows/amd64, darwin/amd64, darwin/arm64
|
||||
goos: [linux, windows, darwin]
|
||||
goarch: ["386", amd64, arm, arm64]
|
||||
exclude:
|
||||
- goos: darwin
|
||||
goarch: arm
|
||||
- goos: darwin
|
||||
goarch: arm64
|
||||
- goos: darwin
|
||||
goarch: "386"
|
||||
- goos: windows
|
||||
@ -32,7 +30,7 @@ jobs:
|
||||
- name: Setup Go environment
|
||||
uses: actions/setup-go@v2.1.3
|
||||
with:
|
||||
go-version: 1.15
|
||||
go-version: 1.16
|
||||
- name: Build binary file
|
||||
env:
|
||||
GOOS: ${{ matrix.goos }}
|
||||
|
6
.github/workflows/release.yml
vendored
6
.github/workflows/release.yml
vendored
@ -8,14 +8,12 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
# build and publish in parallel: linux/386, linux/amd64, windows/386, windows/amd64, darwin/386, darwin/amd64
|
||||
# build and publish in parallel: linux/386, linux/amd64, windows/386, windows/amd64, darwin/386, darwin/amd64, darwin/arm64
|
||||
goos: [linux, windows, darwin]
|
||||
goarch: ["386", amd64, arm, arm64]
|
||||
exclude:
|
||||
- goos: darwin
|
||||
goarch: arm
|
||||
- goos: darwin
|
||||
goarch: arm64
|
||||
- goos: darwin
|
||||
goarch: "386"
|
||||
- goos: windows
|
||||
@ -32,6 +30,6 @@ jobs:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
goos: ${{ matrix.goos }}
|
||||
goarch: ${{ matrix.goarch }}
|
||||
goversion: "https://golang.org/dl/go1.15.3.linux-amd64.tar.gz"
|
||||
goversion: "https://golang.org/dl/go1.16.linux-amd64.tar.gz"
|
||||
ldflags: -w -s -X "github.com/Mrs4s/go-cqhttp/coolq.Version=${{ env.RELEASE_VERSION }}"
|
||||
|
||||
|
@ -1252,6 +1252,10 @@ func (bot *CQBot) CQCheckURLSafely(url string) MSG {
|
||||
func (bot *CQBot) CQGetVersionInfo() MSG {
|
||||
wd, _ := os.Getwd()
|
||||
return OK(MSG{
|
||||
"app_name": "go-cqhttp",
|
||||
"app_version": Version,
|
||||
"app_full_name": fmt.Sprintf("go-cqhttp-%s_%s_%s-%s", Version, runtime.GOOS, runtime.GOARCH, runtime.Version()),
|
||||
"protocol_version": "v11",
|
||||
"coolq_directory": wd,
|
||||
"coolq_edition": "pro",
|
||||
"go-cqhttp": true,
|
||||
|
16
coolq/bot.go
16
coolq/bot.go
@ -420,7 +420,21 @@ func (bot *CQBot) formatGroupMessage(m *message.GroupMessage) MSG {
|
||||
gm["sender"].(MSG)["nickname"] = "匿名消息"
|
||||
gm["sub_type"] = "anonymous"
|
||||
} else {
|
||||
mem := bot.Client.FindGroup(m.GroupCode).FindMember(m.Sender.Uin)
|
||||
group := bot.Client.FindGroup(m.GroupCode)
|
||||
mem := group.FindMember(m.Sender.Uin)
|
||||
if mem == nil{
|
||||
log.Warnf("获取 %v 成员信息失败,尝试刷新成员列表", m.Sender.Uin)
|
||||
t, err := bot.Client.GetGroupMembers(group)
|
||||
if err != nil {
|
||||
log.Warnf("刷新群 %v 成员列表失败: %v", group.Uin, err)
|
||||
return Failed(100, "GET_MEMBERS_API_ERROR", err.Error())
|
||||
}
|
||||
group.Members = t
|
||||
mem = group.FindMember(m.Sender.Uin)
|
||||
if mem != nil{
|
||||
return Failed(100,"MEMBER_NOT_FOUND","群员不存在")
|
||||
}
|
||||
}
|
||||
ms := gm["sender"].(MSG)
|
||||
ms["role"] = func() string {
|
||||
switch mem.Permission {
|
||||
|
@ -1,4 +1,4 @@
|
||||
// +build linux windows,!arm darwin
|
||||
// +build linux windows,!arm darwin,!arm64
|
||||
// +build 386 amd64 arm arm64
|
||||
|
||||
// Package codec Slik编码核心模块
|
||||
|
8
global/codec/codec_darwin_arm64.go
Normal file
8
global/codec/codec_darwin_arm64.go
Normal file
@ -0,0 +1,8 @@
|
||||
package codec
|
||||
|
||||
import "github.com/pkg/errors"
|
||||
|
||||
//EncodeToSilk 将音频编码为Silk
|
||||
func EncodeToSilk(record []byte, tempName string, useCache bool) ([]byte, error) {
|
||||
return nil, errors.New("not supported now")
|
||||
}
|
4
go.mod
4
go.mod
@ -1,9 +1,9 @@
|
||||
module github.com/Mrs4s/go-cqhttp
|
||||
|
||||
go 1.15
|
||||
go 1.16
|
||||
|
||||
require (
|
||||
github.com/Mrs4s/MiraiGo v0.0.0-20210206134348-800bf525ed0e
|
||||
github.com/Mrs4s/MiraiGo v0.0.0-20210219090120-c4288bd213f3
|
||||
github.com/dustin/go-humanize v1.0.0
|
||||
github.com/gin-contrib/pprof v1.3.0
|
||||
github.com/gin-gonic/gin v1.6.3
|
||||
|
2
go.sum
2
go.sum
@ -2,6 +2,8 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMT
|
||||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
||||
github.com/Mrs4s/MiraiGo v0.0.0-20210206134348-800bf525ed0e h1:SnN+nyRdqN7sULnHUWCofP+Jxs3VJN/y8AlMpcz0nbk=
|
||||
github.com/Mrs4s/MiraiGo v0.0.0-20210206134348-800bf525ed0e/go.mod h1:yhqA0NyKxUf7I/0HR/1OMchveFggX8wde04gqdGrNfU=
|
||||
github.com/Mrs4s/MiraiGo v0.0.0-20210219090120-c4288bd213f3 h1:hsO/cT00Nxyi5FrnXImimBlcHKrdFh8yWEwp0OR88z8=
|
||||
github.com/Mrs4s/MiraiGo v0.0.0-20210219090120-c4288bd213f3/go.mod h1:yhqA0NyKxUf7I/0HR/1OMchveFggX8wde04gqdGrNfU=
|
||||
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
|
||||
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
|
@ -148,7 +148,6 @@ func (s *webServer) logincore(relogin bool) {
|
||||
} else if err == client.ErrAlreadyOnline {
|
||||
break
|
||||
}
|
||||
log.Error("登录遇到错误: " + err.Error())
|
||||
|
||||
switch res.Error {
|
||||
case client.SliderNeededError:
|
||||
@ -157,12 +156,22 @@ func (s *webServer) logincore(relogin bool) {
|
||||
log.Warnf("2. 使用Cef自动处理.")
|
||||
log.Warnf("3. 不提交滑块并继续.(可能会导致上网环境异常错误)")
|
||||
log.Warnf("详细信息请参考文档 -> https://github.com/Mrs4s/go-cqhttp/blob/master/docs/slider.md <-")
|
||||
log.Warn("请输入(1 - 3): ")
|
||||
text = readLine()
|
||||
if s.Conf.WebUI != nil && s.Conf.WebUI.WebInput {
|
||||
log.Warnf("请输入(1 - 3): (http://%s:%d/admin/do_web_write 输入)", s.Conf.WebUI.Host, s.Conf.WebUI.WebUIPort)
|
||||
text = <-WebInput
|
||||
} else {
|
||||
log.Warn("请输入(1 - 3):")
|
||||
text = readLine()
|
||||
}
|
||||
if strings.Contains(text, "1") {
|
||||
log.Warnf("请用浏览器打开 -> %v <- 并获取Ticket.", res.VerifyUrl)
|
||||
log.Warn("请输入Ticket: (Enter 提交)")
|
||||
text = readLine()
|
||||
if s.Conf.WebUI != nil && s.Conf.WebUI.WebInput {
|
||||
log.Warnf("请输入Ticket: (http://%s:%d/admin/do_web_write 输入)", s.Conf.WebUI.Host, s.Conf.WebUI.WebUIPort)
|
||||
text = <-WebInput
|
||||
} else {
|
||||
log.Warn("请输入Ticket: (Enter 提交)")
|
||||
text = readLine()
|
||||
}
|
||||
res, err = s.Cli.SubmitTicket(strings.TrimSpace(text))
|
||||
goto Again
|
||||
}
|
||||
@ -199,31 +208,50 @@ func (s *webServer) logincore(relogin bool) {
|
||||
res, err = s.Cli.SubmitCaptcha(strings.ReplaceAll(text, "\n", ""), res.CaptchaSign)
|
||||
goto Again
|
||||
case client.SMSNeededError:
|
||||
log.Warnf("账号已开启设备锁, 按下 Enter 向手机 %v 发送短信验证码.", res.SMSPhone)
|
||||
readLine()
|
||||
if s.Conf.WebUI != nil && s.Conf.WebUI.WebInput {
|
||||
log.Warnf("账号已开启设备锁, 已向手机 %v 发送短信验证码.", res.SMSPhone)
|
||||
} else {
|
||||
log.Warnf("账号已开启设备锁, 按下 Enter 向手机 %v 发送短信验证码.", res.SMSPhone)
|
||||
readLine()
|
||||
}
|
||||
if !s.Cli.RequestSMS() {
|
||||
log.Warnf("发送验证码失败,可能是请求过于频繁.")
|
||||
time.Sleep(time.Second * 5)
|
||||
continue
|
||||
}
|
||||
log.Warn("请输入短信验证码: (Enter 提交)")
|
||||
text = readLine()
|
||||
if s.Conf.WebUI != nil && s.Conf.WebUI.WebInput {
|
||||
log.Warnf("请输入短信验证码: (http://%s:%d/admin/do_web_write 输入)", s.Conf.WebUI.Host, s.Conf.WebUI.WebUIPort)
|
||||
text = <-WebInput
|
||||
} else {
|
||||
log.Warn("请输入短信验证码: (Enter 提交)")
|
||||
text = readLine()
|
||||
}
|
||||
res, err = s.Cli.SubmitSMS(strings.ReplaceAll(strings.ReplaceAll(text, "\n", ""), "\r", ""))
|
||||
goto Again
|
||||
case client.SMSOrVerifyNeededError:
|
||||
log.Warnf("账号已开启设备锁,请选择验证方式:")
|
||||
log.Warnf("1. 向手机 %v 发送短信验证码", res.SMSPhone)
|
||||
log.Warnf("2. 使用手机QQ扫码验证.")
|
||||
log.Warn("请输入(1 - 2): ")
|
||||
text = readLine()
|
||||
if s.Conf.WebUI != nil && s.Conf.WebUI.WebInput {
|
||||
log.Warnf("请输入(1 - 2): (http://%s:%d/admin/do_web_write 输入)", s.Conf.WebUI.Host, s.Conf.WebUI.WebUIPort)
|
||||
text = <-WebInput
|
||||
} else {
|
||||
log.Warn("请输入(1 - 2):")
|
||||
text = readLine()
|
||||
}
|
||||
if strings.Contains(text, "1") {
|
||||
if !s.Cli.RequestSMS() {
|
||||
log.Warnf("发送验证码失败,可能是请求过于频繁.")
|
||||
time.Sleep(time.Second * 5)
|
||||
os.Exit(0)
|
||||
}
|
||||
log.Warn("请输入短信验证码: (Enter 提交)")
|
||||
text = readLine()
|
||||
if s.Conf.WebUI != nil && s.Conf.WebUI.WebInput {
|
||||
log.Warnf("请输入短信验证码: (http://%s:%d/admin/do_web_write 输入)....", s.Conf.WebUI.Host, s.Conf.WebUI.WebUIPort)
|
||||
text = <-WebInput
|
||||
} else {
|
||||
log.Warn("请输入短信验证码: (Enter 提交)")
|
||||
text = readLine()
|
||||
}
|
||||
res, err = s.Cli.SubmitSMS(strings.ReplaceAll(strings.ReplaceAll(text, "\n", ""), "\r", ""))
|
||||
goto Again
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user