UNPKG

progressive-chatgpt-bot

Version:

A progressive ChatGPT feishu bot, made to assist my girlfriend's work.

118 lines 2.55 kB
import * as lark from '@larksuiteoapi/node-sdk'; export { lark }; /** * Get lark client * * @param setting * @returns */ export function getLarkClient(setting) { return new lark.Client({ appId: setting.feishuAppId, appSecret: setting.feishuAppSecret, disableTokenCache: false, }); } /** * Reply message * * @param client * @param messageId * @param content * @returns */ export async function reply(client, messageId, content) { try { return await client.im.message.reply({ path: { message_id: messageId, }, data: { content: JSON.stringify({ text: content, }), msg_type: 'text', }, }); } catch (e) { console.log('failed to reply message', e, messageId, content); } } /** * Build progressive message card * * @param content * @returns */ export function buildProgressiveCard(content) { return { config: { wide_screen_mode: true, }, header: { template: 'orange', title: { content: ' 📜 Please wait, I\'m typing ...', tag: 'plain_text', }, }, i18n_elements: { zh_cn: [ { tag: 'div', text: { content, tag: 'lark_md', }, }, ], }, }; } /** * Replay an interactive card * * @param messageId * @param card * @returns */ export async function replyCard(client, messageId, card) { try { return await client.im.message.reply({ data: { content: JSON.stringify(card), msg_type: 'interactive', }, path: { message_id: messageId, }, }); } catch (e) { console.log('reply card error', e, messageId, card); } } /** * Replay an interactive card * * @param messageId * @param card * @returns */ export async function editCard(client, messageId, card) { try { return await client.im.message.patch({ path: { message_id: messageId, }, data: { content: JSON.stringify(card), }, }); } catch (e) { console.log('edit message error', e, messageId, card); } } //# sourceMappingURL=lark.js.map