2024-11-28 15:20:29 +08:00
|
|
|
package protocol
|
|
|
|
|
|
|
|
import (
|
|
|
|
"ProjectWIND/typed"
|
|
|
|
"encoding/json"
|
|
|
|
"errors"
|
|
|
|
)
|
|
|
|
|
|
|
|
func init() {
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
func SendMessage(messageType string, message string, targetId int64, autoEscape bool) (bool, error) {
|
|
|
|
// 构建发送消息的JSON数据
|
2024-11-28 19:45:03 +08:00
|
|
|
var messageData typed.APIRequestInfo
|
2024-11-28 15:20:29 +08:00
|
|
|
messageData.Action = "send_msg"
|
|
|
|
switch messageType {
|
|
|
|
case "private":
|
|
|
|
messageData.Params.UserId = targetId
|
|
|
|
break
|
|
|
|
case "group":
|
|
|
|
messageData.Params.GroupId = targetId
|
|
|
|
break
|
|
|
|
default:
|
|
|
|
return false, errors.New("invalid type")
|
|
|
|
}
|
|
|
|
messageData.Params.Message = message
|
|
|
|
messageData.Params.AutoEscape = autoEscape
|
|
|
|
messageJson, err := json.Marshal(messageData)
|
|
|
|
if err != nil {
|
|
|
|
return false, err
|
|
|
|
}
|
|
|
|
// 发送消息
|
2024-11-29 11:43:39 +08:00
|
|
|
err = wsSendMessage(messageJson)
|
2024-11-28 15:20:29 +08:00
|
|
|
if err != nil {
|
|
|
|
return false, err
|
|
|
|
}
|
|
|
|
return true, nil
|
|
|
|
}
|