Method: files.create

上传文件以供在媒体或富媒体卡片消息中使用。

代理提供文件的网址或二进制文件,以及(可选)相应缩略图文件的网址。

重要提示:为保障用户隐私和安全,RBM 平台会先从所提供的网址下载和处理媒体和 PDF 文件,然后再将其传送给用户。这可防止代理通过唯一网址进行跟踪。因此,请勿提交大量唯一网址。无论网址指向的是同一文件还是不同的文件,RBM 平台都不支持这种做法。为完全相同的文件使用相同的网址。

RBM 平台会将文件缓存 60 天,并返回一个唯一名称,您可以在发送代理消息时使用该名称来标识文件。

如需上传文件二进制文件,请向上传 URI 发出 HTTP POST 请求,从 JSON 请求正文中省略 fileUrl 字段,并将二进制文件指定为 POST 请求正文。例如,将 --upload-file c网址 标志与二进制文件的完全限定文件路径搭配使用。

HTTP 请求

  • 上传 URI,用于媒体上传请求:
    POST https://rcsbusinessmessaging.googleapis.com/upload/v1/files
  • 元数据 URI,用于仅涉及元数据的请求:
    POST https://rcsbusinessmessaging.googleapis.com/v1/files

网址采用 gRPC 转码语法。

请求正文

请求正文中包含结构如下的数据:

JSON 表示法
{
  "fileUrl": string,
  "thumbnailUrl": string,
  "agentId": string
}
字段
fileUrl

string

可选。文件的可公开访问网址。在提取文件时,RBM 平台会根据 HTTP 标头中的 content-type 字段确定文件的 MIME 类型。RBM 支持图片、音频、视频和 PDF。

支持的图片内容类型:image/jpeg、image/jpg、image/gif、image/png。

支持的音频内容类型:audio/aac、audio/mp3、audio/mpeg、audio/mpg、audio/mp4、audio/mp4-latm、audio/3gpp、application/ogg、audio/ogg。

支持的视频内容类型:video/h263、video/m4v、video/mp4、video/mpeg、video/mpeg4、video/webm。

支持的 PDF 内容类型:application/pdf。

thumbnailUrl

string

可选。与文件对应的缩略图的可公开访问网址。如果未设置此字段,RBM 平台会自动从文件中生成缩略图。在提取文件时,RBM 平台会根据 HTTP 标头中的 content-type 字段确定文件的 MIME 类型。

支持的图片内容类型:image/jpeg、image/jpg、image/gif、image/png。

agentId

string

必需。代理的唯一标识符。

响应正文

具有唯一名称的文件资源,代理可以在发送消息时使用该名称来标识文件。

如果成功,响应正文将包含结构如下的数据:

JSON 表示法
{
  "name": string
}
字段
name

string

服务器分配给文件资源的唯一名称,代理可在发送消息时使用该名称来标识文件。格式为“files/{uid}”,其中 {uid} 是唯一 ID。

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/rcsbusinessmessaging

如需了解详情,请参阅 OAuth 2.0 Overview