Him188
5db9d1d0db
Fix doc
2020-05-09 18:27:17 +08:00
Him188
e6dec8a498
Add nextEventOrNull
2020-05-09 18:18:50 +08:00
Him188
d16a699810
Fix BotFaceChangedEvent
, Add FriendFaceChangedEvent
2020-05-09 17:19:02 +08:00
Him188
6db2c23a17
Improve exception message
2020-05-09 17:16:24 +08:00
Him188
28f48e5c78
Make random device info more random
2020-05-09 16:20:57 +08:00
Him188
1e885dbf7a
Rearrange MessageSvc and OnlinePush
2020-05-09 16:11:29 +08:00
Him188
1c1a37a103
Merge remote-tracking branch 'origin/master'
...
# Conflicts:
# mirai-core/src/commonMain/kotlin/net.mamoe.mirai/message/data/MessageSource.kt
2020-05-09 15:38:20 +08:00
Him188
238e94dae7
Cleanup
2020-05-09 15:09:01 +08:00
Him188
f765804ff7
Make MessageMetadata.contentToString
final
2020-05-09 15:07:29 +08:00
Him188
b0089d58d6
Deprecate ambiguous extensions on QuoteReply
, like QuoteReply.id
2020-05-09 15:03:49 +08:00
Him188
b64b1da666
Make MessageChain implement List<SingleMessage>
;
...
Hide relevant APIs on `Iterable`;
Deprecate `__forEachForJava__` in favor of Java 8 API;
Add `fun messageChainOf(vararg messages: Message): MessageChain`;
Add `fun Array<out Message>.asMessageChain(): MessageChain`;
Add `fun Array<out SingleMessage>.asMessageChain(): MessageChain`;
Add `fun Array<out Message>.flatten(): Sequence<SingleMessage>`;
Add `fun Array<out SingleMessage>.flatten(): Sequence<SingleMessage>`;
Close #312
2020-05-09 14:54:48 +08:00
Him188
9733490266
Add docs
2020-05-09 13:45:29 +08:00
Karlatemp
0716438242
Update duration display
2020-05-09 11:06:00 +08:00
ryoii
2f3c1b5d8f
BotFaceChangedEvent, closed #271
2020-05-07 22:09:37 +08:00
Him188
ed11f38b3f
Use MONITOR priority for subscribeMessages by default
2020-05-07 10:47:23 +08:00
无限UCW
8a6f306cdb
fix typo ( #308 )
...
* fix typo
* fix typo
2020-05-07 10:44:20 +08:00
Him188
ad41b7a0d0
Fix ambiguous doc on MessageSource.internalId
2020-05-06 22:34:15 +08:00
mzdluo123
ff4739f57e
fix: BufferedImage not found on Android
2020-05-06 14:09:53 +08:00
Him188
5cd027dfa9
Remove param format
from FileCacheStrategy.newImageCache
2020-05-06 13:17:08 +08:00
Him188
6e75f8dd34
Implement event priority for nextMessage
2020-05-06 12:55:31 +08:00
Him188
47df80d3ea
Implement event priority for syncFromEvent
and nextEvent
2020-05-06 12:53:24 +08:00
Him188
15e6bb4b8b
Implement event priority for subscribeMessages
2020-05-06 12:50:41 +08:00
Him188
cdb188cd42
Add docs
2020-05-06 12:46:25 +08:00
Him188
07004311f4
Merge remote-tracking branch 'origin/master'
2020-05-06 12:43:55 +08:00
Him188
5cd3178c3f
Make Message.get
returns M?
instead of M
;
...
Deprecate `Message.getOrNull` in favor of `Message.get`;
Add `Message.getOrFail`
2020-05-06 12:38:30 +08:00
Him188
3255e330c0
Implement event priority for selectMessages
2020-05-06 12:05:08 +08:00
Him188
42ceb38020
Use CONCURRENT concurrency as default for subcribeAlways
2020-05-06 12:03:50 +08:00
Him188
aadea751ac
Add precondition checks
2020-05-06 11:52:44 +08:00
Him188
05429e5800
Add docs
2020-05-06 11:33:58 +08:00
Him188
e54ead6331
Fix binary compatibility
2020-05-05 17:01:40 +08:00
Him188
17bbcdb3dc
Fix binary compatibility
2020-05-05 16:45:41 +08:00
Him188
e35820d035
Fix binary compatibility
2020-05-05 16:44:01 +08:00
Him188
8ca4357eb8
Merge pull request #304 from mamoe/1.0.0
...
1.0.0
2020-05-05 16:10:32 +08:00
Him188
2d9db234d7
Introduce FileCacheStrategy
;
...
Rework `ExternalImage`, introduce `ReusableInput` for multiple attempts when uploading images;
Add `BotConfiguration.fileCacheStrategy`, defaults use cache system from host OS;
Introduce `DeferredReusableInput` for `*.toExternalImage` on JVM.
Deprecate `*.suspendToExternalImage` as no longer need to be suspend.
Open input only when required, close input after uploading files, fix #302
2020-05-05 16:09:32 +08:00
Him188
96a5825283
Add nextEvent
, add docs
2020-05-05 14:23:08 +08:00
Him188
37ce266091
Cleanup, remove verbose functions
2020-05-05 14:10:17 +08:00
Him188
84cfe2626f
Remove all @SinceMirai("0.x.x")
2020-05-05 13:56:17 +08:00
Him188
4ee27f2069
Fix ambiguous message event names. Fix #299 .
...
Binary compatibility until 1.2.0.
Migrations:
- `MessagePacket` deprecated in favor of `MessageEvent`
- `MessagePacketBase` deprecated in favor of `MessageEvent`
- `ContactMessage` -> `MessageEvent`
- `FriendMessage` -> `FriendMessageEvent`
- `GroupMessage` -> `GroupMessageEvent`
- `TempMessage` -> `TempMessageEvent`
2020-05-05 13:55:01 +08:00
Him188
66da881ebb
Add val Message.content
which is a shortcut to contentToString()
2020-05-05 13:41:43 +08:00
Him188
45d96a8855
Merge pull request #296 from Karlatemp/patch-4
...
Fix the error that directly closing the verification code window will block the coroutine.
2020-05-05 12:20:11 +08:00
Him188
f041a7eda7
Use strong reference in message events, fix #303
2020-05-05 12:19:24 +08:00
Him188
53ba8aba00
Improve docs
2020-05-03 22:32:42 +08:00
Him188
e5404b397b
Simplify MemberPermission comparing
2020-05-03 22:25:57 +08:00
Him188
c2fa014c78
Add docs
2020-05-03 22:25:35 +08:00
Him188
35e39a7fba
Add docs
2020-05-03 20:43:18 +08:00
Him188
b244697dd5
Add timing on reconnecting
2020-05-03 19:06:27 +08:00
Karlatemp
edb80ec0ca
Fix the error that directly closing the verification code window will block the coroutine.
2020-05-02 19:12:38 +08:00
Him188
73c700b4b7
Support protocol selecting
2020-05-02 18:42:51 +08:00
Him188
86689cf575
Adjust filenames
2020-05-02 18:21:13 +08:00
Him188
6ac1ea19a5
Remove MessageType
2020-05-02 18:13:07 +08:00
Him188
fbf4dd6bb2
Adjust filenames
2020-05-02 18:12:40 +08:00
Him188
752ec5b83c
Implement FriendEvent
2020-05-02 18:08:25 +08:00
Him188
8366c353c4
Correct filenames
2020-05-02 18:07:54 +08:00
Him188
f0e8deab68
Remove unused files
2020-05-02 18:07:41 +08:00
Him188
6b5cbc3dd7
Implement new ExternalImage and image chunk strategy
2020-05-02 17:58:22 +08:00
Him188
b14bfde694
Fix tests
2020-05-02 17:18:31 +08:00
Him188
2be325d781
Remove all deprecated APIs
2020-05-02 16:56:18 +08:00
Him188
a7e0f63dc6
FileCacheStrategy
, ReusableInput
fundamental
2020-05-02 16:16:33 +08:00
ryoii
1dbeb44f5b
Support Group VoiceMessage receiving
2020-05-02 04:46:51 +08:00
Him188
9924d37e54
Misc improvements
2020-05-01 23:04:24 +08:00
Karlatemp
20af1fc3b6
Reset listeners before run a new task ( #294 )
...
* 支持监听优先级, 事件传递拦截
* Fix test
* 并发
* 优先级&并发
* Test
* Fix unused
* To GlobalEventListeners
* Add tests
* intercept with subscribeAlways
* test listener.complete()
* Add functions
* Fix test and add new test
* Test concurrent listening
* Test concurrent listening
* update broadcast
* Fix Boom
* Reset listeners before run a new task
Co-authored-by: Him188 <Him188@mamoe.net>
2020-05-01 22:59:34 +08:00
Him188
32eb36f817
Allow quoting offline message sources
2020-05-01 21:52:26 +08:00
Him188
1a4c3ba602
Simplify Image structure: deprecate online and offline classification.
2020-05-01 21:51:09 +08:00
Him188
20c2f6fb05
Merge remote-tracking branch 'origin/master'
2020-05-01 21:14:03 +08:00
Him188
7050d30a60
Add docs
2020-05-01 21:13:50 +08:00
Karlatemp
c17e8a3263
支持监听优先级, 事件传递拦截 ( #279 )
...
* 支持监听优先级, 事件传递拦截
* Fix test
* 并发
* 优先级&并发
* Test
* Fix unused
* To GlobalEventListeners
* Add tests
* intercept with subscribeAlways
* test listener.complete()
* Add functions
* Fix test and add new test
* Test concurrent listening
* Test concurrent listening
* update broadcast
* Fix Boom
Co-authored-by: Him188 <Him188@mamoe.net>
2020-05-01 21:05:04 +08:00
Him188
16c440433f
Introduce AbstractEvent
acting as all events' super class
2020-05-01 14:44:12 +08:00
Him188
df4cef6299
Improve image regex
2020-04-30 17:18:47 +08:00
Him188
244bbff85c
Fix typo
2020-04-30 17:10:41 +08:00
Him188
868ff0008c
Fix typo
2020-04-30 17:10:20 +08:00
Him188
c37380017b
Use simpleName
2020-04-30 14:41:15 +08:00
Him188
195cfc395c
Add docs
2020-04-30 14:36:54 +08:00
Him188
d3669dffa0
Add event lists overview
2020-04-30 14:36:53 +08:00
Him188
644f0f175b
Deprecate ExternalImage
constructors
2020-04-29 19:39:41 +08:00
Him188
a08bf241ed
Improve event handler coroutine management
2020-04-29 18:21:01 +08:00
Him188
6a726050bc
Fix event concurrency for Java callers
2020-04-29 18:20:34 +08:00
Him188
2501cbb59a
Ensure binary compatibility
2020-04-29 15:49:01 +08:00
Him188
50934f9b7d
Ensure binary compatibility until 1.1.0
2020-04-29 15:33:25 +08:00
Him188
0de76149c8
Make SingleMessage
not extending CharSequence
for clearer semantics
2020-04-29 15:21:00 +08:00
Him188
b30b508f4b
Deprecate PlainText.stringValue
2020-04-29 15:20:37 +08:00
Him188
3d5e928382
Merge remote-tracking branch 'origin/master'
2020-04-29 12:14:51 +08:00
Him188
e3084c5f7d
Deprecate XmlMessage
and JsonMessage
in favour of ServiceMessage
2020-04-29 12:14:40 +08:00
ryoii
1a557984f4
Fix BufferedImage compressed
2020-04-29 01:48:11 +08:00
Him188
90df88050f
Fix typo
2020-04-28 16:43:42 +08:00
Him188
9b4006222f
Rework re-init, fix #282
2020-04-28 16:35:03 +08:00
Him188
ece7d8901a
Fix SinceMirai
2020-04-28 15:29:32 +08:00
Him188
20acc3c459
Support parsing VipFace
2020-04-28 15:25:43 +08:00
Him188
128125eec7
Support more poke messages
2020-04-28 14:59:57 +08:00
mzdluo123
3c98151f87
fix: Regex error on Android
2020-04-28 00:49:19 +08:00
Him188
c89e2a7aa6
Improve performance
2020-04-27 22:25:53 +08:00
Him188
c3de96dde0
Mark LockFreeLinkedList with MiraiInternalAPI, planning to make it internal in 1.0.0
2020-04-27 22:07:27 +08:00
Him188
f75d597c29
Remove being shadowed extensions
2020-04-27 19:08:42 +08:00
Him188
7e1a6c8be7
Add docs
2020-04-27 10:19:49 +08:00
Him188
4ba153c358
Fix BotInvitedJoinGroupRequestEvent.ignore
2020-04-27 10:16:00 +08:00
Him188
6ab8be55c2
Add Java-friendly Group.quit
2020-04-25 19:55:59 +08:00
Him188
781dd721d1
Fix LoginSolver
choosing, add NoStandardInputForCaptchaException
2020-04-25 15:28:26 +08:00
Him188
56fc3aa88b
Add checks for empty message being sent
2020-04-25 13:14:57 +08:00
Him188
364ffc334a
Fix typo
2020-04-25 13:13:33 +08:00
Him188
626b1d6a5d
Add tests for Message.isContentEmpty()
2020-04-25 13:13:18 +08:00
Him188
e3add186fb
Add Message.isContentNotEmpty
2020-04-25 12:50:31 +08:00
Him188
97dda77f04
Requests input in IO dispatcher
2020-04-25 12:47:24 +08:00
Him188
cebd4a8079
Fix typo
2020-04-25 12:47:06 +08:00
Him188
86aacc5d47
Add Message.isContentEmpty
2020-04-25 12:40:40 +08:00
Him188
48362a241c
Add check: ForwardMessage.nodeList mustn't be empty
2020-04-25 12:34:39 +08:00
Him188
6a631418d2
Add docs
2020-04-25 12:31:59 +08:00
Him188
cd1dbf63fc
Fix doc
2020-04-25 12:29:16 +08:00
Him188
3bdfd21df6
Add Contact.sendMessage(String)
2020-04-25 12:27:40 +08:00
Him188
9c5bfb3bf5
Fix #270
2020-04-25 12:24:31 +08:00
ryoii
bb3944d5ae
Support handle bot invited into a group, close #259
2020-04-25 00:24:16 +08:00
Karlatemp
7271ff375d
#257 的追加修正 ( #267 )
...
* Rename
* Fix resource missing
* Fix typo
2020-04-24 21:32:56 +08:00
Him188
bf4b56ab07
Fix calculateImageMd5ByImageId
2020-04-24 16:55:39 +08:00
Him188
09524da1e9
Add docs, rearrange implementations
2020-04-24 16:41:21 +08:00
Him188
716e3ade48
Rearrange deprecated functions
2020-04-24 15:14:06 +08:00
Him188
077885465b
Add docs, rearrange implementations
2020-04-24 15:12:50 +08:00
Him188
92a1b0d4df
Add imageId regex, fix #262
2020-04-24 15:12:33 +08:00
Karlatemp
d57ce6eb09
#257 additional display repair ( #260 )
...
* LoginSolver, gui support
* make `internal`,`object`, and rename.
* Edit message
* Edit message
2020-04-24 10:19:15 +08:00
Karlatemp
0ede49896e
LoginSolver swing ( #257 )
...
* LoginSolver, gui support
* make `internal`,`object`, and rename.
2020-04-24 10:03:27 +08:00
Him188
331d9d5e3f
Fix incompatible Bot.instances
2020-04-24 09:10:00 +08:00
Him188
96ed65442d
Fix missing ForwardMessage.Key
in firstOrNull
2020-04-23 21:36:39 +08:00
Him188
848c50ae9d
Remove incompatible functions
2020-04-23 20:46:32 +08:00
Him188
1f97454b37
Fix unhandled BotOfflineEvent.Force
2020-04-23 20:41:23 +08:00
Him188
437f9db575
Unified Image suffix: .mirai
2020-04-23 20:37:01 +08:00
Him188
5ad5c17a60
Add examples
2020-04-23 20:18:48 +08:00
Him188
2d96314d72
Cleanup
2020-04-23 19:29:19 +08:00
Him188
5b2ae6e9ad
Simplify Image structure, close #244
2020-04-23 17:10:21 +08:00
Him188
eb123bb3a9
Fix #242
2020-04-23 14:46:30 +08:00
Him188
83f721c59a
Cleanup
2020-04-23 14:20:55 +08:00
Him188
1b4e1475a0
Support ForwardMessage DSL
2020-04-23 14:17:24 +08:00
Him188
6734403fb0
Add User.nameCardOrNick
; Rename Member.takeIfFriend
to Member.takeIfIsFriend
; Replace fun Member.isMuted()
with val Member.isMuted
2020-04-23 14:16:40 +08:00
Him188
efb186e26d
Add ContactMessage.senderName
2020-04-23 11:57:38 +08:00
Him188
454205a6af
Add ContactMessage.time
2020-04-23 11:52:44 +08:00
Him188
1786c95e07
Support merged forward messages!
2020-04-22 22:09:53 +08:00
Him188
bb4c13d789
Add docs
2020-04-22 20:13:34 +08:00
Him188
7116173ed7
Rearrange MessageSource
2020-04-22 20:07:48 +08:00
Him188
d9135cb8a3
Fix #248
2020-04-22 19:57:38 +08:00
Him188
72fb82c01f
Remove MPP EventCancelledException
2020-04-22 18:42:26 +08:00
Him188
3545482034
Fix #253
2020-04-22 18:39:10 +08:00
Him188
66f4620292
Add MessageSource.internalId
, support OfflineMessageSource
building
2020-04-22 18:35:30 +08:00
Him188
6311c39c97
Enhance MessageChainBuilder
2020-04-22 18:34:44 +08:00
Him188
0acb89cd36
Extract implementations; Introduce OnlineMessageSource.toOffline
2020-04-22 17:13:09 +08:00
Him188
3e644426c8
Make MessageChainBuilder
open
2020-04-22 17:03:06 +08:00
Him188
a63af80668
Deprecate QQ
...
Introduce `Friend` extending `User`
Introduce `User` acting as the superclass of `Friend` and `Member`
Add extensions `Member.asFriend`, etc.
Remove specialized `Contact.hashCode` and `Contact.equals`, inherit from `kotlin.Any`
Specify `toString` behavior in abstract `Contact` classes, instead of in implementation classes.
Add virtual member `Contact.sendMessage(String)`
Migrate the project from using `QQ` to `Friend`
Remove multiplatform Contact class structure, keep them common.
Remove extension `Long.at` in `GroupMessage`, `QQ.at` in `ContactMessage`.
Add `At.asMember()` in `GroupMessage`.
Make `calculateGroupUinByGroupCode`, `calculateGroupCodeByGroupUin` static on JVM.
2020-04-22 16:08:04 +08:00
Him188
3c9b057ad0
Rename Identified
to ContactOrBot
, remove experimental annotations
2020-04-22 14:03:29 +08:00
Him188
4b05cb45d1
Use List
instead of Sequence
2020-04-22 13:40:51 +08:00
Him188
373ad9e8aa
Replace Bot.instances: List<WeakRef>
with Bot.instances: Sequence<Bot>
2020-04-22 13:40:40 +08:00
Him188
d40e3ee745
Make BotIsBeingMutedException.botMuteRemaining
inline
2020-04-22 13:18:59 +08:00
Him188
3471684117
Add more DSL clauses
2020-04-22 12:41:51 +08:00
Him188
5aa85ba05c
?
2020-04-22 12:35:24 +08:00
Him188
9ad8dfa79b
Make crossinline
2020-04-22 12:16:27 +08:00
Him188
be6cc718c6
Fix version number
2020-04-22 11:51:21 +08:00
Him188
b78d9ad3bb
Rearrange tests
2020-04-22 11:40:44 +08:00
Him188
9ae02b5ade
Fix build
2020-04-22 11:36:57 +08:00
Him188
a662362131
Fix build
2020-04-22 11:36:27 +08:00
Him188
ca216bc492
Fix syncFromEvent
, add Tests
2020-04-21 14:51:50 +08:00
Him188
422e8a9b4b
Rename MessagePacket.kt
to ContactMessage.kt
2020-04-21 14:37:54 +08:00
Him188
a516764630
Simplify expressions
2020-04-21 14:35:04 +08:00
Him188
069a88e803
Remove senseless contracts
2020-04-21 14:31:28 +08:00
Him188
d94b1d3279
Rename subscribingGet
to syncFromEvent
, subscribingGetAsync
to asyncFromEvent
; Improve docs
2020-04-21 14:30:35 +08:00
Him188
5234226788
Add noinline subscribers that take eventClasses
2020-04-21 14:19:17 +08:00
Him188
5af1d0435a
Add MessageChain.contentEquals
2020-04-20 22:04:39 +08:00
Him188
f845b5cded
Add Message.isPlain
, Message.isNotPlain
2020-04-20 21:52:22 +08:00
Him188
edd823c7bc
Improve docs
2020-04-20 21:52:07 +08:00
Him188
16fec25747
Fix typo, add MessageChain.allContent
, MessageChain.noneContent
2020-04-20 21:51:45 +08:00
Him188
9270195d31
Fix CombinedMessage.toString, add caches.
2020-04-20 21:28:54 +08:00
Him188
96610b30e3
Support CustomMessage
2020-04-20 21:26:16 +08:00
Him188
1258746ec0
Add BotConfiguration.inheritCoroutineContext
2020-04-20 20:15:27 +08:00
Him188
162dfb7c71
Improve performance
2020-04-20 17:08:45 +08:00
Him188
c4b3eade4a
MessageChain.firstOrNull
rather than MessageChain.getOrNull
on JVM
2020-04-20 17:06:28 +08:00
Him188
1542b73fa9
Improve KDoc
2020-04-20 16:55:44 +08:00
Him188
c8cd03ac02
Fix function name on JVM, from MessageReceipt.recall
to MessageReceipt.recallIn
2020-04-20 16:55:07 +08:00
Him188
1eff81d41f
Use first
on JVM
2020-04-20 16:54:20 +08:00
Him188
1fae390fba
Enhance MessageChainBuilder
2020-04-20 16:23:37 +08:00
Him188
4fa9f1ac5b
Add missing @BotAsMember
2020-04-18 16:58:45 +08:00
Him188
405696d9ac
Use sequenceId as MessageSource.id
, await sequenceId on Group.sendMessage
2020-04-18 16:56:18 +08:00
Him188
7f347feedd
Deprecate openChannel
2020-04-17 21:36:39 +08:00
Him188
ac6f411eb2
Add equals
and hashCode
to Message
s
2020-04-17 14:31:43 +08:00
Him188
db8cb84c99
Rearrange implementations for MessageSource, implement recall state check
2020-04-17 14:19:32 +08:00
sandtechnology
67f7be34a3
Fix wrong error message
2020-04-16 01:21:54 +08:00
Him188
2b2edeacb1
Support operator in GroupNameChangeEvent
, optimize logs, close #217
2020-04-15 19:55:10 +08:00
Him188
991f46fe64
Introduce ServiceMessage
, fix #229 , fix #224
2020-04-15 19:14:59 +08:00
Him188
77a0ba6e29
Fix #227
2020-04-15 16:48:41 +08:00
Him188
90ee9b441a
Rework reconnection, fixes #228
2020-04-15 16:46:39 +08:00
Him188
f1ac53f115
Cleanup
2020-04-15 10:47:11 +08:00
Him188
a5b82c5e48
Rearrange MessageSubscribersBuilder
2020-04-15 10:11:09 +08:00
Him188
b3a56126d4
Change retention of SinceMirai to BINARY
2020-04-15 08:47:53 +08:00
Him188
f8d2760752
Merge remote-tracking branch 'origin/master'
2020-04-15 08:20:04 +08:00
Him188
a50f1c7274
Update docs
2020-04-14 22:58:51 +08:00
Him188
eeb1f89d81
Simplify DSL
2020-04-14 14:29:56 +08:00
Him188
b0718c5b2e
Add experimental annotations
2020-04-13 19:15:35 +08:00
Him188
0a2152dc73
Add SingleMessage.asMessageChain
2020-04-13 18:56:20 +08:00
Him188
075ed6680f
Rearrange implementations
2020-04-13 12:30:37 +08:00
Him188
a7de970a81
Simplify exposed public APIs
2020-04-13 12:26:11 +08:00
Him188
e9591981e6
Add shortcuts, fix type issue
2020-04-13 12:21:22 +08:00
Him188
45784c01a8
Introduce experimental common super interface Identified
for Contact and Bot
2020-04-13 12:13:34 +08:00
Him188
e10e404c6c
Fix MessageSource
2020-04-13 12:12:56 +08:00
Him188
f5a8420231
Speed up image uploading
2020-04-13 11:13:27 +08:00
Him188
f7f3e88878
Add group
and senderName
shortcuts to TempMessage
2020-04-13 10:27:49 +08:00
Him188
0ef844f79b
Fix doc
2020-04-12 20:18:46 +08:00
Him188
da801d7b6d
Support server changing, close #52
2020-04-12 19:17:27 +08:00
Him188
6f5441bf1a
Add MessageChainBuilder.build
2020-04-12 01:42:16 +08:00