webhook

package
v0.0.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 2, 2025 License: Apache-2.0 Imports: 31 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	SelectPort = map[string]string{
		"80":   ":80",
		"8080": ":8080",
		"443":  ":443",
		"8443": ":8443",
	}
	FirstStart bool = true
)
View Source
var ATMessageEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSATMessageData) error

ATMessageEventHandler at 机器人消息事件 handler

View Source
var AudioEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSAudioData) error

AudioEventHandler 音频机器人事件 handler

View Source
var Bots = make(map[string]*Bot)
View Source
var C2CMessageEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSC2CMessageData) error
View Source
var C2CMsgReceiveHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSFriendMsgReveiceData) error
View Source
var C2CMsgRejectHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSFriendMsgRejectData) error
View Source
var ChannelEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSChannelData) error

ChannelEventHandler 子频道事件 handler

View Source
var CheckEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, message []byte) bool

CheckEventHandler 消息前置检测

View Source
var DirectMessageDeleteEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSDirectMessageDeleteData) error

DirectMessageDeleteEventHandler 消息事件 handler

View Source
var DirectMessageEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSDirectMessageData) error

DirectMessageEventHandler 私信消息事件 handler

View Source
var ErrorNotifyHandler func(err error)

ErrorNotifyHandler 当 ws 连接发生错误的时候,会回调,方便使用方监控相关错误 比如 reconnect invalidSession 等错误,错误可以转换为 bot.Err

View Source
var ForumAuditEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSForumAuditData) error

ForumAuditEventHandler 论坛帖子审核事件 handler

View Source
var FriendAddEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSFriendAddData) error
View Source
var FriendDelEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSFriendDelData) error
View Source
var GlobalId int64 = 0
View Source
var GroupAddRobotEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSGroupAddRobotData) error
View Source
var GroupAtMessageEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSGroupATMessageData) error
View Source
var GroupDelRobotEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSGroupDelRobotData) error
View Source
var GroupMessageEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSGroupMessageData) error
View Source
var GroupMsgReceiveEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSGroupMsgReceiveData) error
View Source
var GroupMsgRejectEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSGroupMsgRejectData) error
View Source
var GuildEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSGuildData) error

GuildEventHandler 频道事件handler

View Source
var GuildMemberEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSGuildMemberData) error

GuildMemberEventHandler 频道成员事件 handler

View Source
var InteractionEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSInteractionData) error

InteractionEventHandler 互动事件 handler

View Source
var MessageAuditEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSMessageAuditData) error

MessageAuditEventHandler 消息审核事件 handler

View Source
var MessageDeleteEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSMessageDeleteData) error

MessageDeleteEventHandler 消息事件 handler

View Source
var MessageEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSMessageData) error

MessageEventHandler 消息事件 handler

View Source
var MessageReactionEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSMessageReactionData) error

MessageReactionEventHandler 表情表态事件 handler

View Source
var PlainEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, message []byte) error

PlainEventHandler 透传handler

View Source
var PostEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSPostData) error

PostEventHandler 论坛回帖事件 handler

View Source
var PublicMessageDeleteEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSPublicMessageDeleteData) error

PublicMessageDeleteEventHandler 消息事件 handler

View Source
var ReadyHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSReadyData)

ReadyHandler 可以处理 ws 的 ready 事件

View Source
var ReplyEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSReplyData) error

ReplyEventHandler 论坛帖子回复事件 handler

View Source
var SettingPath = "setting"
View Source
var ThreadEventHandler func(bot *BotHeaderInfo, event *dto.WSPayload, data *dto.WSThreadData) error

ThreadEventHandler 论坛主题事件 handler

Functions

func Bind

func Bind(c *gin.Context, req any) error

func CORSMiddleware

func CORSMiddleware() gin.HandlerFunc

func FatalError

func FatalError(err error)

func GenerateId

func GenerateId() int64

func GenerateIdStr

func GenerateIdStr() string

func HandleValidation

func HandleValidation(c *gin.Context)

func HandleValidationWithAppSecret added in v0.0.5

func HandleValidationWithAppSecret(c *gin.Context)

func InitGin

func InitGin(IsOpen bool)

func InitLog

func InitLog()

func PathExists

func PathExists(path string) bool

func Return

func Return(c *gin.Context, resp proto.Message)

func RunGin

func RunGin(engine *gin.Engine, port string) (string, error)

func SafeGo

func SafeGo(fn func())

Types

type App

type App struct {
	QQ        uint64 `json:"qq,omitempty" toml:"QQ"`
	AppId     uint64 `json:"app_id,omitempty" toml:"AppId"`
	Token     string `json:"token,omitempty" toml:"Token"`
	AppSecret string `json:"app_secret,omitempty" toml:"AppSecret"`
	IsSandBox bool   `json:"is_sandbox,omitempty" toml:"IsSandBox"`
	WSSAddr   string `json:"wss_addr,omitempty" toml:"WSSAddr"`
}

type Bot

type Bot struct {
	QQ        uint64
	AppId     string
	Token     string
	AppSecret string
	Openapi   openapi.OpenAPI

	WaitingFrames map[string]*promise.Promise

	Payload *dto.WSPayload
	// contains filtered or unexported fields
}

func NewBot

func NewBot(h *BotHeaderInfo, p *dto.WSPayload, m []byte, appId string) *Bot

func NewSecretBot added in v0.0.6

func NewSecretBot(h *BotHeaderInfo, p *dto.WSPayload, m []byte, appId string) *Bot

func (*Bot) AddOpenapi

func (bot *Bot) AddOpenapi(iOpenapi openapi.OpenAPI) *Bot

func (*Bot) ParseWHData

func (bot *Bot) ParseWHData(h *BotHeaderInfo, p *dto.WSPayload, message []byte)

type BotHeaderInfo

type BotHeaderInfo struct {
	ContentLength       []string `json:"Content-Length,omitempty"`
	ContentType         []string `json:"Content-Type,omitempty"`
	UserAgent           []string `json:"User-Agent,omitempty"`
	XBotAppid           []string `json:"X-Bot-Appid,omitempty"`
	XSignatureEd25519   []string `json:"X-Signature-Ed25519,omitempty"`
	XSignatureMethod    []string `json:"X-Signature-Method,omitempty"`
	XSignatureTimestamp []string `json:"X-Signature-Timestamp,omitempty"`
	XTpsTraceId         []string `json:"X-Tps-Trace-Id,omitempty"`
}

type EventHandler added in v0.0.10

type EventHandler[T any] struct {
	// contains filtered or unexported fields
}

func (*EventHandler[T]) Subscribe added in v0.0.10

func (eh *EventHandler[T]) Subscribe(handler func(bot *BotHeaderInfo, event *dto.WSPayload, data T))

type Frame

type Frame struct {
	BotId   uint64
	Echo    string
	Ok      bool
	Openapi openapi.OpenAPI
}

type Setting

type Setting struct {
	Apps     map[string]*App `json:"apps,omitempty" toml:"Apps"`
	Port     int             `json:"port,omitempty" toml:"Port"`
	CertFile string          `json:"cert_file,omitempty" toml:"CertFile"`
	CertKey  string          `json:"cert_key,omitempty" toml:"CertKey"`
	IsOpen   bool            `json:"is_open,omitempty" toml:"IsOpen"`
}
var AllSetting *Setting = &Setting{}

func AllSettings

func AllSettings() *Setting

func ReadSetting

func ReadSetting() Setting

type ValidationRequest

type ValidationRequest struct {
	PlainToken string `json:"plain_token,omitempty"`
	EventTs    string `json:"event_ts,omitempty"`
}

type ValidationResponse

type ValidationResponse struct {
	PlainToken string `json:"plain_token,omitempty"`
	Signature  string `json:"signature,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL