热点科技

标题: [求助] 语音猫拨打电话请教 [打印本页]

作者: sdsabc2000    时间: 2006-9-15 12:57
标题: [求助] 语音猫拨打电话请教
语音猫拨打电话请教
有没有用过语音猫的朋友。
最近弄到一块语音猫,在语音猫的speaker、MIC插孔上插上我的耳机和麦克风,通过超级终端可以拨出电话号码,对方可以接听,我可以听到对方的讲话,但是对方听不到我的麦克风里的声音。
请教有过这种应用的朋友,怎么设置才能使对方听到声音。
我不想用那些电话软件。
作者: cqtangyi    时间: 2006-9-15 12:58
我用C# 通过TAPI3写了一段拨号程序,可以正常拨号,对方也可以接听,但是却听不到我的声音,我可以听到他的。和用超级终端一样,我觉得不应该是程序的问题,应该是我的硬件设置的问题。请教有过这种应用的朋友,你们是怎么做的。


C#代码如下:
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using TAPI3Lib;
  9. namespace MyTAPI_CS_1
  10. {
  11.      public partial class Form1 : Form
  12.     {
  13.         public delegate void eventHandler(TAPI3Lib.CALL_STATE cs, string str);
  14.         private TAPIClass tapiclass;
  15.         private ITAddress[] itaddress=new ITAddress[10];
  16.         private IEnumAddress ienumaddress;
  17.         private ITBasicCallControl itbasiccallctrl;
  18.         private int currentline=0;
  19.         public Form1()
  20.         {
  21.             InitializeComponent();
  22.         }
  23.         private void Form1_Load(object sender, EventArgs e)
  24.         {
  25.             uint reg=0;
  26.             tapiclass = new TAPIClass();
  27.             tapiclass.Initialize();
  28.             //添加TAPI事件处理
  29.             tapiclass.ITTAPIEventNotification_Event_Event += new ITTAPIEventNotification_EventEventHandler(this.Event);
  30.             tapiclass.EventFilter = (int)(TAPI_EVENT.TE_CALLNOTIFICATION |
  31.                 TAPI_EVENT.TE_DIGITEVENT |
  32.                 TAPI_EVENT.TE_PHONEEVENT |
  33.                 TAPI_EVENT.TE_CALLSTATE |
  34.                 TAPI_EVENT.TE_GENERATEEVENT |
  35.                 TAPI_EVENT.TE_GATHERDIGITS |
  36.                 TAPI_EVENT.TE_REQUEST);
  37.             groupBox1.Enabled = false;
  38.             ienumaddress = tapiclass.EnumerateAddresses();
  39.             for (int i = 0; i < 10; i++)
  40.             {
  41.                 ienumaddress.Next(1, out itaddress[i], ref reg);
  42.                 if (itaddress[i] != null)
  43.                 {
  44.                     comboBox1.Items.Add(itaddress[i].AddressName);
  45.                 }
  46.                 else
  47.                     break;
  48.             }
  49.         }
  50.         private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
  51.         {
  52.             int reg;
  53.             currentline = comboBox1.SelectedIndex;
  54.             reg=tapiclass.RegisterCallNotifications(itaddress[currentline], true, true, TapiConstants.TAPIMEDIATYPE_AUDIO, 2);
  55.             MessageBox.Show("注册线路的事件处理,返回值:"+reg.ToString());
  56.             groupBox1.Enabled = true;
  57.         }
  58.         //拨号
  59.         private void button1_Click(object sender, EventArgs e)
  60.         {
  61.             itbasiccallctrl = itaddress[currentline].CreateCall(textBox1.Text, TapiConstants.LINEADDRESSTYPE_PHONENUMBER, TapiConstants.TAPIMEDIATYPE_AUDIO);
  62.             itbasiccallctrl.Connect(false);
  63.         }
  64.         //挂机
  65.         private void button2_Click(object sender, EventArgs e)
  66.         {
  67.             itbasiccallctrl.Disconnect(DISCONNECT_CODE.DC_NORMAL);
  68.         }
  69.         public void eventdispose(TAPI3Lib.CALL_STATE cs, string str)
  70.         {
  71.             listBox1.Items.Add(str);
  72.         }
  73.         public void Event(TAPI3Lib.TAPI_EVENT te, object eobj)
  74.         {
  75.             string str = "";
  76.             switch (te)
  77.             {
  78.                 case TAPI3Lib.TAPI_EVENT.TE_CALLSTATE:
  79.                     TAPI3Lib.ITCallStateEvent itcallstateevent = (TAPI3Lib.ITCallStateEvent)eobj;
  80.                     TAPI3Lib.ITCallInfo itcallinfo = itcallstateevent.Call;
  81.                     switch (itcallinfo.CallState)
  82.                     {
  83.                         case TAPI3Lib.CALL_STATE.CS_OFFERING:
  84.                             str = "ring";
  85.                             Invoke(new eventHandler(eventdispose), TAPI3Lib.TAPI_EVENT.TE_CALLSTATE, str);
  86.                             break;
  87.                     }
  88.                     break;
  89.             }
  90.         }
  91.     }
  92. }
复制代码

作者: sana    时间: 2006-9-15 13:20
音量设置,录音选项,选中麦克风。
作者: jayxu521    时间: 2006-9-17 08:53
原帖由 地狱小子 于 2006-9-15 13:20 发表
音量设置,录音选项,选中麦克风。
能否说详细一些。




欢迎光临 热点科技 (http://www.itheat.com/activity/) Powered by Discuz! X3.2