utils

package
v0.0.0-...-9473012 Latest Latest
Warning

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

Go to latest
Published: Jun 3, 2024 License: GPL-3.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var UserIDMessageIDs = make(map[int64][]MessageIDInfo)

UserIDMessageIDs 存储每个用户ID对应的消息ID数组及其有效期

Functions

func AddMessageID

func AddMessageID(userID int64, messageID int64)

AddMessageID 为指定user_id添加新的消息ID

func BlacklistIntercept

func BlacklistIntercept(message structs.OnebotGroupMessage, selfid string) bool

BlacklistIntercept 检查用户ID是否在黑名单中,如果在,则发送预设消息

func Contains

func Contains(slice []string, item string) bool

contains 检查一个字符串切片是否包含一个特定的字符串

func ContainsRune

func ContainsRune(slice []rune, value rune, groupid int64) bool

随机的分布发送

func ConvertTraditionalToSimplified

func ConvertTraditionalToSimplified(text string) (string, error)

ConvertTraditionalToSimplified converts traditional Chinese to simplified Chinese.

func DeleteLatestMessage

func DeleteLatestMessage(messageType string, id int64, userid int64) error

func ExtractEventDetails

func ExtractEventDetails(eventData map[string]interface{}) (string, structs.UsageInfo)

取出ai回答

func FetchAndStoreUserIDs

func FetchAndStoreUserIDs()

构造 URL 并请求数据

func FriendlyLanguageNameCN

func FriendlyLanguageNameCN(lang whatlanggo.Lang) string

FriendlyLanguageNameCN 将语言代码映射为中文名称

func GenerateUUID

func GenerateUUID() string

func GetBaseURLByUserID

func GetBaseURLByUserID(userID string) (string, bool)

GetBaseURLByUserID 通过 user_id 获取 baseURL

func GetKey

func GetKey(groupid int64, userid int64) string

获取复合键

func GetLatestValidMessageID

func GetLatestValidMessageID(userID int64) (int64, bool)

GetLatestValidMessageID 获取指定user_id当前有效的最新消息ID

func GetPromptKeyboardAI

func GetPromptKeyboardAI(msg string, promptstr string) []string

你要扮演一个json生成器,根据我下一句提交的QA内容,推断我可能会继续问的问题,生成json数组格式的结果,如:输入Q我好累啊A要休息一下吗,返回["嗯,我想要休息","我想喝杯咖啡","你平时怎么休息呢"],返回需要是["","",""]需要2-3个结果

func IsInBlacklist

func IsInBlacklist(id string) bool

isInBlacklist 检查给定的ID是否在黑名单中。

func LanguageIntercept

func LanguageIntercept(text string, message structs.OnebotGroupMessage, selfid string) bool

LanguageIntercept 检查文本语言,如果不在允许列表中,则返回 true 并发送消息

func LengthIntercept

func LengthIntercept(text string, message structs.OnebotGroupMessage, selfid string) bool

LengthIntercept 检查文本长度,如果超过最大长度,则返回 true 并发送消息

func LoadBlacklist

func LoadBlacklist(filePath string) error

LoadBlacklist 从给定的文件路径载入黑名单ID。 如果文件不存在,则创建该文件。

func MakeAlternating

func MakeAlternating(messages []structs.MessageContent) []structs.MessageContent

MakeAlternating ensures that roles alternate between "user" and "assistant".

func PostSensitiveMessages

func PostSensitiveMessages() error

func PrintChatCompletionsRequest

func PrintChatCompletionsRequest(request *hunyuan.ChatCompletionsRequest)

func PrintChatProRequest

func PrintChatProRequest(request *hunyuan.ChatProRequest)

func PrintChatStdRequest

func PrintChatStdRequest(request *hunyuan.ChatStdRequest)

func RemoveBracketsContent

func RemoveBracketsContent(input string) string

RemoveBracketsContent 接收一个字符串,并移除所有[[...]]的内容

func ReverseString

func ReverseString(s string) string

ReverseString 颠倒给定字符串中的字符顺序

func SendGroupMessage

func SendGroupMessage(groupID int64, userID int64, message string, selfid string) error

func SendGroupMessageMdPromptKeyboard

func SendGroupMessageMdPromptKeyboard(groupID int64, userID int64, message string, selfid string, newmsg string, response string, promptstr string) error

func SendPrivateMessage

func SendPrivateMessage(UserID int64, message string, selfid string) error

func SendPrivateMessageRaw

func SendPrivateMessageRaw(UserID int64, message string, selfid string) error

func SendPrivateMessageSSE

func SendPrivateMessageSSE(UserID int64, message structs.InterfaceBody) error

func SendSSEPrivateMessage

func SendSSEPrivateMessage(userID int64, content string)

SendSSEPrivateMessage 分割并发送消息的核心逻辑,直接遍历字符串

func SendSSEPrivateMessageByLine

func SendSSEPrivateMessageByLine(userID int64, content string, keyboard []string)

SendSSEPrivateMessageByline 分割并发送消息的核心逻辑,直接遍历字符串

func SendSSEPrivateMessageWithKeyboard

func SendSSEPrivateMessageWithKeyboard(userID int64, content string, keyboard []string)

SendSSEPrivateMessageWithKeyboard 分割并发送消息的核心逻辑,直接遍历字符串

func SendSSEPrivateRestoreMessage

func SendSSEPrivateRestoreMessage(userID int64, RestoreResponse string)

SendSSEPrivateRestoreMessage 分割并发送重置消息的核心逻辑,直接遍历字符串

func SendSSEPrivateSafeMessage

func SendSSEPrivateSafeMessage(userID int64, saveresponse string)

SendSSEPrivateSafeMessage 分割并发送安全消息的核心逻辑,直接遍历字符串

func Tidylogs

func Tidylogs()

func WatchBlacklist

func WatchBlacklist(filePath string)

watchBlacklist 监控黑名单文件的变动并动态更新。

Types

type MessageIDInfo

type MessageIDInfo struct {
	MessageID int64     // 消息ID
	Expires   time.Time // 到期时间
}

MessageIDInfo 代表消息ID及其到期时间

type ResponseData

type ResponseData struct {
	Data struct {
		MessageID int64 `json:"message_id"`
	} `json:"data"`
}

ResponseData 是用于解析HTTP响应的结构体

type ResponseDataPromptKeyboard

type ResponseDataPromptKeyboard struct {
	ConversationID string `json:"conversationId"`
	MessageID      string `json:"messageId"`
	Response       string `json:"response"` // 这里是嵌套的JSON字符串
}

ResponseDataPromptKeyboard 用于解析外层响应

Jump to

Keyboard shortcuts

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