コード例 #1
0
ファイル: incall_view.c プロジェクト: ApOgEE/linphone-sdk
void linphone_gtk_hold_clicked(GtkButton *button){
	int active=GPOINTER_TO_INT(g_object_get_data(G_OBJECT(button),"active"));
	LinphoneCall *call=linphone_gtk_get_currently_displayed_call ();
	if(!active)
	{
		linphone_core_pause_call(linphone_gtk_get_core(),call);
	}
	else
	{
		linphone_core_resume_call(linphone_gtk_get_core(),call);
	}
}
コード例 #2
0
ファイル: incall_view.c プロジェクト: mjpak0109/linphone
void linphone_gtk_record_call_toggled(GtkWidget *button) {
    gboolean active=gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button));
    gboolean is_conf=FALSE;
    const char *filepath;
    gchar *message;
    LinphoneCore *lc=linphone_gtk_get_core();
    LinphoneCall *call=linphone_gtk_get_currently_displayed_call(&is_conf);
    GtkWidget *callview;
    GtkWidget *label;
    if (call) {
        const LinphoneCallParams *params;
        callview=(GtkWidget*)linphone_call_get_user_pointer (call);
        params=linphone_call_get_current_params(call);
        filepath=linphone_call_params_get_record_file(params);
        label=linphone_gtk_get_widget(callview,"record_status");
    } else if (is_conf) {
        GtkWidget *mw=linphone_gtk_get_main_window();
        callview=(GtkWidget *)g_object_get_data(G_OBJECT(linphone_gtk_get_main_window()),"conf_frame");
        label=linphone_gtk_get_widget(callview,"conf_record_status");
        filepath=(const char*)g_object_get_data(G_OBJECT(mw),"conf_record_path");
        if (filepath==NULL) {
            filepath=linphone_gtk_get_record_path(NULL,TRUE);
            g_object_set_data_full(G_OBJECT(mw),"conf_record_path",(char*)filepath,g_free);
        }
    } else {
        g_warning("linphone_gtk_record_call_toggled(): bug.");
        return;
    }
    message=g_strdup_printf(_("<small><i>Recording into\n%s %s</i></small>"),filepath,active ? "" : _("(Paused)"));

    if (active) {
        if (call)
            linphone_call_start_recording(call);
        else
            linphone_core_start_conference_recording(lc,filepath);
    } else {
        if (call)
            linphone_call_stop_recording(call);
        else
            linphone_core_stop_conference_recording(lc);

    }
    gtk_label_set_markup(GTK_LABEL(label),message);
    g_free(message);
}
コード例 #3
0
ファイル: incall_view.c プロジェクト: mjpak0109/linphone
void linphone_gtk_auth_token_verified_clicked(GtkButton *button) {
    LinphoneCall *call=linphone_gtk_get_currently_displayed_call(NULL);
    if (call) {
        linphone_call_set_authentication_token_verified(call,!linphone_call_get_authentication_token_verified(call));
    }
}
コード例 #4
0
ファイル: incall_view.c プロジェクト: mjpak0109/linphone
static void linphone_gtk_transfer_call(LinphoneCall *dest_call) {
    LinphoneCall *call=linphone_gtk_get_currently_displayed_call(NULL);
    if (call) linphone_core_transfer_call_to_another(linphone_gtk_get_core(),call,dest_call);
}