是否有按照频道精确查询计费信息的api呢

是否有按照频道精确查询计费信息的api呢
在restful api中没有找到对应的接口

暂时没有这样的 API 哈,你可以通过客户端的回调来获取频道内通话时长,从而进行计费:

  • 正常情况下,用户成功加入频道后会收到 onJoinChannelSuccess ,此时开始计时;用户成功离开频道后会收到 onLeaveChannel,此时结束计时并报告该通话的时长 duration (秒)。获取到 duration 后,你可以结合自己的业务逻辑实现计费。
// Listen for the onJoinChannelSuccess callback.
// This callback occurs when the local user successfully joins the channel.
virtual void onJoinChannelSuccess(const char* channel, uid_t uid, int elapsed);
// Listen for the onLeaveChannel callback.
// This callback occurs when the local user successfully leaves the channel.
virtual void onLeaveChannel(const RtcStats& stat);
 
 
// Statistics of the channel.
struct RtcStats
{
    // Call duration (s), represented by an aggregate value.
    unsigned int duration;
    ......
};
  • 异常情况下,例如断线,你可以在 Agora RTM SDK 或自己的信令系统中开启心跳机制检测,检测消息服务和客户端的连接状态。根据连接状态,你可以结合自己的业务逻辑统计该通话的时长,并实现计费。

因为我们是web应用,类似水晶球里边每个频道的使用时长数据是否有api呢?

暂时是没有的,web 端需要自己统计的,统计用户 leave 和 join 的时差。