Work on call recording

This commit is contained in:
Juha Heinanen
2023-03-09 08:12:29 +02:00
parent 205b129b4f
commit de1f52b9ce
7 changed files with 199 additions and 4 deletions

View File

@ -60,6 +60,10 @@ add_library(lib_zrtpcppcore STATIC IMPORTED)
set_target_properties(lib_zrtpcppcore PROPERTIES IMPORTED_LOCATION
${distribution_DIR}/gzrtp/lib/${ANDROID_ABI}/libzrtpcppcore.a)
add_library(lib_sndfile STATIC IMPORTED)
set_target_properties(lib_sndfile PROPERTIES IMPORTED_LOCATION
${distribution_DIR}/sndfile/lib/${ANDROID_ABI}/libsndfile.a)
add_library(lib_baresip STATIC IMPORTED)
set_target_properties(lib_baresip PROPERTIES IMPORTED_LOCATION
${distribution_DIR}/baresip/lib/${ANDROID_ABI}/libbaresip.a)
@ -90,5 +94,6 @@ target_link_libraries(baresip
lib_amrwbenc
lib_webrtc
lib_zrtpcppcore
lib_sndfile
z
log)

View File

@ -147,7 +147,8 @@ static void ua_event_handler(struct ua *ua, enum ua_event ev,
const char *tone;
char event_buf[256];
enum sdp_dir ardir;
int len;
int len, err;
struct pl module, module_event, data;
LOGD("ua event (%s) %s\n", uag_event_str(ev), prm);
@ -225,6 +226,15 @@ static void ua_event_handler(struct ua *ua, enum ua_event ev,
case UA_EVENT_MWI_NOTIFY:
len = re_snprintf(event_buf, sizeof event_buf, "mwi notify,%s", prm);
break;
case UA_EVENT_MODULE:
err = re_regex(prm, strlen(prm), "[^,]*,[^,]*,[~]*",
&module, &module_event, &data);
if (err)
return;
if (!pl_strcmp(&module_event, "dump")) {
len = re_snprintf(event_buf, sizeof event_buf, "sndfile dump,%r", &data);
break;
}
default:
return;
}
@ -1088,7 +1098,7 @@ Java_com_tutpro_baresip_Api_ua_1answer(JNIEnv *env, jobject thiz, jlong ua, jlon
re_thread_leave();
}
JNIEXPORT jint JNICALL
JNIEXPORT void JNICALL
Java_com_tutpro_baresip_Api_ua_1add_1custom_1header(JNIEnv *env, jobject thiz, jlong ua,
jstring jname, jstring jbody) {
const char *name = (*env)->GetStringUTFChars(env, jname, 0);
@ -1104,7 +1114,6 @@ Java_com_tutpro_baresip_Api_ua_1add_1custom_1header(JNIEnv *env, jobject thiz, j
LOGW("adding custom header to ua %ld failed with error %d\n", (long)ua, err);
(*env)->ReleaseStringUTFChars(env, jname, name);
(*env)->ReleaseStringUTFChars(env, jbody, body);
return err;
}
JNIEXPORT void JNICALL