人間が電話を持ち上げた瞬間にアクションを追加します(例:open Notepad
)。どちらevent
を使うべきですか?events
私はから多くを試しましたが、ManagerConnection
解決策を見つけることができませんでした。
編集:スクリーンショットと同じ機能を実行します(人間が電話を持ち上げたときに何かを作成します)。ADATプログラムにはこの機能があり、これもあります。
編集2:私は解決策を見つけました。サンプルコード:
イベントを購読する
managerConnection.NewState += new NewStateEventHandler(Monitoring_NewState);
private void Monitoring_NewState(object sender, NewStateEvent e)
{
string state = e.State;
string callerID = e.CallerId;
if ((state == "Ringing") | (e.ChannelState == "5"))
{
String connectedLineNum;
String connectedLineName;
Dictionary<String, String> attributes = e.Attributes;
attributes.TryGetValue("connectedlinenum", out connectedLineNum);
attributes.TryGetValue("connectedlinename", out connectedLineName);
// "callerID" - called phone number
// "connectedLineNum" - calling phone number
// CallIn. Incoming call
}
else if ((state == "Ring") | (e.ChannelState == "4"))
{
// CallOut. Outcoming call
}
else if ((state == "Up") | (e.ChannelState == "6"))
{
String connectedLineNum;
String connectedLineName;
Dictionary<String, String> attributes = e.Attributes;
attributes.TryGetValue("connectedlinenum", out connectedLineNum);
attributes.TryGetValue("connectedlinename", out connectedLineName);
// "callerID" - called phone number
// "connectedLineNum" - calling phone number
// human lifted up the phone right now
}
}