Him188
eb80a4836b
Remove all unstable kotlin.Duration usages
2021-05-09 00:54:48 +08:00
Him188
a7a4879d05
Improve logging
2021-05-09 00:54:48 +08:00
Him188
5fa54114c1
Fix sso and event logging
2021-05-09 00:54:48 +08:00
Him188
971685a2b0
Fix state resume
2021-05-09 00:54:48 +08:00
Him188
95d634233c
Close bot if first login failed
2021-05-09 00:54:48 +08:00
Him188
35a6d12dde
Test: network scope closed on bot close
2021-05-09 00:54:48 +08:00
Him188
062492c546
Test: NettyEndlessReconnectionTest
2021-05-09 00:54:48 +08:00
Him188
e584bc8ee8
Test: state tests
2021-05-09 00:54:48 +08:00
Him188
8db8e2fb03
Implement lifecycle management for network
2021-05-09 00:54:48 +08:00
Him188
f9ddf74d8e
Extract sync logic
2021-05-09 00:54:48 +08:00
Him188
076cd4997d
BotOfflineEventMonitor
2021-05-09 00:54:48 +08:00
Him188
3806d7ce78
fix componentName and smartToString
2021-05-09 00:54:48 +08:00
Him188
c35c2c97c8
CombinedStorageTest
2021-05-09 00:54:48 +08:00
Him188
b91bbfd2b8
Add NetworkHandlerFactory and tests for NetworkHandler
2021-05-09 00:54:48 +08:00
Him188
4f77abca87
Components misc implementations including (ABI changes):
...
- ComponentStorage and its impls
- ContactCacheService
- ContactUpdater
- HeartbeatProcessor
- SsoProcessor
- QQABot
2021-05-09 00:54:48 +08:00
Him188
7f2f1e9759
Rearrange network tests
2021-05-09 00:54:48 +08:00
Him188
9286d2124e
Add utils for tests
2021-05-09 00:54:48 +08:00
Him188
035085cf45
Remove state CONNECTION_LOST
2021-05-09 00:54:48 +08:00
Him188
84fa460b32
BotOnlineEvent, BotReloginEvent, BotOfflineEvent
2021-05-09 00:54:48 +08:00
Him188
d70475b8ba
Do not resume state while it is already closed
2021-05-09 00:54:48 +08:00
Him188
0e1b9da5e4
Fix test KeepAliveNetworkHandlerSelectorTest
2021-05-09 00:54:48 +08:00
Him188
79112bc98d
Fix LongMessageInternal missing parameter (due to merge)
2021-05-09 00:54:48 +08:00
Him188
35b80dc700
Processors
2021-05-09 00:54:48 +08:00
Him188
dd1b7404ea
IDEA removed my import
2021-05-09 00:54:48 +08:00
Him188
9db3a5ef4f
Rearrange packages for component system
2021-05-09 00:54:48 +08:00
Him188
0443fe4576
Prefer generified outgoing packets in all factories
2021-05-09 00:54:48 +08:00
Him188
82ad953b2b
Continuing implement states for NetworkHandler
2021-05-09 00:54:48 +08:00
Him188
03e12eb287
fix build
2021-05-09 00:54:48 +08:00
Him188
9ac0a8715c
Integrate ServerList into component system
2021-05-09 00:54:48 +08:00
Him188
3ec8a94096
ContactUpdater and ContactCacheService
2021-05-09 00:54:48 +08:00
Him188
51c1450202
ComponentStorage
2021-05-09 00:54:48 +08:00
Him188
05b2bfe059
Rearrange packages
2021-05-09 00:54:48 +08:00
Him188
70551167ba
States and connection impl
2021-05-09 00:54:48 +08:00
Him188
1fef89cf1c
Add state observer
2021-05-09 00:54:48 +08:00
Him188
8786f12d5d
Add NetworkHandler.isOk to avoid state == OK
2021-05-09 00:54:48 +08:00
Him188
4446479e80
Make QQAndroidClient lighter
2021-05-09 00:54:48 +08:00
Him188
f2b236341a
Decouple SSO login processor
2021-05-09 00:54:48 +08:00
Him188
997ad1eb63
Rearrange QQAndroidBot
2021-05-09 00:54:48 +08:00
Him188
1d053bd1bd
Extract netty utils
2021-05-09 00:54:48 +08:00
Him188
90f5e27b5f
Add AbstractKeepAliveNetworkHandlerSelectorTest
2021-05-09 00:54:48 +08:00
Him188
382c351e08
Implement NetworkHandlerSelector, serverList, and implement them into Bot
2021-05-09 00:54:48 +08:00
Him188
ff80434d2d
Migrate network logger and old sendWithoutExpect and sendAndExpect
2021-05-09 00:54:48 +08:00
Him188
840dd19dd0
Move EMPTY_BYTE_ARRAY to mirai-core-utils
2021-05-09 00:54:48 +08:00
Him188
097a478999
Relocates netty files to correct packages
2021-05-09 00:54:48 +08:00
Karlatemp
5f0b432220
NettyTestUnit
2021-05-09 00:54:48 +08:00
Him188
e293195391
Set state to StateClosed
appropriately and update docs
2021-05-09 00:54:48 +08:00
Him188
a143340141
Buildscript: Fix test artifacts included in main sourceset
2021-05-09 00:54:48 +08:00
Him188
d01f71ff8b
Remove rubbish; fix build; add todos
2021-05-09 00:54:48 +08:00
Him188
b844efb072
New network: framework infrastructure
2021-05-09 00:54:48 +08:00
sandtechnology
028bfa483c
Introduce MemberNick class and correct nameCard decoding, Fix #1151 ( #1231 )
...
* Introduce MemberNick class and correct nameCard decoding, Fix #1151
* Update comment for better understanding
Co-authored-by: Him188 <Him188@mamoe.net>
* Change var name in method for better understanding
Co-authored-by: Him188 <Him188@mamoe.net>
* Fix build
Co-authored-by: Him188 <Him188@mamoe.net>
2021-05-06 17:54:52 +08:00
sandtechnology
e459c76f92
OnlinePush.SidTicketExpired: Refresh token and register online ( #1242 )
...
* OnlinePush.SidTicketExpired: Refresh token and register online
* Also update key map
* Update package name to internal
Co-authored-by: Him188 <Him188@mamoe.net>
* Fix build
Co-authored-by: Him188 <Him188@mamoe.net>
2021-05-05 00:26:10 +08:00
Him188
6854252c77
Old network: re-init client on BotOfflineEvent.Force. #1205 for 2.7-M1
2021-05-04 12:47:27 +08:00
Him188
84d444843d
Old network: delete account secrets on BotOfflineEvent.Force. #1205 for 2.7-M1
2021-05-04 12:47:22 +08:00
Him188
57eb716e31
Add inline BotFactory.newBot
for Kotlin DSL. fix #1233 ( #1234 )
2021-05-02 13:51:32 +08:00
sandtechnology
0baaf9d587
Correct the seq logic, fix #1094 ( #1232 )
2021-05-02 13:51:21 +08:00
sandtechnology
db4c41f84a
Rework seq system ( #1230 )
...
* Rework seq system, should help #1209
* Use non-blocking (CAS) implement
* Making next seq code more clear for reading
* Fix mistake
2021-05-02 13:50:24 +08:00
Him188
70dc0a4da6
Remove kotlin.time.Duration usages ( #1215 )
...
* Remove kotlin.Duration usages
* Fix build
* update submodule console ref
2021-04-27 11:49:30 +08:00
sandtechnology
4e070baf34
Fix duplicate register packet ( #1214 )
2021-04-25 11:37:12 +08:00
Karlatemp
d3dc756a50
Drop empty UnsupportedMessage; fix #1210
2021-04-24 10:18:06 +08:00
Him188
5dcccd1402
Introduce base class for tests AbstractTest
2021-04-20 12:47:57 +08:00
Him188
6d58fb5514
Ensure fast login succeed, fix #1199
2021-04-18 14:37:16 +08:00
Karlatemp
28a8b8303a
Support receive nested ForwardMessages ( #1196 )
...
* Support receive nested ForwardMessages
* Tests
2021-04-17 16:09:32 +08:00
Karlatemp
0c93aeb425
Add RefineContext for refining ( #1195 )
...
* Add RefineContext for refining
* Add RefineContext argument
* Fix build
2021-04-17 11:45:02 +08:00
Karlatemp
83fa78b50d
Find nick from source; fix #1137
2021-04-17 09:28:11 +08:00
Hoshino Tented
1bf1e3686f
添加管理员修改功能 ( #1178 )
...
* add modifyAdmin
* 修复赋予相同权限时不会抛错并且仍然广播事件的 bug
* fix test failed
* fix test failed AGAIN
* fix myself
* 是这样吗
* i am so sorry :(
* fix fixed bug
2021-04-16 08:33:07 +08:00
Him188
f3d3130f2d
Support login cache and login without password. close #1158
2021-04-10 18:46:39 +08:00
Karlatemp
509c0d3d06
Fix mute all not working; Fix #1181
2021-04-09 19:19:03 +08:00
Him188
8d3a4fbf5b
Deprecate RemoteFile.moveTo(String)
for ambiguous behavior ( #1180 )
2021-04-09 18:33:12 +08:00
Him188
ce95d8fdce
Fix RemoteFile.resolveById, fix #1177
2021-04-09 07:47:51 +08:00
Him188
d4ee81c79a
Fix potential memory leak with struct ByteReadPacket
2021-04-08 22:42:24 +08:00
Him188
951ddc3138
Declare type explicitly for IDE inference issue
2021-04-08 18:07:21 +08:00
Him188
45c6adf956
Declare type explicitly for IDE inference issue
2021-04-08 13:15:24 +08:00
Him188
344c54531d
Declare type explicitly for IDE inference issue
2021-04-08 13:13:23 +08:00
Him188
7be14f809c
Fix build warnings
2021-04-08 12:44:58 +08:00
Him188
7feeaee1ca
Refining Messages without suspension ( #1167 )
...
* Introduce `RefinableMessage.tryRefine` to refine without suspension.
* Extract `RefinableMessage` to separate file
* Always use `Bot` on `List<MsgComm.Msg>.toMessageChain`
* Introduce `MessageRefiner` and ensure MessageChain refined after transformation. Fix #1156 , fix #1157
* Add basic tests
* Refine forward message contents
* Refine long message contents
* Move refinement from message internals to MiraiImpl public APIs
* Comment out unused `toMessageChainOffline`
* refinement tests part
* refinement tests part
* Full tests and minor internal improv.s
* Fix tests
* Fix compile
2021-04-08 11:59:16 +08:00
Hoshino Tented
a085ab26c8
fix #1155 ( #1170 )
...
* fix #1155
* fix unmute
* add durationSeconds check for mute
* fix stupid code
* fix me
2021-04-07 17:34:45 +08:00
sandtechnology
5d1395a78c
Fix key refresh failed when refresh again and update dumped data ( #1169 )
...
* Fix key refresh failed when logged with fast login
* Update dumped data and remove outdated t511 list
* Fix key refresh again
* Fix naming and support multi bot case
* Remove useless code
* Fix key refresh again, remove useless default value (ksid)
2021-04-07 12:12:13 +08:00
Him188
bb5c85965a
Simple test: MockBot
2021-04-07 00:59:08 +08:00
Karlatemp
b227f719a2
Fix kt compiler errors ( #1159 )
...
* Fix kt compiler errors
* Revert "Fix compiler bug, fix #1136 "
This reverts commit 39f6c168
* Fix log style
Co-authored-by: Him188 <Him188@mamoe.net>
2021-04-05 22:41:26 +08:00
AdoptOSS
21e8852e0f
buildscript: fix task not found errors when android sdk not available ( #1161 )
...
* buildscript: fix task not found errors when android sdk not available
* fix: this shadowed by run
* cleanup: code style
* improve: avoid breaking index map
2021-04-05 22:35:38 +08:00
Him188
7521e6d17f
Rename RichMessageOrigin
to MessageOrigin
( #1116 )
...
* Rename `RichMessageOrigin` to `MessageOrigin`
* apiDump
* Change `MessageOrigin.origin` parameter type from `RichMessage` to `SingleMessage`;
Rename `RichMessageKind` to `MessageOriginKind`
* Make MessageOriginKind serializable and update docs
* Ensure binary compatibility with <2.6 and provide migration helpers
* apiDump
2021-04-04 00:31:33 +08:00
Him188
39f6c1680c
Fix compiler bug, fix #1136
2021-04-04 00:00:32 +08:00
Him188
caf9eb06ad
Fix package name of StrangerImpl
2021-04-03 23:17:00 +08:00
Him188
50e60cc4fe
Use system property mirai.unknown.image.type.logging
to enable logging on unknown image type, helps #1111
2021-04-03 23:07:41 +08:00
Him188
cccdb3cdf2
Update docs for messages ( #1142 )
...
* Update docs for messages
* Update docs for messages
* Update docs for messages
* Update docs for messages
* Update docs/Messages.md
Co-authored-by: Karlatemp <karlatemp@vip.qq.com>
* Update mirai-core-api/src/commonMain/kotlin/message/data/Message.kt
Co-authored-by: Karlatemp <karlatemp@vip.qq.com>
* Update docs for messages
* Update docs for messages
* Revert inappropriate changes
* Fix doc
Co-authored-by: Karlatemp <karlatemp@vip.qq.com>
2021-04-03 22:39:55 +08:00
Him188
ea1f43b9c5
Fast login ( #1154 )
...
* wtlogin10
* Fast login Packet Implement (#1125 )
* Correct group syncing logic again, Fix #1120
* Implement fast login packet, thanks to MiraiGo
* Delete duplicated tlv
* Refresh Token when exchanging and solve connection dropping issue (#1128 )
* Correct group syncing logic again, Fix #1120
* Implement fast login packet, thanks to MiraiGo
* Delete duplicated tlv
* Schedule token exchanging every 10 minutes, solve connection dropping issue
* Refresh Token when exchanging, and correct token expire time
* Remove useless params for doFastLogin
* Fix missed register and tgt update (#1131 )
* Correct group syncing logic again, Fix #1120
* Implement fast login packet, thanks to MiraiGo
* Delete duplicated tlv
* Schedule token exchanging every 10 minutes, solve connection dropping issue
* Refresh Token when exchanging, and correct token expire time
* Remove useless params for doFastLogin
* Fix missed register and tgt update
* Add login lock
* Add login lock
* Remove key refresh
* Remove heartbeat period override
* Login: Update tlv and solve constant connection dropping issue (#1150 )
* Correct group syncing logic again, Fix #1120
* Implement fast login packet, thanks to MiraiGo
* Delete duplicated tlv
* Schedule token exchanging every 10 minutes, solve connection dropping issue
* Refresh Token when exchanging, and correct token expire time
* Remove useless params for doFastLogin
* Fix missed register and tgt update
* Update tlv, add tlv11d and tlv11a decoding
* Add stat heartbeat, solve constant connection dropping issue
* Update apidump for new configuration
* Add comment for statHeartbeatPeriodMillis
* Change old naming
* Add since version
Co-authored-by: Him188 <Him188@mamoe.net>
Co-authored-by: sandtechnology <20417547+sandtechnology@users.noreply.github.com>
2021-04-03 22:31:14 +08:00
Karlatemp
f6fd4de14b
Postpone error reporting in parsing in NewContact
( #1147 )
...
* Add `ParseErrorPacket` for postpone error report
* Continue to parse even if an error occurs
2021-04-03 22:17:49 +08:00
Karlatemp
6e914f6941
Fix forward display ( #1148 )
2021-04-03 22:12:14 +08:00
Him188
3f807353b3
Remove UNSUPPORTED_MERGED_MESSAGE_PLAIN, fix #1119
2021-03-30 12:16:08 +08:00
Him188
cea4d23d7f
Create OtherClientInfo from known information, fix #1109
2021-03-30 12:14:20 +08:00
Him188
fc70bb9ed8
Remove type definition to help compatibility with Kotlin 1.5
2021-03-29 23:59:03 +08:00
sandtechnology
70bbfcf786
Correct group syncing logic again, Fix #1120 ( #1123 )
2021-03-28 22:48:38 +08:00
Him188
de170325c9
Merge branch 'fix_1118_empty_listFiles' into dev
2021-03-28 19:32:44 +08:00
Him188
174ca300d6
Fix empty listFiles for child directories, fix #1118
2021-03-27 15:39:46 +08:00
Him188
430c2c59ad
Support UnsupportedMessage ( #1112 )
...
* Support UnsupportedMessage
* Fix serialize
* `UnsupportedMessage.contentToString`: use `struct.contentHashCode()`
Co-authored-by: Karlatemp <karlatemp@vip.qq.com>
2021-03-26 23:54:17 +08:00
Him188
c47535289a
Merge pull request #1115 from mamoe/transform_special_messages
...
Move Dice to MarketFace conversion from `SendMessageHandler.transformSpecialMessages`...
2021-03-26 20:36:21 +08:00
Him188
8d25025d24
Support decode Dice sent by TIM PC clients
2021-03-26 20:34:32 +08:00
Him188
efc6eda312
Move Dice to MarketFace conversion from SendMessageHandler.transformSpecialMessages
to MessageChain.toRichTextElems
to enable conversions for ForwardMessage
2021-03-26 19:54:11 +08:00
Karlatemp
a5e85f443e
Try fix forward message display ( #1052 )
...
fix https://github.com/mamoe/mirai/issues/1052#issuecomment-805600071
2021-03-25 00:01:04 +08:00
Him188
9f52a26fbd
Fix FileMessage mirai code
2021-03-20 22:31:12 +08:00