puppet-whatsapp icon indicating copy to clipboard operation
puppet-whatsapp copied to clipboard

整理目前wechaty尚不支持的功能点,在 wechaty repo 开 feature issue

Open su-chang opened this issue 3 years ago • 5 comments

前提需要了解wechaty 所支持的api情况

  • [x] 梳理目前无法用wechaty实现的功能点,并在wechaty repo中发对应的 feature issue
  • [x] 进一步讨论如何推进 wechaty 支持该功能

su-chang avatar Jan 06 '22 11:01 su-chang

  • 激进的时间预估 2022-01-10
  • 保守的时间预估 2022-01-11

su-chang avatar Jan 07 '22 04:01 su-chang

WhatsApp API 文档: https://docs.wwebjs.dev/global.html

Wechaty 中暂不支持的 WhatsApp 功能

消息相关

WhatsApp 中有一个 Chat 的概念,可以将其转为 message

尚未支持的方法

delete() 删除会话(从会话列表中移除)
getOrder() 获取消息中的订单信息
getPayment() 获取消息中的支付信息
pinned() 消息置顶

新增消息类型

  • ORDER 订单消息
  • BUTTONS_RESPONSE 响应按钮 TODO: 需要考虑如何利用POST兼容 (猜测类似微信的拍一拍,飞书的表情回复)

Related issue see: https://github.com/wechaty/wechaty/issues/2341

联系人相关

  • block() / unblock() 黑名单功能
  • MultiContact 多联系人名片消息

Related issue see: https://github.com/wechaty/wechaty/issues/2342

事件相关

消息相关的事件通知

  • INCOMING_CALL 来电提醒(语音/视频通话,事件可能比消息更合理)

Related issue see: https://github.com/wechaty/wechaty/issues/2343

群相关的事件通知

  • DESCRIPTION 群描述

  • PICTURE 群头像

  • RESTRICT 群约束

Related issue see: https://github.com/wechaty/wechaty/issues/2344

新能力

支持界面控制接口(感觉有点超出了wechaty的范畴了,暂不列issue)

su-chang avatar Jan 10 '22 12:01 su-chang

TODO: 在 wechaty repo 中根据上述 feature 建立 issue,并关联到上述对应内容中。

su-chang avatar Jan 10 '22 13:01 su-chang

我认为chat应该更类似于一个conversion,而不是单个的message

hcfw007 avatar Jan 11 '22 12:01 hcfw007

broadcast 联系人:

 PrivateContact {
    id: {
      server: 'broadcast',
      user: 'status',
      _serialized: 'status@broadcast'
    },
    number: null,
    isBusiness: false,
    isEnterprise: false,
    labels: [],
    name: undefined,
    pushname: undefined,
    sectionHeader: undefined,
    shortName: undefined,
    statusMute: false,
    type: 'in',
    verifiedLevel: undefined,
    verifiedName: undefined,
    isMe: false,
    isUser: false,
    isGroup: false,
    isWAContact: false,
    isMyContact: false,
    isBlocked: false
  }

room description:

whatsapp.on('group_update', noti  => {
  noti.type === WAWebJS.GroupNotificationTypes.DESCRIPTION
})

bung87 avatar Jan 13 '22 05:01 bung87