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.
Files changed (2) hide show
  1. package/lib/index.js +34 -6
  2. 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 resultMessage;
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 resultMessage;
1842
+ return "";
1815
1843
  } catch (error) {
1816
1844
  userManager.endTask(userId);
1817
1845
  throw error;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "koishi-plugin-aka-ai-generator",
3
3
  "description": "自用AI生成插件(GPTGod & Yunwu)",
4
- "version": "0.6.6",
4
+ "version": "0.6.7",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "files": [