WebRTC mobile app development

A Innowise forneceu uma solução WebRTC móvel rica em funcionalidades para videoconferência e análise de chamadas com base em IA.

Cliente

Indústria
Tecnologia da informação
Região
UE
Cliente desde
2022

Our client, a tech company based in Europe, specializes in digital communication solutions. Operating in a competitive global market, they strive to enhance digital interactions for individuals and businesses.

As informações pormenorizadas sobre o cliente não podem ser divulgadas ao abrigo das disposições do NDA.

Desafio

The client reached out with a sophisticated video conferencing platform already in place, rich with AI-powered functionalities aimed at transforming online communications. Their platform had features like real-time call transcription, sentiment analysis during dialogues, in-depth conversation analytics, and more.

Estas funcionalidades melhoram a comunicação, oferecendo uma visão mais profunda das conversas, avaliando os tons emocionais e fornecendo resumos concisos das reuniões. Ao analisar a atividade em tempo real, os utilizadores podem identificar e resolver quaisquer lacunas de envolvimento, garantindo interacções suaves e produtivas.

Apesar de ter uma versão web robusta da sua plataforma, o cliente deparou-se com obstáculos na abordagem do público centrado nos telemóveis. A falta de uma solução de videoconferência móvel dedicada limitou o seu crescimento neste segmento.

As principais questões destacadas pelo cliente foram:

  • Paridade de funcionalidades: A necessidade de a aplicação móvel oferecer o mesmo conjunto abrangente de funcionalidades que a versão Web, garantindo uma experiência consistente em todos os dispositivos.
  • Integração de IA: Integração de algoritmos de IA para analisar registos de chamadas móveis, extrair informações, avaliar o estado de espírito das conversas e fornecer instantâneos resumidos das discussões aos utilizadores móveis.
  • Flexibilidade de autenticação: Incorporar métodos de início de sessão seguros, especialmente a integração com plataformas populares como a Google e a Apple, para aumentar a adoção pelos utilizadores.
  • Fluxo de vídeo optimizado: Gerir a qualidade do fluxo de vídeo de forma dinâmica para garantir a fluidez das chamadas, tendo em conta a diversidade de dispositivos móveis e as condições de rede.

Tendo em conta estes requisitos, o cliente contactou a Innowise para criar uma aplicação móvel que reflectisse os pontos fortes da plataforma Web, mas com a agilidade e as características adicionais adaptadas aos utilizadores móveis.

Solução

A nossa empresa de desenvolvimento de aplicações de videoconferência começou a conceber uma aplicação móvel personalizada para videoconferência alimentada por IA. Ao longo de 4 meses, desenvolvemos a versão móvel e integrámos transcrição em tempo real, reconhecimento de gestos, resumos de reuniões, personalização de horários, sincronização de chamadas e acessibilidade de notas de reuniões optimizadas para dispositivos móveis.

Calendário personalizado e gestão de horários

Para responder aos requisitos do cliente, a nossa equipa de desenvolvimento criou um widget de calendário personalizado, em vez de se basear em soluções prontas a utilizar. Vários factores influenciaram esta decisão:

  • Regras de apresentação: A aplicação móvel exigia regras de representação visual complexas. As reuniões deviam ser representadas com base nas suas durações, prioridades e tópicos para uma compreensão intuitiva. Quaisquer sobreposições ou reuniões simultâneas tinham de ser claramente visíveis para o utilizador. O tratamento das sobreposições exigiu o desenvolvimento de algoritmos para posicionar cada reunião com precisão e evitar a confusão visual. Esta granularidade de controlo era difícil de alcançar com soluções pré-construídas.
  • Integração com soluções existentes: Reconhecendo que os utilizadores dependem frequentemente de outras plataformas para o seu agendamento, a nossa solução oferece integrações com o Google Calendar e outras ferramentas de agendamento a pedido.
  • Ligação profunda e adesão instantânea a reuniões: A aplicação móvel permite que os utilizadores partilhem uma ligação de reunião com qualquer pessoa, mesmo com quem não tenha a aplicação. Ao clicar nesta ligação, abre-se a aplicação ou, se o destinatário não tiver a aplicação instalada, a reunião é iniciada na versão optimizada do browser.

Experiência de chamada enriquecida com integração de IA

A aplicação proporciona uma experiência de chamada interactiva adaptada às preferências e necessidades de cada participante. Para além das ofertas convencionais de vídeo e som, a aplicação destaca-se pelo reconhecimento de gestos e estados de espírito orientado por IA. Durante as chamadas, o sistema detecta e interpreta gestos específicos e expressões faciais feitas pelos utilizadores. Por exemplo, acenar para a câmara ou dar um polegar para cima pode ser reconhecido instantaneamente pela aplicação, que depois pode traduzir estes gestos em emojis de conversação, fornecendo uma pista visual a todos os participantes sobre as reacções de um indivíduo.

A nossa equipa implementou um sistema de vídeo adaptativo baseado em preferências. Dependendo das preferências do utilizador e das condições da rede, a qualidade do vídeo ajusta-se dinamicamente. Isto garante que, independentemente das limitações de largura de banda, os utilizadores têm uma experiência de chamada suave.

Todas as chamadas recebidas são registadas e armazenadas no back-end do sistema. Estes dados não só servem de registo, como também são analisados por IA para fornecer informações sobre a dinâmica da chamada. Quer se trate de compreender o estado de espírito da conversa através de transcrições analisadas por IA ou de reconhecer o nível de envolvimento dos participantes, o sistema fornece um feedback valioso aos utilizadores após a chamada.

Gravação de chamadas e análise pós-chamada

Tendo em conta a importância da análise pós-reunião, a nossa solução incorporou funcionalidades de gravação de chamadas. Os utilizadores não só podem gravar as suas sessões, como também podem revê-las com velocidades de reprodução variadas. A IA amplifica ainda mais esta experiência, dividindo a chamada em segmentos distintos com base em tópicos. 

Para aqueles que preferem uma visão geral concisa, o sistema de IA gera um resumo, destacando os pontos principais da discussão, as decisões tomadas e os itens de ação acordados. Esta funcionalidade é particularmente vantajosa para quem possa ter perdido a reunião ou necessite de uma rápida atualização.

A aplicação fornece uma análise de tendências ao longo do tempo. Ao acumular dados de reuniões consecutivas, os utilizadores podem seguir temas recorrentes, tópicos frequentemente discutidos ou problemas persistentes. Isto é fundamental para projectos de longo prazo em que o acompanhamento do progresso e a identificação de pontos problemáticos consistentes orientam as decisões estratégicas.

Outra caraterística é a identificação do orador. O sistema de IA consegue distinguir diferentes vozes e marcá-las, simplificando o processo de acompanhamento dos contributos dos oradores durante uma reunião para uma maior clareza. Isto é particularmente útil em reuniões maiores com vários participantes.

Além disso, para ajudar na preparação de futuras reuniões, a aplicação oferece uma análise preditiva. Ao examinar reuniões anteriores, pode sugerir potenciais tópicos ou questões que possam surgir, ajudando os participantes a prepararem-se melhor.

Todas estas ferramentas analíticas, outrora confinadas às plataformas de desktop, foram apresentadas na aplicação móvel, garantindo que os utilizadores podem obter informações a qualquer momento, sem comprometer a intuitividade.

Tecnologias e ferramentas

Dart, BloC, REST, GraphQL
Dart, Flutter, AutoRoute, Localização fácil
Protocolos de comunicação
WebRTC, WebSockets
Roteamento e navegação
AutoRoute
Localização
Localização fácil
Gestão do Estado
BloC

Processo

O nosso WebRTC estava em rigoroso alinhamento com a metodologia Agile, enfatizando a entrega iterativa, a adaptabilidade e os ciclos de feedback regulares. O processo foi detalhado da seguinte forma:
  • Fase de descoberta: Começámos por analisar a lista de funcionalidades que o cliente pretendia. Após uma análise minuciosa, os nossos especialistas avaliaram a viabilidade de cada funcionalidade e, subsequentemente, criaram pedidos individuais para as mesmas. A ausência de uma especificação técnica concreta exigiu que a nossa equipa fizesse referência à versão Web, assegurando que a experiência móvel mantivesse as funcionalidades principais.
  • Design UI/UX: Embora o cliente tenha fornecido os desenhos para a Web, o nosso papel foi fundamental na tradução desses desenhos para uma interface compatível com dispositivos móveis.
  • Desenvolvimento: Esta fase foi dividida em sprints, cada um terminando com uma demonstração ao cliente. Uma vez que o backend já estava implementado, os nossos programadores tiveram de estabelecer uma ligação estreita com a equipa de backend do cliente, assegurando a compatibilidade entre a infraestrutura existente e as nossas adaptações móveis.
  • Testes e controlo de qualidade: Os testes foram um processo contínuo conduzido em paralelo com o desenvolvimento, assegurando que quaisquer erros ou falhas emergentes fossem prontamente resolvidos.
  • Implementação e manutenção: Com a aplicação desenvolvida, o passo seguinte foi o seu lançamento, seguido do nosso empenho no seu apoio e aperfeiçoamento contínuos com base no feedback dos utilizadores.
A caraterística principal da nossa colaboração foi a utilização da solução WebRTC móvel como uma ferramenta de videoconferência para comunicar com o cliente. Inicialmente, utilizámos a sua versão Web e, à medida que o projeto avançava, as nossas reuniões passaram para a versão móvel que criámos. O Jira facilitou o acompanhamento de tarefas e o planeamento de sprints, garantindo a transparência das nossas operações.

Equipa

1
Gestor de projectos
2
Desenvolvedores
do Flutter
1
Chefe de equipa móvel
1
Engenheiro de QA

Expected results

Following the mobile video conferencing app launch, we expect strong adoption from the existing user base. The mobile-first approach will allow users to join meetings from anywhere, making participation more accessible than ever. Quick-invite links will streamline the process of adding new participants.

We anticipate a noticeable increase in new user registrations. This will reflect the app’s market appeal and solidify its position. In turn, we expect enhanced visibility and interest, leading to further investment opportunities.

Duração do projecto
  • maio de 2022 - setembro de 2022

60%

mobile app adoption among existing users
15-20%
reduction in bandwidth use per call
*The expected results outlined in this section are examples of what can be achieved with such solutions. These results do not pertain to a specific project and do not reflect the actual outcomes of the described case.

    Contactar-nos

    Marcar uma chamada ou preencha o formulário abaixo e entraremos em contacto consigo assim que tivermos processado o seu pedido.

    Envie-nos uma mensagem de voz
    Anexar documentos
    Enviar ficheiro

    Pode anexar um ficheiro com um máximo de 2MB. Formatos de ficheiro válidos: pdf, jpg, jpeg, png.

    Ao clicar em Enviar, o utilizador autoriza a Innowise a processar os seus dados pessoais de acordo com a nossa Política de privacidade para lhe fornecer informações relevantes. Ao enviar o seu número de telefone, o utilizador aceita que o possamos contactar através de chamadas de voz, SMS e aplicações de mensagens. Poderão ser aplicadas tarifas de chamadas, mensagens e dados.

    Pode também enviar-nos o seu pedido
    para contact@innowise.com
    O que é que acontece a seguir?
    1

    Assim que recebermos e processarmos o seu pedido, entraremos em contacto consigo para necessidades do seu projeto e assinar um NDA para garantir a confidencialidade.

    2

    Depois de analisarmos os seus desejos, necessidades e expectativas, a nossa equipa elaborará uma proposta de projeto proposta de projeto com o âmbito do trabalho, dimensão da equipa, tempo e estimativas de custos.

    3

    Marcaremos uma reunião consigo para discutir a oferta e acertar os pormenores.

    4

    Por fim, assinaremos um contrato e começaremos a trabalhar no seu projeto imediatamente.

    seta