
Compartilhar:
Manik é engenheiro de software sênior. Ele gosta de trabalhar com desenvolvedores e criar APIs. Quando não está desenvolvendo APIs ou SDKs, é possível encontrá-lo palestrando em conferências e encontros.
Video API da Vonage, versão 2.18: Novidades e como você pode usá-la
Tempo de leitura: 3 minutos
A equipe da Video API da Vonage lançou recentemente uma nova versão do Client SDK do Cliente de Vídeo da Vonage — v2.18 (anteriormente conhecido como TokBox OpenTok). Esta postagem apresenta uma visão geral dos novos recursos e de como você pode utilizá-los. Abordarei o lançamento do nosso mais recente SDK para Linux, o recurso IP Proxy, atualizações nas estatísticas do WebRTC, melhorias na segurança e muito mais!
SDK do Linux
Tenho o prazer de informar que adicionamos suporte completo ao SDK de vídeo da Vonage para Linux (X86_64) no Debian 10. Esse novo SDK possui uma API em C com as mesmas primitivas dos nossos outros Client SDKs de vídeo.
O SDK do Linux abre caminho para muitos novos casos de uso, que vão desde aplicativos nativos para desktop até transmissões por meio de câmeras IP. Embora não estejamos adicionando suporte a outras arquiteturas de referência e versões do Linux no momento, disponibilizaremos as compilações do SDK não suportadas no Centro de Desenvolvedores de Video da Vonage.
Você pode encontrar os exemplos no nosso GitHub e a documentação completa da API no centro de desenvolvedores.
Proxy de IP
Para atender aos casos de uso em que os usuários finais só podem adicionar IPs e domínios específicos à sua lista de permissões, estamos lançando a API IP Proxy, que permitirá que as Applications encaminhem todo o tráfego HTTPS e WS do Vonage Video por meio de seu servidor de proxy reverso.
Para adicioná-lo ao seu aplicativo, confira o código de exemplo abaixo:
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);
No exemplo acima, estamos definindo o valor de forma estática proxyUrl; no entanto, em cenários de produção, recomendamos buscar o proxyUrl do servidor de aplicativos, da mesma forma que você busca as credenciais para conectar a sessão. Essa abordagem permitirá que você altere o proxyUrl em tempo de execução, conforme necessário.
Você pode encontrar a documentação e os guias no Centro de Desenvolvedores do Vonage Video. Observe que esse recurso está disponível como um complemento.
getRtcStatsReport
À medida que observamos cada vez mais casos de uso com nossa Video API e o WebRTC, queremos fornecer aos nossos desenvolvedores estatísticas completas do WebRTC para permitir uma análise independente da qualidade da conexão de mídia.
Tenho o prazer de informar que, com o Vonage Video JS SDK 2.18.0, agora é possível coletar as estatísticas WebRTC brutas, sem transformação, à medida que o navegador as transmite. Essas estatísticas permitirão que você identifique métricas como o tempo que leva para codificar um quadro, para que você possa usá-las para avaliar o impacto na 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);
}
}
APIs de captura e liberação da câmera do SDK do Android
Na versão anterior, v2.17.0, adicionamos várias melhorias ao nosso SDK para Android a fim de torná-lo mais estável do que as versões anteriores. Com essas melhorias, recebemos alguns pedidos de nossos desenvolvedores para adicionar novas APIs que lhes permitam liberar diretamente a câmera e recuperá-la.
Para ampliar o controle sobre o SDK, adicionamos uma API que permite exatamente isso por meio dos métodos onStop e 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() {
}
} Camada de vídeo HD escalável para o SDK do Windows
Vídeo escalável foi lançado pela primeira vez com o Vonage Video Windows SDK 2.14, que melhora a qualidade do vídeo em sessões com vários participantes.
Hoje, estamos lançando melhorias no nosso SDK do Windows para transmitir de forma inteligente em resolução HD ao usar o Scalable Video (onde disponível).
Segurança dos nossos SDKs
Corrigimos a vulnerabilidade do WebRTC no SCTP por meio de patches de segurança para os SDKs do iOS, Android e Windows.
Estamos aprimorando ainda mais essa proteção com a versão 2.18.0, adicionando outras camadas de proteção. Além das atualizações do cliente, também atualizamos nossos servidores para bloquear quaisquer canais de dados antes que a vulnerabilidade do WebRTC fosse divulgada.
Introdução aos novos recursos
A versão 2.18.0 já está disponível para clientes da Video API da Vonage que utilizam o ambiente padrão, e planejamos lançá-la para o Ambiente Empresarial no início de outubro.
Para saber mais e acessar os tutoriais para desenvolvedores, acesse Centro de Desenvolvedores de Video da Vonage.