You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用whatsapp-web.js给WhatsApp群组发送消息?

用whatsapp-web.js向WhatsApp群组发送消息的修改方案

原代码是给个人号码发消息,改成给群组发的核心区别在于群组的Chat ID格式是[群组ID]@g.us,而个人账号的Chat ID是[号码去掉+]@c.us。下面给你几种实用的实现方式:

方法1:直接用已知的群组ID发送

如果你已经拿到群组ID(可以从WhatsApp网页版的聊天URL里提取,比如https://web.whatsapp.com/chat/[群组ID]),直接替换Chat ID即可:

client.on('ready', () => {
  console.log('Client is ready!');

  // 群组消息内容
  const text = "Hey everyone!";

  // 群组Chat ID,格式为 [群组ID]@g.us
  const groupChatId = "123456789012345678@g.us";

  // 发送消息
  client.sendMessage(groupChatId, text);
});

方法2:通过群组名称搜索并发送

如果不知道群组ID,可以通过群组名称匹配获取Chat ID,建议用独特的群组名避免重名匹配错误:

client.on('ready', async () => {
  console.log('Client is ready!');

  const groupName = "我的好友群";
  const text = "各位,这是一条测试消息!";

  // 获取所有聊天会话
  const chats = await client.getChats();
  // 筛选出目标群组
  const groupChat = chats.find(chat => chat.isGroup && chat.name === groupName);

  if (groupChat) {
    // 直接用序列化后的Chat ID发送消息
    await client.sendMessage(groupChat.id._serialized, text);
    console.log("消息已发送到群组");
  } else {
    console.log("未找到指定群组");
  }
});

方法3:先列出所有已加入的群组,获取目标ID

如果不确定群组名称或ID,可以先打印所有已加入的群组信息,找到目标ID后再用方法1发送:

client.on('ready', async () => {
  console.log('Client is ready!');

  // 获取所有聊天会话
  const chats = await client.getChats();
  // 筛选出所有群组
  const groups = chats.filter(chat => chat.isGroup);

  console.log("已加入的群组列表:");
  groups.forEach(group => {
    console.log(`群组名称:${group.name},Chat ID:${group.id._serialized}`);
  });
});

注意事项

  • 确保你的客户端账号已经加入目标群组,否则无法发送消息
  • group.id._serialized就是格式化好的Chat ID,直接使用即可,无需手动拼接

内容的提问来源于stack exchange,提问作者yrsdi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 14:02:47