如果同时对64线话路进行监听和录音,是否需要使用多线程?如果需要,又该如何使用呢?能否给出一点源代码?另外,远程实时监听又是如何实现的呢?

解决方案 »

  1.   

    如果在不同时间对不同的线路进行录音,是否要用timer控件来处理呢?
      

  2.   

    我就是搞这个的,当然也用timer处理了,东进D系列卡不支持多线程,远程监听,东进提供的有例子。
      

  3.   

    东金的卡不支持多线程主要是因为它的驱动不允许重入,就像DOS的中断重入一样。
    通常都是把整个监测的部分作为一个线程,里面是个大循环,轮询每个信道。
    如果通道不是很多或者每次循环的延迟不大,完全没必要用多线程。但也不能说完全没办法,我曾经封装了他的大部分函数,作了一个类,每个信道一个实例,在里面调用每个语音卡函数之前都首先用信号灯保证其他的信道没有在使用语音卡函数,执行完了在重置信号灯。然后每个通道一个线程,这样曾经实现过40通道的程序(不过原来循环的也没问题)。
      

  4.   

    可不可以用64个timer控制,即每一个timer控制一个通道,随时检测.这样行吗?因为还要将通话情况写入数据库!
      

  5.   

    当然不能用64个timer了,我测试过,64个通道在一个timer中不成问题。我们公司的交换机就是用的东进的语音卡,是我写的一点问题都没有,而且每次通话都记录通话时间,而且同时还录音。只要机器配置不要太低就可以了。
      

  6.   

    请问wlw88(飞扬),记录通话时间也是在Timer中实现吗?如果要计算话费,是否要使用数据库呢?比如,在判断通话结束时就将通话时间及通道号等信息车入到数据库中如sqlserver中?
    非常感谢指教!!!一定给分!!!
      

  7.   

    当然也是在timer中实现的了。