我想在 Skype 通话结束时运行一个程序,有没有办法使用 C#.NET 来检测这样的操作?有什么图书馆可以帮助我吗?我找不到任何!
理想情况下,我想检测任何 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 方法中实现您的逻辑。