Skip to content

Releases: photon-hq/vercel-chat-adapter-imessage

chat-adapter-imessage v3.2.0

Choose a tag to compare

@photon-action-bot photon-action-bot released this 27 Jul 19:31

New Features

  • Added webhookVerifier for trusted forwarding gateways. 🔐 You can now verify incoming iMessage webhooks yourself, reject bad requests, accept the original body, or return a verified replacement body before parsing.

Bug Fixes

  • Webhook verification now follows one consistent path for Spectrum signatures and trusted forwarders. Failed custom verification returns 401 and does not process the message.

Improvement

  • Updated webhook docs and setup errors to make it clear that you need either IMESSAGE_WEBHOOK_SECRET or webhookVerifier. Custom verifiers take priority when both are configured.

Version: 3.2.0

chat-adapter-imessage v3.1.0

Choose a tag to compare

@photon-action-bot photon-action-bot released this 25 Jul 03:41

New Features

  • Added lazy Spectrum Cloud credentials, so apps can fetch projectId and projectSecret from a broker only when the adapter first runs.
  • Inbound iMessage tapbacks now show up as Chat SDK reactions, with standard tapbacks normalized and custom reaction strings still passed through. ✨

Bug Fixes

  • Inbound iMessage replies now unwrap their nested text and attachments correctly, instead of showing up empty or malformed.

Improvement

  • Release publishing now has the package write permission it needs, making automated releases more reliable.

Version: 3.1.0

chat-adapter-imessage v3.0.1

Choose a tag to compare

@photon-action-bot photon-action-bot released this 14 Jul 19:32

Improvement

  • Switched from the all-in-one spectrum-ts package to @spectrum-ts/core and @spectrum-ts/imessage (1506811). This keeps the adapter focused on iMessage and avoids pulling in extra providers like Slack or Telegram. ✨

  • Updated the migration docs to point users at the new Spectrum packages instead of the umbrella dependency.


Version: 3.0.1

chat-adapter-imessage v3.0.0

Choose a tag to compare

@photon-action-bot photon-action-bot released this 13 Jul 22:55
cab6ae9

Breaking Changes

  • Local/on-device mode has been removed. local: true or IMESSAGE_LOCAL set to anything except "false" now throws, so use Spectrum Cloud or a self-hosted gRPC endpoint instead.
  • Remote credentials are now required. Apps that relied on the old implicit local default must provide IMESSAGE_PROJECT_ID + IMESSAGE_PROJECT_SECRET, explicit clients, or IMESSAGE_SERVER_URL + IMESSAGE_API_KEY.
  • The exported iMessageAdapterLocalConfig type was removed.

Bug Fixes

  • Group events like member changes, renames, avatars, and typing updates are no longer forwarded as empty bot messages. This fixes phantom inbound messages from newer spectrum-ts versions.

Improvement

  • Upgraded and pinned spectrum-ts to 10.0.0, keeping the adapter aligned with the current Spectrum API.
  • Removed the local-mode code path and optional native dependency complexity, making Vercel and remote deployments simpler and easier to bundle.
  • Patched vulnerable transitive dev dependencies, including Vite, esbuild, and OpenTelemetry. ✨

Version: 3.0.0

chat-adapter-imessage v2.2.1

Choose a tag to compare

@photon-action-bot photon-action-bot released this 13 Jul 02:06

Bug Fixes

  • Fixed iMessage replies in cold Vercel Workflow callbacks. The adapter now builds the Spectrum app on demand, so replies work even when initialize() was not run first.

  • Fixed replies for setups with multiple iMessage sending lines. Thread IDs now preserve the sending line when available, so cold replies can resolve the right chat instead of failing with a misleading error.

Improvement

  • Added tests for cold-start replies, cold-cache sending-line recovery, and legacy thread ID compatibility. ✨

Version: 2.2.1

chat-adapter-imessage v2.2.0

Choose a tag to compare

@photon-action-bot photon-action-bot released this 04 Jul 03:21

New Features

  • Added richer iMessage sends: sendEffect, sendMiniApp, sendVoice, and setBackground. Bots can now send native effects, mini-app cards, voice notes, and set or clear chat wallpaper. ✨

  • Added more message controls: deleteMessage, removeReaction, markRead, fetchMessage, and openDM. This covers unsending, retracting session-added tapbacks, marking messages read, fetching one message by ID, and starting a DM from a handle.

Improvement

  • Markdown-typed outbound messages now render as native iMessage styled text instead of being flattened to plain text. Plain strings and { raw } still stay plain, so accidental * or _ characters are not reformatted.

  • Exported helper types and resolvers for the new effects, mini-app, voice, and background APIs, making the new iMessage-specific features easier to use from app code.


Version: 2.2.0

chat-adapter-imessage v2.1.0

Choose a tag to compare

@photon-action-bot photon-action-bot released this 03 Jul 17:05

New Features

  • Webhook-only replies can now work for both DMs and group chats. The adapter rebuilds the iMessage thread from its chat GUID, so unseen group threads are no longer automatically blocked.

Improvement

  • Upgraded to spectrum-ts v8.2.1 and refreshed related Chat SDK dependencies. This keeps the adapter aligned with the current Spectrum API.

  • Cold sends now use space.get(chatGuid) instead of rebuilding DMs from phone numbers. This makes thread resolution more consistent, though multi-line iMessage setups may still need the thread to be received first. ✨


Version: 2.1.0

chat-adapter-imessage v2.0.0

Choose a tag to compare

@photon-action-bot photon-action-bot released this 29 Jun 22:10

Breaking Changes

  • The package is now published as @photon-ai/chat-adapter-imessage, so installs and imports need to use the new scoped name. Existing chat-adapter-imessage imports should be updated before upgrading.

Improvement

  • Updated the README examples so installation and usage snippets point to the new package name. ✨

Version: 2.0.0

chat-adapter-imessage v1.1.0

Choose a tag to compare

@photon-action-bot photon-action-bot released this 25 Jun 06:23

New Features

  • Added channelIdFromThreadId(threadId) for the iMessage adapter. It returns the thread ID as-is, so apps can ask for a channel ID and still work cleanly with iMessage threads. ✨

Improvement

  • Updated the release workflow to build and publish with Bun instead of pnpm. This keeps publishing aligned with the repo’s current tooling.

Version: 1.1.0

chat-adapter-imessage v1.0.0

Choose a tag to compare

@photon-action-bot photon-action-bot released this 05 Jun 18:34

Key Features

  • Run iMessage bots through Chat SDK. chat-adapter-imessage lets a Chat SDK bot receive and reply to iMessage conversations using the same adapter pattern as other chat platforms.

  • Choose cloud, self-hosted, or local mode. Use Spectrum Cloud for serverless deployments, connect to your own gRPC iMessage server, or run locally on macOS for on-device iMessage access.

  • Receive messages by webhook or gateway listener. Webhooks give Spectrum Cloud users a simple serverless path, while the gateway listener supports real-time inbound messages across supported modes.

  • Send messages and attachments. The adapter can post text and file uploads into iMessage threads, with Markdown converted into clean plain text that works naturally in iMessage.

  • Support common iMessage actions. Remote mode supports tapback reactions, message edits, typing indicators, and limited modal flows by turning Chat SDK selects into native iMessage polls.

Highlights

  • Built for practical deployments. Environment-based configuration makes it easy to move between local development, Spectrum Cloud, and self-hosted setups without rewriting bot code.

  • Webhook deliveries are verified. Spectrum Cloud webhook requests are checked with signed HMAC headers and timestamp validation before they are routed into your bot.

  • Good DM behavior in serverless flows. The adapter can rebuild DM threads from their address, so bots can reply to webhook-delivered direct messages without needing a live gateway session.

  • Initial 1.0.0 release. This release establishes the core iMessage adapter surface for Chat SDK, powered by spectrum-ts. ✨


Version: 1.0.0