koishi-plugin-aka-ai-generator 0.6.6 → 0.6.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.js +34 -6
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -1605,11 +1605,15 @@ ${infoParts.join("\n")}`;
|
|
|
1605
1605
|
taskLockReleased = true;
|
|
1606
1606
|
return "图像处理失败:未能生成图片";
|
|
1607
1607
|
}
|
|
1608
|
+
try {
|
|
1609
|
+
await recordUserUsage(session, styleName, images.length);
|
|
1610
|
+
} catch (err) {
|
|
1611
|
+
logger.error(`记录用户使用统计失败 (用户: ${userId}):`, err);
|
|
1612
|
+
}
|
|
1608
1613
|
const resultMessage = "图像处理完成!";
|
|
1609
1614
|
taskLockReleased = true;
|
|
1610
1615
|
setImmediate(async () => {
|
|
1611
1616
|
try {
|
|
1612
|
-
await recordUserUsage(session, styleName, images.length);
|
|
1613
1617
|
await session.send(resultMessage);
|
|
1614
1618
|
for (let i = 0; i < images.length; i++) {
|
|
1615
1619
|
try {
|
|
@@ -1618,7 +1622,12 @@ ${infoParts.join("\n")}`;
|
|
|
1618
1622
|
new Promise((_, reject) => setTimeout(() => reject(new Error("SendTimeout")), 2e4))
|
|
1619
1623
|
]);
|
|
1620
1624
|
} catch (err) {
|
|
1621
|
-
logger.warn(`图片发送可能超时 (用户: ${userId}): ${err instanceof Error ? err.message : String(err)}`);
|
|
1625
|
+
logger.warn(`图片发送可能超时 (用户: ${userId}, 图片 ${i + 1}/${images.length}): ${err instanceof Error ? err.message : String(err)}`);
|
|
1626
|
+
try {
|
|
1627
|
+
await session.send(`⚠️ 图片 ${i + 1} 发送失败,请重试`);
|
|
1628
|
+
} catch (sendErr) {
|
|
1629
|
+
logger.error(`发送错误通知失败 (用户: ${userId}):`, sendErr);
|
|
1630
|
+
}
|
|
1622
1631
|
}
|
|
1623
1632
|
if (images.length > 1 && i < images.length - 1) {
|
|
1624
1633
|
await new Promise((resolve) => setTimeout(resolve, 1e3));
|
|
@@ -1626,11 +1635,16 @@ ${infoParts.join("\n")}`;
|
|
|
1626
1635
|
}
|
|
1627
1636
|
} catch (err) {
|
|
1628
1637
|
logger.error(`异步发送图片时出错 (用户: ${userId}):`, err);
|
|
1638
|
+
try {
|
|
1639
|
+
await session.send("⚠️ 图片发送过程中出现错误,但积分已扣除。如未收到图片,请联系管理员。");
|
|
1640
|
+
} catch (sendErr) {
|
|
1641
|
+
logger.error(`发送错误通知失败 (用户: ${userId}):`, sendErr);
|
|
1642
|
+
}
|
|
1629
1643
|
} finally {
|
|
1630
1644
|
userManager.endTask(userId);
|
|
1631
1645
|
}
|
|
1632
1646
|
});
|
|
1633
|
-
return
|
|
1647
|
+
return "";
|
|
1634
1648
|
} catch (error) {
|
|
1635
1649
|
if (!taskLockReleased) {
|
|
1636
1650
|
userManager.endTask(userId);
|
|
@@ -1787,10 +1801,14 @@ Prompt: ${prompt}`);
|
|
|
1787
1801
|
if (resultImages.length === 0) {
|
|
1788
1802
|
return "图片合成失败:未能生成图片";
|
|
1789
1803
|
}
|
|
1804
|
+
try {
|
|
1805
|
+
await recordUserUsage(session, COMMANDS.COMPOSE_IMAGE, resultImages.length);
|
|
1806
|
+
} catch (err) {
|
|
1807
|
+
logger.error(`记录用户使用统计失败 (用户: ${userId}):`, err);
|
|
1808
|
+
}
|
|
1790
1809
|
const resultMessage = "图片合成完成!";
|
|
1791
1810
|
setImmediate(async () => {
|
|
1792
1811
|
try {
|
|
1793
|
-
await recordUserUsage(session, COMMANDS.COMPOSE_IMAGE, resultImages.length);
|
|
1794
1812
|
await session.send(resultMessage);
|
|
1795
1813
|
for (let i = 0; i < resultImages.length; i++) {
|
|
1796
1814
|
try {
|
|
@@ -1799,7 +1817,12 @@ Prompt: ${prompt}`);
|
|
|
1799
1817
|
new Promise((_, reject) => setTimeout(() => reject(new Error("SendTimeout")), 2e4))
|
|
1800
1818
|
]);
|
|
1801
1819
|
} catch (err) {
|
|
1802
|
-
logger.warn(`图片合成发送可能超时 (用户: ${userId}): ${err instanceof Error ? err.message : String(err)}`);
|
|
1820
|
+
logger.warn(`图片合成发送可能超时 (用户: ${userId}, 图片 ${i + 1}/${resultImages.length}): ${err instanceof Error ? err.message : String(err)}`);
|
|
1821
|
+
try {
|
|
1822
|
+
await session.send(`⚠️ 图片 ${i + 1} 发送失败,请重试`);
|
|
1823
|
+
} catch (sendErr) {
|
|
1824
|
+
logger.error(`发送错误通知失败 (用户: ${userId}):`, sendErr);
|
|
1825
|
+
}
|
|
1803
1826
|
}
|
|
1804
1827
|
if (resultImages.length > 1 && i < resultImages.length - 1) {
|
|
1805
1828
|
await new Promise((resolve) => setTimeout(resolve, 1e3));
|
|
@@ -1807,11 +1830,16 @@ Prompt: ${prompt}`);
|
|
|
1807
1830
|
}
|
|
1808
1831
|
} catch (err) {
|
|
1809
1832
|
logger.error(`异步发送合成图片时出错 (用户: ${userId}):`, err);
|
|
1833
|
+
try {
|
|
1834
|
+
await session.send("⚠️ 图片发送过程中出现错误,但积分已扣除。如未收到图片,请联系管理员。");
|
|
1835
|
+
} catch (sendErr) {
|
|
1836
|
+
logger.error(`发送错误通知失败 (用户: ${userId}):`, sendErr);
|
|
1837
|
+
}
|
|
1810
1838
|
} finally {
|
|
1811
1839
|
userManager.endTask(userId);
|
|
1812
1840
|
}
|
|
1813
1841
|
});
|
|
1814
|
-
return
|
|
1842
|
+
return "";
|
|
1815
1843
|
} catch (error) {
|
|
1816
1844
|
userManager.endTask(userId);
|
|
1817
1845
|
throw error;
|