fullcalendar - Como carregar todos os eventos no calendário usando ajax

Eu quero carregar todos os eventos no calendário completo usando o Ajax quando a página carregar. Estou recebendo resposta do Ajax. Mas o evento não é adicionado no calendário completo. aqui está o meu código jquery

$('#calendar').fullCalendar({
        theme: true,
        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'month,agendaWeek,agendaDay'
        },
        defaultDate: '2014-06-12',
        editable: true,
        events: function(start,end,callback){
            var mydata = {
                    action: "fw_ajax_callback",
                    subaction: "get_myappointments",

                };
                    $.ajax({
                    url :ajax_url,
                    type: 'POST',
                    data: mydata,
                    dataType: 'json',
                        success:function(appointments){
                            var events = [];
                            if(!!appointments){
                                $.map( appointments, function( r ) {
                                    events.push({
                                        title: r.title,
                                        start: r.start,
                                        end: r.start
                                    });
                                });
                            }
                            callback(events);
                        }

                })
        }
    });

No meu console, encontrei um erro informando que o retorno de chamada não é uma função.

questionAnswers(1)

yourAnswerToTheQuestion