CA_Create_Segment()

Purpose

Creates a voice segment.

Libraries

Blueworx Voice Response library (libvae.a)

Custom Server library (libca.a)

Syntax

#include "CA_header.h"
#include "CA_access_db.h"
int CA_Create_Segment (
 SEGMENT_INFO_ST  *segment_info_sp,
 unsigned long    start_element,
 unsigned long    element_count,
 unsigned char    *voice_data
);

Description

This subroutine creates a voice segment by storing voice data referenced by the SEGMENT_INFO_ST input structure in the Blueworx Voice Response database.

The function is similar to the RecordVoiceSegment state table action. Before calling this subroutine, the real voice data should already be accessible by the calling routine. The calling routine can then specify the starting voice element and the number of elements to add to the voice segment.

If the voice segment is very large, you may not wish to pass the entire data in a single call to this subroutine. In this case, you can call the routine several times, with appropriate values for start_element, element_count, and voice_data. A return code of 0 indicates that the voice segment is complete.

Parameters

segment_info_sp
A pointer to a SEGMENT_INFO_ST input structure that is filled in as described in SEGMENT_INFO_ST.
start_element
Starting voice element (range from 1 to total_elements). If you are creating the entire segment with a single call to this subroutine, the value of start_element will be 1.
element_count
Number of voice elements to add to the segment (range from 1 to total_elements). If you are creating the entire segment with a single call to this subroutine, the value of element_count will be the same as total_elements.
voice_data
Address of the voice data.

Return codes

0
Successful (entire voice segment data stored in database)
>0
Successful; number of voice elements left to be added to database
-1
Unsuccessful (global error number CA_errno is set to indicate the error)

Error names

CA_ACCESS_NOBUFS
CA_CHECK_LANG_FAILED
CA_DISK_FULL
CA_INV_ADDR
CA_INV_COMPRESSION_TYPE
CA_INV_ELEMENT_COUNT
CA_INV_REQUEST
CA_INV_SEGMENT_ID
CA_INV_SEGMENT_TEXT
CA_INV_START_ELEMENT
CA_INV_TOTAL_ELEMENTS
CA_INV_VOICE_DIR
CA_INV_VOICE_ELEMENT
CA_LANG_NOT_FOUND
CA_LANG_NOT_IN_USE
CA_NO_MSG_RECV
CA_NOT_INIT
CA_OM_REQ_FAILED
CA_REQ_FAILED
CA_SGMT_TEXT_OPERATION_FAILED
CA_TERMINATING

Related information

CA_Delete_Segment(), CA_Get_Segment(), CA_Get_Segment_Info(), CA_Import_Voice().