Repository navigation
Add send and receive messages guide - #819
Conversation
One guide for sending SMS/MMS and handling incoming messages across SWML, Relay, and REST, with keyword routing and delivery tracking. Links it from the messaging overview, WhatsApp send page, Server SDKs Relay client guide, and llms.txt. Closes #766
|
Review verdict: Questions (three items to settle before merge; branch is also behind main) Checked against prime-rails main ( Questions
Minor
|
- Add the read state for WhatsApp messages to the state table - Document REST MMS media limit as 7 and Relay as 8, matching the backend - Add the 2.0.5 dial() signature Note and fix the TypeScript REST gap wording - Show the Relay delivery listener in full programs, registered before any await
|
@Manny-r31 thanks for the review. Merged
Checks run: |
Summary
Adds one guide for sending SMS/MMS and handling incoming messages, following the machine-detection guide's approach-first layout. Closes #766.
messaging/send-and-receive-messages. It covers:send_sms, reply to incoming texts withreply, route replies by keyword withswitchandrequest, and track delivery withstatus_url.send_message/sendMessage,on_message/onMessage, a Relay Application topic on the number, and delivery listeners.POST /api/messaging/messages,status_callbackwithcustom_variables, and the status callback fields.guides/relay-client), andfern/llms.txt.Notes for reviewers
@signalwire/sdk@2.0.5has no messaging SWML methods and no REST method to send a message (itsRestClienthas nomessagesresource; 3.x adds one). Those two sections are Python + YAML/JSON and Python + cURL; TypeScript readers are pointed to the hosted script and the RelaysendMessage()section.send_message, SWMLsend_sms, and SWMLreplyaccept 8. The guide documents each surface's real limit. This looks unintended and needs an engineering decision. The REST reference'smediadescription still says "Maximum 8 items" and is not changed here.recordCall(), but 2.0.5 and 3.7.1 name builder methods after the schema verb (record_call(),send_sms()). Separate fix.add_verb("reply", …)withschema_validation=False, and the code comments say so. Neither SDK ships the messaging SWML schema.@signalwire/realtime-api.guides/send-messagesstub isn't in the nav.sendMessageexample usesto/frominstead oftoNumber/fromNumber. That's an SDK fix.calling.dialno longer type-checks, since it becomes positionaldial(from, to, {...}). Handle it in the cross-guide version bump, not here.Verification
yarn fern-md-check: all MDX files valid.signalwire-sdk==3.4.1and@signalwire/sdk@2.0.5.py_compileandpyflakes; TypeScript passestsc --strict.slug:frontmatter.Preview
/docs/platform/messaging/send-and-receive-messages/docs/platform/messaging/docs/platform/messaging/whatsapp/send-messages/docs/server-sdks/guides/relay-client