本页介绍了 RBM 创建的数据文件,这些文件可帮助运营商进行结算和审核。如需了解有关 RBM 结算模式的常见问题的解答,请参阅 RBM 结算常见问题解答。
文件 | 说明 | 有权访问的人 |
---|---|---|
结算事件报告 | 已启动的代理与用户之间可结算事件的汇总报告。 | 所有正在积极运营 RBM(RCS Business Messaging)的运营商。 |
活动日志 | RBM 活动的原始数据日志,包括可结算的事件。 | 积极运营 RBM(RCS Business Messaging)并根据自己的服务条款 (ToS) 运营 Google RCS 服务的运营商。 |
文件生成
每个数据文件都表示世界协调时间 (UTC) 下的一天 RBM 使用情况。文件每天生成一次。生成过程可能需要几个小时,完成时间可能会有所不同。
对于非对话型代理,文件包含文件生成时间前 24 小时内的数据。例如,如果系统在 5 月 5 日 11:00 UTC 生成结算事件报告,则该报告将包含 5 月 4 日 11:00 UTC 至 5 月 5 日 11:00 UTC 的数据。
对于对话式代理,文件包含文件生成时间前 1-2 天内 24 小时的数据。例如,如果结算事件报告是在 5 月 5 日 11:00(世界协调时间 [UTC])生成的,则其中可能包含 5 月 3 日 11:00(世界协调时间 [UTC])至 5 月 4 日 11:00(世界协调时间 [UTC])的数据。
延迟的原因是,对话型代理的 RBM 活动与对话相关联,而对话最多可能需要 48 小时才能完成。此延迟可让 RBM 在计算结算事件之前捕获对话中的所有消息。如需详细了解对话代理,请参阅代理结算类别。
要点:
无活动:如果某天没有平台活动,系统不会生成任何文件。
命名:文件名中的日期是文件生成日期,而不是文件内数据的日期。
保留期限:文件最多存储 63 天,便会被删除。
您可以使用这些文件来更新数据仓库,以获取最新的平台使用情况指标。
文件存储和访问
数据文件在静态存储时和传输过程中都会加密。
如需通过安全文件传输协议 (SFTP) 检索数据文件,请提供您的 SFTP 公钥。如需生成密钥,请参阅为 SFTP Dropbox 生成安全外壳 (SSH) 密钥对。
SFTP 服务器为 partnerupload.google.com
,连接通过高端口号 (19321) 进行,以提高安全性。
您可以使用以下命令访问数据文件:
sftp -i <path_to_private_key> -P 19321 <username>@partnerupload.google.com
Google 提供的账号用户名采用以下格式:
rbmreports-billableevents-<carrier name>
rbmreports-activity-<carrier name>
Google 会指定 <carrier name>
,并为每种报告类型提供单独的账号。
我们提供了单独的账号来访问不同类型的报告。
文件可用性
如果尚未生成任何数据文件,您会看到类似 remote readdir("/"): No such file or directory
的 SFTP 错误,这是预期行为。
如果没有要报告的 RBM 流量,系统就不会生成文件。这意味着,可能有些天不会生成任何文件。如果您需要空文件来简化流程,请联系 rbm-support@google.com。
结算事件报告
结算事件报告记录了结算事件,这些事件是根据代理的结算类别和其发送的消息类型计算得出的。结算事件报告面向所有正在积极运营 RBM(RCS Business Messaging)的运营商提供。
结算事件报告包含机密信息,但不包含用户个人身份信息 (PII),例如 MSISDN、经过哈希处理的 MSISDN 或任何用户唯一标识符。
代理机构结算类别
创建代理时,所有者会根据代理与用户的互动方式设置其结算类别。结算类别不会限制客服人员可以发送的消息数量或类型。但它确实会决定代理如何为消息付费。下表介绍了两个主要结算类别。
结算类别 | 代理类型 | 应用场景示例 | 结算方式 |
---|---|---|---|
非对话型 (包括“基本消息”和“单条消息”类别。注意:这两个类别之间已不再有任何区别。任一类别的代理都会按非对话型代理收费。) |
主要发送单向消息的代理。 |
|
按向用户发送的每条消息收费。 |
对话式 | 旨在与用户进行来回对话的代理。 |
|
按对话收费:如果一方(客服人员或用户)在 24 小时内回复另一方的消息,则对话开始。在对话窗口期(首次回复后的 24 小时内),客服人员和用户可以交换任意数量的消息,并且客服人员将按固定费率为对话付费。 按消息收费: 如果代理发送的消息在 24 小时内未收到用户回复,则系统会针对该条消息向代理收费,这与非对话型代理类似。 |
下图展示了对话型代理的 A2P 结算会话示例:
对话式代理与非对话式代理
主要有两大类结算方式:对话式和非对话式。 非对话类别包括“基本消息”和“单条消息”类别,这两个类别在功能上是相同的。属于上述任一类别的代理都会按非对话式代理收费。
结算类别的主要区别在于对话式智能体与非对话式智能体:
非对话型代理会针对其向用户发送的每条消息收取费用。
- 此类别最适合不希望频繁收到回复的代理。
对于对话式代理,系统会按固定费率收取对话费用,其中包含 24 小时内交换的所有消息。
- 此类别最适合与用户进行多轮对话的代理。
结算事件
结算事件报告中会记录五种不同类型的结算事件。这些事件包括 A2P 和 P2A 消息。
- A2P(应用到个人):由商家发送。
- P2A(个人对应用):由用户发送。
下表介绍了每种结算事件(适用于非对话型代理和对话型代理)。
事件 | 说明 | 非对话式智能体 | 对话代理 |
---|---|---|---|
basic_message
|
仅包含文本且不超过 160 个字符的 A2P 消息。如果文本包含带有 openGraph 标记的网站的网址,则消息可能会显示图片预览,而合作伙伴无需支付额外费用。 | 始终视为单独的结算事件,无论用户是否回复。 | 除非用户在 24 小时内回复,否则系统会将此视为单独的结算事件。在这种情况下,消息会成为 a2p_conversation 的一部分。
|
single_message
|
包含富媒体内容或仅包含文字且长度超过 160 个字符的 A2P 消息。 | 始终视为单独的结算事件,无论用户是否回复。 | 除非用户在 24 小时内回复,否则系统会将此视为单独的结算事件。在这种情况下,消息会成为 a2p_conversation 的一部分。
|
a2p_conversation (商家发起的)
|
当用户在收到 A2P 消息后的 24 小时内回复该消息时(在现有对话之外)启动。 | 不适用。非对话式代理永远不会生成此类事件。 | 如果 P2A 消息是在多条 A2P 消息发送后的 24 小时内送达的,则只有紧随 P2A 消息之前的 A2P 消息可用于发起对话。此 A2P 消息以及接下来 24 小时内传送的任何消息都属于 a2p_conversation 。
|
p2a_conversation (用户发起)
|
当代理在收到 P2A 消息后的 24 小时内回复该消息时(在现有对话之外)启动。 | 不适用。非对话式代理永远不会生成此类事件。 | 如果 A2P 消息是在多条 P2A 消息发送后的 24 小时内送达的,则只有紧随 A2P 消息之前的 P2A 消息可用于发起对话。此 P2A 消息以及在接下来 24 小时内传送的任何消息都属于 p2a_conversation 。
|
p2a_message
|
任何类型的 P2A 消息。 | 始终视为单独的结算事件,无论代理是否回复。 | 除非代理在 24 小时内回复,否则将视为单独的结算事件。 |
结算事件与结算类别
请勿将 basic_message
和 single_message
结算事件与“基本消息”和“单条消息”结算类别混淆。
任何代理(无论其结算类别如何)都可以生成
basic_message
和single_message
结算事件。“基本消息”和“单条消息”结算类别用于对非对话型代理进行分类。这些结算类别的代理不会生成对话结算事件(
a2p_conversations
或p2a_conversations
),而是会生成单独的basic_message
、single_message
和p2a_message
结算事件。
生成结算报告
只有具有非测试者流量的代理会生成结算事件。测试电话号码的活动不会显示在结算事件报告中。
这些报告假设事件是在消息传送时(而非发送时)计费的。未递送的邮件或在递送之前取消的邮件不会触发结算事件。
结算报告格式
结算事件报告的文件名格式为 rbm_billable_events_YYYY-MM-DD.csv
。文件名中的日期是文件生成日期。
报告中的每一行都是一条记录,代表一个结算事件。 记录中的各个字段以制表符分隔。例如,如果两个 A2P 对话由同一客服人员处理,则会生成两个结算事件,并在结算事件报告中生成两条记录。
报告中的每条记录都包含每个结算事件的以下信息:
字段 | 格式 | 说明 | 示例 |
---|---|---|---|
billing_event_id
|
字符串 | UUID 标识符。为每个新事件在创建时生成的随机数。 | 242f1d9f-7c3f-4e5b-ab3f-818f188fa3ff
|
type
|
字符串 | 活动类型:
|
single_message
|
agent_id
|
字符串 | 参与相应活动的代理的唯一标识符。 | rbm-welcome-bot@rbm.goog
|
agent_owner
|
字符串 | 创建代理的合作伙伴账号的当前所有者的电子邮件地址。 | name@aggregator.com
|
billing_party
|
字符串 | 负责活动结算的方。
|
carrier
|
max_duration_single_message
|
数值 | 用户在对话发起窗口关闭之前对代理消息做出响应的最长时间(以小时为单位),之后该消息会被归类为 single_message 事件。
|
24
|
max_duration_a2p_conversation
|
数值 | A2P 对话的最长时长(以小时为单位)。从用户对客服人员初始消息的首次回复开始计算。 | 24
|
max_duration_p2a_conversation
|
数值 | P2A 对话的时长上限(以小时为单位)。从对话中的第一条用户消息开始计算。 | 24
|
start_time
|
YYYY-mm-ddTHH:00:00Z | 活动开始时的 UTC 日期/时间,采用 ISO 8601 格式,四舍五入到最接近的小时。
A2P 消息
P2A 消息
|
2019-07-25T08:00:00Z
|
duration
|
数值 | 活动时长,四舍五入到最接近的分钟数。
如果事件类型为 |
45
|
mt_messages
|
数值 | 相应事件中的移动终端 (A2P) 消息数量。 | 11
|
mo_messages
|
数值 | 相应事件中移动设备发起的 (P2A) 消息数量。 | 9
|
size_kilobytes
|
数值 | 相应事件中附加到邮件的所有文件的大小,四舍五入到最接近的千字节(1kB = 1024 字节)。 | 912
|
agent_name
|
字符串 |
参与活动的代理的名称。 |
XYZ Mobile USA
|
owner_name
|
字符串 | 创建客服人员的合作伙伴账号的当前所有者的姓名。 | XYZ Mobile
|
结算事件报告示例
您可以下载结算报告示例文件。
典型文件大小
活跃 RBM 合作伙伴的每日报告的大小取决于他们在运营商网络上产生的活动量。例如,如果报告中有 53,000 条记录,则文件大小约为 8MB。
活动日志
活动日志提供有关 RBM 平台活动的原始数据。您可以使用这些日志来审核结算事件和创建自定义事件。
注意:活动日志中仅包含来自非测试人员电话号码的流量。
由于活动日志包含个人身份信息 (PII),例如详细的交易信息和订阅者 MSISDN,因此只有在运营商根据自己的服务条款运营 RCS 时,才能使用活动日志。如果您在网络中拥有 RBM 流量,并根据 Google 的服务条款通过 Google RCS 启用 RCS 活动,则无法访问活动日志。
活动日志格式
活动日志使用 rbm_activity_YYYY-MM-DD.csv
文件名格式。文件名中的日期是文件生成日期。
记录中的各个字段以制表符分隔,每行一条记录。
活动日志中的每条记录都包含以下字段,用于记录每项活动:
字段 | 格式 | 说明 | 示例 |
---|---|---|---|
activity_id
|
字符串 | 活动的唯一标识符。 | b422e1d3-ac99-442a-853d-a875d5e61762
|
billing_event_id
|
字符串 | 关联结算事件的唯一标识符。如果 activity 未与结算事件(例如没有相应 delivery_receipt_event 的 text_message )相关联,则可以为空。
|
91yeb201-7c3b-412b-98d2-b0a0f7abe536
|
agent_id
|
字符串 | 代理的唯一标识符。 | welcome-bot@rbm.goog
|
user_id
|
字符串 | 用户的 MSISDN。 | 918369110173
|
direction
|
字符串 | 消息的发送方向:
|
MT
|
time
|
YYYY-mm-ddTHH:MM:SS.SSSZ | 事件提交到 RBM 平台的日期和时间(采用世界协调时间 [UTC] 格式)。请参阅时间戳。 | 2019-07-25T00:29:07.033Z
|
type
|
字符串 | 活动类型:
|
text_message
|
size_bytes
|
字符串 | 附加到活动的文件的大小(以字节为单位)。 | 912
|
时间戳
活动日志中的时间戳记录了事件提交到 RBM 平台的时间。对于向用户传送内容的事件,在传送消息之前,系统不会在活动日志中记录相应事件。
例如,如果 RBM 消息是在周三 13:00 发送给用户的,而接收者在周日 9:00 之前一直处于离线状态,则该事件将显示在为周日生成的活动日志中,但时间戳将为周三 13:00。