diff --git a/mirai-core-api/src/commonMain/kotlin/message/action/Nudge.kt b/mirai-core-api/src/commonMain/kotlin/message/action/Nudge.kt index 29731e54721..0064b22fc18 100644 --- a/mirai-core-api/src/commonMain/kotlin/message/action/Nudge.kt +++ b/mirai-core-api/src/commonMain/kotlin/message/action/Nudge.kt @@ -38,11 +38,11 @@ public sealed class Nudge { /** * 发送戳一戳消息到 [receiver]. * - * 需要 [使用协议][BotConfiguration.protocol] [MiraiProtocol.ANDROID_PHONE]. + * 需要使用支持的[协议][BotConfiguration.protocol] [MiraiProtocol.ANDROID_PHONE] 或 [MiraiProtocol.IPAD]. 自 2.10 起才支持使用 IPAD 协议发送. * * @param receiver 这条 "戳一戳" 消息的接收对象. (不是 "戳" 动作的对象, 而是接收 "A 戳了 B" 这条消息的对象) * @return 成功发送时为 `true`. 若对方禁用 "戳一戳" 功能, 返回 `false`. - * @throws UnsupportedOperationException 当未使用 [安卓协议][MiraiProtocol.ANDROID_PHONE] 时抛出 + * @throws UnsupportedOperationException 当未使用 [ANDROID_PHONE 协议][MiraiProtocol.ANDROID_PHONE] 或 [IPAD 协议][MiraiProtocol.IPAD] 时抛出 * * @see NudgeEvent 事件 * @see Contact.sendNudge @@ -57,11 +57,11 @@ public sealed class Nudge { /** * 发送戳一戳消息. * - * 需要 [使用协议][BotConfiguration.protocol] [MiraiProtocol.ANDROID_PHONE]. + * 需要使用支持的[协议][BotConfiguration.protocol] [MiraiProtocol.ANDROID_PHONE] 或 [MiraiProtocol.IPAD]. 自 2.10 起才支持使用 IPAD 协议发送. * * @return 成功发送时为 `true`. 若对方禁用 "戳一戳" 功能, 返回 `false`. * - * @throws UnsupportedOperationException 当未使用 [安卓协议][MiraiProtocol.ANDROID_PHONE] 时抛出 + * @throws UnsupportedOperationException 当未使用 [ANDROID_PHONE 协议][MiraiProtocol.ANDROID_PHONE] 或 [IPAD 协议][MiraiProtocol.IPAD] 时抛出 * * @see NudgeEvent 事件 */ diff --git a/mirai-core/src/commonMain/kotlin/MiraiImpl.kt b/mirai-core/src/commonMain/kotlin/MiraiImpl.kt index a294f923bc6..b3627885292 100644 --- a/mirai-core/src/commonMain/kotlin/MiraiImpl.kt +++ b/mirai-core/src/commonMain/kotlin/MiraiImpl.kt @@ -781,8 +781,8 @@ internal open class MiraiImpl : IMirai, LowLevelApiAccessor { } override suspend fun sendNudge(bot: Bot, nudge: Nudge, receiver: Contact): Boolean { - if (bot.configuration.protocol != BotConfiguration.MiraiProtocol.ANDROID_PHONE) { - throw UnsupportedOperationException("nudge is supported only with protocol ANDROID_PHONE") + if ((bot.configuration.protocol != BotConfiguration.MiraiProtocol.ANDROID_PHONE) && (bot.configuration.protocol != BotConfiguration.MiraiProtocol.IPAD)) { + throw UnsupportedOperationException("nudge is supported only with protocol ANDROID_PHONE or IPAD") } bot.asQQAndroidBot()