

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 上传要与之一起发送的媒体文件 WhatsApp
<a name="managing-media-files-s3"></a>

当您发送或接收媒体文件时，必须将其存储在 Amazon S3 存储桶中并从中上传或检索 WhatsApp。Amazon S3 存储桶必须 AWS 账户 与 AWS 区域 您的 WhatsApp 企业账户 (WABA) 相同。这些说明展示了如何创建 Amazon S3 存储桶、上传文件以及如何构建文件的 URL。有关 Amazon S3 命令的更多信息，请参阅在 [AWS CLI 中使用高级别 (s3) 命令](https://docs.aws.amazon.com/cli/latest/userguide/cli-services-s3-commands.html)。有关配置的更多信息 AWS CLI，请参阅*[AWS Command Line Interface 用户指南](https://docs.aws.amazon.com/cli/latest/userguide/)*[中的配置 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) 和 [A *[mazon S3 用户指南](https://docs.aws.amazon.com/AmazonS3/latest/userguide/)*中的创建存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html)和[上传对象](https://docs.aws.amazon.com//AmazonS3/latest/userguide/upload-objects.html)。

**注意**  
WhatsApp 在删除媒体文件之前将其存储 30 天，请参阅*WhatsApp 商业平台云 API 参考*中的[上传媒体](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#upload-media)。

您也可以为媒体文件创建[预签名 URL](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-presigned-url.html)。使用预签名 URL，您可以授予对对象的限时访问权限并上传它们，而无需另一方拥有 AWS 安全证书或权限。

1. 要创建 Amazon S3 存储桶，请使用[创建存储桶命令](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/create-bucket.html) AWS CLI 。在命令行输入以下命令：

   ```
   aws s3api create-bucket --region 'us-east-1' --bucket BucketName
   ```

   在上述命令中：
   + *us-east-1*替换为你 AWS 区域 的 WABA 所在的。
   + *BucketName*替换为新存储桶的名称。

1. 要将文件复制到 Amazon S3 存储桶，请使用 [cp](https://docs.aws.amazon.com/cli/latest/userguide/cli-services-s3-commands.html#using-s3-commands-managing-objects-copy) AWS CLI 命令。在命令行输入以下命令：

   ```
   aws s3 cp SourceFilePathAndName s3://BucketName/FileName 
   ```

   在上述命令中：
   + *SourceFilePathAndName*替换为要复制的文件的文件路径和名称。
   + 将 *BucketName* 替换为存储桶名称。
   + *FileName*替换为要用于该文件的名称。

   发送时使用的网址是：

   ```
   s3://BucketName/FileName
   ```

   要创建[预签名 URL](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-presigned-url.html)，请*user input placeholders*用您自己的信息替换。

   ```
   aws s3 presign s3://amzn-s3-demo-bucket1/mydoc.txt --expires-in 604800 --region af-south-1 --endpoint-url https://s3.af-south-1.amazonaws.com
   ```

   返回的网址将是：`https://amzn-s3-demo-bucket1.s3.af-south-1.amazonaws.com/mydoc.txt?{Headers}`

1.  WhatsApp 使用[post-whatsapp-message-media](https://docs.aws.amazon.com/cli/latest/reference/socialmessaging/post-whatsapp-message-media.html)命令将媒体文件上传到。成功完成后，该命令将返回*\$1MEDIA\$1ID\$1*，这是发送媒体消息所必需的。

   ```
   aws socialmessaging post-whatsapp-message-media --origination-phone-number-id {ORIGINATION_PHONE_NUMBER_ID}  --source-s3-file bucketName={BUCKET},key={MEDIA_FILE}
   ```

   在上述命令中，执行以下操作：
   + *\$1ORIGINATION\$1PHONE\$1NUMBER\$1ID\$1*替换为您的电话号码的 ID。
   + *\$1BUCKET\$1*替换为 Amazon S3 存储桶的名称。
   + *\$1MEDIA\$1FILE\$1*替换为媒体文件的名称。

   您也可以使用`--source-s3-presigned-url`代替，使用[预签名网址](#managing-media-files-s3.title)进行上传。`--source-s3-file`您必须在`headers`字段`Content-Type`中添加。如果同时使用两者，`InvalidParameterException`则返回一个。

   ```
   --source-s3-presigned-url headers={"Name":"Value"},url=https://BUCKET.s3.REGION/MEDIA_FILE
   ```

1. 成功完成后*MEDIA\$1ID*，将返回。*MEDIA\$1ID*用于在[发送媒体消息时引用媒体](send-message-media.md)文件。

# 支持的媒体文件类型和大小 WhatsApp
<a name="supported-media-types"></a>

发送或接收媒体消息时，必须支持文件类型且必须小于最大文件大小。有关更多信息，请参阅《*WhatsApp 商业平台云 API 参考*》中的[支持的媒体类型](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types)。

## 媒体文件类型
<a name="reference_body"></a>


**音频格式**  

| 音频类型 | 扩展程序 | MIME 类型  | 最大尺寸 | 
| --- | --- | --- | --- | 
| AAC | .aac | 音频/aac | 16 MB | 
| AMR | .amr | 音频/amr | 16 MB | 
| MP3 | .mp3 | audio/mpeg | 16 MB | 
| MP4 音频 | .m4a | 音频/mp4 | 16 MB | 
| OGG 音频 | .ogg | audio/ogg | 16 MB | 


**文件格式**  

| 文档类型 | 扩展程序 | MIME 类型  | 最大尺寸 | 
| --- | --- | --- | --- | 
| 文本 | .text | text/plain | 100 MB | 
| Microsoft Excel | .xls、.xlsx | application/vnd.ms-excel, application/vnd.openxmlformats-OfficeDocument.seet | 100 MB | 
| Microsoft Word | .doc、.docx | application/msword, application/vnd.openxmlformats-officedument.wordprocessin | 100 MB | 
| 微软 PowerPoint | .ppt、.pptx | application/vnd.ms-powerpoint, application/vnd.openxmlformats-officedocument.presentat | 100 MB | 
| PDF | .pdf | application/pdf | 100 MB | 


**映像格式**  

| 图像类型 | 扩展程序 | MIME 类型  | 最大尺寸 | 
| --- | --- | --- | --- | 
| JPEG | .jpeg | image/jpeg | 5MB | 
| PNG | .png | image/png | 5MB | 


**贴纸格式**  

| 贴纸类型 | 扩展程序 | MIME 类型  | 最大尺寸 | 
| --- | --- | --- | --- | 
| 动画贴纸 | .webp | image/webp | 500 KB | 
| 静电贴纸 | .webp | image/webp | 100KB | 


**视频格式**  

| 视频类型 | 扩展程序 | MIME 类型  | 最大尺寸 | 
| --- | --- | --- | --- | 
| 3GPP | .3gp | 视频/3gp | 16 MB | 
| MP4 视频 | .mp4 | 视频/mp4 | 16 MB | 