
Compartir:
Manik es ingeniero de software sénior. Le gusta trabajar con desarrolladores y crear API. Cuando no está construyendo APIs o SDKs, se le puede encontrar hablando en conferencias y meetups.
Vonage Video API Versión 2.18: Novedades y cómo usarla
Tiempo de lectura: 3 minutos
El equipo de la Video API de Vonage recientemente lanzó una nueva versión del Client SDK de Vonage Video - v2.18 (anteriormente TokBox OpenTok). Esta publicación es un resumen de las nuevas funciones y cómo puedes usarlas. Cubriré el lanzamiento de nuestro último SDK para Linux, la función IP Proxy, las actualizaciones de las estadísticas de WebRTC, las mejoras en la seguridad, ¡y mucho más!
SDK para Linux
Me complace compartir que hemos agregado soporte completo para Vonage Video Linux SDK para X86_64 en Debian 10. Este nuevo SDK tiene una API en C con las mismas primitivas que nuestros otros Video Client SDK.
El kit de desarrollo de software de Linux abre muchas nuevas posibilidades de uso, desde aplicaciones de escritorio nativas hasta la transmisión basada en cámaras IP. Aunque no estamos añadiendo soporte para otras arquitecturas de referencia y sabores de Linux en este momento, vamos a proporcionar el SDK no compatible construye en el Centro de desarrollo de Video de Vonage.
Puede encontrar las muestras en nuestro GitHub y la documentación completa de la API en el centro de desarrolladores.
Proxy IP
Para admitir casos de uso en los que los usuarios finales sólo pueden agregar IP y dominios específicos a su lista de permitidos, estamos lanzando la API de proxy IP que permitirá a las aplicaciones enrutar todo el tráfico HTTPS y WS de Vonage Video a través de su servidor proxy inverso.
Para añadirlo a su aplicación, consulte el código de ejemplo que figura a continuación:
JavaScript
OT.setProxyUrl('https://mycustomproxy.com'); Swift
let settings = OTSessionSettings()
settings.proxyUrl = "https://mycustomproxy.com"
let session = OTSession(apiKey: apiKey, sessionId: sessionId, delegate: self, settings: settings) Java
Session session = new Session.Builder(context, apiKey, sessionId).setProxyUrl("https://mycustomproxy.com").build(); C#
csharp var session = new Session(context, apiKey, sessionId, proxyUrl: "https://mycustomproxy.com") C
otc_session_settings* otc_settings = otc_session_settings_new();
otc_session_settings_set_proxy_url(otc_settings, "https://mycustomproxy.com");
otc_session* session = otc_session_new_ex(apiKey, sessionId, &sessionCb, otc_settings);
En el ejemplo anterior, estamos codificando el archivo proxyUrlsin embargo, en casos de uso en producción, se recomienda obtener el código proxyUrl de su servidor de aplicaciones justo cuando obtiene las credenciales para conectar la sesión. Este enfoque le permitirá cambiar el proxyUrl en tiempo de ejecución según sea necesario.
Puede encontrar la documentación y guías en el Centro para desarrolladores de Vonage Video. Ten en cuenta que esta función está disponible como complemento.
getRtcStatsReport
Como seguimos viendo cada vez más casos de uso con nuestra Video API y WebRTC, queremos equipar a nuestros desarrolladores con estadísticas completas de WebRTC para permitir un análisis independiente de la calidad de la conexión multimedia.
Me complace compartir que con Vonage Video JS SDK 2.18.0 ahora puedes recopilar las estadísticas WebRTC sin procesar ni transformar a medida que el navegador las transmite. Estas estadísticas te permitirán descubrir métricas como el tiempo que tarda en codificarse un fotograma para que puedas usarlo para evaluar el impacto en la CPU.
// Get the raw stats from the publisher in a relayed session.
async function collectStats() {
try {
const pubStats = await publisher.getRtcStatsReport();
// Print publisher raw stats on the console.
pubStats.forEach(({ subscriberId, connectionId, rtcStatsReport }) => {
console.log(`Raw stats for subscriber ${subscriberId} with connectionId ${connectionId}`);
rtcStatsReport.forEach(console.log);
});
} catch(err) {
console.log(err);
}
}
// Get the raw stats from the publisher in a routed session.
async function collectStats() {
try {
const pubStats = await publisher.getRtcStatsReport();
// Print publisher raw stats on the console.
pubStats.forEach(({ rtcStatsReport }) => {
rtcStatsReport.forEach(console.log);
});
} catch(err) {
console.log(err);
}
}
// Get the raw stats from the subscriber.
async function collectStats() {
try {
const subStats = await subscriber.getRtcStatsReport();
// Print subscriber raw stats on the console.
subStats.forEach(console.log);
} catch (error) {
console.log(err);
}
}
API de captura y liberación de cámaras del SDK de Android
En la versión anterior v2.17.0, añadimos varias mejoras a nuestro SDK de Android para hacerlo más estable que las versiones anteriores. Con esas mejoras, recibimos algunas peticiones de nuestros desarrolladores para añadir nuevas API que les permitan liberar directamente la cámara y volver a capturarla.
Para añadir más control al SDK, hemos añadido una API para hacer precisamente eso a través de los métodos onStop y onRestart.
class PublisherKit {
// ...
/**
* This method will release any resource tied to the publisher.
* It will stop capturing and then it will release the camera.
* Please note that after calling this method if you plan to reuse the publisher again
* you need to call onRestart
*/
public void onStop() {
}
public void onRestart() {
}
} Capa HD de Video escalable para Windows SDK
Video escalable se lanzó por primera vez con el SDK de Vonage Video Windows 2.14, que mejora la calidad de vídeo en sesiones multipartitas.
Hoy lanzamos mejoras en nuestro SDK de Windows para transmitir de forma inteligente la resolución HD cuando se utiliza Scalable Video (donde esté disponible).
Seguridad para nuestros SDK
Abordamos la vulnerabilidad de WebRTC en el SCTP con parches de seguridad para los SDK de iOS, Android y Windows.
Con la versión 2.18.0 mejoramos aún más este aspecto añadiendo otras capas adicionales de protección. Además de las versiones cliente, también actualizamos nuestros servidores para bloquear cualquier canal de datos antes de que se hiciera pública la vulnerabilidad de WebRTC.
Introducción a las nuevas funciones
La versión 2.18.0 ya está disponible para API de Video de Vonage que funcionan en el entorno estándar, y planeamos lanzarla para el entorno empresarial a principios de octubre.
Para obtener más información y acceder a tutoriales para desarrolladores, visita Centro para desarrolladores de Vonage Video.