github aldinokemal/go-whatsapp-web-multidevice v9.7.0

3 hours ago

What's New in v9.7.0

💬 Sticker Replies, MCP Compatibility & Multi-Device Fixes

Version 9.7.0 adds quoted sticker replies and a clean version command for scripts. It improves MCP schema and OAuth compatibility, preserves service availability when one device's connection is replaced, and fixes device/chat selection for group reactions and message revocation.


✨ Features

Quoted Sticker Replies (#867)

  • POST /send/sticker accepts reply_message_id for static and animated stickers.
  • Requests without reply_message_id keep their existing behavior.

Version Command for Scripts (#891)

  • ./whatsapp version prints 9.7.0 followed by a newline and exits.
  • The command skips application initialization, so it does not open databases, create storage directories, connect devices, or print configuration output.

🐛 Bug Fixes

Reactions and Revokes Use the Correct Device and Chat (#903, #905)

  • Resolve the original message within the active device and requested chat before constructing a reaction or revoke.
  • A sender who is also connected to the same GOWA instance no longer causes another device's outgoing copy to supply the wrong IsFromMe value and group participant.

Replaced Connections Stay Isolated (#895)

  • A WhatsApp StreamReplaced event disconnects only the affected device instead of exiting the whole server.
  • Other devices keep running. The affected slot and session are preserved, and clients receive a DEVICE_STREAM_REPLACED websocket event.

MCP OAuth Token Compatibility (#901)

  • Authorization-code and refresh-token exchanges may omit resource; GOWA uses the resource already bound to the grant.
  • Explicit resource values must still match the expected resource.

MCP Schemas Expose Existing Limits (#894)

  • Chat tools advertise limit from 1 to 100 and a non-negative offset.
  • Poll answer counts, forwarding durations, and group-name lengths also expose their existing constraints, allowing clients to validate requests before sending them.

Structured Interactive Buttons in Webhooks (#877)

  • Top-level WhatsApp interactive messages now populate payload.buttons, including supported button IDs, rows, and cards.
  • Existing text summaries remain available.

Read Receipts from Your Linked Devices (#864)

  • Reading a chat on the account's own WhatsApp Web, Desktop, or other linked device now forwards its read/read-self receipt.
  • The existing primary-device filter remains in place for contacts' receipts.

🔧 Technical Improvements

  • Added media storage and cleanup guidance, with previewable age-based cleanup commands and instructions to preserve databases and scheduled attachments (#904).
  • Updated whatsmeow to v0.0.0-20261015105041-df33a485cc46, goquery to v1.13.0, brotli to v1.2.6, and cascadia to v1.3.5.

Upgrade Notes

  • After a connection is replaced, the affected device now stays disconnected until reconnected. Single-device deployments should use the existing reconnect operation instead of relying on the server exiting and a container restart.
  • MCP chat requests with an explicit limit: 0 are now rejected by the schema. Omit limit to use the default, or provide a value from 1 to 100.

What's Changed

Contributors

Full Changelog: v9.6.0...v9.7.0

Don't miss a new go-whatsapp-web-multidevice release

NewReleases is sending notifications on new releases.