refactor: 尝试解决上传不了的问题.

This commit is contained in:
LamGC 2024-01-11 23:25:43 +08:00
parent fefd537981
commit 095394ce62
Signed by: LamGC
GPG Key ID: 6C5AE2A913941E1D
2 changed files with 33 additions and 2 deletions

View File

@ -26,7 +26,7 @@ import java.util.concurrent.*
object OneDriveTransferCenter {
private val executor =
OneDriveTransferTaskExecutor(2, DefaultOneDriveTransferCallback, ArrayBlockingQueue<OneDriveTransferTask>(100))
OneDriveTransferTaskExecutor(1, DefaultOneDriveTransferCallback, ArrayBlockingQueue(100))
fun submitUploadTask(task: OneDriveTransferTask) {
executor.submitTransferTask(task)
@ -197,7 +197,7 @@ class OneDriveTransferTaskExecutor(
threadNum: Int,
private val callback: OneDriveTransferCallback,
private val taskQueue: BlockingQueue<OneDriveTransferTask>,
private val chunkSize: Int = MAX_CHUNK_SIZE
private val chunkSize: Int = 96
) : ThreadPoolExecutor(
threadNum, threadNum, 0, TimeUnit.SECONDS,
ArrayBlockingQueue(50),

View File

@ -57,6 +57,37 @@ class OneDriveTransferExtension(val bot: BaseAbilityBot, val dataFolder: File) :
return objectMapper.readValue(configFile, ExtensionConfig::class.java)
}
fun startToUsage(): Ability = Ability.builder()
.named("start")
.info("查看 OneDrive Transfer 的帮助信息.")
.privacy(Privacy.PUBLIC)
.locality(Locality.USER)
.action {
it.bot().silent().send(
"""
OneDrive Transfer 是一个 Telegram 机器人
可以将 Telegram 中的文件上传到 OneDrive 中转
/login 登录 OneDrive 账户
/logout 登出 OneDrive 账户
/my 查看当前 OneDrive 账户信息
/select_drive 选择 OneDrive 驱动器
/set_path 设置 OneDrive 中转路径
/cancel 取消当前操作仅限 set_path 命令
/start 查看帮助信息
--------------------------------------------
基本用法
1. 先使用 /login 命令按照提示登录要存储文件的 OneDrive 账户
2. 登录完成后执行 /select_drive 选择 OneDrive 驱动器
3. 选好后直接转发文件给机器人就好机器人会自动上传到 OneDrive 中转
文件默认保存在 "Telegram Files/"如果需要修改可以使用 /set_path 命令
""".trimIndent(), it.chatId()
)
}
.build()
fun loginOneDrive(): Ability = Ability
.builder()
.named("login")