| 836 | if (db && typeof db.close === "function") { |
| 837 | db.close(); |
| 838 | db = null as any; |
| 839 | } |
| 840 | } catch (error) { |
| 841 | console.error("Failed to close keyword DB:", error); |
| 842 | db = null as any; |
| 843 | } |
| 844 | } |
| 845 | |
| 846 | description: string = `关键词回复管理`; |
| 847 | cmdHandlers: Record<string, (msg: Api.Message) => Promise<void>> = { |
| 848 | keyword, |
| 849 | }; |
| 850 | listenMessageHandler?: ((msg: Api.Message) => Promise<void>) | undefined = |
| 851 | async (message) => { |
| 852 | try { |
| 853 | const text = |
| 854 | message.message || |
| 855 | (message.media && "caption" in message.media |