I would like to implement a telephone function (audio, receiving and making calls incl. notification handler) in C#. It is not important whether the call is actually "conducted" by the C# application or not, but the entire handling should take place in the C# application.

We use an OpenScape telephone system. The OpenScape Desktop Client software is currently installed on the PC, which acts as a softphone. I have found some C# examples to address this softphone via TAPI and to make calls. However, the call is then made in the Openscape Desktop Client and I no longer have access to it. I would like to have, if it is too complex to implement a complete softphone in C#, a background application that is configured once.

In the C# application I need:

  • Dial number
  • Accept call (incl. notification that a call is waiting)
  • Make call
  • Duration of the current call
  • Number of the caller
  • Transferring callers
  • Put caller on hold (and accept or make another call)

I have now taken a closer look at TAPI and SIP but do not understand which of the two interfaces is the right one for my application or whether there are other ways that I have not yet considered.

Can TAPI handle audio at all?

SIP seems to be the standard in the VoIP game but are there any libs that don't cost a fortune?

What are the advantages and disadvantages of the two approaches? There are some TAPI examples for C#, but somewhat fewer for SIP. Before I run off in the wrong direction, I would like to know your opinion on this.

TAPI examples tested but I was never able to receive a call but only to make a call (call was then transferred to OpenScape Desktop Client and processed there)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Browse other questions tagged or ask your own question.