1
我想在Skype通話結束時運行程序,是否有任何方法可以使用C#.NET檢測此類操作?有沒有可以幫助我的圖書館?我找不到任何東西!是否有可能檢測VOIP呼叫何時開始和結束使用C#?
理想情況下,我想檢測任何VOIP類型的電話開始/結束。這可能嗎?
我想在Skype通話結束時運行程序,是否有任何方法可以使用C#.NET檢測此類操作?有沒有可以幫助我的圖書館?我找不到任何東西!是否有可能檢測VOIP呼叫何時開始和結束使用C#?
理想情況下,我想檢測任何VOIP類型的電話開始/結束。這可能嗎?
你見過SkypeKit?它允許設置回調,如這些。
我想是的。您可以使用Skype4COM用下面的代碼作爲起點:
using System;
using System.Windows.Forms;
using SKYPE4COMLib;
namespace SkypeCall
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
InitializeSkype();
}
private void InitializeSkype()
{
s = new Skype();
_ISkypeEvents_Event events = s;
events.AttachmentStatus += OnAttachementStatusChanged;
events.CallStatus += OnCallStatusChanged;
s.Attach();
}
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 OnAttachementStatusChanged(TAttachmentStatus status)
{
if (status == TAttachmentStatus.apiAttachSuccess)
{
attached = true;
}
}
private Skype s;
private bool attached;
}
}
和實施OnCallStatusChanged方法裏面你的邏輯。