/* Attach variable to usrmsg */
ftdm_usrmsg_add_var(&usrmsg, "isdn.prog_ind.descr", "inband-info-available");
- /* Request FreeTDM to send a PROCEED msg */
ftdm_channel_call_place_ex(ftdmchan, &usrmsg);
example #1b - Adding a variable:
When using ftmod_sangoma_isdn, user wants to transmit a custom Facility IE, inside a FACILITY message.
ftdm_usrmsg_t usrmsg;
- ftdm_sigmsg_t sigmsg;
uint8_t *my_facility_ie = ftdm_calloc(1, 200); /*memory has to be allocated using ftdm_calloc !! */
unsigned my_facility_ie_len = 0;
ftdm_usrmsg_set_raw_data(&usrmsg, my_facility_ie, my_facility_ie_len);
- sigmsg.event_id = FTDM_SIGEVENT_FACILITY;
-
- ftdm_channel_call_send_msg(ftdmchan, sigmsg, usrmsg);
+ ftdm_channel_call_indicate(ftdmchan, FTDM_CHANNEL_INDICATE_ANSWER, &usrmsg);
/* FreeTDM will automatically free my_facility_ie */
/* Inside event call-back function */
ftdm_size_t len;
uint8_t *mydata;
- if (ftdm_sig_get_raw_data(sigmsg, (void**)&mydata, &len) == FTDM_SUCCESS) {
+ if (ftdm_sigmsg_get_raw_data(sigmsg, (void**)&mydata, &len) == FTDM_SUCCESS) {
/* raw data is available, do something with mydata here */
}
/* Once this function returns, raw data will be free'd inside FreeTDM */
/* Inside event call-back function */
ftdm_size_t len;
uint8_t *mydata;
- if (ftdm_sig_get_raw_data_detached(sigmsg, (void**)&mydata, &len) == FTDM_SUCCESS) {
+ if (ftdm_sigmsg_get_raw_data_detached(sigmsg, (void**)&mydata, &len) == FTDM_SUCCESS) {
/* raw data is available, do something with mydata here */
}