我正在使用Asternet作为我的经理程序,这样员工只需点击一下就可以给客户打电话。但我想找出如何取消或中断给客户的电话。当我点击呼叫按钮,分机呼叫。当我拿起电话,它开始拨号给客户,一个窗口显示员工的进展。但是我加了一个按钮这样员工就可以取消电话了。但我找不到任何事件或功能来停止给客户打电话。
manager = new ManagerConnection(host, port, username, password);
manager.DialBegin += Manager_DialBegin;
manager.DialEnd += Manager_DialEnd;
manager.Hangup += Manager_Hangup;
manager.PingInterval = 0;
try
{
manager.Login();
OriginateAction oc = new OriginateAction();
oc.Context = "from-internal";
oc.Priority = "1";
oc.Channel = "SIP/100";
oc.CallerId = "100";
oc.Exten = lblPhoneNumber.Text;
oc.Timeout = 30000;
oc.Async = true;
manager.SendAction(oc, null);
}
catch (ManagerException ex)
{
var sendMail = Task.Run(async () => await Email.SendMail(Properties.Settings.Default.SmtpEmailLogAddress, "", "", "Error connecting to Asterisk",
"Could not connect to the Asterisk-server for employee: " + Functions.GetEmployeeByID(Manager.Employee_ID),
true, "", System.Net.Mail.MailPriority.Normal));
}谢谢!
发布于 2022-07-02 20:04:13
啊,找了又找,找到了。在button_click事件中添加:
HangupAction hangup = new HangupAction(yourCallId);
manager.SendAction(hangup, 10000);
//Or var result = manager.SendAction(hangup, 10000).IsSuccess();
//Note that your manager must be private within your classhttps://stackoverflow.com/questions/72839533
复制相似问题