port = port->next;
}
- if (msg_type == GSM_TCHF_FRAME) {
+ if (msg_type == GSM_TCHF_FRAME
+ || msg_type == GSM_TCHF_BAD_FRAME) {
if (port) {
/* inject DTMF, if enabled */
if (pgsm_bs->p_g_dtmf) {
} else
pgsm_bs->frame_receive(arg);
/* if we do not bridge we need to inject audio, if available */
- if (!pgsm_bs->p_bridge) {
+ if (!pgsm_bs->p_bridge || pgsm_bs->p_tone_name[0]) {
unsigned char data[160];
int i;
i = pgsm_bs->read_audio(data, 160);
if (i)
- pgsm_bs->bridge_rx(data, i);
+ pgsm_bs->audio_send(data, i);
}
}
return 0;