- Added Answer Mode (Manual or Automatic) account configuration option.

This commit is contained in:
Juha Heinanen
2019-09-17 17:31:53 +03:00
parent 12204d56b7
commit 84bc1252db
8 changed files with 94 additions and 31 deletions

View File

@ -923,41 +923,19 @@ Java_com_tutpro_baresip_AccountKt_account_1vm_1uri(JNIEnv *env, jobject thiz, js
}
JNIEXPORT jstring JNICALL
Java_com_tutpro_baresip_AccountKt_account_1answermode(JNIEnv *env, jobject thiz, jstring javaAcc)
Java_com_tutpro_baresip_AccountKt_account_1extra(JNIEnv *env, jobject thiz, jstring javaAcc)
{
const char *native_acc = (*env)->GetStringUTFChars(env, javaAcc, 0);
struct account *acc = (struct account *) strtoul(native_acc, NULL, 10);
(*env)->ReleaseStringUTFChars(env, javaAcc, native_acc);
if (acc) {
enum answermode am = account_answermode(acc);
if (am == ANSWERMODE_EARLY)
return (*env)->NewStringUTF(env, "early");
if (am == ANSWERMODE_AUTO)
return (*env)->NewStringUTF(env, "auto");
return (*env)->NewStringUTF(env, "manual");
const char *extra = account_extra(acc);
if (extra)
return (*env)->NewStringUTF(env, extra);
}
return (*env)->NewStringUTF(env, "");
}
JNIEXPORT jint JNICALL
Java_com_tutpro_baresip_AccountKt_account_1set_1answermode(JNIEnv *env, jobject thiz,
jstring javaAcc, jstring javaAnswerMode) {
const char *native_acc = (*env)->GetStringUTFChars(env, javaAcc, 0);
struct account *acc = (struct account *)strtoul(native_acc, NULL, 10);
(*env)->ReleaseStringUTFChars(env, javaAcc, native_acc);
const char *mode = (*env)->GetStringUTFChars(env, javaAnswerMode, 0);
int res, am;
if (strcmp(mode, "early") == 0)
am = ANSWERMODE_EARLY;
else if (strcmp(mode, "auto") == 0)
am = ANSWERMODE_AUTO;
else
am = ANSWERMODE_MANUAL;
(*env)->ReleaseStringUTFChars(env, javaAnswerMode, mode);
res = account_set_answermode(acc, am);
return res;
}
JNIEXPORT jstring JNICALL
Java_com_tutpro_baresip_Api_ua_1alloc(JNIEnv *env, jobject thiz, jstring javaUri) {
const char *uri = (*env)->GetStringUTFChars(env, javaUri, 0);