Using the SDK, you can craft messages with text and/or media attachments and send them to other participants in your Conversation.
If you'd like to send your Message as a one-shot method call, you can use this basic method.
We also provide a more flexible method that allows you to programmatically build your message. This method is more robust and is typically ideal for most use cases.
The Message Builder class allows you to build a new text and/or media Message and makes the Message ready to be sent to the Conversation.
When creating the MessageBuilder
object, you'll set each property of the message individually. For example, you'll set the body and the message attributes separately.
You can add photos, videos, and other types of media files to your Conversation. Media is displayed seamlessly between all participating channels.
To add a media Message (i.e. photos, videos) to your Conversation, you'll need to create a Message and add a media file, filename and content type to the Message Builder.
Each SDK accepts media input differently:
For JS, use:
String
or Node.js
Buffer
containing a media byte stream
filename
,
content-type
,
size
, and all required
FormData
information
For iOS, use:
InputStream
NSInputStream-compliant
stream
NSData
buffer
For Android, use:
java.io.InputStream-compliant
stream
The maximum combined size of attachments is 150 MB.
You can also attach multiple media items to a single message by using the Message Builder.
You can get a short-lived, temporary URL to download the media content in a Conversation.
If a message has more than one attachment, an array of media Messages can be retrieved, but it has to match the specific category of media.
media
is currently the only category available
You can use your preferred method to retrieve the content from the temporary URL and render it in your UI.
Conversations is a cross-channel messaging product, so each channel has a different set of limitations about incoming media files. Please refer to theMedia Limits documentation for channel-specific information and supported file types.
Media content is encrypted and can not be downloaded directly. When required, only authenticated users can generate temporary/expiring URLs to download the media content. The temporary URLs are valid for 300 seconds, after which a new temporary URL must be requested.
Let's learn other features in Twilio Conversations: