Closed BobH233 closed 6 months ago
主代码:
import { wechaty_client, init_bot } from './wechat_bot.js'; import * as lark from '@larksuiteoapi/node-sdk'; import express from 'express'; import bodyParser from 'body-parser'; import http from 'http'; import dotenv from 'dotenv'; dotenv.config(); const expressPort = 3000; const app = express(); const FeishuChallengeResponse = (req, res) => { console.log(req.body); // 检查请求的type是否为"url_verification" if (req.body.type === 'url_verification') { // 响应中原样返回challenge值 const response = { challenge: req.body.challenge }; // 发送响应 res.json(response); } else { // 如果请求的type不是"url_verification",返回错误信息 res.status(400).json({ error: 'Invalid request type' }); } } const eventDispatcher = new lark.EventDispatcher({}).register({ 'im.message.receive_v1': async (data) => { console.log("收到消息了!!!!!!"); } }); async function main() { // init_bot(); app.use(bodyParser.urlencoded({ extended: true })); app.use(express.json()); app.post('/', FeishuChallengeResponse); app.use('/webhook/event', lark.adaptExpress(eventDispatcher)); const server = http.createServer(app).listen(expressPort, async()=>{ if(process.env.LOCALDEV){ console.log(`Starting server_DEV on port ${expressPort}`); }else{ console.log(`Starting server_PROD on port ${expressPort}`); } }); } main();
运行后,向机器人发送代码,能够看到控制台输出收到的负载,但是并没有调用console.log("收到消息了!!!!!!");
console.log("收到消息了!!!!!!");
控制台输出:
➜ ~/Documents/Coding/FeishuForwardBot yarn dev yarn run v1.22.19 $ nodemon main.js [nodemon] 3.0.2 [nodemon] to restart at any time, enter `rs` [nodemon] watching path(s): *.* [nodemon] watching extensions: js,mjs,cjs,json [nodemon] starting `node main.js` [info]: [ 'event-dispatch is ready' ] Starting server_PROD on port 3000 { schema: '2.0', header: { event_id: 'x', token: 'x', create_time: '1704818219853', event_type: 'im.message.receive_v1', tenant_key: 'x', app_id: 'x' }, event: { message: { chat_id: 'x', chat_type: 'p2p', content: '{"text":"1"}', create_time: '1704818219577', message_id: 'om_06f4b2ae7ef8484e85f61b452b342d6b', message_type: 'text', update_time: '1704818219577' }, sender: { sender_id: [Object], sender_type: 'user', tenant_key: '16ef17ec86da975d' } } } { schema: '2.0', header: { event_id: 'x', token: 'x', create_time: '1704818219853', event_type: 'im.message.receive_v1', tenant_key: 'x', app_id: 'x' }, event: { message: { chat_id: 'oc_2de5aadf5942419e63badaccd2375053', chat_type: 'p2p', content: '{"text":"1"}', create_time: '1704818219577', message_id: 'om_06f4b2ae7ef8484e85f61b452b342d6b', message_type: 'text', update_time: '1704818219577' }, sender: { sender_id: [Object], sender_type: 'user', tenant_key: '16ef17ec86da975d' } } } { schema: '2.0', header: { event_id: '6682ace6b9f5f629292b04d0c78667dd', token: 'x', create_time: '1704818031811', event_type: 'im.message.receive_v1', tenant_key: 'x', app_id: 'x' }, event: { message: { chat_id: 'x', chat_type: 'p2p', content: '{"text":"×"}', create_time: '1704818031599', message_id: 'x', message_type: 'text', update_time: '1704818031599' }, sender: { sender_id: [Object], sender_type: 'user', tenant_key: '16ef17ec86da975d' } } }
机器人配置如下,没有设置Encrypt Key
抱歉问了个愚蠢的问题... 修改地址为:https://a0a5-114-246-193-113.ngrok-free.app/**webhook/event** 后,一切正常
主代码:
运行后,向机器人发送代码,能够看到控制台输出收到的负载,但是并没有调用
console.log("收到消息了!!!!!!");
控制台输出:
机器人配置如下,没有设置Encrypt Key