2013-03-13 10 views
5

いつかSkype dev APIをブラウジングしていて、SkypeがいくつかのAPI経由でアクティブなコールを実行しているかどうかを知る方法があるかどうかを知りたい場合。デスクトップクライアントでアクティブなSkypeコールがあるかどうかを確認する方法

Skype.Client.IsRunningは、Skypeアプリ自体が動作しているかどうか、また通話履歴などさまざまなことを知るいくつかの他のAPIがあるかどうかを示しますが、Skypeコールがあるかどうかを知る方法が見つかりませんでした現在アクティブです。

ご協力いただければ幸いです。ここで

+1

IIRC、Skypeは彼らが使用する特定のポートを持っている、あなたは活動 – KevinDTimm

+0

がありますかどうかを確認するために(wiresharkのだと思います)その上で嗅ぐことができSkypeがランダムに接続するために1024以上のポートを選択します。 https://support.skype.com/en/faq/FA148/which-ports-need-to-be-open-to-use-skype-for-windows-desktop – Sumant

+0

'スカイプをインストールするとランダムなポートが選択されます着信接続のために - あなたがこのポートを知っていれば、あなたは着信呼を嗅ぐことができます。 – KevinDTimm

答えて

1

:このコードは、任意のは、/エラー処理をクリーンアップ含まれていなかったことを

using System; 
using System.Windows.Forms; 
using SKYPE4COMLib; 

namespace SkypeTest 
{ 
    public partial class Form1 : Form 
    { 
     private ISkype _skype; 

     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      _skype = new SkypeClass(); 

      var events = (_ISkypeEvents_Event) _skype; 
      events.CallStatus += (call, status) => 
      { 
       System.Diagnostics.Debug.WriteLine(call.PartnerHandle); 

       Action<object, object> a = (partner, sta) => 
       { 
        textBox1.Text = partner.ToString() + " " + sta.ToString(); 
       }; 
       textBox1.Invoke(a, call.PartnerDisplayName, status.ToString()); 
      }; 
      _skype.Attach(); 
     } 
    } 
} 

注意。

これが役に立ちます。

+0

すごい!それは私が必要なものすべてthats :) – Sumant

0

は基本的にあなたがイベントを呼び出し、開始と終了のコールイベントをキャプチャし、あなた自身の本を行うに聞くSkype4Py

を使用していますSevabotでアクティブコールを確認する方法の例です呼び出しがアクティブである場合に保持します。あなたは、私はC#でサンプルを掲示していますことをacomplishしようとしている言語で指定されていないので、

関連する問題