public Task <ReturnMessage> StartShareDoc() { Task <ReturnMessage> checkTask = _meetingManager.CheckMeetingServerStatus(); if (checkTask != null) { return(checkTask); } var tcs = new TaskCallback <ReturnMessage>("StartShareDoc"); if (_meetingManager.TaskCallbacks.ContainsKey(tcs.Name)) { _meetingManager.TaskCallbacks.Remove(tcs.Name); } _meetingManager.TaskCallbacks.Add(tcs.Name, tcs); var result = MeetingAgent.StartShareDoc(); if (result != 0) { ReturnMessage returnMessage; switch (result) { case -1006: returnMessage = MessageManager.DocVideoNotSet; break; case -1007: returnMessage = MessageManager.DocAudioNotSet; break; default: returnMessage = MessageManager.FailedToStartShareDoc; break; } return(Task.FromResult(returnMessage)); } return(tcs.Task); }