如何使用AsterNET发送动作,C#?

问题描述 投票:0回答:1

我正在使用AsterNET和C#,我需要获取所有扩展的状态,特别是Action:ExtensionStateList的结果,但是库没有此操作,我正在尝试创建它,但是我可以。明白了。我希望有人可以指导我。随附的代码。

    ResponseEvents re;
    try
    {
        re = manager.SendEventGeneratingAction(new ExtensionStateListAction());
    }
    catch (EventTimeoutException e)
    {
        re = e.PartialResult;
    }
    foreach (ManagerEvent e in re.Events)
    {
        foreach (KeyValuePair<string, string> d in e.Attributes)
        {
            Console.WriteLine(e);
        }
    }

using System;
using AsterNET.Manager.Event;
namespace AsterNET.Manager.Action
{
    public class ExtensionStateListAction : ManagerActionEvent
    {

        public override string Action
        {
            get { return "ExtensionStateList"; }
        }

        public override Type ActionCompleteEventClass()
        {
            return typeof (ExtensionStateListCompleteEvent);
        }
    }
}

namespace AsterNET.Manager.Event
{
    public class ExtensionStateListCompleteEvent : ResponseEvent
    {
        private int listItems;

        public int ListItems
        {
            get { return this.listItems; }
            set { this.listItems = value; }
        }

        public ExtensionStateListCompleteEvent(ManagerConnection source) 
            : base(source)
        {
        }
    }
}
c# visual-studio-2015 asterisk asternet
1个回答
0
投票

此命令的结果将出现在事件“ ExtensionState”和最终的“ ExtensionStateCompleate”集中

将是异步的。

您应该设置事件侦听器并对其进行解析。

© www.soinside.com 2019 - 2024. All rights reserved.