mirror of
https://github.com/signalwire/freeswitch.git
synced 2026-07-23 12:42:02 +00:00
add pelim say stuff, module framework, xml parser, dialplan app, and add new channel var called sound_prefix for audio files
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3766 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
@@ -626,6 +626,13 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_menu_stack_xml_add_custom(switch_ivr_
|
||||
*/
|
||||
SWITCH_DECLARE(switch_status_t) switch_ivr_menu_stack_xml_init(switch_ivr_menu_xml_ctx_t **xml_menu_ctx, switch_memory_pool_t *pool);
|
||||
|
||||
SWITCH_DECLARE(switch_status_t) switch_ivr_phrase_macro(switch_core_session_t *session,
|
||||
char *macro_name,
|
||||
char *data,
|
||||
char *lang,
|
||||
switch_input_callback_function_t input_callback,
|
||||
void *buf,
|
||||
uint32_t buflen);
|
||||
/** @} */
|
||||
|
||||
SWITCH_END_EXTERN_C
|
||||
|
||||
@@ -75,6 +75,8 @@ struct switch_loadable_module_interface {
|
||||
const switch_directory_interface_t *directory_interface;
|
||||
/*! the table of chat interfaces the module has implmented */
|
||||
const switch_chat_interface_t *chat_interface;
|
||||
/*! the table of say interfaces the module has implmented */
|
||||
const switch_say_interface_t *say_interface;
|
||||
/*! the table of asr interfaces the module has implmented */
|
||||
const switch_asr_interface_t *asr_interface;
|
||||
};
|
||||
@@ -181,6 +183,13 @@ SWITCH_DECLARE(switch_directory_interface_t *) switch_loadable_module_get_direct
|
||||
*/
|
||||
SWITCH_DECLARE(switch_chat_interface_t *) switch_loadable_module_get_chat_interface(char *name);
|
||||
|
||||
/*!
|
||||
\brief Retrieve the say interface by it's registered name
|
||||
\param name the name of the say interface
|
||||
\return the desired say interface
|
||||
*/
|
||||
SWITCH_DECLARE(switch_say_interface_t *) switch_loadable_module_get_say_interface(char *name);
|
||||
|
||||
|
||||
/*!
|
||||
\brief Retrieve the list of loaded codecs into an array
|
||||
|
||||
@@ -412,6 +412,20 @@ struct switch_speech_handle {
|
||||
void *private_info;
|
||||
};
|
||||
|
||||
/*! \brief Abstract interface to a say module */
|
||||
struct switch_say_interface {
|
||||
/*! the name of the interface */
|
||||
const char *interface_name;
|
||||
/*! function to pass down to the module */
|
||||
switch_status_t (*say_function)(switch_core_session_t *session,
|
||||
char *tosay,
|
||||
switch_say_type_t type,
|
||||
switch_say_method_t method,
|
||||
switch_input_callback_function_t dtmf_callback,
|
||||
void *buf,
|
||||
uint32_t buflen);
|
||||
const struct switch_say_interface *next;
|
||||
};
|
||||
|
||||
/*! \brief Abstract interface to a chat module */
|
||||
struct switch_chat_interface {
|
||||
|
||||
@@ -93,6 +93,33 @@ SWITCH_BEGIN_EXTERN_C
|
||||
#define SWITCH_BITS_PER_BYTE 8
|
||||
typedef uint8_t switch_byte_t;
|
||||
|
||||
typedef enum {
|
||||
SSM_NA,
|
||||
SSM_PRONOUNCED,
|
||||
SSM_ITERATED
|
||||
} switch_say_method_t;
|
||||
|
||||
typedef enum {
|
||||
SST_NUMBER,
|
||||
SST_ITEMS,
|
||||
SST_PERSONS,
|
||||
SST_MESSAGES,
|
||||
SST_CURRENCY,
|
||||
SST_TIME_MEASUREMENT,
|
||||
SST_CURRENT_DATE,
|
||||
SST_CURRENT_TIME,
|
||||
SST_CURRENT_DATE_TIME,
|
||||
SST_TELEPHONE_NUMBER,
|
||||
SST_TELEPHONE_EXTENSION,
|
||||
SST_URL,
|
||||
SST_EMAIL_ADDRESS,
|
||||
SST_POSTAL_ADDRESS,
|
||||
SST_ACCOUNT_NUMBER,
|
||||
SST_NAME_SPELLED,
|
||||
SST_NAME_PHONETIC,
|
||||
} switch_say_type_t;
|
||||
|
||||
|
||||
typedef enum {
|
||||
SMF_NONE = 0,
|
||||
SMF_REBRIDGE = (1 << 0),
|
||||
@@ -172,7 +199,8 @@ typedef enum {
|
||||
SWITCH_XML_SECTION_RESULT = 0,
|
||||
SWITCH_XML_SECTION_CONFIG = (1 << 0),
|
||||
SWITCH_XML_SECTION_DIRECTORY = (1 << 1),
|
||||
SWITCH_XML_SECTION_DIALPLAN = (1 << 2)
|
||||
SWITCH_XML_SECTION_DIALPLAN = (1 << 2),
|
||||
SWITCH_XML_SECTION_PHRASES = (1 << 3)
|
||||
} switch_xml_section_t;
|
||||
|
||||
/*!
|
||||
@@ -863,6 +891,7 @@ typedef struct switch_speech_interface switch_speech_interface_t;
|
||||
typedef struct switch_asr_interface switch_asr_interface_t;
|
||||
typedef struct switch_directory_interface switch_directory_interface_t;
|
||||
typedef struct switch_chat_interface switch_chat_interface_t;
|
||||
typedef struct switch_say_interface switch_say_interface_t;
|
||||
typedef struct switch_core_port_allocator switch_core_port_allocator_t;
|
||||
typedef struct switch_media_bug switch_media_bug_t;
|
||||
typedef void (*switch_media_bug_callback_t)(switch_media_bug_t *, void *, switch_abc_type_t);
|
||||
|
||||
Reference in New Issue
Block a user