linuxOS_AP05/device/rockchip/rk3308/dds_client-rk3308-32-dual-sdk-v0.5.2/dds_client.h

116 lines
3.3 KiB
C
Raw Normal View History

2025-06-02 05:59:07 +00:00
/*================================================================
* * Copyright (C) 2018 AISpeech Ltd. All rights reserved.
* *
* * dds_client.h
* * 20180406
* *
* *
* ================================================================*/
#ifndef _DDS_CLIENT_H
#define _DDS_CLIENT_H
#ifdef __cplusplus
extern "C"
{
#endif
#define DDS_CLIENT_VERSION "DDS_CLIENT 0.5.2"
#define DDS_CLIENT_TTS_ZHILING "zhilingf" // 甜美女神
#define DDS_CLIENT_TTS_GDG "gdgm" // 沉稳纲叔
#define DDS_CLIENT_TTS_GEYOU "geyou" // 淡定葛爷
#define DDS_CLIENT_TTS_HYANIF "hyanif" // 邻家女声
#define DDS_CLIENT_TTS_XIJUNM "xijunm" // 标准男声
#define DDS_CLIENT_TTS_QIANRAN "qianranf" // 可爱童声
#define DDS_CLIENT_TTS_LUCYF "lucyf" // 标准女声
#define DDS_CLIENT_USER_EV_BASE 1000
#define DDS_CLIENT_USER_DEVICE_MODE 1001
#define DDS_CLIENT_USER_EXTERNAL_WAKEUP 1002
struct dds_client;
typedef void (*ddsLintener)(const char *topic, const char *topic_data, void *user);
struct dds_client *dds_client_init (const char *config_json);
int dds_client_start(struct dds_client *, ddsLintener cb, void *user);
void dds_client_release(struct dds_client *);
// 发送事件给 sdk
int dds_client_publish(struct dds_client *ds, int ev, const char *data);
/*
* nativeAPI native_api_data_json :
* duiWidget dui "text"
* extra
* {
* "duiWidget":"text",
* "extra": {
* "xx": "11"
* }
* }
* -1
*/
int dds_client_resp_nativeapi(struct dds_client *ds, const char *native_api,
const char *native_api_data_json);
/*
*
*/
int dds_client_feed_audio(struct dds_client *ds, char *data, int len);
/*
*
*/
int dds_client_stop_dialog(struct dds_client *ds);
int dds_client_trigger_intent(struct dds_client *ds, char *skill, char *task,
char *intent, char *slots);
/*
* tts
*/
int dds_client_speak(struct dds_client *ds, const char *text);
char *dds_client_get_speaker(struct dds_client *ds);
float dds_client_get_speed(struct dds_client *ds);
int dds_client_get_volume(struct dds_client *ds);
int dds_client_set_speaker(struct dds_client *ds, char *speaker);
int dds_client_set_speed(struct dds_client *ds, float speed);
int dds_client_set_volume(struct dds_client *ds, int vol);
/*
*
*/
int dds_client_disable_wakeup(struct dds_client *ds);
int dds_client_enable_wakeup(struct dds_client *ds);
int dds_client_update_customword(struct dds_client *ds, const char *word);
char* dds_client_get_wakeupwords(struct dds_client *ds);
/*
*
*/
char *dds_client_vprint_get_detail(struct dds_client *ds);
int dds_client_vprint_regist(struct dds_client *ds, char *name);
int dds_client_vprint_unregist(struct dds_client *ds, char *name);
/*
*
*/
int dds_client_energy_estimate(struct dds_client* ds, int second);
/*
*
*/
int dds_client_upload_location(struct dds_client* ds, char *city);
#ifdef __cplusplus
}
#endif
#endif //DDS_CLIENT_H