SYMBOL INDEX (722 symbols across 81 files) FILE: cmd/api-generator/main.go type Param (line 24) | type Param struct type Router (line 30) | type Router struct type generator (line 38) | type generator struct method WriteString (line 48) | func (g *generator) WriteString(s string) { method writef (line 52) | func (g *generator) writef(format string, a ...any) { method header (line 56) | func (g *generator) header() { method genRouter (line 61) | func (g *generator) genRouter(routers []Router) { method router (line 88) | func (g *generator) router(router Router, pathVersion int) { constant PathAll (line 43) | PathAll = 0 constant PathV11 (line 44) | PathV11 = 11 constant PathV12 (line 45) | PathV12 = 12 function conv (line 137) | func conv(v, t string) string { function main (line 160) | func main() { function unquote (line 272) | func unquote(s string) string { function parseMap (line 282) | func parseMap(input string, sep string) map[string]string { function match (line 296) | func match(text string) (string, string) { function snakecase (line 313) | func snakecase(s string) string { function convDefault (line 328) | func convDefault(s string, t string) string { function typeName (line 344) | func typeName(x ast.Node) string { FILE: cmd/api-generator/supported.go method genSupported (line 5) | func (g *generator) genSupported(routers []Router) { constant supportedTemplete (line 35) | supportedTemplete = ` FILE: cmd/gocq/login.go function readLine (line 26) | func readLine() (str string) { function readLineTimeout (line 32) | func readLineTimeout(t time.Duration) { function readIfTTY (line 46) | func readIfTTY(de string) (str string) { function commonLogin (line 60) | func commonLogin() error { function printQRCode (line 68) | func printQRCode(imgData []byte) { function qrcodeLogin (line 96) | func qrcodeLogin() error { function loginResponseProcessor (line 144) | func loginResponseProcessor(res *client.LoginResponse) error { function getTicket (line 224) | func getTicket(u string) string { function fetchCaptcha (line 252) | func fetchCaptcha(id string) string { FILE: cmd/gocq/main.go function InitBase (line 53) | func InitBase() { function PrepareData (line 79) | func PrepareData() { function LoginInteract (line 119) | func LoginInteract() { function WaitSignal (line 421) | func WaitSignal() { function PasswordHashEncrypt (line 431) | func PasswordHashEncrypt(passwordHash []byte, key []byte) string { function PasswordHashDecrypt (line 446) | func PasswordHashDecrypt(encryptedPasswordHash string, key []byte) ([]by... function newClient (line 461) | func newClient() *client.QQClient { function getRemoteLatestProtocolVersion (line 489) | func getRemoteLatestProtocolVersion(protocolType int) ([]byte, error) { type protocolLogger (line 501) | type protocolLogger struct method Info (line 505) | func (p protocolLogger) Info(format string, arg ...any) { method Warning (line 509) | func (p protocolLogger) Warning(format string, arg ...any) { method Debug (line 513) | func (p protocolLogger) Debug(format string, arg ...any) { method Error (line 517) | func (p protocolLogger) Error(format string, arg ...any) { method Dump (line 521) | func (p protocolLogger) Dump(data []byte, format string, arg ...any) { constant fromProtocol (line 503) | fromProtocol = "Protocol -> " FILE: cmd/gocq/qsign.go type currentSignServer (line 27) | type currentSignServer method get (line 29) | func (c *currentSignServer) get() *config.SignServer { method set (line 37) | func (c *currentSignServer) set(server *config.SignServer) { type errconut (line 45) | type errconut method hasOver (line 47) | func (ec *errconut) hasOver(count uintptr) bool { method inc (line 51) | func (ec *errconut) inc() { function getAvaliableSignServer (line 58) | func getAvaliableSignServer() (*config.SignServer, error) { function isServerAvaliable (line 86) | func isServerAvaliable(signServer string) bool { function asyncCheckServer (line 99) | func asyncCheckServer(servers []config.SignServer) *config.SignServer { function requestSignServer (line 132) | func requestSignServer(method string, url string, headers map[string]str... function energy (line 162) | func energy(uin uint64, id string, _ string, salt []byte) ([]byte, error) { function signSubmit (line 187) | func signSubmit(uin string, cmd string, callbackID int64, buffer []byte,... function signCallback (line 212) | func signCallback(uin string, results []gjson.Result, t string) { function signRequset (line 232) | func signRequset(seq uint64, uin string, cmd string, qua string, buff []... function signRegister (line 255) | func signRegister(uin int64, androidID, guid []byte, qimei36, key string) { function signRefreshToken (line 278) | func signRefreshToken(uin string) error { function sign (line 300) | func sign(seq uint64, uin string, cmd string, qua string, buff []byte) (... function signServerDestroy (line 360) | func signServerDestroy(uin string) error { function signVersion (line 383) | func signVersion() (signServer string, version string, err error) { function signStartRefreshToken (line 395) | func signStartRefreshToken(interval int64) { FILE: coolq/api.go type guildMemberPageToken (line 36) | type guildMemberPageToken struct method CQGetLoginInfo (line 54) | func (bot *CQBot) CQGetLoginInfo() global.MSG { method CQGetQiDianAccountInfo (line 60) | func (bot *CQBot) CQGetQiDianAccountInfo() global.MSG { method CQGetGuildServiceProfile (line 73) | func (bot *CQBot) CQGetGuildServiceProfile() global.MSG { method CQGetGuildList (line 83) | func (bot *CQBot) CQGetGuildList() global.MSG { method CQGetGuildMetaByGuest (line 108) | func (bot *CQBot) CQGetGuildMetaByGuest(guildID uint64) global.MSG { method CQGetGuildChannelList (line 129) | func (bot *CQBot) CQGetGuildChannelList(guildID uint64, noCache bool) gl... method CQGetGuildMembers (line 151) | func (bot *CQBot) CQGetGuildMembers(guildID uint64, nextToken string) gl... method CQGetGuildMemberProfile (line 195) | func (bot *CQBot) CQGetGuildMemberProfile(guildID, userID uint64) global... method CQGetGuildRoles (line 222) | func (bot *CQBot) CQGetGuildRoles(guildID uint64) global.MSG { method CQCreateGuildRole (line 246) | func (bot *CQBot) CQCreateGuildRole(guildID uint64, name string, color u... method CQDeleteGuildRole (line 265) | func (bot *CQBot) CQDeleteGuildRole(guildID uint64, roleID uint64) globa... method CQSetGuildMemberRole (line 276) | func (bot *CQBot) CQSetGuildMemberRole(guildID uint64, set bool, roleID ... method CQModifyRoleInGuild (line 293) | func (bot *CQBot) CQModifyRoleInGuild(guildID uint64, roleID uint64, nam... method CQGetTopicChannelFeeds (line 304) | func (bot *CQBot) CQGetTopicChannelFeeds(guildID, channelID uint64) glob... method CQGetFriendList (line 332) | func (bot *CQBot) CQGetFriendList(spec *onebot.Spec) global.MSG { method CQGetUnidirectionalFriendList (line 347) | func (bot *CQBot) CQGetUnidirectionalFriendList() global.MSG { method CQDeleteUnidirectionalFriend (line 368) | func (bot *CQBot) CQDeleteUnidirectionalFriend(uin int64) global.MSG { method CQDeleteFriend (line 389) | func (bot *CQBot) CQDeleteFriend(uin int64) global.MSG { method CQGetGroupList (line 404) | func (bot *CQBot) CQGetGroupList(noCache bool, spec *onebot.Spec) global... method CQGetGroupInfo (line 426) | func (bot *CQBot) CQGetGroupInfo(groupID int64, noCache bool, spec *oneb... method CQGetGroupMemberList (line 467) | func (bot *CQBot) CQGetGroupMemberList(groupID int64, noCache bool) glob... method CQGetGroupMemberInfo (line 491) | func (bot *CQBot) CQGetGroupMemberInfo(groupID, userID int64, noCache bo... method CQGetGroupFileSystemInfo (line 517) | func (bot *CQBot) CQGetGroupFileSystemInfo(groupID int64) global.MSG { method CQGetGroupRootFiles (line 530) | func (bot *CQBot) CQGetGroupRootFiles(groupID int64) global.MSG { method CQGetGroupFilesByFolderID (line 551) | func (bot *CQBot) CQGetGroupFilesByFolderID(groupID int64, folderID stri... method CQGetGroupFileURL (line 573) | func (bot *CQBot) CQGetGroupFileURL(groupID int64, fileID string, busID ... method CQUploadGroupFile (line 587) | func (bot *CQBot) CQUploadGroupFile(groupID int64, file, name, folder st... method CQUploadPrivateFile (line 610) | func (bot *CQBot) CQUploadPrivateFile(userID int64, file, name string) g... method CQGroupFileCreateFolder (line 635) | func (bot *CQBot) CQGroupFileCreateFolder(groupID int64, parentID, name ... method CQGroupFileDeleteFolder (line 652) | func (bot *CQBot) CQGroupFileDeleteFolder(groupID int64, id string) glob... method CQGroupFileDeleteFile (line 669) | func (bot *CQBot) CQGroupFileDeleteFile(groupID int64, id string, busID ... method CQGetWordSlices (line 686) | func (bot *CQBot) CQGetWordSlices(content string) global.MSG { method CQSendMessage (line 701) | func (bot *CQBot) CQSendMessage(groupID, userID int64, m gjson.Result, m... method CQSendForwardMessage (line 719) | func (bot *CQBot) CQSendForwardMessage(groupID, userID int64, m gjson.Re... method CQSendGroupMessage (line 738) | func (bot *CQBot) CQSendGroupMessage(groupID int64, m gjson.Result, auto... method CQSendGuildChannelMessage (line 784) | func (bot *CQBot) CQSendGuildChannelMessage(guildID, channelID uint64, m... method uploadForwardElement (line 834) | func (bot *CQBot) uploadForwardElement(m gjson.Result, target int64, sou... method CQSendGroupForwardMessage (line 970) | func (bot *CQBot) CQSendGroupForwardMessage(groupID int64, m gjson.Resul... method CQSendPrivateForwardMessage (line 1000) | func (bot *CQBot) CQSendPrivateForwardMessage(userID int64, m gjson.Resu... method CQSendPrivateMessage (line 1025) | func (bot *CQBot) CQSendPrivateMessage(userID int64, groupID int64, m gj... method CQSetGroupCard (line 1052) | func (bot *CQBot) CQSetGroupCard(groupID, userID int64, card string) glo... method CQSetGroupSpecialTitle (line 1067) | func (bot *CQBot) CQSetGroupSpecialTitle(groupID, userID int64, title st... method CQSetGroupName (line 1082) | func (bot *CQBot) CQSetGroupName(groupID int64, name string) global.MSG { method CQGetGroupMemo (line 1092) | func (bot *CQBot) CQGetGroupMemo(groupID int64) global.MSG { method CQSetGroupMemo (line 1106) | func (bot *CQBot) CQSetGroupMemo(groupID int64, msg, img string) global.... method CQDelGroupMemo (line 1134) | func (bot *CQBot) CQDelGroupMemo(groupID int64, fid string) global.MSG { method CQSetGroupKick (line 1153) | func (bot *CQBot) CQSetGroupKick(groupID int64, userID int64, msg string... method CQSetGroupBan (line 1173) | func (bot *CQBot) CQSetGroupBan(groupID, userID int64, duration uint32) ... method CQSetGroupWholeBan (line 1194) | func (bot *CQBot) CQSetGroupWholeBan(groupID int64, enable bool) global.... method CQSetGroupLeave (line 1206) | func (bot *CQBot) CQSetGroupLeave(groupID int64) global.MSG { method CQGetAtAllRemain (line 1218) | func (bot *CQBot) CQGetAtAllRemain(groupID int64) global.MSG { method CQProcessFriendRequest (line 1234) | func (bot *CQBot) CQProcessFriendRequest(flag string, approve bool) glob... method CQProcessGroupRequest (line 1253) | func (bot *CQBot) CQProcessGroupRequest(flag, subType, reason string, ap... method CQDeleteMessage (line 1298) | func (bot *CQBot) CQDeleteMessage(messageID int32) global.MSG { method CQSetGroupAdmin (line 1330) | func (bot *CQBot) CQSetGroupAdmin(groupID, userID int64, enable bool) gl... method CQSetGroupAnonymous (line 1354) | func (bot *CQBot) CQSetGroupAnonymous(groupID int64, enable bool) global... method CQGetGroupHonorInfo (line 1367) | func (bot *CQBot) CQGetGroupHonorInfo(groupID int64, t string) global.MSG { method CQGetStrangerInfo (line 1435) | func (bot *CQBot) CQGetStrangerInfo(userID int64) global.MSG { method CQHandleQuickOperation (line 1465) | func (bot *CQBot) CQHandleQuickOperation(context, operation gjson.Result... method CQGetImage (line 1555) | func (bot *CQBot) CQGetImage(file string) global.MSG { method CQDownloadFile (line 1597) | func (bot *CQBot) CQDownloadFile(url string, headers gjson.Result, threa... method CQGetForwardMessage (line 1641) | func (bot *CQBot) CQGetForwardMessage(resID string) global.MSG { method CQGetMessage (line 1679) | func (bot *CQBot) CQGetMessage(messageID int32) global.MSG { method CQGetGuildMessage (line 1710) | func (bot *CQBot) CQGetGuildMessage(messageID string, noCache bool) glob... method CQGetGroupSystemMessages (line 1776) | func (bot *CQBot) CQGetGroupSystemMessages() global.MSG { method CQGetGroupMessageHistory (line 1790) | func (bot *CQBot) CQGetGroupMessageHistory(groupID int64, seq int64) glo... method CQGetOnlineClients (line 1827) | func (bot *CQBot) CQGetOnlineClients(noCache bool) global.MSG { method CQCanSendImage (line 1851) | func (bot *CQBot) CQCanSendImage() global.MSG { method CQCanSendRecord (line 1859) | func (bot *CQBot) CQCanSendRecord() global.MSG { method CQOcrImage (line 1868) | func (bot *CQBot) CQOcrImage(imageID string) global.MSG { method CQSetGroupPortrait (line 1890) | func (bot *CQBot) CQSetGroupPortrait(groupID int64, file, cache string) ... method CQSetGroupAnonymousBan (line 1908) | func (bot *CQBot) CQSetGroupAnonymousBan(groupID int64, flag string, dur... method CQGetStatus (line 1930) | func (bot *CQBot) CQGetStatus(spec *onebot.Spec) global.MSG { method CQSetEssenceMessage (line 1953) | func (bot *CQBot) CQSetEssenceMessage(messageID int32) global.MSG { method CQDeleteEssenceMessage (line 1969) | func (bot *CQBot) CQDeleteEssenceMessage(messageID int32) global.MSG { method CQGetEssenceMessageList (line 1985) | func (bot *CQBot) CQGetEssenceMessageList(groupID int64) global.MSG { method CQCheckURLSafely (line 2014) | func (bot *CQBot) CQCheckURLSafely(url string) global.MSG { method CQGetVersionInfo (line 2024) | func (bot *CQBot) CQGetVersionInfo() global.MSG { method CQGetModelShow (line 2048) | func (bot *CQBot) CQGetModelShow(model string) global.MSG { method CQSendGroupSign (line 2069) | func (bot *CQBot) CQSendGroupSign(groupID int64) global.MSG { method CQSetModelShow (line 2078) | func (bot *CQBot) CQSetModelShow(model, modelShow string) global.MSG { method CQMarkMessageAsRead (line 2089) | func (bot *CQBot) CQMarkMessageAsRead(msgID int32) global.MSG { method CQSetQQProfile (line 2107) | func (bot *CQBot) CQSetQQProfile(nickname, company, email, college, pers... method CQReloadEventFilter (line 2128) | func (bot *CQBot) CQReloadEventFilter(file string) global.MSG { method CQGetSupportedActions (line 2136) | func (bot *CQBot) CQGetSupportedActions(spec *onebot.Spec) global.MSG { function OK (line 2141) | func OK(data any) global.MSG { function Failed (line 2146) | func Failed(code int, msg ...string) global.MSG { function limitedString (line 2157) | func limitedString(str string) string { FILE: coolq/api_v12.go method CQGetVersion (line 16) | func (bot *CQBot) CQGetVersion() global.MSG { method CQSendMessageV12 (line 31) | func (bot *CQBot) CQSendMessageV12(groupID, userID, detailType string, m... FILE: coolq/bot.go type CQBot (line 34) | type CQBot struct method OnEventPush (line 128) | func (bot *CQBot) OnEventPush(f func(e *Event)) { method uploadLocalImage (line 151) | func (bot *CQBot) uploadLocalImage(target message.Source, img *msg.Loc... method uploadLocalVideo (line 191) | func (bot *CQBot) uploadLocalVideo(target message.Source, v *msg.Local... method uploadMedia (line 219) | func (bot *CQBot) uploadMedia(target message.Source, elements []messag... method SendGroupMessage (line 268) | func (bot *CQBot) SendGroupMessage(groupID int64, m *message.SendingMe... method SendPrivateMessage (line 314) | func (bot *CQBot) SendPrivateMessage(target int64, groupID int64, m *m... method SendGuildChannelMessage (line 411) | func (bot *CQBot) SendGuildChannelMessage(guildID, channelID uint64, m... method InsertGroupMessage (line 447) | func (bot *CQBot) InsertGroupMessage(m *message.GroupMessage, source m... method InsertPrivateMessage (line 490) | func (bot *CQBot) InsertPrivateMessage(m *message.PrivateMessage, sour... method InsertGuildChannelMessage (line 563) | func (bot *CQBot) InsertGuildChannelMessage(m *message.GuildChannelMes... method event (line 589) | func (bot *CQBot) event(typ string, others global.MSG) *event { method dispatchEvent (line 605) | func (bot *CQBot) dispatchEvent(typ string, others global.MSG) { method dispatch (line 609) | func (bot *CQBot) dispatch(ev *event) { type Event (line 46) | type Event struct method marshal (line 52) | func (e *Event) marshal() { method JSONBytes (line 60) | func (e *Event) JSONBytes() []byte { method JSONString (line 67) | func (e *Event) JSONString() string { function NewQQBot (line 73) | func NewQQBot(cli *client.QQClient) *CQBot { type worker (line 134) | type worker struct method do (line 138) | func (w *worker) do(f func()) { method wait (line 146) | func (w *worker) wait() { function removeLocalElement (line 200) | func removeLocalElement(elements []message.IMessageElement) []message.IM... constant uploadFailedTemplate (line 217) | uploadFailedTemplate = "警告: %s %d %s上传失败: %v" function formatGroupName (line 639) | func formatGroupName(group *client.GroupInfo) string { function formatMemberName (line 643) | func formatMemberName(mem *client.GroupMemberInfo) string { function encodeMessageID (line 651) | func encodeMessageID(target int64, seq int32) string { function encodeGuildMessageID (line 661) | func encodeGuildMessageID(primaryID, subID, seq uint64, source message.S... function decodeGuildMessageID (line 670) | func decodeGuildMessageID(id string) (source message.Source, seq uint64) { FILE: coolq/converter.go function convertGroupMemberInfo (line 15) | func convertGroupMemberInfo(groupID int64, m *client.GroupMemberInfo) gl... function convertGuildMemberInfo (line 49) | func convertGuildMemberInfo(m []*client.GuildMemberInfo) (r []global.MSG) { method formatGroupMessage (line 62) | func (bot *CQBot) formatGroupMessage(m *message.GroupMessage) *event { function convertChannelInfo (line 130) | func convertChannelInfo(c *client.ChannelInfo) global.MSG { function convertChannelFeedInfo (line 154) | func convertChannelFeedInfo(f *topic.Feed) global.MSG { function convertReactions (line 196) | func convertReactions(reactions []*message.GuildMessageEmojiReaction) (r... function toStringMessage (line 211) | func toStringMessage(m []message.IMessageElement, source message.Source)... function fU64 (line 220) | func fU64(v uint64) string { FILE: coolq/cqcode.go constant maxImageSize (line 42) | maxImageSize = 1024 * 1024 * 30 constant maxVideoSize (line 43) | maxVideoSize = 1024 * 1024 * 100 function replyID (line 46) | func replyID(r *message.ReplyElement, source message.Source) int32 { function toElements (line 65) | func toElements(e []message.IMessageElement, source message.Source) (r [... function ToMessageContent (line 279) | func ToMessageContent(e []message.IMessageElement, source message.Source... method ConvertStringMessage (line 405) | func (bot *CQBot) ConvertStringMessage(spec *onebot.Spec, raw string, so... method ConvertObjectMessage (line 411) | func (bot *CQBot) ConvertObjectMessage(spec *onebot.Spec, m gjson.Result... method ConvertContentMessage (line 420) | func (bot *CQBot) ConvertContentMessage(content []global.MSG, sourceType... method ConvertElements (line 434) | func (bot *CQBot) ConvertElements(spec *onebot.Spec, elems []msg.Element... method reply (line 467) | func (bot *CQBot) reply(spec *onebot.Spec, elem msg.Element, sourceType ... method voice (line 532) | func (bot *CQBot) voice(elem msg.Element) (m any, err error) { method at (line 551) | func (bot *CQBot) at(id, name string) (m any, err error) { method convertV11 (line 564) | func (bot *CQBot) convertV11(elem msg.Element) (m any, ok bool, err erro... method convertV12 (line 587) | func (bot *CQBot) convertV12(elem msg.Element) (m any, ok bool, err erro... method ConvertElement (line 608) | func (bot *CQBot) ConvertElement(spec *onebot.Spec, elem msg.Element, so... method makeImageOrVideoElem (line 884) | func (bot *CQBot) makeImageOrVideoElem(elem msg.Element, video bool, sou... method readImageCache (line 1007) | func (bot *CQBot) readImageCache(b []byte, sourceType message.SourceType... method readVideoCache (line 1047) | func (bot *CQBot) readVideoCache(b []byte) message.IMessageElement { method makeShowPic (line 1060) | func (bot *CQBot) makeShowPic(elem message.IMessageElement, source strin... FILE: coolq/event.go function ToFormattedMessage (line 24) | func ToFormattedMessage(e []message.IMessageElement, source message.Sour... type event (line 33) | type event struct method MarshalJSON (line 42) | func (ev *event) MarshalJSON() ([]byte, error) { method privateMessageEvent (line 75) | func (bot *CQBot) privateMessageEvent(_ *client.QQClient, m *message.Pri... method groupMessageEvent (line 105) | func (bot *CQBot) groupMessageEvent(c *client.QQClient, m *message.Group... method tempMessageEvent (line 139) | func (bot *CQBot) tempMessageEvent(_ *client.QQClient, e *client.TempMes... method guildChannelMessageEvent (line 175) | func (bot *CQBot) guildChannelMessageEvent(c *client.QQClient, m *messag... method guildMessageReactionsUpdatedEvent (line 206) | func (bot *CQBot) guildMessageReactionsUpdatedEvent(c *client.QQClient, ... method guildChannelMessageRecalledEvent (line 240) | func (bot *CQBot) guildChannelMessageRecalledEvent(c *client.QQClient, e... method guildChannelUpdatedEvent (line 266) | func (bot *CQBot) guildChannelUpdatedEvent(c *client.QQClient, e *client... method guildChannelCreatedEvent (line 283) | func (bot *CQBot) guildChannelCreatedEvent(c *client.QQClient, e *client... method guildChannelDestroyedEvent (line 303) | func (bot *CQBot) guildChannelDestroyedEvent(c *client.QQClient, e *clie... method groupMutedEvent (line 323) | func (bot *CQBot) groupMutedEvent(c *client.QQClient, e *client.GroupMut... method groupRecallEvent (line 354) | func (bot *CQBot) groupRecallEvent(c *client.QQClient, e *client.GroupMe... method groupNotifyEvent (line 370) | func (bot *CQBot) groupNotifyEvent(c *client.QQClient, e client.INotifyE... method friendNotifyEvent (line 418) | func (bot *CQBot) friendNotifyEvent(c *client.QQClient, e client.INotify... method memberTitleUpdatedEvent (line 434) | func (bot *CQBot) memberTitleUpdatedEvent(c *client.QQClient, e *client.... method friendRecallEvent (line 445) | func (bot *CQBot) friendRecallEvent(c *client.QQClient, e *client.Friend... method offlineFileEvent (line 461) | func (bot *CQBot) offlineFileEvent(c *client.QQClient, e *client.Offline... method joinGroupEvent (line 477) | func (bot *CQBot) joinGroupEvent(c *client.QQClient, group *client.Group... method leaveGroupEvent (line 485) | func (bot *CQBot) leaveGroupEvent(c *client.QQClient, e *client.GroupLea... method memberPermissionChangedEvent (line 494) | func (bot *CQBot) memberPermissionChangedEvent(_ *client.QQClient, e *cl... method memberCardUpdatedEvent (line 505) | func (bot *CQBot) memberCardUpdatedEvent(_ *client.QQClient, e *client.M... method memberJoinEvent (line 515) | func (bot *CQBot) memberJoinEvent(_ *client.QQClient, e *client.MemberJo... method memberLeaveEvent (line 520) | func (bot *CQBot) memberLeaveEvent(_ *client.QQClient, e *client.MemberL... method friendRequestEvent (line 529) | func (bot *CQBot) friendRequestEvent(_ *client.QQClient, e *client.NewFr... method friendAddedEvent (line 540) | func (bot *CQBot) friendAddedEvent(_ *client.QQClient, e *client.NewFrie... method groupInvitedEvent (line 548) | func (bot *CQBot) groupInvitedEvent(_ *client.QQClient, e *client.GroupI... method groupJoinReqEvent (line 560) | func (bot *CQBot) groupJoinReqEvent(_ *client.QQClient, e *client.UserJo... method otherClientStatusChangedEvent (line 572) | func (bot *CQBot) otherClientStatusChangedEvent(_ *client.QQClient, e *c... method groupEssenceMsg (line 588) | func (bot *CQBot) groupEssenceMsg(c *client.QQClient, e *client.GroupDig... method groupIncrease (line 623) | func (bot *CQBot) groupIncrease(groupCode, operatorUin, userUin int64) *... method groupDecrease (line 631) | func (bot *CQBot) groupDecrease(groupCode, userUin int64, operator *clie... method checkMedia (line 651) | func (bot *CQBot) checkMedia(e []message.IMessageElement, sourceID int64) { FILE: coolq/feed.go function FeedContentsToArrayMessage (line 10) | func FeedContentsToArrayMessage(contents []topic.IFeedRichContentElement... FILE: db/database.go type Database (line 12) | type Database interface type StoredMessage (line 33) | type StoredMessage interface type StoredGroupMessage (line 42) | type StoredGroupMessage struct method GetID (line 106) | func (m *StoredGroupMessage) GetID() string { ... method GetType (line 107) | func (m *StoredGroupMessage) GetType() string { ... method GetGlobalID (line 108) | func (m *StoredGroupMessage) GetGlobalID() int32 { ... method GetAttribute (line 109) | func (m *StoredGroupMessage) GetAttribute() *StoredMessageAttribute { ... method GetContent (line 110) | func (m *StoredGroupMessage) GetContent() []global.MSG { ... type StoredPrivateMessage (line 54) | type StoredPrivateMessage struct method GetID (line 112) | func (m *StoredPrivateMessage) GetID() string ... method GetType (line 113) | func (m *StoredPrivateMessage) GetType() string ... method GetGlobalID (line 114) | func (m *StoredPrivateMessage) GetGlobalID() int32 ... method GetAttribute (line 115) | func (m *StoredPrivateMessage) GetAttribute() *StoredMessageAttribute ... method GetContent (line 116) | func (m *StoredPrivateMessage) GetContent() []global.MSG ... type StoredGuildChannelMessage (line 66) | type StoredGuildChannelMessage struct type StoredMessageAttribute (line 76) | type StoredMessageAttribute struct type StoredGuildMessageAttribute (line 85) | type StoredGuildMessageAttribute struct type QuotedInfo (line 94) | type QuotedInfo struct function ToGlobalID (line 102) | func ToGlobalID(code int64, msgID int32) int32 { FILE: db/leveldb/const.go constant dataVersion (line 3) | dataVersion = 1 constant group (line 6) | group = 0x0 constant private (line 7) | private = 0x1 constant guildChannel (line 8) | guildChannel = 0x2 type coder (line 11) | type coder constant coderNil (line 14) | coderNil coder = iota constant coderInt (line 15) | coderInt constant coderUint (line 16) | coderUint constant coderInt32 (line 17) | coderInt32 constant coderUint32 (line 18) | coderUint32 constant coderInt64 (line 19) | coderInt64 constant coderUint64 (line 20) | coderUint64 constant coderString (line 21) | coderString constant coderMSG (line 22) | coderMSG constant coderArrayMSG (line 23) | coderArrayMSG constant coderStruct (line 24) | coderStruct FILE: db/leveldb/leveldb.go type database (line 16) | type database struct method Open (line 36) | func (ldb *database) Open() error { method GetMessageByGlobalID (line 48) | func (ldb *database) GetMessageByGlobalID(id int32) (_ db.StoredMessag... method GetGroupMessageByGlobalID (line 72) | func (ldb *database) GetGroupMessageByGlobalID(id int32) (*db.StoredGr... method GetPrivateMessageByGlobalID (line 84) | func (ldb *database) GetPrivateMessageByGlobalID(id int32) (*db.Stored... method GetGuildChannelMessageByID (line 96) | func (ldb *database) GetGuildChannelMessageByID(id string) (*db.Stored... method InsertGroupMessage (line 118) | func (ldb *database) InsertGroupMessage(msg *db.StoredGroupMessage) er... method InsertPrivateMessage (line 126) | func (ldb *database) InsertPrivateMessage(msg *db.StoredPrivateMessage... method InsertGuildChannelMessage (line 134) | func (ldb *database) InsertGuildChannelMessage(msg *db.StoredGuildChan... type config (line 21) | type config struct function init (line 25) | func init() { FILE: db/leveldb/reader.go type intReader (line 14) | type intReader struct method varint (line 26) | func (r *intReader) varint() int64 { method uvarint (line 31) | func (r *intReader) uvarint() uint64 { function newIntReader (line 19) | func newIntReader(s string) intReader { type reader (line 38) | type reader struct method coder (line 44) | func (r *reader) coder() coder { o, _ := r.data.ReadByte(); return ... method varint (line 45) | func (r *reader) varint() int64 { return r.data.varint() } method uvarint (line 46) | func (r *reader) uvarint() uint64 { return r.data.uvarint() } method int32 (line 47) | func (r *reader) int32() int32 { return int32(r.varint()) } method int64 (line 48) | func (r *reader) int64() int64 { return r.varint() } method uint64 (line 49) | func (r *reader) uint64() uint64 { return r.uvarint() } method string (line 55) | func (r *reader) string() string { method msg (line 68) | func (r *reader) msg() global.MSG { method arrayMsg (line 78) | func (r *reader) arrayMsg() []global.MSG { method obj (line 87) | func (r *reader) obj() any { function newReader (line 114) | func newReader(data string) (*reader, error) { FILE: db/leveldb/structs.go method writeStoredGroupMessage (line 5) | func (w *writer) writeStoredGroupMessage(x *db.StoredGroupMessage) { method readStoredGroupMessage (line 21) | func (r *reader) readStoredGroupMessage() *db.StoredGroupMessage { method writeStoredPrivateMessage (line 38) | func (w *writer) writeStoredPrivateMessage(x *db.StoredPrivateMessage) { method readStoredPrivateMessage (line 54) | func (r *reader) readStoredPrivateMessage() *db.StoredPrivateMessage { method writeStoredGuildChannelMessage (line 71) | func (w *writer) writeStoredGuildChannelMessage(x *db.StoredGuildChannel... method readStoredGuildChannelMessage (line 85) | func (r *reader) readStoredGuildChannelMessage() *db.StoredGuildChannelM... method writeStoredMessageAttribute (line 100) | func (w *writer) writeStoredMessageAttribute(x *db.StoredMessageAttribut... method readStoredMessageAttribute (line 113) | func (r *reader) readStoredMessageAttribute() *db.StoredMessageAttribute { method writeStoredGuildMessageAttribute (line 127) | func (w *writer) writeStoredGuildMessageAttribute(x *db.StoredGuildMessa... method readStoredGuildMessageAttribute (line 140) | func (r *reader) readStoredGuildMessageAttribute() *db.StoredGuildMessag... method writeQuotedInfo (line 154) | func (w *writer) writeQuotedInfo(x *db.QuotedInfo) { method readQuotedInfo (line 165) | func (r *reader) readQuotedInfo() *db.QuotedInfo { FILE: db/leveldb/writer.go type intWriter (line 9) | type intWriter struct method varint (line 13) | func (w *intWriter) varint(x int64) { method uvarint (line 17) | func (w *intWriter) uvarint(x uint64) { type writer (line 47) | type writer struct method coder (line 59) | func (w *writer) coder(o coder) { w.data.WriteByte(byte(o)) } method varint (line 60) | func (w *writer) varint(x int64) { w.data.varint(x) } method uvarint (line 61) | func (w *writer) uvarint(x uint64) { w.data.uvarint(x) } method nil (line 62) | func (w *writer) nil() { w.coder(coderNil) } method int (line 63) | func (w *writer) int(i int) { w.varint(int64(i)) } method uint (line 64) | func (w *writer) uint(i uint) { w.uvarint(uint64(i)) } method int32 (line 65) | func (w *writer) int32(i int32) { w.varint(int64(i)) } method uint32 (line 66) | func (w *writer) uint32(i uint32) { w.uvarint(uint64(i)) } method int64 (line 67) | func (w *writer) int64(i int64) { w.varint(i) } method uint64 (line 68) | func (w *writer) uint64(i uint64) { w.uvarint(i) } method string (line 70) | func (w *writer) string(s string) { method msg (line 84) | func (w *writer) msg(m global.MSG) { method arrayMsg (line 92) | func (w *writer) arrayMsg(a []global.MSG) { method obj (line 99) | func (w *writer) obj(o any) { method bytes (line 135) | func (w *writer) bytes() []byte { function newWriter (line 53) | func newWriter() *writer { FILE: db/mongodb/mongodb.go type database (line 15) | type database struct method Open (line 48) | func (m *database) Open() error { method GetMessageByGlobalID (line 57) | func (m *database) GetMessageByGlobalID(id int32) (db.StoredMessage, e... method GetGroupMessageByGlobalID (line 64) | func (m *database) GetGroupMessageByGlobalID(id int32) (*db.StoredGrou... method GetPrivateMessageByGlobalID (line 73) | func (m *database) GetPrivateMessageByGlobalID(id int32) (*db.StoredPr... method GetGuildChannelMessageByID (line 82) | func (m *database) GetGuildChannelMessageByID(id string) (*db.StoredGu... method InsertGroupMessage (line 91) | func (m *database) InsertGroupMessage(msg *db.StoredGroupMessage) error { method InsertPrivateMessage (line 97) | func (m *database) InsertPrivateMessage(msg *db.StoredPrivateMessage) ... method InsertGuildChannelMessage (line 103) | func (m *database) InsertGuildChannelMessage(msg *db.StoredGuildChanne... type config (line 22) | type config struct constant MongoGroupMessageCollection (line 29) | MongoGroupMessageCollection = "group-messages" constant MongoPrivateMessageCollection (line 30) | MongoPrivateMessageCollection = "private-messages" constant MongoGuildChannelMessageCollection (line 31) | MongoGuildChannelMessageCollection = "guild-channel-messages" function init (line 34) | func init() { FILE: db/multidb.go function Register (line 22) | func Register(name string, init func(yaml.Node) Database) { function Init (line 30) | func Init() { function Open (line 42) | func Open() error { function GetMessageByGlobalID (line 52) | func GetMessageByGlobalID(id int32) (StoredMessage, error) { function GetGroupMessageByGlobalID (line 59) | func GetGroupMessageByGlobalID(id int32) (*StoredGroupMessage, error) { function GetPrivateMessageByGlobalID (line 66) | func GetPrivateMessageByGlobalID(id int32) (*StoredPrivateMessage, error) { function GetGuildChannelMessageByID (line 73) | func GetGuildChannelMessageByID(id string) (*StoredGuildChannelMessage, ... function InsertGroupMessage (line 80) | func InsertGroupMessage(m *StoredGroupMessage) error { function InsertPrivateMessage (line 89) | func InsertPrivateMessage(m *StoredPrivateMessage) error { function InsertGuildChannelMessage (line 98) | func InsertGuildChannelMessage(m *StoredGuildChannelMessage) error { FILE: db/sqlite3/model.go constant Sqlite3GroupMessageTableName (line 4) | Sqlite3GroupMessageTableName = "grpmsg" constant Sqlite3MessageAttributeTableName (line 5) | Sqlite3MessageAttributeTableName = "msgattr" constant Sqlite3GuildMessageAttributeTableName (line 6) | Sqlite3GuildMessageAttributeTableName = "gmsgattr" constant Sqlite3QuotedInfoTableName (line 7) | Sqlite3QuotedInfoTableName = "quoinf" constant Sqlite3PrivateMessageTableName (line 8) | Sqlite3PrivateMessageTableName = "privmsg" constant Sqlite3GuildChannelMessageTableName (line 9) | Sqlite3GuildChannelMessageTableName = "guildmsg" constant Sqlite3UinInfoTableName (line 10) | Sqlite3UinInfoTableName = "uininf" constant Sqlite3TinyInfoTableName (line 11) | Sqlite3TinyInfoTableName = "tinyinf" type StoredMessageAttribute (line 15) | type StoredMessageAttribute struct type StoredGuildMessageAttribute (line 24) | type StoredGuildMessageAttribute struct type QuotedInfo (line 33) | type QuotedInfo struct type UinInfo (line 41) | type UinInfo struct type TinyInfo (line 47) | type TinyInfo struct type StoredGroupMessage (line 53) | type StoredGroupMessage struct type StoredPrivateMessage (line 65) | type StoredPrivateMessage struct type StoredGuildChannelMessage (line 77) | type StoredGuildChannelMessage struct FILE: db/sqlite3/sqlite3.go type database (line 23) | type database struct method Open (line 51) | func (s *database) Open() error { method GetMessageByGlobalID (line 131) | func (s *database) GetMessageByGlobalID(id int32) (db.StoredMessage, e... method GetGroupMessageByGlobalID (line 138) | func (s *database) GetGroupMessageByGlobalID(id int32) (*db.StoredGrou... method GetPrivateMessageByGlobalID (line 190) | func (s *database) GetPrivateMessageByGlobalID(id int32) (*db.StoredPr... method GetGuildChannelMessageByID (line 242) | func (s *database) GetGuildChannelMessageByID(id string) (*db.StoredGu... method InsertGroupMessage (line 299) | func (s *database) InsertGroupMessage(msg *db.StoredGroupMessage) error { method InsertPrivateMessage (line 380) | func (s *database) InsertPrivateMessage(msg *db.StoredPrivateMessage) ... method InsertGuildChannelMessage (line 461) | func (s *database) InsertGuildChannelMessage(msg *db.StoredGuildChanne... type config (line 30) | type config struct function init (line 35) | func init() { FILE: global/all_test.go function TestVersionNameCompare (line 10) | func TestVersionNameCompare(t *testing.T) { FILE: global/buffer.go function NewBuffer (line 10) | func NewBuffer() *bytes.Buffer { function PutBuffer (line 15) | func PutBuffer(buf *bytes.Buffer) { FILE: global/codec.go function EncoderSilk (line 16) | func EncoderSilk(data []byte) ([]byte, error) { function EncodeMP4 (line 34) | func EncodeMP4(src string, dst string) error { // -y 覆盖文件 function ExtractCover (line 51) | func ExtractCover(src string, target string) error { FILE: global/fs.go constant ImagePath (line 25) | ImagePath = "data/images" constant VoicePath (line 27) | VoicePath = "data/voices" constant VideoPath (line 29) | VideoPath = "data/videos" constant VersionsPath (line 31) | VersionsPath = "data/versions" constant CachePath (line 33) | CachePath = "data/cache" constant DumpsPath (line 35) | DumpsPath = "dumps" constant HeaderAmr (line 37) | HeaderAmr = "#!AMR" constant HeaderSilk (line 39) | HeaderSilk = "\x02#!SILK_V3" function PathExists (line 43) | func PathExists(path string) bool { function ReadAllText (line 49) | func ReadAllText(path string) string { function WriteAllText (line 59) | func WriteAllText(path, text string) error { function Check (line 64) | func Check(err error, deleteSession bool) { function IsAMRorSILK (line 74) | func IsAMRorSILK(b []byte) bool { function FindFile (line 80) | func FindFile(file, cache, p string) (data []byte, err error) { function DelFile (line 128) | func DelFile(path string) bool { function ReadAddrFile (line 141) | func ReadAddrFile(path string) []netip.AddrPort { FILE: global/log_hook.go type LocalHook (line 17) | type LocalHook struct method Levels (line 26) | func (hook *LocalHook) Levels() []logrus.Level { method ioWrite (line 33) | func (hook *LocalHook) ioWrite(entry *logrus.Entry) error { method pathWrite (line 46) | func (hook *LocalHook) pathWrite(entry *logrus.Entry) error { method Fire (line 68) | func (hook *LocalHook) Fire(entry *logrus.Entry) error { method SetFormatter (line 84) | func (hook *LocalHook) SetFormatter(consoleFormatter, fileFormatter lo... method SetWriter (line 97) | func (hook *LocalHook) SetWriter(writer io.Writer) { method SetPath (line 104) | func (hook *LocalHook) SetPath(path string) { function NewLocalHook (line 111) | func NewLocalHook(args any, consoleFormatter, fileFormatter logrus.Forma... function GetLogLevel (line 135) | func GetLogLevel(level string) []logrus.Level { type LogFormat (line 173) | type LogFormat struct method Format (line 178) | func (f LogFormat) Format(entry *logrus.Entry) ([]byte, error) { constant colorCodePanic (line 204) | colorCodePanic = "\x1b[1;31m" constant colorCodeFatal (line 205) | colorCodeFatal = "\x1b[1;31m" constant colorCodeError (line 206) | colorCodeError = "\x1b[31m" constant colorCodeWarn (line 207) | colorCodeWarn = "\x1b[33m" constant colorCodeInfo (line 208) | colorCodeInfo = "\x1b[37m" constant colorCodeDebug (line 209) | colorCodeDebug = "\x1b[32m" constant colorCodeTrace (line 210) | colorCodeTrace = "\x1b[36m" constant colorReset (line 211) | colorReset = "\x1b[0m" function GetLogLevelColorCode (line 215) | func GetLogLevelColorCode(level logrus.Level) string { FILE: global/net.go function QQMusicSongInfo (line 12) | func QQMusicSongInfo(id string) (gjson.Result, error) { function NeteaseMusicSongInfo (line 21) | func NeteaseMusicSongInfo(id string) (gjson.Result, error) { FILE: global/param.go function VersionNameCompare (line 26) | func VersionNameCompare(current, remote string) bool { FILE: global/signal.go function dumpStack (line 21) | func dumpStack() { FILE: global/signal_unix.go function SetupMainSignalHandler (line 14) | func SetupMainSignalHandler() <-chan struct{} { FILE: global/signal_windows.go function SetupMainSignalHandler (line 26) | func SetupMainSignalHandler() <-chan struct{} { FILE: global/terminal/double_click.go function RunningByDoubleClick (line 6) | func RunningByDoubleClick() bool { function NoMoreDoubleClick (line 11) | func NoMoreDoubleClick() error { FILE: global/terminal/double_click_windows.go function RunningByDoubleClick (line 14) | func RunningByDoubleClick() bool { function NoMoreDoubleClick (line 29) | func NoMoreDoubleClick() error { function boxW (line 60) | func boxW(hwnd uintptr, caption, title string, flags uint) int { function getConsoleWindows (line 74) | func getConsoleWindows() (hWnd uintptr) { function toHighDPI (line 80) | func toHighDPI() { FILE: global/terminal/quick_edit.go function RestoreInputMode (line 6) | func RestoreInputMode() error { function DisableQuickEdit (line 11) | func DisableQuickEdit() error { FILE: global/terminal/quick_edit_windows.go function RestoreInputMode (line 12) | func RestoreInputMode() error { function DisableQuickEdit (line 21) | func DisableQuickEdit() error { FILE: global/terminal/title.go function SetTitle (line 13) | func SetTitle() { FILE: global/terminal/title_windows.go function setConsoleTitle (line 14) | func setConsoleTitle(title string) error { function SetTitle (line 27) | func SetTitle() { FILE: global/terminal/vt100.go function EnableVT100 (line 6) | func EnableVT100() error { FILE: global/terminal/vt100_windows.go function EnableVT100 (line 10) | func EnableVT100() error { FILE: internal/base/feature.go function encodeSilk (line 13) | func encodeSilk(_ []byte, _ string) ([]byte, error) { function resampleSilk (line 17) | func resampleSilk(data []byte) []byte { FILE: internal/base/flag.go function Parse (line 61) | func Parse() { function Init (line 77) | func Init() { function Help (line 125) | func Help() { FILE: internal/base/version.go function init (line 8) | func init() { FILE: internal/cache/cache.go type Cache (line 18) | type Cache struct method Insert (line 23) | func (c *Cache) Insert(md5, data []byte) { method Get (line 28) | func (c *Cache) Get(md5 []byte) []byte { method Delete (line 34) | func (c *Cache) Delete(md5 []byte) { function Init (line 39) | func Init() { FILE: internal/download/download.go function newClient (line 42) | func newClient(t time.Duration) *http.Client { constant UserAgent (line 63) | UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.3... function SetTimeout (line 78) | func SetTimeout(t time.Duration) { type Request (line 87) | type Request struct method WithTimeout (line 66) | func (r Request) WithTimeout(t time.Duration) *Request { method client (line 96) | func (r Request) client() *http.Client { method do (line 106) | func (r Request) do() (*http.Response, error) { method body (line 123) | func (r Request) body() (io.ReadCloser, error) { method Bytes (line 142) | func (r Request) Bytes() ([]byte, error) { method JSON (line 153) | func (r Request) JSON() (gjson.Result, error) { method WriteToFile (line 181) | func (r Request) WriteToFile(path string) error { method WriteToFileMultiThreading (line 192) | func (r Request) WriteToFileMultiThreading(path string, thread int) er... function writeToFile (line 170) | func writeToFile(reader io.ReadCloser, path string) error { type gzipCloser (line 338) | type gzipCloser struct method Read (line 356) | func (g *gzipCloser) Read(p []byte) (n int, err error) { method Close (line 361) | func (g *gzipCloser) Close() error { function gzipReadCloser (line 344) | func gzipReadCloser(reader io.ReadCloser) (io.ReadCloser, error) { FILE: internal/mime/mime.go constant limit (line 12) | limit = 4 * 1024 function scan (line 14) | func scan(r io.ReadSeeker) string { function CheckImage (line 25) | func CheckImage(r io.ReadSeeker) (t string, ok bool) { function CheckAudio (line 41) | func CheckAudio(r io.ReadSeeker) (string, bool) { FILE: internal/msg/element.go function EscapeText (line 19) | func EscapeText(s string) string { function EscapeValue (line 60) | func EscapeValue(value string) string { function UnescapeText (line 70) | func UnescapeText(content string) string { function UnescapeValue (line 84) | func UnescapeValue(content string) string { type Pair (line 92) | type Pair struct type Element (line 98) | type Element struct method Get (line 104) | func (e *Element) Get(k string) string { method CQCode (line 114) | func (e *Element) CQCode() string { method WriteCQCodeTo (line 121) | func (e *Element) WriteCQCodeTo(sb *strings.Builder) { method MarshalJSON (line 138) | func (e *Element) MarshalJSON() ([]byte, error) { constant hex (line 159) | hex = "0123456789abcdef" function QuoteJSON (line 162) | func QuoteJSON(s string) string { FILE: internal/msg/element_test.go function jsonMarshal (line 8) | func jsonMarshal(s string) string { function TestQuoteJSON (line 16) | func TestQuoteJSON(t *testing.T) { FILE: internal/msg/local.go type Poke (line 10) | type Poke struct method Type (line 15) | func (e *Poke) Type() message.ElementType { type LocalImage (line 21) | type LocalImage struct method Type (line 31) | func (e *LocalImage) Type() message.ElementType { type LocalVideo (line 36) | type LocalVideo struct method Type (line 42) | func (e *LocalVideo) Type() message.ElementType { FILE: internal/msg/parse.go function ParseObject (line 8) | func ParseObject(m gjson.Result) (r []Element) { function text (line 32) | func text(txt string) Element { function ParseString (line 45) | func ParseString(raw string) (r []Element) { FILE: internal/msg/parse_test.go function TestParseString (line 13) | func TestParseString(_ *testing.T) { function BenchmarkParseString (line 25) | func BenchmarkParseString(b *testing.B) { function BenchmarkParseObject (line 32) | func BenchmarkParseObject(b *testing.B) { constant bText (line 39) | bText = `123456789[]&987654321[]&987654321[]&987654321[]&987654321[]&987... function BenchmarkCQCodeEscapeText (line 41) | func BenchmarkCQCodeEscapeText(b *testing.B) { function TestCQCodeEscapeText (line 48) | func TestCQCodeEscapeText(t *testing.T) { FILE: internal/param/param.go function EnsureBool (line 22) | func EnsureBool(p any, defaultVal bool) bool { function SplitURL (line 63) | func SplitURL(s string) []string { FILE: internal/selfdiagnosis/diagnoses.go function NetworkDiagnosis (line 10) | func NetworkDiagnosis(c *client.QQClient) { function DNSDiagnosis (line 74) | func DNSDiagnosis() { function EnvironmentDiagnosis (line 79) | func EnvironmentDiagnosis() { FILE: internal/selfupdate/update.go function readLine (line 24) | func readLine() (str string) { function lastVersion (line 31) | func lastVersion() (string, error) { function CheckUpdate (line 40) | func CheckUpdate() { function binaryName (line 59) | func binaryName() string { function checksum (line 71) | func checksum(github, version string) []byte { function wait (line 93) | func wait() { function SelfUpdate (line 100) | func SelfUpdate(github string) { type writeSumCounter (line 139) | type writeSumCounter struct method Write (line 145) | func (wc *writeSumCounter) Write(p []byte) (int, error) { function logn (line 154) | func logn(n, b float64) float64 { function humanBytes (line 158) | func humanBytes(s uint64) string { function fromStream (line 174) | func fromStream(updateWith io.Reader) (err error, errRecover error) { FILE: internal/selfupdate/update_others.go function update (line 16) | func update(url string, sum []byte) error { FILE: internal/selfupdate/update_windows.go function update (line 13) | func update(url string, sum []byte) error { FILE: main.go function main (line 16) | func main() { FILE: modules/api/api.go method call (line 11) | func (c *Caller) call(action string, spec *onebot.Spec, p Getter) global... FILE: modules/api/caller.go type Getter (line 15) | type Getter interface type Handler (line 20) | type Handler type Caller (line 23) | type Caller struct method Call (line 29) | func (c *Caller) Call(action string, spec *onebot.Spec, p Getter) glob... method Use (line 39) | func (c *Caller) Use(middlewares ...Handler) { function NewCaller (line 44) | func NewCaller(bot *coolq.CQBot) *Caller { FILE: modules/config/config.go type Reconnect (line 22) | type Reconnect struct type Account (line 30) | type Account struct type SignServer (line 49) | type SignServer struct type Config (line 56) | type Config struct type Server (line 90) | type Server struct function Parse (line 96) | func Parse(path string) *Config { function AddServer (line 114) | func AddServer(s *Server) { function generateConfig (line 119) | func generateConfig() { function expand (line 154) | func expand(s string, mapping func(string) string) string { FILE: modules/config/config_test.go function Test_expand (line 8) | func Test_expand(t *testing.T) { FILE: modules/filter/filter.go type Filter (line 12) | type Filter interface type operationNode (line 16) | type operationNode struct type notOperator (line 22) | type notOperator struct method Eval (line 34) | func (op *notOperator) Eval(payload gjson.Result) bool { function newNotOp (line 26) | func newNotOp(argument gjson.Result) Filter { type andOperator (line 39) | type andOperator struct method Eval (line 76) | func (op *andOperator) Eval(payload gjson.Result) bool { function newAndOp (line 43) | func newAndOp(argument gjson.Result) Filter { type orOperator (line 96) | type orOperator struct method Eval (line 113) | func (op *orOperator) Eval(payload gjson.Result) bool { function newOrOp (line 100) | func newOrOp(argument gjson.Result) Filter { type eqOperator (line 125) | type eqOperator struct method Eval (line 134) | func (op *eqOperator) Eval(payload gjson.Result) bool { function newEqOp (line 129) | func newEqOp(argument gjson.Result) Filter { type neqOperator (line 139) | type neqOperator struct method Eval (line 148) | func (op *neqOperator) Eval(payload gjson.Result) bool { function newNeqOp (line 143) | func newNeqOp(argument gjson.Result) Filter { type inOperator (line 153) | type inOperator struct method Eval (line 176) | func (op *inOperator) Eval(payload gjson.Result) bool { function newInOp (line 158) | func newInOp(argument gjson.Result) Filter { type containsOperator (line 190) | type containsOperator struct method Eval (line 202) | func (op *containsOperator) Eval(payload gjson.Result) bool { function newContainOp (line 194) | func newContainOp(argument gjson.Result) Filter { type regexOperator (line 207) | type regexOperator struct method Eval (line 219) | func (op *regexOperator) Eval(payload gjson.Result) bool { function newRegexOp (line 211) | func newRegexOp(argument gjson.Result) Filter { function Generate (line 224) | func Generate(opName string, argument gjson.Result) Filter { FILE: modules/filter/middlewares.go function Add (line 17) | func Add(file string) { function Find (line 38) | func Find(file string) Filter { FILE: modules/pprof/pprof.go constant pprofDefault (line 19) | pprofDefault = ` # pprof 性能分析服务器, 一般情况下不需要启用. type pprofServer (line 30) | type pprofServer struct function init (line 36) | func init() { function runPprof (line 44) | func runPprof(_ *coolq.CQBot, node yaml.Node) { function init (line 73) | func init() { FILE: modules/servers/servers.go function Register (line 17) | func Register(name string, proc func(*coolq.CQBot, yaml.Node)) { function RegisterCustom (line 26) | func RegisterCustom(name string, proc func(*coolq.CQBot)) { function Run (line 35) | func Run(bot *coolq.CQBot) { FILE: modules/silk/codec.go constant silkCachePath (line 20) | silkCachePath = "data/cache" function encode (line 23) | func encode(record []byte, tempName string) (silkWav []byte, err error) { function resample (line 62) | func resample(data []byte) []byte { FILE: modules/silk/codec_unsupported.go function encode (line 9) | func encode(record []byte, tempName string) ([]byte, error) { function resample (line 14) | func resample(data []byte) []byte { FILE: modules/silk/stubs.go function init (line 8) | func init() { FILE: pkg/onebot/attr.go type Attr (line 12) | type Attr struct method String (line 76) | func (a Attr) String() string { function String (line 18) | func String(key, value string) Attr { function Int64 (line 23) | func Int64(key string, value int64) Attr { function Int (line 29) | func Int(key string, value int) Attr { function Uint64 (line 34) | func Uint64(key string, v uint64) Attr { function Float64 (line 39) | func Float64(key string, v float64) Attr { function Bool (line 44) | func Bool(key string, v bool) Attr { function Time (line 50) | func Time(key string, v time.Time) Attr { function Duration (line 55) | func Duration(key string, v time.Duration) Attr { function Group (line 66) | func Group(key string, as ...Attr) Attr { function Any (line 72) | func Any(key string, value any) Attr { FILE: pkg/onebot/kind_string.go function _ (line 7) | func _() { constant _Kind_name (line 22) | _Kind_name = "AnyBoolDurationFloat64Int64StringTimeUint64Group" method String (line 26) | func (i Kind) String() string { FILE: pkg/onebot/onebot.go type Self (line 6) | type Self struct type Request (line 14) | type Request struct type Response (line 23) | type Response struct type Event (line 34) | type Event struct FILE: pkg/onebot/spec.go type Spec (line 9) | type Spec struct method ConvertID (line 27) | func (s *Spec) ConvertID(id any) any { FILE: pkg/onebot/value.go type Value (line 18) | type Value struct method Kind (line 52) | func (v Value) Kind() Kind { method Any (line 198) | func (v Value) Any() any { method String (line 229) | func (v Value) String() string { method str (line 237) | func (v Value) str() string { method Int64 (line 243) | func (v Value) Int64() int64 { method Uint64 (line 252) | func (v Value) Uint64() uint64 { method Bool (line 261) | func (v Value) Bool() bool { method bool (line 268) | func (v Value) bool() bool { method Duration (line 274) | func (v Value) Duration() time.Duration { method duration (line 282) | func (v Value) duration() time.Duration { method Float64 (line 288) | func (v Value) Float64() float64 { method float (line 296) | func (v Value) float() float64 { method Time (line 302) | func (v Value) Time() time.Time { method time (line 309) | func (v Value) time() time.Time { method Group (line 319) | func (v Value) Group() []Attr { method group (line 326) | func (v Value) group() []Attr { method append (line 332) | func (v Value) append(dst []byte) []byte { type stringptr (line 25) | type stringptr type groupptr (line 26) | type groupptr type Kind (line 32) | type Kind constant KindAny (line 36) | KindAny Kind = iota constant KindBool (line 37) | KindBool constant KindDuration (line 38) | KindDuration constant KindFloat64 (line 39) | KindFloat64 constant KindInt64 (line 40) | KindInt64 constant KindString (line 41) | KindString constant KindTime (line 42) | KindTime constant KindUint64 (line 43) | KindUint64 constant KindGroup (line 44) | KindGroup type kind (line 49) | type kind function StringValue (line 72) | func StringValue(value string) Value { function IntValue (line 77) | func IntValue(v int) Value { function Int64Value (line 82) | func Int64Value(v int64) Value { function Uint64Value (line 87) | func Uint64Value(v uint64) Value { function Float64Value (line 92) | func Float64Value(v float64) Value { function BoolValue (line 97) | func BoolValue(v bool) Value { type timeLocation (line 107) | type timeLocation function TimeValue (line 111) | func TimeValue(v time.Time) Value { function DurationValue (line 123) | func DurationValue(v time.Duration) Value { function GroupValue (line 129) | func GroupValue(as ...Attr) Value { function AnyValue (line 148) | func AnyValue(v any) Value { FILE: server/daemon.go function Daemon (line 18) | func Daemon() { function savePid (line 51) | func savePid(path string, data string) error { FILE: server/doc.go function init (line 7) | func init() { FILE: server/http.go type HTTPServer (line 36) | type HTTPServer struct type httpServerPost (line 52) | type httpServerPost struct type httpServer (line 59) | type httpServer struct method ServeHTTP (line 156) | func (s *httpServer) ServeHTTP(writer http.ResponseWriter, request *ht... type HTTPClient (line 66) | type HTTPClient struct method Run (line 321) | func (c HTTPClient) Run() { method onBotPushEvent (line 352) | func (c *HTTPClient) onBotPushEvent(e *coolq.Event) { type httpCtx (line 78) | type httpCtx struct method get (line 118) | func (h *httpCtx) get(pattern string, join bool) gjson.Result { method Get (line 148) | func (h *httpCtx) Get(s string) gjson.Result { constant httpDefault (line 84) | httpDefault = ` function init (line 105) | func init() { function mayJSONParam (line 111) | func mayJSONParam(p string) bool { function checkAuth (line 221) | func checkAuth(req *http.Request, token string) int { function puint64Operator (line 246) | func puint64Operator(p *uint64, def uint64) uint64 { function runHTTP (line 254) | func runHTTP(bot *coolq.CQBot, node yaml.Node) { FILE: server/http_test.go function TestHttpCtx_Get (line 11) | func TestHttpCtx_Get(t *testing.T) { FILE: server/middlewares.go type MiddleWares (line 18) | type MiddleWares struct function rateLimit (line 28) | func rateLimit(frequency float64, bucketSize int) api.Handler { function longPolling (line 36) | func longPolling(bot *coolq.CQBot, maxSize int) api.Handler { FILE: server/scf.go type lambdaClient (line 24) | type lambdaClient struct method next (line 180) | func (c *lambdaClient) next() *http.Request { type lambdaResponse (line 32) | type lambdaResponse struct type lambdaResponseWriter (line 39) | type lambdaResponseWriter struct method Write (line 45) | func (l *lambdaResponseWriter) Write(p []byte) (n int, err error) { method Header (line 49) | func (l *lambdaResponseWriter) Header() http.Header { method flush (line 53) | func (l *lambdaResponseWriter) flush() error { method WriteHeader (line 76) | func (l *lambdaResponseWriter) WriteHeader(statusCode int) { function runLambda (line 83) | func runLambda(bot *coolq.CQBot, node yaml.Node) { type lambdaInvoke (line 147) | type lambdaInvoke struct constant lambdaDefault (line 158) | lambdaDefault = ` # LambdaServer 配置 type LambdaServer (line 166) | type LambdaServer struct function init (line 173) | func init() { FILE: server/websocket.go type webSocketServer (line 31) | type webSocketServer struct method event (line 362) | func (s *webSocketServer) event(w http.ResponseWriter, r *http.Request) { method api (line 390) | func (s *webSocketServer) api(w http.ResponseWriter, r *http.Request) { method any (line 412) | func (s *webSocketServer) any(w http.ResponseWriter, r *http.Request) { method listenAPI (line 444) | func (s *webSocketServer) listenAPI(c *wsConn) { method onBotPushEvent (line 497) | func (s *webSocketServer) onBotPushEvent(e *coolq.Event) { type websocketClient (line 44) | type websocketClient struct method connect (line 238) | func (c *websocketClient) connect(typ, addr string, conptr **wsConn) { method listenAPI (line 308) | func (c *websocketClient) listenAPI(typ, url string, conn *wsConn) { method onBotPushEvent (line 339) | func (c *websocketClient) onBotPushEvent(typ, url string, conn **wsCon... type wsConn (line 56) | type wsConn struct method WriteText (line 62) | func (c *wsConn) WriteText(b []byte) error { method Close (line 69) | func (c *wsConn) Close() error { method handleRequest (line 468) | func (c *wsConn) handleRequest(_ *coolq.CQBot, payload []byte) { constant wsDefault (line 79) | wsDefault = ` # 正向WS设置 constant wsReverseDefault (line 87) | wsReverseDefault = ` # 反向WS设置 type WebsocketServer (line 103) | type WebsocketServer struct type WebsocketReverse (line 113) | type WebsocketReverse struct function init (line 123) | func init() { function runWSServer (line 135) | func runWSServer(b *coolq.CQBot, node yaml.Node) { function runWSClient (line 179) | func runWSClient(b *coolq.CQBot, node yaml.Node) { function resolveURI (line 220) | func resolveURI(addr string) (network, address string) { FILE: winres/gen/json.go constant js (line 15) | js = `{ constant timeformat (line 78) | timeformat = `2006-01-02T15:04:05+08:00` function main (line 80) | func main() {