C#SIP Stack/Library
voip (19)
Estoy buscando una buena biblioteca SIP ya sea escrita en C # o que proporciona un contenedor C #. No necesariamente tiene que ser gratis. ¿Alguien ha usado algo bueno?
Para aclarar, estoy hablando del protocolo VoIP SIP.
Realmente estoy buscando más que una búsqueda en Google en este caso. Me gustaría que alguien vuelva y diga "Usamos ______, y funciona muy bien".
Para aclarar más, estoy buscando una biblioteca que me ayude a implementar un servidor proxy SIP sin tener que construir manualmente los paquetes SIP. No estoy buscando asterisk, freeswitch o cualquier otro software pbx.
Estoy buscando crear un servicio en C #, que espere paquetes SIP y responda a ellos, y me gustaría una biblioteca que maneje la mayoría de los detalles.
Aquí hay una pareja con la que me encontré:
En mi humilde opinión, una de las mejores pilas es, por lejos, PJSIP . Está escrito en C muy portátil y tiene varias envolturas. Aquí hay un contenedor .NET que funciona realmente bien.
Esto me parece interesante ... http://developers.inova.si/sipobjects/Default.aspx?tabid=92 - no es de código abierto, pero definitivamente está centrado en .NET. Está centrado en Avaya por lo que puede no ser adecuado para tus propósitos.
También mira esto: http://www.codeplex.com/mysipswitch
He visto (no usado directamente, solo revisé) un sistema VOIP bastante grande y estable que usa una pila SIP de Radware. Muy bueno (es decir, sin problemas), y tampoco encontré ningún problema de seguridad con ...
El sistema que revisé estaba en C #.
Konnetic proporciona componentes SIP totalmente administrados para el desarrollo de .NET.
Su .NET SIP SDK es probablemente el más completo.
De lo contrario, el servidor Lync de Microsoft viene con una muy buena biblioteca administrada SIP, disponible aquí: www.microsoft.com/en-us/lync/default.aspx
LanScape: http://www.lanscapecorp.com/
Todos los productos LanScape VOIP, incluido el LanScape VOIP Media Engine ™, se diseñaron desde cero para admitir todas las versiones de Microsoft Windows® 2000 y XP hasta la última versión de Windows Vista inclusive.
También sé personalmente que es C-amigable.
Lea acerca de Avaya DMCC. Puede registrarse en AvayaDev y descargarlo gratis. Ese marco C # le permite aprovechar todas las funciones de pbx con AES y CM. Puede verificar si tiene SIP también.
Lo mejor que encontré fue VoIP Video SIP SDK También proporcionó video con alta calidad
Lo necesité hace un tiempo y terminé escribiendo mi propio B2BUA (un proxy SIP que también maneja el audio y actúa como un punto final para ambos lados de la conversación).
El problema con la especificación SIP (y RTP) es que es muy complicado, especialmente si considera todas las adiciones opcionales que se le han hecho a lo largo de los años. Todo el mundo lo implementa de forma un poco diferente, por lo que si utiliza un software empaquetado, es posible que tenga problemas con teléfonos o servidores específicos.
En mi caso, estaba intentando que Microsoft Speech Server se comunicara con los terminadores SIP. Microsoft tiene una interpretación especialmente creativa de la especificación SIP (el ejemplo más notable es que no admiten UDP). Además, algunas pasarelas VOIP no admiten REFER para las transferencias supervisadas, que es una necesidad para muchas aplicaciones.
Se proporcionaron varios enlaces decentes en las otras respuestas: mi consejo es lanzar el suyo propio o ir con algo de código abierto para que pueda modificarlo cuando sea necesario cuando se encuentre con las inevitables incompatibilidades en las implementaciones de SIP.
Mi proyecto de sipsortería es otra opción. Contiene una pila SIP escrita completamente en C #.
No estoy seguro de lo que estás buscando aquí. ¿Estás buscando una aplicación VOIP del lado del cliente o una del servidor? Si es este último, es posible que desee comprobar FreeSwitch. Una característica que tienen es la capacidad de escribir código de extensión en Mono, que permite C #. Busque soporte de mod_mono.
Parece que un punto de partida decente podría ser este artículo de CodeProject . Sin embargo, no creo que maneje el flujo de medios.
Prueba los elementos de voz .
Es una herramienta de telefonía .NET y tienen su propia pila SIP. Use C # o el lenguaje .NET que desee.
Realicé una búsqueda similar hace 7 años, pero busqué una versión C incrustada. Miré la biblioteca oSIP . Hizo todo el trabajo de convertir paquetes SIP a estructuras y viceversa.
Sin embargo, un punto de la documentación me quedó grabado. El autor recomienda que se familiarice con la especificación SIP ( RFC 3261 ) para utilizar la biblioteca de manera efectiva. Después de leer las especificaciones varias veces, terminé escribiendo mi propio analizador y aplicación de control de llamadas.
Tenga en cuenta que SIP sigue siendo un estándar en evolución. Hay un grupo de SIPForum activo que actualmente está desarrollando SIPConnect 1.1 para estandarizar en una interfaz entre un proveedor de servicios SIP (por ejemplo, Vonage) y un SIP-PBX. También hay una actividad llamada BLISS para definir las "mejores prácticas" para implementar las características SIP entre los Agentes de usuario.
La interoperabilidad es difícil. Hay cientos de RFC relacionadas con SIP. Diferentes puntos finales usan diferentes, y las interpretaciones de las especificaciones no son siempre compatibles. Hay varios eventos de prueba diferentes de interoperabilidad (como SIPit ) para garantizar que su implementación funcione con otros.
Independientemente de lo que seleccione, asegúrese de comprender bien las especificaciones de las funciones que está implementando. Además, las especificaciones y bibliotecas ayudarán con el paquete, pero aún necesita una biblioteca de "control de llamadas" ("cerebro" de nivel superior para decidir cómo procesar una solicitud / respuesta SIP). También necesita una capa de medios para manejar el audio a menos que su aplicación sea puramente un proxy SIP.
Habiendo dicho todo eso, varios proveedores de servicios de telefonía por Internet (ITSP) han utilizado el enrutador SIP Express como proxy de acceso directo para sus servicios. Es muy configurable y tiene una alta tasa de éxito para la compatibilidad.
Tal vez quieras probar Lumisoft. Completamente construir en C #. Completamente de código abierto y gratuito. lumisoft
Usamos http://www.independentsoft.com/sip/index.html , funciona bien para nosotros.
Lo usamos para esperar paquetes SIP y mantener el flujo SIP muy simple.
Tenga en cuenta que a veces su modelo de objeto es demasiado detallado, por lo que el producto en sí es muy flexible (si necesita tal flexibilidad). Sin embargo, escribimos un contenedor de nivel superior (una especie de fachada) solo para facilitarnos las cosas. Son muy receptivos, pero la documentación no es lo suficientemente detallada IMO.
También puedes verificar nsip (solo un enlace, no lo he probado yo mismo)
http://www.konnetic.com es una adición relativamente nueva. Totalmente administrado. Todo lo que necesita para trabajar con SIP y SDP. No han escogido la fruta de bajo costo en el estándar como muchas otras. Igual de bueno pero vinculado a Microsoft es el servidor Microsoft Lync.
LumiSoft.Net es una muy buena pila de SIP para C #. Tiene todas las bibliotecas básicas como SIP
, RTP
, SDP
, DNS
y muchas otras librerías para construir un servidor sip proxy robusto o un cliente SIP muy fácilmente.
En el pasado, he usado Live Communications Server de MS (pensé que era en 2003). El SDK asociado fue bastante malo.
Ahora está la nueva versión, Office Communications Server. No me he desarrollado con el SDK, pero he visto algunas demos que fueron geniales.