2017-01-16 2 views
0

Я пытаюсь подключиться к Tapi, который он подключен на другом ПК, но IENumAddress возвращает значение null. Как я могу указать ip сервера?Подключиться к TAPI 3

tobj = new TAPIClass(); 
      tobj.Initialize(); 
      IEnumAddress ea=tobj.EnumerateAddresses(); 
      ITAddress ln; 
      uint arg3=0; 
      lines=0; 

      cn=new callnotification(); 
      cn.addtolist=new callnotification.listshow(this.status); 
      tobj.ITTAPIEventNotification_Event_Event+= new TAPI3Lib.ITTAPIEventNotification_EventEventHandler(cn.Event); 
      tobj.EventFilter=(int)(TAPI_EVENT.TE_CALLNOTIFICATION| 
       TAPI_EVENT.TE_DIGITEVENT| 
       TAPI_EVENT.TE_PHONEEVENT| 
       TAPI_EVENT.TE_CALLSTATE| 
       TAPI_EVENT.TE_GENERATEEVENT| 
       TAPI_EVENT.TE_GATHERDIGITS| 
       TAPI_EVENT.TE_REQUEST); 

      for(int i=0;i<10;i++) 
      { 
       ea.Next(1,out ln,ref arg3); 
       ia[i]=ln; 
       if(ln!=null) 
       { 
        comboBox1.Items.Add(ia[i].AddressName); 
        lines++; 
       } 
       else 
        break; 
      } 

В этой линии у меня есть проблемы

IEnumAddress ea=tobj.EnumerateAddresses(); 
+0

Будьте осторожны с использованием функциональности TAPI непосредственно из .NET, она не играет хорошо с самогенерированным слоем взаимодействия COM и тем, как выпущены определенные объекты. Иногда это будет работать нормально, в других случаях это не так, с неясными проблемами, возникающими в зависимости от используемого драйвера TAPI и используемой телефонной системы. –

+0

Какой у вас pbx? Перед этим кодом вам нужно установить поставщика tsp. –

ответ

1

Вы не можете: ТАПИ Application и TSP (= TAPI Service Provider А.К.А. ТАПИ драйвера) должны быть на том же сервере.

Смежные вопросы