Cómo construir un softphone (usando el protocolo SIP) usando C #

Tengo el desafío de construir un softphone SIP utilizando tecnologías c # o .net.

Guíame la tecnología, los requisitos y las especificaciones que se necesitan para construirlos.

Posibles requisitos:

Codecs soportados:

G.722.1, G.723.1, G.726, G.728, G.711, G.729, G.723.1, iLBC ,: G.711 (A y m-law), G.729A / B / D / E, AMR, GSM 6.10 / EFR, iLBC, Speex

Voz:

Monitoreo de calidad en tiempo real (MOS) 3 líneas telefónicas independientes
Respuesta automática / No molestar llamada
Reenvío de audio full duplex
La grabación comprime los datos de audio.

Softphone / dialer totalmente compatible con SIP para PC2Phone y Mobile2Phone (iPhone, Nokia N95), aplicaciones con symbian s60, debe proporcionar el código fuente completo.

Compatible con Windows 2000 / XP / 2003 / Vista / Mac

Característica transversal de NAT / Firewall

Funciona con cualquier servidor SIP de terceros

Soporta proxy saliente SIP

Muestra el saldo de la cuenta de las personas que llaman

Muestra el tiempo de crédito de la llamada

Cancelación automática de eco

Ajuste automático del buffer de jitter

Último número de rellamada

Historial de 10 últimos números marcados

Lista de usuarios de marcado rápido

Provisión rápida para clientes, solo se requiere nombre de usuario y contraseña

Respuestas a la pregunta(4)

Su respuesta a la pregunta