mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-20 12:38:09 +00:00
Implement some conference functions.
This commit is contained in:
parent
fb0dfb524b
commit
038190233c
6 changed files with 52 additions and 22 deletions
|
|
@ -157,6 +157,30 @@ int linphone_core_enter_conference(LinphoneCore *lc){
|
|||
return 0;
|
||||
}
|
||||
|
||||
int linphone_core_add_all_to_conference(LinphoneCore *lc) {return 0;}
|
||||
int linphone_core_terminate_conference(LinphoneCore *lc) {return 0;}
|
||||
int linphone_core_get_conference_size(LinphoneCore *lc) {return 0;}
|
||||
int linphone_core_add_all_to_conference(LinphoneCore *lc) {
|
||||
MSList *calls=lc->calls;
|
||||
while (calls) {
|
||||
LinphoneCall *call=(LinphoneCall*)calls->data;
|
||||
calls=calls->next;
|
||||
if (!call->current_params.in_conference) {
|
||||
linphone_core_add_to_conference(lc, call);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
int linphone_core_terminate_conference(LinphoneCore *lc) {
|
||||
MSList *calls=lc->calls;
|
||||
while (calls) {
|
||||
LinphoneCall *call=(LinphoneCall*)calls->data;
|
||||
calls=calls->next;
|
||||
if (call->current_params.in_conference) {
|
||||
linphone_core_terminate_call(lc, call);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
int linphone_core_get_conference_size(LinphoneCore *lc) {
|
||||
return ms_audio_conference_size(lc->conf_ctx.conf);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2425,13 +2425,13 @@ int linphone_core_terminate_call(LinphoneCore *lc, LinphoneCall *the_call)
|
|||
* @param lc The LinphoneCore
|
||||
**/
|
||||
int linphone_core_terminate_all_calls(LinphoneCore *lc){
|
||||
while(lc->calls)
|
||||
{
|
||||
LinphoneCall *the_call = lc->calls->data;
|
||||
linphone_core_terminate_call(lc,the_call);
|
||||
MSList *calls=lc->calls;
|
||||
while(calls) {
|
||||
LinphoneCall *c=(LinphoneCall*)calls->data;
|
||||
calls=calls->next;
|
||||
linphone_core_terminate_call(lc,c);
|
||||
}
|
||||
ms_list_free(lc->calls);
|
||||
return -1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1363,6 +1363,14 @@ extern "C" jint Java_org_linphone_core_LinphoneCoreImpl_getCallsNb(JNIEnv *env,j
|
|||
return ms_list_size(linphone_core_get_calls((LinphoneCore *) pCore));
|
||||
}
|
||||
|
||||
extern "C" void Java_org_linphone_core_LinphoneCoreImpl_transferCall(JNIEnv *env,jobject thiz,jlong pCore, jlong pCall, jstring jReferTo) {
|
||||
const char* cReferTo=env->GetStringUTFChars(jReferTo, NULL);
|
||||
linphone_core_transfer_call((LinphoneCore *) pCore, (LinphoneCall *) pCall, cReferTo);
|
||||
env->ReleaseStringUTFChars(jReferTo, cReferTo);
|
||||
}
|
||||
extern "C" void Java_org_linphone_core_LinphoneCoreImpl_transferCallToAnother(JNIEnv *env,jobject thiz,jlong pCore, jlong pCall, jlong pDestCall) {
|
||||
linphone_core_transfer_call_to_another((LinphoneCore *) pCore, (LinphoneCall *) pCall, (LinphoneCall *) pDestCall);
|
||||
}
|
||||
|
||||
extern "C" void Java_org_linphone_core_LinphoneCoreImpl_setZrtpSecretsCache(JNIEnv *env,jobject thiz,jlong pCore, jstring jFile) {
|
||||
if (jFile) {
|
||||
|
|
|
|||
|
|
@ -35,12 +35,6 @@ public interface LinphoneCall {
|
|||
static private Vector values = new Vector();
|
||||
private final int mValue;
|
||||
public final int value() {return mValue;}
|
||||
public static final int ID_INCOMING_RECEIVED=1;
|
||||
public static final int ID_OUTGOING_RINGING=4;
|
||||
public static final int ID_STREAMS_RUNNING=7;
|
||||
public static final int ID_PAUSED=9;
|
||||
public static final int ID_CALL_END=13;
|
||||
public static final int ID_PAUSED_BY_REMOTE=14;
|
||||
|
||||
private final String mStringValue;
|
||||
/**
|
||||
|
|
@ -50,7 +44,7 @@ public interface LinphoneCall {
|
|||
/**
|
||||
* Incoming call received.
|
||||
*/
|
||||
public final static State IncomingReceived = new State(ID_INCOMING_RECEIVED,"IncomingReceived");
|
||||
public final static State IncomingReceived = new State(1,"IncomingReceived");
|
||||
/**
|
||||
* Outgoing call initialiazed.
|
||||
*/
|
||||
|
|
@ -62,7 +56,7 @@ public interface LinphoneCall {
|
|||
/**
|
||||
* Outgoing call ringing.
|
||||
*/
|
||||
public final static State OutgoingRinging = new State(ID_OUTGOING_RINGING,"OutgoingRinging");
|
||||
public final static State OutgoingRinging = new State(4,"OutgoingRinging");
|
||||
/**
|
||||
* Outgoing call early media
|
||||
*/
|
||||
|
|
@ -74,7 +68,7 @@ public interface LinphoneCall {
|
|||
/**
|
||||
* Streams running
|
||||
*/
|
||||
public final static State StreamsRunning = new State(ID_STREAMS_RUNNING,"StreamsRunning");
|
||||
public final static State StreamsRunning = new State(7,"StreamsRunning");
|
||||
/**
|
||||
* Paussing
|
||||
*/
|
||||
|
|
@ -82,7 +76,7 @@ public interface LinphoneCall {
|
|||
/**
|
||||
* Paused
|
||||
*/
|
||||
public final static State Paused = new State(ID_PAUSED,"Paused");
|
||||
public final static State Paused = new State(9,"Paused");
|
||||
/**
|
||||
* Resuming
|
||||
*/
|
||||
|
|
@ -98,12 +92,12 @@ public interface LinphoneCall {
|
|||
/**
|
||||
* Call end
|
||||
*/
|
||||
public final static State CallEnd = new State(ID_CALL_END,"CallEnd");
|
||||
public final static State CallEnd = new State(13,"CallEnd");
|
||||
|
||||
/**
|
||||
* Paused by remote
|
||||
*/
|
||||
public final static State PausedByRemote = new State(ID_PAUSED_BY_REMOTE,"PausedByRemote");
|
||||
public final static State PausedByRemote = new State(14,"PausedByRemote");
|
||||
|
||||
/**
|
||||
* The call's parameters are updated, used for example when video is asked by remote
|
||||
|
|
|
|||
|
|
@ -610,4 +610,8 @@ public interface LinphoneCore {
|
|||
void terminateAllCalls();
|
||||
@SuppressWarnings("unchecked") List getCalls();
|
||||
int getCallsNb();
|
||||
|
||||
|
||||
void transferCall(LinphoneCall call, String referTo);
|
||||
void transferCallToAnother(LinphoneCall callToTransfer, LinphoneCall destination);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit 90be72f669f3c5067c571b0f29f22eda21166006
|
||||
Subproject commit bd3e6772c9636002aed44f3056b20f265fd35281
|
||||
Loading…
Add table
Reference in a new issue