Moved all API function definitions to Api object

This commit is contained in:
Juha Heinanen
2022-03-23 10:01:35 +02:00
parent f2c5a348d0
commit 3d13a64488
3 changed files with 40 additions and 40 deletions

View File

@ -1131,7 +1131,7 @@ Java_com_tutpro_baresip_Api_calls_1mute(JNIEnv *env, jobject thiz, jboolean mute
}
JNIEXPORT jint JNICALL
Java_com_tutpro_baresip_Call_call_1connect(JNIEnv *env, jobject thiz, jlong call, jstring jPeer)
Java_com_tutpro_baresip_Api_call_1connect(JNIEnv *env, jobject thiz, jlong call, jstring jPeer)
{
const char *native_peer = (*env)->GetStringUTFChars(env, jPeer, 0);
LOGD("connecting call %ld to %s\n", (long)call, native_peer);
@ -1146,7 +1146,7 @@ Java_com_tutpro_baresip_Call_call_1connect(JNIEnv *env, jobject thiz, jlong call
}
JNIEXPORT void JNICALL
Java_com_tutpro_baresip_Call_call_1notify_1sipfrag(JNIEnv *env, jobject thiz, jlong call, jint code, jstring reason)
Java_com_tutpro_baresip_Api_call_1notify_1sipfrag(JNIEnv *env, jobject thiz, jlong call, jint code, jstring reason)
{
const uint16_t native_code = code;
const char *native_reason = (*env)->GetStringUTFChars(env, reason, 0);
@ -1158,7 +1158,7 @@ Java_com_tutpro_baresip_Call_call_1notify_1sipfrag(JNIEnv *env, jobject thiz, jl
}
JNIEXPORT void JNICALL
Java_com_tutpro_baresip_Call_call_1start_1audio(JNIEnv *env, jobject thiz, jlong call)
Java_com_tutpro_baresip_Api_call_1start_1audio(JNIEnv *env, jobject thiz, jlong call)
{
LOGD("starting audio of call %ld\n", (long)call);
re_thread_enter();
@ -1168,7 +1168,7 @@ Java_com_tutpro_baresip_Call_call_1start_1audio(JNIEnv *env, jobject thiz, jlong
}
JNIEXPORT jint JNICALL
Java_com_tutpro_baresip_Call_call_1hold(JNIEnv *env, jobject thiz, jlong call, jboolean hold)
Java_com_tutpro_baresip_Api_call_1hold(JNIEnv *env, jobject thiz, jlong call, jboolean hold)
{
int err;
if (hold) {
@ -1187,13 +1187,13 @@ Java_com_tutpro_baresip_Call_call_1hold(JNIEnv *env, jobject thiz, jlong call, j
}
JNIEXPORT jboolean JNICALL
Java_com_tutpro_baresip_Call_call_1ismuted(JNIEnv *env, jobject thiz, jlong call)
Java_com_tutpro_baresip_Api_call_1ismuted(JNIEnv *env, jobject thiz, jlong call)
{
return audio_ismuted(call_audio((struct call *)call));
}
JNIEXPORT jint JNICALL
Java_com_tutpro_baresip_Call_call_1transfer(JNIEnv *env, jobject thiz, jlong call, jstring jPeer)
Java_com_tutpro_baresip_Api_call_1transfer(JNIEnv *env, jobject thiz, jlong call, jstring jPeer)
{
const char *native_peer = (*env)->GetStringUTFChars(env, jPeer, 0);
LOGD("transfering call %ld to %s\n", (long)call, native_peer);
@ -1206,7 +1206,7 @@ Java_com_tutpro_baresip_Call_call_1transfer(JNIEnv *env, jobject thiz, jlong cal
}
JNIEXPORT jint JNICALL
Java_com_tutpro_baresip_Call_call_1send_1digit(JNIEnv *env, jobject thiz, jlong call, jchar digit)
Java_com_tutpro_baresip_Api_call_1send_1digit(JNIEnv *env, jobject thiz, jlong call, jchar digit)
{
const uint16_t native_digit = digit;
LOGD("sending DTMF digit '%c' to call %ld\n", (char)native_digit, (long)call);
@ -1218,7 +1218,7 @@ Java_com_tutpro_baresip_Call_call_1send_1digit(JNIEnv *env, jobject thiz, jlong
}
JNIEXPORT jstring JNICALL
Java_com_tutpro_baresip_Call_call_1audio_1codecs(JNIEnv *env, jobject thiz, jlong call)
Java_com_tutpro_baresip_Api_call_1audio_1codecs(JNIEnv *env, jobject thiz, jlong call)
{
const struct aucodec *tx = audio_codec(call_audio((struct call *)call), true);
const struct aucodec *rx = audio_codec(call_audio((struct call *)call), false);
@ -1237,14 +1237,14 @@ Java_com_tutpro_baresip_Call_call_1audio_1codecs(JNIEnv *env, jobject thiz, jlon
}
JNIEXPORT jint JNICALL
Java_com_tutpro_baresip_Call_call_1duration(JNIEnv *env, jobject thiz, jlong call)
Java_com_tutpro_baresip_Api_call_1duration(JNIEnv *env, jobject thiz, jlong call)
{
int duration = call_duration((struct call *)call);
return duration;
}
JNIEXPORT jstring JNICALL
Java_com_tutpro_baresip_Call_call_1stats(JNIEnv *env, jobject thiz, jlong call, jstring jStream)
Java_com_tutpro_baresip_Api_call_1stats(JNIEnv *env, jobject thiz, jlong call, jstring jStream)
{
const char *native_stream = (*env)->GetStringUTFChars(env, jStream, 0);
const struct stream *s;
@ -1276,19 +1276,19 @@ Java_com_tutpro_baresip_Call_call_1stats(JNIEnv *env, jobject thiz, jlong call,
}
JNIEXPORT jboolean JNICALL
Java_com_tutpro_baresip_Call_call_1has_1video(JNIEnv *env, jobject thiz, jlong call)
Java_com_tutpro_baresip_Api_call_1has_1video(JNIEnv *env, jobject thiz, jlong call)
{
return call_has_video((struct call *)call) ? true : false;
}
JNIEXPORT jboolean JNICALL
Java_com_tutpro_baresip_Call_call_1replaces(JNIEnv *env, jobject thiz, jlong call)
Java_com_tutpro_baresip_Api_call_1replaces(JNIEnv *env, jobject thiz, jlong call)
{
return call_supported((struct call *)call, REPLACES) ? true : false;
}
JNIEXPORT jboolean JNICALL
Java_com_tutpro_baresip_Call_call_1replace_1transfer(JNIEnv *env, jobject thiz, jlong xferCall, jlong call)
Java_com_tutpro_baresip_Api_call_1replace_1transfer(JNIEnv *env, jobject thiz, jlong xferCall, jlong call)
{
re_thread_enter();
int res = call_replace_transfer((struct call *)xferCall, (struct call *)call);

View File

@ -59,6 +59,20 @@ object Api {
external fun ua_answer(uap: Long, callp: Long, video: Int)
external fun ua_debug(uap: Long)
external fun call_connect(callp: Long, peer_uri: String): Int
external fun call_hold(callp: Long, hold: Boolean): Int
external fun call_ismuted(callp: Long): Boolean
external fun call_transfer(callp: Long, peer_uri: String): Int
external fun call_send_digit(callp: Long, digit: Char): Int
external fun call_notify_sipfrag(callp: Long, code: Int, reason: String)
external fun call_start_audio(callp: Long)
external fun call_audio_codecs(callp: Long): String
external fun call_duration(callp: Long): Int
external fun call_stats(callp: Long, stream: String): String
external fun call_has_video(callp: Long): Boolean
external fun call_replaces(callp: Long): Boolean
external fun call_replace_transfer(xfer_callp: Long, callp: Long): Boolean
external fun calls_mute(mute: Boolean)
external fun message_send(uap: Long, peer_uri: String, message: String, time: String): Int

View File

@ -25,29 +25,29 @@ class Call(val callp: Long, val ua: UserAgent, val peerUri: String, val dir: Str
}
fun connect(uri: String): Boolean {
return call_connect(callp, uri) == 0
return Api.call_connect(callp, uri) == 0
}
fun hold(): Boolean {
return call_hold(callp, true) == 0
return Api.call_hold(callp, true) == 0
}
fun resume(): Boolean {
return call_hold(callp, false) == 0
return Api.call_hold(callp, false) == 0
}
fun transfer(uri: String): Boolean {
val err = call_hold(callp, true)
val err = Api.call_hold(callp, true)
if (err != 0)
return false
referTo = uri
return call_transfer(callp, uri) == 0
return Api.call_transfer(callp, uri) == 0
}
fun executeTransfer(): Boolean {
return if (this.onHoldCall != null) {
if (call_hold(callp, true) == 0)
call_replace_transfer(this.onHoldCall!!.callp, callp)
if (Api.call_hold(callp, true) == 0)
Api.call_replace_transfer(this.onHoldCall!!.callp, callp)
else
false
} else
@ -55,47 +55,33 @@ class Call(val callp: Long, val ua: UserAgent, val peerUri: String, val dir: Str
}
fun sendDigit(digit: Char): Int {
return call_send_digit(callp, digit)
return Api.call_send_digit(callp, digit)
}
fun notifySipfrag(code: Int, reason: String) {
call_notify_sipfrag(callp, code, reason)
Api.call_notify_sipfrag(callp, code, reason)
}
fun duration(): Int {
return call_duration(callp)
return Api.call_duration(callp)
}
fun stats(stream: String): String {
return call_stats(callp, stream)
return Api.call_stats(callp, stream)
}
fun audioCodecs(): String {
return call_audio_codecs(callp)
return Api.call_audio_codecs(callp)
}
fun replaces(): Boolean {
return call_replaces(callp)
return Api.call_replaces(callp)
}
init {
if (ua.account.mediaEnc != "") security = R.drawable.box_red
}
private external fun call_connect(callp: Long, peer_uri: String): Int
private external fun call_hold(callp: Long, hold: Boolean): Int
private external fun call_ismuted(callp: Long): Boolean
private external fun call_transfer(callp: Long, peer_uri: String): Int
private external fun call_send_digit(callp: Long, digit: Char): Int
private external fun call_notify_sipfrag(callp: Long, code: Int, reason: String)
private external fun call_start_audio(callp: Long)
private external fun call_audio_codecs(callp: Long): String
private external fun call_duration(callp: Long): Int
private external fun call_stats(callp: Long, stream: String): String
private external fun call_has_video(callp: Long): Boolean
private external fun call_replaces(callp: Long): Boolean
private external fun call_replace_transfer(xfer_callp: Long, callp: Long): Boolean
companion object {
fun calls(): ArrayList<Call> {