CommonMessageSelectBuilderUnit
abstract class CommonMessageSelectBuilderUnit<M : MessageEvent, R> : MessageSubscribersBuilder<M, Unit, R, Any?>
Content copied to clipboard
MessageSelectBuilderUnit 的跨平台实现
Functions
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun containsAll( vararg sub: String, ignoreCase: Boolean = false, trim: Boolean = true): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
Link copied to clipboard
fun containsAny( vararg sub: String, ignoreCase: Boolean = false, trim: Boolean = true): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
Link copied to clipboard
Link copied to clipboard
当其他条件都不满足时的默认处理.
Link copied to clipboard
当其他条件都不满足时引用回复原消息.
Link copied to clipboard
当其他条件都不满足时回复原消息.
Link copied to clipboard
fun endsWith(suffix: String, trim: Boolean = true): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果消息的结尾是 suffix
fun endsWith( suffix: String, removeSuffix: Boolean = true, trim: Boolean = true, onEvent: suspend M.(String) -> R)
Content copied to clipboard
如果消息的结尾是 suffix
Link copied to clipboard
Link copied to clipboard
fun finding(regex: Regex): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
消息内容可由正则表达式查找(Regex.find)
如果消息内容Regex.find 不为空
消息内容可由正则表达式查找(Regex.find), 就执行 onEvent
Link copied to clipboard
open infix fun Regex.findingReply(replier: suspend M.(MatchResult) -> Any?)
Content copied to clipboard
消息内容可由正则表达式查找(Regex.find), 则执行 replier 并将其返回值回复给发信对象.
Link copied to clipboard
fun matching(regex: Regex): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
消息内容可由正则表达式匹配(Regex.matchEntire)
消息内容可由正则表达式匹配(Regex.matchEntire), 就执行 onEvent
Link copied to clipboard
open infix fun Regex.matchingReply(replier: suspend M.(MatchResult) -> Any?)
Content copied to clipboard
消息内容可由正则表达式匹配(Regex.matchEntire), 则执行 replier 并将其返回值回复给发信对象.
Link copied to clipboard
open fun newListeningFilter(filter: M.(String) -> Boolean): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
Link copied to clipboard
open infix fun MessageSelectionTimeoutChecker.quoteReply(message: String)
Content copied to clipboard
open infix fun MessageSelectionTimeoutChecker.quoteReply(message: Message)
Content copied to clipboard
open infix fun MessageSelectionTimeoutChecker.quoteReply(block: suspend () -> Any?)
Content copied to clipboard
在超时后引用回复原消息
open infix fun MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>.quoteReply(toReply: String)
Content copied to clipboard
open infix fun MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>.quoteReply(toReply: Message)
Content copied to clipboard
open infix fun MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>.quoteReply(replier: suspend M.(String) -> Any?)
Content copied to clipboard
Link copied to clipboard
open infix fun MessageSelectionTimeoutChecker.reply(block: suspend () -> Any?)
Content copied to clipboard
在超时后回复原消息
open infix fun MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>.reply(toReply: String)
Content copied to clipboard
open infix fun MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>.reply(message: Message)
Content copied to clipboard
Link copied to clipboard
fun sentBy(qq: Long): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
fun sentBy(friend: User): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果是这个人发的消息. 消息可以是好友消息也可以是群消息
fun sentBy(name: String): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果是这个人发的消息. 消息目前只会是群消息
Link copied to clipboard
fun sentByAdministrator(): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果是管理员发的消息
Link copied to clipboard
fun sentByFriend(): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果是好友发来的消息
Link copied to clipboard
fun sentByGroupTemp(): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果是群临时会话消息
Link copied to clipboard
fun sentByOperator(): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果是管理员或群主发的消息
Link copied to clipboard
fun sentByOwner(): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果是群主发的消息
Link copied to clipboard
fun sentByStranger(): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果是陌生人发来的消息
Link copied to clipboard
fun startsWith(prefix: String, trim: Boolean = true): MessageSubscribersBuilder.ListeningFilter<M, Unit, R, Any?>
Content copied to clipboard
如果消息的前缀是 prefix
fun startsWith( prefix: String, removePrefix: Boolean = true, trim: Boolean = true, onEvent: suspend M.(String) -> R)
Content copied to clipboard
如果消息的前缀是 prefix
Link copied to clipboard
限制本次 select 的最长等待时间, 当超时后抛出 TimeoutCancellationException
Properties
Link copied to clipboard
val subscriber: (M.(String) -> Boolean, MessageListener<M, Any?>) -> Unit
Content copied to clipboard
invoke 这个 lambda 时, 它将会把 消息事件的处理器 注册给事件, 并返回注册完成返回的监听器.