static void skype_CallStatus(Call pCall, TCallStatus Status) { if (Status == TCallStatus.clsInProgress && pCall.PartnerHandle == SkypeID) { pCall.StartVideoSend(); } }
void Core_CallStatus(Call pCall, TCallStatus Status) { if (Status == TCallStatus.clsRinging) { onCallReceived(pCall, Status); } }
public void skype_CallStatus(Call call, TCallStatus status) { try { if (status == TCallStatus.clsRinging && call.Type != TCallType.cltOutgoingP2P) { if (skypeCalls == 0) { try { call.Answer(); } catch { } } else { try { call.Finish(); skype.SendMessage(call.PartnerHandle, Properties.Settings.Default.waitMessage); } catch { } } } } catch (InvalidCastException e) { } }
private void onSkypeCallStatus(Call call, TCallStatus status) { switch (status) { //new call //TODO: check why clsInprogress doesnt work here! case TCallStatus.clsRinging: TCallType type = call.Type; if ((type == TCallType.cltIncomingP2P) || (type == TCallType.cltOutgoingP2P)) { foreach (DCallStartedHandler callStartedHandler in callStartedHandlers) { callStartedHandler(call.PartnerHandle, call.Id, type == TCallType.cltOutgoingP2P); } } break; //call closed case TCallStatus.clsMissed: case TCallStatus.clsFinished: case TCallStatus.clsRefused: case TCallStatus.clsCancelled: foreach (DCallEndedHandler callEndedHandler in callEndedHandlers) { callEndedHandler(call.PartnerHandle, call.Id); } break; default: Logger.log(TLogLevel.logEverything, "Info: Call status changed to: " + status); break; } }
private void Skype_CallStatus(Call pCall, TCallStatus Status) { if (Status == TCallStatus.clsInProgress) { axWindowsMediaPlayer1.URL = @"C:\Users\CurrentUser\Desktop\alert.wav"; axWindowsMediaPlayer1.Ctlcontrols.play(); } }
private void callStatusChangedEvent(ICall iCall, TCallStatus newStatus) { if (iCall.Id != this.call.Id) { return; } logger.Info("Status changed (ID = " + iCall.Id + "): " + newStatus); }
private void OnCallStatusChanged(Call call, TCallStatus status, Action <string> onCallStarted, Action <string> onCallEnded) { if (status == TCallStatus.clsRinging || status == TCallStatus.clsRouting) { onCallStarted(status.ToString()); } else if (status == TCallStatus.clsFinished || status == TCallStatus.clsRefused) { onCallEnded(status.ToString()); } }
private void Skype_CallStatus(Call pCall, TCallStatus Status) { if (skypeManager.Logger.IsDebugEnabled) { skypeManager.Logger.Debug("Skype_CallStatus " + Status); } var callStatus = Status.ToCallStatus(); skypeManager.PublishCallStatus(callStatus); }
void Core_onCallReceived(Call pCall, TCallStatus Status) { foreach (var script in allScripts) { var test = script.getOnMessageFunc(); if (test != null) { test(pCall, Status); } } }
private void Skype_CallStatus(Call pCall, TCallStatus Status) { if (Status == TCallStatus.clsRinging) { //Currently ringing (either calling ,or being called) } if (Status == TCallStatus.clsFinished) { //hung up } //osv }
private void CallStatus(Call call, TCallStatus status) { createCaller(call.Id, status); if ((status == TCallStatus.clsBusy || status == TCallStatus.clsCancelled || status == TCallStatus.clsFailed || status == TCallStatus.clsFinished)) { //end the call Command command = new Command(); command.Command = "hook on"; m_skype.SendCommand(command); incall = false; emailsent = false; } }
private void CallStatus(Call call, TCallStatus status) { System.Console.WriteLine("Call Status:" + converter.CallStatusToText(status)); System.Console.WriteLine("Call: " + converter.CallTypeToText(call.Type)); if (status == TCallStatus.clsRinging && (call.Type == TCallType.cltIncomingPSTN || call.Type == TCallType.cltIncomingP2P)) { System.Console.WriteLine("Incomming Call"); } if ((status == TCallStatus.clsBusy || status == TCallStatus.clsCancelled || status == TCallStatus.clsFailed || status == TCallStatus.clsFinished)) { System.Console.WriteLine("Ending Call"); try { Command hook = new Command(); hook.Command = "hook on"; oSkype.SendCommand(hook); hook.Command = "hook off"; oSkype.SendCommand(hook); radioButton2.Checked = false; } catch { } Console.WriteLine("Active Calls: " + oSkype.ActiveCalls.Count.ToString()); if (oSkype.ActiveCalls.Count == 0) { Console.WriteLine("Sending Email..."); sendmail(); Progress = false; Console.WriteLine("Email Sent"); CheckMail.Enabled = true; } } if ((status == TCallStatus.clsInProgress)) { if (Progress == false) { Progress = true; inProgress(); } System.Console.WriteLine("In Progress - muting"); ((ISkype)oSkype).Mute = true; Console.WriteLine("Recording"); radioButton2.Checked = true; call.set_OutputDevice(TCallIoDeviceType.callIoDeviceTypeFile, "C:/Users/Robert/skype/" + call.Id.ToString() + ".wav"); recordings.Add("C:/Users/Robert/skype/" + call.Id.ToString() + ".wav"); } }
protected override void Skype_CallStatus(Call pCall, TCallStatus Status) { try { if (Status.Equals(TCallStatus.clsFinished)) { Trigger(); } } catch (Exception ex) { ErrorLog.AddError(ErrorType.Failure, string.Format(Strings.Error_EventCantBeTriggered, Strings.ReceiveCall_Title)); Logger.Write(ex); } }
void OnSkypeCallStatus(Call call, TCallStatus status) { log.Info("SkypeCallStatus: {0}", status); if (status == TCallStatus.clsInProgress) { OnCallStarted(call); } else if (status == TCallStatus.clsFinished) { OnCallFinished(false); } else { log.Info("SkypeCallStatus: {0}", status); } }
static void SkypeObj__ISkypeEvents_Event_CallStatus(Call pCall, TCallStatus Status) { #if DEBUG Console.WriteLine("通话时长为:" + pCall.Duration); Console.WriteLine("SkypeObj__ISkypeEvents_Event_CallStatus" + System.DateTime.Now.ToShortTimeString() + "当前状态为:" + Status.ToString()); #endif foreach (TCallStatus status in failedStatus) { if (Status == status) { HandOff(); } } // pCall. }
public void Skype_CallStatus(Call call, TCallStatus status) { // Write Call Status to Window this.textBox1.AppendText("Call Status: " + skype.Convert.CallStatusToText(status)); this.textBox1.AppendText(" - " + status.ToString() + Environment.NewLine); this.textBox1.ScrollToCaret(); if ((status > TCallStatus.clsUnplaced) && (status < TCallStatus.clsOnHold) && (status != TCallStatus.clsFailed)) { // Could Start or Stop something when a call starts here } else { // Could Stop or Resume something when a call stops here } }
private void OnCallStatus(Call call, TCallStatus status) { switch (status) { case TCallStatus.clsRinging: if (call.Type == TCallType.cltIncomingP2P || call.Type == TCallType.cltIncomingPSTN) { if (calls.FirstOrDefault(c => call.PartnerHandle == c.PartnerHandle) == null) { calls.Add(call); CallEvent(IncomingCall, new CallEventArgs(call)); } } break; case TCallStatus.clsInProgress: break; case TCallStatus.clsLocalHold: break; case TCallStatus.clsOnHold: break; case TCallStatus.clsTransferring: break; case TCallStatus.clsTransferred: break; case TCallStatus.clsRemoteHold: break; case TCallStatus.clsEarlyMedia: break; default: { if (calls != null) { calls.RemoveAll(n => n.PartnerHandle == call.PartnerHandle); } } break; } }
private void skype_CallStatus(Call call, TCallStatus status) { if (status == TCallStatus.clsRinging) { if (call.PartnerHandle == txbConsultant.Text) { call.Answer(); Point screenBounds = ScreenBounds; SkypeAutomation.SkypeObj.SendMessage(txbConsultant.Text, string.Format("screenbounds({0},{1})", screenBounds.X, screenBounds.Y)); SkypeAutomation.ShareFullScreen(); } else { call.Finish(); } } }
public void skype_CallStatus(Call call, TCallStatus status) { try { if (status == TCallStatus.clsInProgress) { _dispatcher.BeginInvoke((Action)(() => { selectedSkypeChatUser = call.PartnerHandle.ToString(); labelSelectedUser.Content = call.PartnerDisplayName.ToString(); })); } } catch { } }
/// <summary> /// Change status call (voice) /// </summary> /// <remarks> /// Voice message /// </remarks> /// <param name="call">talk to person</param> /// <param name="status">status of talk</param> private void ChangeCallStatus(Call call, TCallStatus status) { try { //call is now calling if (status == TCallStatus.clsRinging) { //this person calling -> call.PartnerDisplayName; } //press disallow else if (status == TCallStatus.clsRefused) { } //press stop else if (status == TCallStatus.clsCancelled) { } //talk is now progress else if (status == TCallStatus.clsInProgress) { //record voice string uniqueLabel = string.Empty; uniqueLabel = DateTime.Now.ToString(); uniqueLabel = uniqueLabel.Replace(":", ""); uniqueLabel = uniqueLabel.Replace(" ", ""); uniqueLabel = uniqueLabel.Replace("-", ""); call.set_CaptureMicDevice(TCallIoDeviceType.callIoDeviceTypeFile, tempVoiceDirectory + "\\" + uniqueLabel + "speaker.wav"); call.set_CaptureMicDevice(TCallIoDeviceType.callIoDeviceTypeFile, tempVoiceDirectory + "\\" + uniqueLabel + "microfon.wav"); } //call is finish (now can wav convert to mp3) else if (status == TCallStatus.clsFinished) { } } catch (Exception ex) { ErrorCode = ex.Message; } }
private caller createCaller(int id, TCallStatus status) { caller call = new caller(); call.id = id; call.status = status; Console.WriteLine("Creating caller: " + call); if (!checkCallExists(call)) { calls.Add(call); } else { ((caller)calls[findID(id)]).status = status; } return(call); }
private void OnCallStatusChanged(Call call, TCallStatus status) { switch (status) { case TCallStatus.clsInProgress: break; case TCallStatus.clsCancelled: break; case TCallStatus.clsFinished: break; case TCallStatus.clsRinging: break; //. //. //. } // call.PstnNumber; // call.PstnStatus; }
private void skype_CallStatus(Call call, TCallStatus Status) { switch (Status) { case TCallStatus.clsRinging: if (_skype.ActiveCalls.Count > 1) { foreach (Call activeCall in _skype.ActiveCalls) { call.Join(activeCall.Id); break; } } else call.Answer(); break; default: break; } }
void OnSkypeCallStatus(Call call, TCallStatus status) { log.Info("SkypeCallStatus: {0}", status); if (status == TCallStatus.clsInProgress) { this.call = call; call.set_CaptureMicDevice(TCallIoDeviceType.callIoDeviceTypePort, MicPort.ToString()); call.set_InputDevice(TCallIoDeviceType.callIoDeviceTypeSoundcard, ""); call.set_OutputDevice(TCallIoDeviceType.callIoDeviceTypeFile, SkypeFx.Properties.Settings.Default["LogPath"] + "\\" + Util.MakeValidFileName(call.PartnerDisplayName + "_" + System.DateTime.Now.ToString("yyMMdd-HHmmss.wav"))); call.set_InputDevice(TCallIoDeviceType.callIoDeviceTypePort, OutPort.ToString()); } else if (status == TCallStatus.clsFinished) { call = null; lock (outStreamLock) { outStream.Dispose(); } micStream.Dispose(); } }
private void skype_CallStatus(Call call, TCallStatus status) { if (status == TCallStatus.clsRinging) { if (call.PartnerHandle == txbConsultant.Text) { call.Answer(); Point screenBounds = ScreenBounds; SkypeAutomation.SkypeObj.SendMessage(txbConsultant.Text, string.Format("screenbounds({0},{1})", screenBounds.X, screenBounds.Y)); SkypeAutomation.ShareFullScreen(); } else call.Finish(); } }
private void Skype_CallStatus(Call aCall, TCallStatus aStatus) { switch (aStatus) { case TCallStatus.clsRinging: // A call is ringing, see if it is us calling or // someone calling us if (aCall.Type == TCallType.cltIncomingP2P || aCall.Type == TCallType.cltIncomingPSTN) { // Make sure this isn't a SkypeOut call request if (aCall.PartnerHandle.Equals(_strMobileUser)) { WriteToLog("SkypeOut call from " + _strMobileUser); WriteToLog("Allowing call to be forwarded by Skype"); return; } // Incoming call, we need to initiate forwarding WriteToLog("Answering call from " + aCall.PartnerHandle); aCall.Answer(); this._intIncomingCallId = aCall.Id; aCall.set_InputDevice(TCallIoDeviceType.callIoDeviceTypeSoundcard, "default"); aCall.set_InputDevice(TCallIoDeviceType.callIoDeviceTypePort, "1"); string strWavPath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "\\PleaseWait.wav"; aCall.set_InputDevice(TCallIoDeviceType.callIoDeviceTypeFile, strWavPath); System.Threading.Thread.Sleep(8000); aCall.set_InputDevice(TCallIoDeviceType.callIoDeviceTypeFile, ""); WriteToLog("Placing call on hold"); aCall.Hold(); // Check to see if we need to foward this to // a configured SkypeIn mapping string strTargetNumber; if (this._colSkypeInMappings.ContainsKey(aCall.TargetIdentity)) { // Yes set the target to the configured value strTargetNumber = this._colSkypeInMappings[aCall.TargetIdentity]; WriteToLog("Calling SkypeIn forwarding number " + strTargetNumber); } else { // No, use the mobile user strTargetNumber = this._strMobileUser; WriteToLog("Calling mobile user"); } System.Threading.Thread.Sleep(500); try { Call oCall = _objSkype.PlaceCall(strTargetNumber, null, null, null); this._intOutgoingCallId = oCall.Id; } catch (Exception ex) { WriteToLog("Error trying to call target: " + ex.Message); } } break; case TCallStatus.clsInProgress: // We have a new call opened. Make sure it's our outgoing call if (aCall.Id == this._intOutgoingCallId) { // Yes, the target user has answered. WriteToLog("Target user has answered, attempting to join calls"); foreach (Call objCall in _objSkype.ActiveCalls) { if (objCall.Id == this._intIncomingCallId) { WriteToLog("Joining the calls..."); objCall.Join(aCall.Id); WriteToLog("Taking incoming call off hold"); objCall.Resume(); } } } break; case TCallStatus.clsFinished: // Someone has hung up, end the call WriteToLog("Someone has hung up. Attempting to end the conference"); foreach (Conference objConf in _objSkype.Conferences) { foreach (Call objCall in objConf.Calls) { if (objCall.Id == this._intIncomingCallId || objCall.Id == this._intOutgoingCallId) { System.Threading.Thread.Sleep(500); try { objCall.Finish(); } catch (Exception) { } try { objConf.Finish(); } catch (Exception) { } } } } break; default: // Something else? if ((aCall.Type == TCallType.cltOutgoingP2P || aCall.Type == TCallType.cltOutgoingPSTN) && ( aCall.Status == TCallStatus.clsCancelled || aCall.Status == TCallStatus.clsFailed || aCall.Status == TCallStatus.clsMissed || aCall.Status == TCallStatus.clsRefused || aCall.Status == TCallStatus.clsVoicemailPlayingGreeting || aCall.Status == TCallStatus.clsVoicemailRecording ) ) { WriteToLog("Error calling target user: "******"Redirecting to voicemail"); // End the other call foreach (Call objCall in _objSkype.ActiveCalls) { if (objCall.Id == this._intOutgoingCallId) { try { objCall.Finish(); } catch (Exception ex) { WriteToLog("Error trying to end voicemail call: " + ex.Message); } } } // Now redirect the incoming call foreach (Call objCall in _objSkype.ActiveCalls) { if (objCall.Id == this._intIncomingCallId) { System.Threading.Thread.Sleep(500); try { //objCall.Resume(); objCall.RedirectToVoicemail(); objCall.Finish(); //objCall.Status = TCallStatus.clsFinished; } catch (Exception ex) { WriteToLog("Error trying to divert to voicemail: " + ex.Message); objCall.Finish(); } } } } break; } }
// **** TransferredBy seems to always be empty here. **** public void OurCallTransferStatusChanged(Call call, TCallStatus status) { // Always use try/catch with ANY Skype calls. try { // Write Call Transfer Status Changed to Window. AddTextToTextBox1(DateTime.Now.ToLocalTime() + ": " + "Call Transfer Status Changed - Call Id: " + call.Id + " - Type Converted: " + skype.Convert.CallTypeToText(call.Type) + " - Type: " + call.Type + " - PartnerHandle: " + call.PartnerHandle + " - TargetIdentity: " + call.TargetIdentity + " - Transferred To: " + call.TransferredTo + " - Transferred By: " + call.TransferredBy + " - Transfer Active: " + call.TransferActive + " - Call Transfer Status Changed - TCallStatus Converted Status: " + skype.Convert.CallStatusToText(status) + " - TCallStatus: " + status + " - Duration: " + call.Duration + " - Rate: " + call.Rate + " - Rate Currency: " + call.RateCurrency + " - Rate Precision: " + call.RatePrecision); // If this call is from a SkypeIn/Online number, show which one. if (call.Type == TCallType.cltIncomingPSTN) AddTextToTextBox1(" - From Online Number: " + call.TargetIdentity); // Write end of line, new line to Window. AddTextToTextBox1("\r\n"); } catch (Exception e) { // Possibly old Skype4COM version, log an error, drop into debug if wanted. AddTextToTextBox1(DateTime.Now.ToLocalTime() + ": " + "Call Transfer Status Changed Event Fired - Bad Text" + " - Exception Source: " + e.Source + " - Exception Message: " + e.Message + "\r\n"); // If the "Use Auto Debug" check box is checked and we are in debug, drop into debug here when retry, otherwise, prompt for action. Debug.Assert(!this.UseAutoDebug.Checked); } }
protected abstract void Skype_CallStatus(Call pCall, TCallStatus Status);
private caller createCaller(int id, TCallStatus status) { caller call = new caller(); call.id = id; call.status = status; Console.WriteLine("Creating caller: " + call); if (!checkCallExists(call)) { calls.Add(call); } else { ((caller)calls[findID(id)]).status = status; } return call; }
private void Skype_CallStatus(Call pCall, TCallStatus status) { if (Logger.IsDebugEnabled) { Logger.Debug("TextToSpeechBehaviour Skype_CallStatus " + status); } if (status == TCallStatus.clsRinging) { synthesizer.SpeakAsync(string.Format("{0}", pCall.PartnerDisplayName)); } }
private void MainForm_CallStatus(Call pCall, TCallStatus status) { Log(String.Format("Call Stats Changed: {0}", status.ToString())); switch (status) { case TCallStatus.clsUnknown: break; case TCallStatus.clsUnplaced: break; case TCallStatus.clsRouting: break; case TCallStatus.clsEarlyMedia: break; case TCallStatus.clsFailed: break; case TCallStatus.clsRinging: Log(String.Format("Calling {0}({1})", pCall.PartnerDisplayName, pCall.PartnerHandle)); break; case TCallStatus.clsInProgress: Log(String.Format("Calling {0}({1})", pCall.PartnerDisplayName, pCall.PartnerHandle)); break; case TCallStatus.clsOnHold: break; case TCallStatus.clsFinished: break; case TCallStatus.clsMissed: break; case TCallStatus.clsRefused: break; case TCallStatus.clsBusy: break; case TCallStatus.clsCancelled: break; case TCallStatus.clsLocalHold: break; case TCallStatus.clsRemoteHold: break; case TCallStatus.clsVoicemailBufferingGreeting: break; case TCallStatus.clsVoicemailPlayingGreeting: break; case TCallStatus.clsVoicemailRecording: break; case TCallStatus.clsVoicemailUploading: break; case TCallStatus.clsVoicemailSent: break; case TCallStatus.clsVoicemailCancelled: break; case TCallStatus.clsVoicemailFailed: break; case TCallStatus.clsTransferring: break; case TCallStatus.clsTransferred: break; } }
private void callStatusChangedEvent(ICall iCall, TCallStatus newStatus) { if (iCall.Id != this.call.Id) return; logger.Info("Status changed (ID = " + iCall.Id + "): " + newStatus); }
public void Skype_CallStatus(Call call, TCallStatus status) { // Write Call Status to Window this.textBox1.AppendText("Call Status: " + skype.Convert.CallStatusToText(status)); this.textBox1.AppendText( " - " + status.ToString() + Environment.NewLine); this.textBox1.ScrollToCaret(); if ((status > TCallStatus.clsUnplaced) && (status < TCallStatus.clsOnHold) && (status != TCallStatus.clsFailed)) { // Could Start or Stop something when a call starts here } else { // Could Stop or Resume something when a call stops here } }
private void ChangeCallStatus(Call call, TCallStatus status) { try { //call is now calling string storefilelocation = ""; Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); if (config.AppSettings.Settings["localVoiceRecordsPath"].Value != null && config.AppSettings.Settings["localVoiceRecordsPath"].Value!="") { if (!Directory.Exists(config.AppSettings.Settings["localVoiceRecordsPath"].Value.Replace(",", ""))) { Directory.CreateDirectory(config.AppSettings.Settings["localVoiceRecordsPath"].Value.Replace(",", "")); } storefilelocation = config.AppSettings.Settings["localVoiceRecordsPath"].Value.Replace(",", "") + "\\"; } else { MessageBox.Show("Local sound file location does not exist"); return; } lblCallStatus.Visible = true; if (status == TCallStatus.clsRinging) { //this person calling -> call.PartnerDisplayName; lblCallStatus.Text = "now calling"; } //press disallow else if (status == TCallStatus.clsRefused) { lblCallStatus.Text = "Refuse"; } //press stop else if (status == TCallStatus.clsCancelled) { lblCallStatus.Text = "Cancell"; } //talk is now progress else if (status == TCallStatus.clsInProgress) { picSound.Visible = true; lblCallStatus.Text = "Call progress"; //record voice //call.set_OutputDevice(TCallIoDeviceType.callIoDeviceTypeFile, storefilelocation + "in.wav"); //call.set_CaptureMicDevice(TCallIoDeviceType.callIoDeviceTypeFile, storefilelocation + "capture.wav"); call.set_OutputDevice(TCallIoDeviceType.callIoDeviceTypeFile, storefilelocation + "in.wav"); call.set_CaptureMicDevice(TCallIoDeviceType.callIoDeviceTypeFile, storefilelocation + "capture.wav"); } //call is finish (now can wav convert to mp3) else if (status == TCallStatus.clsFinished) { lblCallStatus.Visible = picSound.Visible = false; lblCallStatus.Text = "Call end"; MergeFiles(); if (skype != null) { Marshal.ReleaseComObject(skype); } skype = null; btnCall.Enabled = true; } } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } finally { } }
static void SkypeObj__ISkypeEvents_Event_CallStatus(Call pCall, TCallStatus Status) { #if DEBUG Console.WriteLine("通话时长为:"+pCall.Duration); Console.WriteLine("SkypeObj__ISkypeEvents_Event_CallStatus" + System.DateTime.Now.ToShortTimeString() + "当前状态为:" + Status.ToString()); #endif foreach (TCallStatus status in failedStatus) { if (Status == status) { HandOff(); } } // pCall. }
public void OurCallStatus(Call call, TCallStatus status) { try { if (call.VideoSendStatus == TCallVideoSendStatus.vssAvailable) { call.StartVideoSend(); } } catch { } // Always use try/catch with ANY Skype calls. try { if (status == TCallStatus.clsRinging) { if (numCalls == 0) { call.Answer(); callID = call.Id; numCalls++; } else if (numCalls == 1 && callID != call.Id) { try { this.BeginInvoke((Action)(() => { call.Finish(); })); } catch (InvalidCastException e) { } } } // If this call is from a SkypeIn/Online number, show which one. else if (call.Type == TCallType.cltIncomingP2P && status == TCallStatus.clsInProgress && call.Id == callID) { selectedSkypeChatUser = call.PartnerHandle.ToString(); this.BeginInvoke((Action)(() => { skype.SendMessage(selectedSkypeChatUser, Properties.Settings.Default.controllerMessage); })); chatUserSelected = true; user_combobox.ResetText(); user_combobox.SelectedText = call.PartnerHandle.ToString(); if (!skypeUserTabs.Contains(new SkypeUserTab(call.PartnerHandle))) { user_combobox.Items.Add(call.PartnerHandle); var newTabUser = new SkypeUserTab(call.PartnerHandle); skypeUserTabs.Add(newTabUser); tabUsers.Controls.Add(newTabUser.tabPage); } } else if (status == TCallStatus.clsFinished && call.Id == callID) { numCalls--; callID = 0; } } catch (Exception e) { } }
void OnSkypeCallStatus(Call call, TCallStatus status) { log.Info("SkypeCallStatus: {0}", status); if (status == TCallStatus.clsInProgress) { this.call = call; call.set_CaptureMicDevice(TCallIoDeviceType.callIoDeviceTypePort, MicPort.ToString()); call.set_InputDevice(TCallIoDeviceType.callIoDeviceTypeSoundcard, ""); call.set_OutputDevice(TCallIoDeviceType.callIoDeviceTypeFile, SkypeFx.Properties.Settings.Default["LogPath"]+"\\" + Util.MakeValidFileName(call.PartnerDisplayName + "_" + System.DateTime.Now.ToString("yyMMdd-HHmmss.wav"))); call.set_InputDevice(TCallIoDeviceType.callIoDeviceTypePort, OutPort.ToString()); } else if (status == TCallStatus.clsFinished) { call = null; lock (outStreamLock) { outStream.Dispose(); } micStream.Dispose(); } }
private void OnCallStatus(Call call, TCallStatus status) { switch (status) { case TCallStatus.clsRinging: if (call.Type == TCallType.cltIncomingP2P || call.Type == TCallType.cltIncomingPSTN) { if ( calls.FirstOrDefault(c => call.PartnerHandle == c.PartnerHandle ) == null ) { calls.Add(call); CallEvent(IncomingCall, new CallEventArgs(call)); } } break; case TCallStatus.clsInProgress: break; case TCallStatus.clsLocalHold: break; case TCallStatus.clsOnHold: break; case TCallStatus.clsTransferring: break; case TCallStatus.clsTransferred: break; case TCallStatus.clsRemoteHold: break; case TCallStatus.clsEarlyMedia: break; default: { if( calls != null ) calls.RemoveAll( n=> n.PartnerHandle == call.PartnerHandle); } break; } }
private void Skype_CallTransferStatusChanged(Call call, TCallStatus status) { this.Logger.Debug(System.Reflection.MethodBase.GetCurrentMethod().Name); }
private void Skype_CallStatus(Call pCall, TCallStatus Status) { SetOnCall(Status == TCallStatus.clsInProgress); }
public void OurCallStatus(Call call, TCallStatus status) { try { if (status == TCallStatus.clsInProgress /*call.VideoSendStatus == TCallVideoSendStatus.vssAvailable*/) { call.StartVideoSend(); } } catch { } // Always use try/catch with ANY Skype calls. try { if (status == TCallStatus.clsRinging) { if (numCalls == 0) { call.Answer(); callID = call.Id; numCalls++; } else if (numCalls == 1 && callID != call.Id) { try { this.BeginInvoke((Action)(() => { call.Finish(); })); } catch (InvalidCastException e) { } } } // If this call is from a SkypeIn/Online number, show which one. else if (call.Type == TCallType.cltIncomingP2P && status == TCallStatus.clsInProgress && call.Id == callID) { selectedSkypeChatUser = call.PartnerHandle.ToString(); this.BeginInvoke((Action)(() => { skype.SendMessage(selectedSkypeChatUser, Properties.Settings.Default.controllerMessage); })); chatUserSelected = true; user_combobox.ResetText(); user_combobox.SelectedText = call.PartnerHandle.ToString(); if (!skypeUserTabs.Contains(new SkypeUserTab(call.PartnerHandle))) { user_combobox.Items.Add(call.PartnerHandle); var newTabUser = new SkypeUserTab(call.PartnerHandle); skypeUserTabs.Add(newTabUser); tabUsers.Controls.Add(newTabUser.tabPage); } } else if (status == TCallStatus.clsFinished && call.Id == callID) { numCalls--; callID = 0; } } catch (Exception e) { } }
void skype_CallStatus(Call pCall, TCallStatus Status) { switch (Status) { case TCallStatus.clsBusy: case TCallStatus.clsCancelled: case TCallStatus.clsFailed: case TCallStatus.clsRefused: string msg = "Call between "; foreach(Participant participant in pCall.Participants) { msg += participant.Handle + ", "; } throw new CallWasUnsuccessfulException(msg + ". Call " + Status.ToString() + "."); default: break; } }
private void SkypeOnCallStatus(Call pCall, TCallStatus status) { Debug.WriteLine("SkypeOnCallStatus event fired. Call: {0}, Status: {1}", _skype.Convert.CallTypeToText(pCall.Type), _skype.Convert.CallStatusToText(status)); _callStatus = status; if (status == TCallStatus.clsFinished) { SetTrayIcon(false); } IList<Conference> activeConferences = _skype.Conferences.Cast<Conference>().ToList(); IList<Conference> finishedConferences = new List<Conference>(); foreach (Conference conference in ActiveConferences) { Conference c2 = conference; if (activeConferences.Any(c1 => c1 == c2) == false) { finishedConferences.Add(conference); } } foreach (Conference conference in ActiveConferences.Where(c => !activeConferences.Contains(c)).ToList()) { ActiveConferences.Remove(conference); } foreach (Conference conference in activeConferences.Where(c => !ActiveConferences.Contains(c)).ToList()) { ActiveConferences.Add(conference); } }