// blog · h5p
Migração H5P: mod_hvp morreu, e agora?
TL;DR
O plugin mod_hvp — integração antiga e não oficial do H5P com Moodle — foi descontinuado. Desde Moodle 3.9, a integração oficial é mod_h5pactivity, mantida pelo HQ do Moodle. mod_hvp não recebe mais updates de segurança e não roda em Moodle 5.x.
Migração bem feita preserva 95% dos attempts, notas e progresso. Os 5% restantes cobrem conteúdo em bibliotecas H5P descontinuadas (algumas Question Sets antigas, Documentation Tool legacy) que não têm equivalente no formato atual.
Processo: inventário → análise de bibliotecas obsoletas → staging clone → migração com script → validação pedagógica por amostragem → go-live → 30 dias de suporte. Não é "rodar um script e pronto".
O que você vai ler
1. Por que o mod_hvp morreu (timeline da deprecação)
H5P (HTML5 Package) é tecnologia de conteúdo interativo criada pela H5P Group em 2013. Permite criar vídeos interativos, branching scenarios, course presentations, question sets — tudo HTML5 puro, sem Flash.
A integração com Moodle teve duas fases:
Fase 1 (2014-2020): mod_hvp
Plugin desenvolvido pela H5P Group, mantido pela própria comunidade H5P (fora do core Moodle). Funcionava bem mas era plugin de terceiros — atualização dependia do calendário da H5P Group, não do calendário Moodle.
Fase 2 (2020+): mod_h5pactivity
A partir do Moodle 3.9 (2020), o HQ do Moodle incorporou H5P como módulo nativo (mod_h5pactivity). Vantagens: ciclo de release sincronizado com o core, suporte oficial, integração com xAPI nativa, melhor controle de gradebook.
O abandono progressivo do mod_hvp
- 2020: Moodle 3.9 lança mod_h5pactivity oficial
- 2021: H5P Group anuncia oficialmente: mod_hvp em modo manutenção
- 2022: Último update significativo de mod_hvp
- 2023: Plugin marcado como "deprecated" na Moodle Plugins Directory
- 2024: Incompatibilidades com Moodle 4.4+ aparecem
- 2025-2026: mod_hvp não roda em Moodle 5.x sem hack pesado
Implicação prática: se você está em Moodle 4.x com mod_hvp e quer ir para 5.2, a migração H5P é obrigatória. Não tem rota alternativa.
2. mod_hvp vs mod_h5pactivity: o que muda tecnicamente
Algumas diferenças relevantes:
Storage de bibliotecas
mod_hvp: bibliotecas H5P salvas emmoodledata/h5p/com estrutura próprio do pluginmod_h5pactivity: bibliotecas emmoodledata/h5p/também, mas com schema atualizado e versionamento via tabelah5p_librariesdo core
Storage de attempts
mod_hvp: attempts emhvp_xapi_results(formato xAPI simplificado)mod_h5pactivity: attempts emh5pactivity_attempts+h5pactivity_attempts_results(schema mais granular, suporta múltiplas tentativas por questão)
Integração com gradebook
mod_hvp: nota agregada por atividade, vinculação manualmod_h5pactivity: integração nativa, suporte a melhor/última/média/primeira tentativa configurável
Embed e content delivery
mod_hvp: H5P embedded direto na página da atividademod_h5pactivity: H5P delivered viacontentbank+core_h5pAPI (mais limpo, permite reuso entre cursos)
3. A migração não é "rodar um script"
Existe um script de migração nativo no Moodle (mod/h5pactivity/cli/migrate.php) mas ele não cobre todos os casos. Especialmente:
- Bibliotecas H5P descontinuadas — script falha silenciosamente
- Attempts em formato não-padrão (de versões antigas do mod_hvp) — script perde dado
- Atividades em cursos arquivados — script ignora por padrão
- Customizações no mod_hvp (raras mas existem) — script não detecta
O que realmente fazemos:
- Inventário pré-migração: SQL que conta atividades H5P, tipos de biblioteca, attempts por tipo, identifica bibliotecas órfãs
- Análise de risco: cruza bibliotecas usadas com lista de descontinuadas
- Plano por amostragem: define 10-20 atividades representativas para validação humana
- Staging clone: roda script em ambiente isolado primeiro
- Validação cruzada: SQL que confirma attempts migrados vs. attempts originais
- Sign-off pedagógico: time educativo testa a amostragem em staging
- Go-live: produção com janela de manutenção
- Pós go-live: 30 dias de suporte para casos divergentes reportados por alunos
4. Os 5% que sempre se perde (e por quê)
Garantimos 95% de preservação contratualmente. Os 5% restantes têm causas previsíveis:
Bibliotecas H5P descontinuadas
Algumas Question Sets antigas (anteriores a 2018), Documentation Tool legacy, Memory Game v1, e algumas variantes locais de Interactive Video não têm equivalente atual. Para essas, três opções:
- Manter formato congelado: o conteúdo continua rodando como está, mas não atualiza mais. Atrasa o problema.
- Converter para biblioteca atual equivalente: ex. Question Set v1 → Question Set v2 (perde alguns recursos visuais)
- Recriar conteúdo do zero: maior custo, melhor qualidade
Attempts em formato não-padrão
mod_hvp em versões antes de 2018 salvava attempts em formato xAPI experimental. O conversor não cobre 100% dessas variações. Atinge tipicamente menos de 1% dos attempts.
Customizações in-house
Alguns clientes customizaram mod_hvp (ex. integração com SCORM antigo, hooks de relatório). Essas customizações se perdem na migração — precisam ser reimplementadas em mod_h5pactivity se forem críticas.
Honestidade contratual: dizer "100% migração sem perda" é mentira. Os 5% existem por razões técnicas reais. Preferimos cláusula honesta com plano para cobrir os 5% (caso a caso) do que prometer impossibilidade.
5. Quatro tipologias de cenário H5P
Tipo 1: Biblioteca pequena com poucos attempts
20-50 atividades, < 1000 attempts. Migração leve, 1-2 semanas. Validação por amostragem rápida. Baixo risco operacional.
Tipo 2: Biblioteca média com volume significativo
50-200 atividades, 1k-10k attempts. Migração média, 2-4 semanas. Inclui análise pedagógica de cada tipo de biblioteca usada. Janela de manutenção fora do horário letivo.
Tipo 3: Biblioteca grande corporativa
200-800 atividades, 10k+ attempts. Migração de 3-6 semanas. Validação por departamento/coordenação. Sign-off de RH/T&D antes do go-live porque attempts entram no histórico oficial de colaboradores.
Tipo 4: Plataforma institucional com SSO
Universidade ou órgão público com H5P em módulos institucionais. Migração 6-12 semanas. Inclui auditoria documental, validação SIE, compliance LGPD/GDPR. Múltiplos sign-offs.
6. Erros comuns em migrações auto-conduzidas
Erro 1: Rodar script em produção sem staging
O script é idempotente em teoria mas se algo der errado em produção, rollback é caro. Sempre staging primeiro.
Erro 2: Não inventariar bibliotecas obsoletas antes
Script falha silenciosamente em bibliotecas descontinuadas. Sem inventário prévio, você só descobre quando aluno reporta atividade quebrada.
Erro 3: Migrar e desinstalar mod_hvp imediatamente
Deixa mod_hvp instalado mas desativado por 60 dias após go-live. Se algum case quebrar, dá pra reativar e diagnosticar.
Erro 4: Não validar attempts pós-migração via SQL
Conferir COUNT(*) de hvp_xapi_results vs. h5pactivity_attempts_results antes de declarar migração completa. Diferença > 5% = investigar.
Erro 5: Não comunicar alunos sobre a migração
Aluno entra no curso, vê interface diferente, acha que perdeu progresso, abandona. Email pré-migração avisando o que vai mudar evita reclamações.
7. Checklist de pré-migração H5P
Antes de tocar a migração:
Sobre o ambiente:
- Versão do Moodle (mod_hvp não roda em 5.x)
- Versão do mod_hvp instalado
- Versão das bibliotecas H5P em uso (SQL:
SELECT machine_name, major_version, minor_version FROM mdl_hvp_libraries) - Plano de upgrade do Moodle conjunto (migração H5P + upgrade do core fazem sentido juntos)
Sobre o conteúdo:
- Quantidade total de atividades mod_hvp ativas + arquivadas
- Distribuição por tipo de biblioteca (interactive video, question set, etc.)
- Bibliotecas descontinuadas em uso (cruzar com lista oficial H5P)
- Atividades em cursos arquivados (migrar ou descartar?)
Sobre attempts:
- Total de attempts (
COUNT(*) FROM mdl_hvp_xapi_results) - Distribuição temporal (recente vs. histórico antigo)
- Attempts relevantes para histórico oficial (corporativo, compliance, acadêmico)
Sobre processo:
- Janela de manutenção possível
- Comunicação com alunos pré-migração
- Equipe pedagógica disponível para validação
- Plano de comunicação pós go-live
8. Conclusão prática
Migração H5P não é opcional se você está em Moodle 4.x com mod_hvp e quer chegar em 5.x. Adiar virou risco crescente: cada semana com mod_hvp em produção significa mais attempts acumulados que ficarão mais difíceis de migrar depois.
Para quem está pensando em fazer in-house: é viável se a equipe tem PHP/MySQL sólido, está disposta a fazer staging clone, inventário SQL, validação por amostragem e tem comunicação preparada com alunos. Para quem não tem esse bandwidth, terceirizar com quem já fez é mais previsível — porque o custo de migração mal feita (alunos perdem progresso, RH refaz histórico, queixa pública) é absurdamente maior que o custo da migração bem feita.
Se você quer entender o estado da sua plataforma especificamente, faça o diagnóstico de engajamento (10 perguntas, score 0-100) que inclui H5P como uma das frentes — você sai com um plano adaptado ao seu cenário real.