Tange Cloud for Device
 Rev.345
载入中...
搜索中...
未找到
TgAiRtc.h 文件参考

AIGC RTC 功能接口和命令. 更多...

#include "basedef.h"

浏览该文件的源代码.

结构体

struct  TcisAiRtcState
 TCI_CMD_AIRTC_NOTI 命令的参数 更多...
 

宏定义

#define TCI_CMD_AIRTC_NOTI   0x803A
 从代理收到的通知命令。req: TcisAiRtcState; 无需应答
 

枚举

enum  EAIRTCNOTI
 

函数

int TgAiRtcDial (const char *jstr)
 主动请求连接.
 
int TgAiRtcHangup ()
 主动挂断连接.
 

详细描述

AIGC RTC 功能接口和命令.

连接代理

设备通过AIGC RTC 代理与云端的AI服务实现双向通话。
根据业务约定,代理可能主动连接设备,也可能需要设备先发起连接请求(调用 TgAiRtcDial()).
代理可能主动断开设备(例如在一段时间静默后),也可能需要设备主动请求断开(调用 TgAiRtcHangup())。

双向数据和通知

连接建立后,设备和代理间就可以双向发送媒体数据和通知。音视频的收发参见 探鸽云平台设备接入.

通知: 代理->设备

代理到设备的通知通过命令 TCI_CMD_AIRTC_NOTI 发送.
通知类型包括应答的开始(ANOTI_ANSWER_START)/结束(ANOTI_ANSWER_END)标志和其它事件(ANOTI_EVENT).
其它事件内容需要参看平台端文档,可能包含字幕等信息.

通知: 设备->代理

设备到代理的通知内容由平台约定,可能包含主动打断等功能.
<参见 https://tange-ai.feishu.cn/docx/UTsBdkRSCol81Nx0x78cUJpvn4g>

通知在设备连上代理(可以以收到 TciCB::on_talkback_start() 回调为标志)后调用 TciSendRtMsg() 发送.

TciSendRtMsg()调用采用以下参数:

#define TAG_AIGC 0x41494743
#define TAG_JSON 0x4a534f4e
TciSendRtMsg(0, RTM_USER, TAG_AIGC, TAG_JSON, <notification>, <length_of_notification>);
@ RTM_USER
用户自定义的消息
int TciSendRtMsg(p2phandle_t handle, RTMTYPE type, unsigned int data1, unsigned data2, const void *extra_data, int extra_len)
在命令通道上发送通知.

例如

const char event[] = "{\"jsonrpc\":\"2.0\",\"method\":\"interupt\"}";
TciSendRtMsg(0, RTM_USER, TAG_AIGC, TAG_JSON, event, sizeof(event) - 1);

在文件 TgAiRtc.h 中定义.


结构体说明

◆ TcisAiRtcState

struct TcisAiRtcState

TCI_CMD_AIRTC_NOTI 命令的参数

在文件 TgAiRtc.h57 行定义.

成员变量
uint32_t state EAIRTCNOTI
uint32_t reserved
char data[0] ANOTI_EVENT 的数据. 内容由平台规定

宏定义说明

◆ TCI_CMD_AIRTC_NOTI

#define TCI_CMD_AIRTC_NOTI   0x803A

从代理收到的通知命令。req: TcisAiRtcState; 无需应答

在文件 TgAiRtc.h47 行定义.

枚举类型说明

◆ EAIRTCNOTI

enum EAIRTCNOTI
枚举值
ANOTI_ANSWER_START 

应答开始. 无额外数据

ANOTI_ANSWER_END 

应答结束. 无额外数据

ANOTI_EVENT 

其它事件.

在文件 TgAiRtc.h48 行定义.

函数说明

◆ TgAiRtcDial()

int TgAiRtcDial ( const char * jstr)

主动请求连接.

参数
jstr呼叫配置,json格式的字符串,内容由设备与平台约定(参看5. QWEN-AGENT 建连)
返回
0 或错误码

◆ TgAiRtcHangup()

int TgAiRtcHangup ( )

主动挂断连接.

返回
0 或错误码