Náhrada nativních Open Badges v Moodle za Badges Ninja (lepší návrhář, stejné API)

Moodle nabízí nativní Open Badges, ale návrhář je omezený a zážitek příjemce je uzavřený uvnitř Moodle. Místo toho vydávejte pověření Badges Ninja na základě dokončení kurzů v Moodle.

Nacho Coll Autor Aktualizováno 7 min čtení
Moodle nabízí nativní Open Badges, ale návrhář je omezený a zážitek příjemce je uzavřený uvnitř Moodle. Místo toho vydávejte pověření Badges Ninja na základě dokončení kurzů v Moodle.

Moodle vydává nativní Open Badges už od verze 2.5, a pro spoustu správců kurzů je to dostatečný důvod nikdy se neohlížet jinam. Je to zabudované, je to zdarma a technicky to produkuje pověření odpovídající standardu. Tak proč je tolik správců Moodle frustrovaných v době, kdy vydají svůj padesátý odznak?

Upřímná odpověď zní: systém odznaků v Moodle byl navržen tak, aby splnil požadavek na shodu se standardem, ne aby byl produktem pro vydávání pověření. Funguje, ale funguje tak, jak funguje funkce přilepená k LMS – funkčně, staromódně a omezeně mantinely platformy, ve které žije. Pokud jste se někdy pokusili, aby odznak v Moodle vypadal jinak než jako kulatá klipartová ikonka, nebo jste slyšeli absolventa ptát se „počkat, kde to vlastně zase uvidím?“, mezeru už znáte.

Toto není odsudek Moodle – je to vynikající LMS a jeho engine pro kritéria odznaků (dokončení kurzu, dokončení aktivity, ruční udělení, členství v kohortě) je opravdu promyšlený pro spouštění pověření. Problém je všechno, co následuje po spuštění: nástroje pro návrh, zážitek příjemce a viditelnost odznaku mimo vaši instanci Moodle. Přesně na to je postavený badges.ninja, a abyste ho mohli používat, nemusíte se vzdávat logiky dokončení v Moodle – stačí nasměrovat spouštěč na jiný vydávací engine.

Kde nativní odznaky Moodle selhávají

Návrhář je skladač obrázků založený na souřadnicích, ne návrhový nástroj. Editor odznaků v Moodle vám umožní vybrat základní obrázek, přidat pár předdefinovaných ikonových překryvů a upravit pozici pomocí posunů v pixelech. Neexistuje žádná knihovna tvarů, žádný systém palet, žádný výběr fontů kromě těch zapečených v sadě ikon. Pokud má vaše organizace značku – logo, barevnou paletu, specifický vizuální jazyk pro vaše certifikace – editor Moodle to nedokáže vyjádřit. Většina institucí nakonec navrhuje grafiku odznaků v Photoshopu nebo Canvě a nahraje plochý PNG, což popírá smysl mít vestavěný návrhář vůbec.

Příjemci potřebují přihlášení do Moodle, aby viděli své vlastní odznaky. Udělené odznaky studenta žijí na jeho profilové stránce v Moodle. Pokud kurz už dokončil, zapomněl své institucionální přihlašovací údaje, nebo instituce mezitím zrušila jeho účet, je odznak z jeho pohledu prakticky ztracený – i když samotné tvrzení (assertion) může stále fungovat přes propojení s Moodle backpack nebo veřejnou stránku odznaku. Neexistuje žádné dedikované, brandované, vždy dostupné místo, kde by se příjemce mohl přihlásit jen pomocí e-mailu a vidět všechna pověření, která kdy získal napříč všemi kurzy.

Sdílení je až druhořadá myšlenka. Moodle umí posílat odznaky do služby kompatibilní s Mozilla Backpack a pro každý odznak zpřístupňuje veřejnou URL pro ověření, ale chybí vestavěný postup „Přidat na LinkedIn“, tlačítko pro sdílení jedním kliknutím i analytika zapojení, která by ukázala, jestli se na odznak po vydání vůbec někdo podíval. Pro programy, které chtějí, aby odznak fungoval jako marketing typu „od úst k ústům“ – bootcampy, poskytovatelé dalšího vzdělávání, firemní školení – je to reálná ztracená příležitost.

Hromadné operace jsou neohrabané. Udělení odznaku celé kohortě funguje, pokud všichni dokončí spouštěcí aktivitu v Moodle najednou. Ale pokud potřebujete zpětně doplnit odznaky pro minulou kohortu, importovat historická dokončení z tabulky, nebo vydat odznak za něco, co se odehrálo úplně mimo LMS, uvíznete u psaní SQL dotazů proti databázi Moodle nebo boje s nástroji pro import CSV, které nebyly postavené speciálně pro odznaky.

Vzor náhrady: ponechte spouštěče Moodle, změňte vydavatele

K vyřešení tohoto problému nemusíte z Moodle migrovat pryč. Nejčistší vzor je nechat Moodle dělat to, v čem je dobrý – sledovat dokončení kurzu, dokončení aktivity, členství v kohortě – a nechat ho zavolat API Badges Ninja ve chvíli, kdy se spustí podmínka dokončení, místo (nebo vedle) udělení jeho nativního odznaku.

Moodle to podporuje několika způsoby:

  1. Webhook pro dokončení kurzu / dotazování přes Moodle Web Services (REST). API core_completion v Moodle zpřístupňuje stav dokončení pro každého uživatele a kurz. Odlehčená naplánovaná úloha (naplánovaná cron úloha Moodle nebo externí cron job volající REST API Moodle) může dotazovat na nově dokončené zápisy a pro každý z nich zavolat endpoint pro udělování odznaků Badges Ninja.

  2. Hák v lokálním pluginu. Pokud máte ve firmě vývojáře, systém událostí Moodle (\core\event\course_completed) může sledovat malý lokální plugin, který v okamžiku dokončení vyšle HTTP požadavek – bez zpoždění způsobeného dotazováním.

  3. Zapier/Make/n8n jako lepidlo, pokud se raději vyhnete zásahům do kódu Moodle – Moodle může posílat události o dokončení na webhookový přijímač, který no-code automatizační nástroj promění ve volání pro udělení odznaku.

Jakmile máte jméno a e-mail uživatele, který dokončil kurz, takto vypadá samotné volání pro udělení odznaku:

curl -X POST https://api.badges.ninja/awards \
  -H "X-Api-Key: bws_3f9a1c2d4e5b6a7c8d9e0f1a2b3c4d5e" \
  -H "Content-Type: application/json" \
  -d '{
    "badgeId": "badge_moodle_course_completion",
    "recipient": { "name": "Jordan Alvarez", "email": "learner@example.edu" },
    "issuedOn": "2026-08-31"
  }'

Nebo v Node, uvnitř jakékoli naplánované úlohy nebo webhookového přijímače, který provozujete:

const response = await fetch("https://api.badges.ninja/awards", {
  method: "POST",
  headers: {
    "X-Api-Key": process.env.BADGES_NINJA_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    badgeId: "badge_moodle_course_completion",
    recipient: { name: completedUser.fullname, email: completedUser.email },
    issuedOn: Date.now(),
  }),
});
const award = await response.json();

E-mail příjemce je při uložení hashovaný pomocí SHA-256, udělený odznak automaticky získá jedinečnou URL pro ověření, QR kód a certifikát ve formátu PDF A4, a – což je zásadní – příjemce si ho může vyzvednout přihlášením přes magický odkaz na badges.ninja/me, bez nutnosti samostatného účtu v Moodle. Úplnou strukturu požadavku a odpovědi najdete v referenční dokumentaci API pro udělování odznaků a v průvodci autentizací se dozvíte, jak API klíče fungují od začátku do konce.

Pokud dáváte přednost dávkovému zpracování – řekněme zpětnému doplnění dokončení za celý semestr v jednom průchodu místo napojení událostí v reálném čase – exportujte dokončení z Moodle jako CSV a použijte přímo hromadný postup udělování, který u velkých souborů podporuje pozastavení a pokračování. Podrobně to popisuje článek jak vydávat Open Badges z CSV.

Návrh samotného odznaku

Jakmile je propojení hotové, samotný návrh odznaku zabere minuty, ne založení ticketu vašemu webovému týmu. Vizuální návrhář vám dává přes 80 šablon tvarů, skutečný systém barevných palet, knihovny ikon a nahrávání vlastních fontů – takže odznak pro „Pokročilá statistika – dokončeno“ může skutečně vypadat, jako by patřil ke značce vaší instituce, místo obecné ikony úspěchu z Moodle.

API klíče – prázdný stav

Každý API klíč má omezený rozsah a lze ho zrušit ze stejného dashboardu, kde spravujete odznaky a vydavatele, takže předání integračního přihlašovacího údaje vývojáři (nebo automatizačnímu nástroji jako Zapier) neznamená sdílení přihlašování k vašemu hlavnímu účtu.

Vytvoření klíče – formulář s názvem

Srovnání: zážitek příjemce

Nativní odznak MoodleBadges Ninja
Kde ho příjemci vidíUvnitř profilu Moodle, vyžaduje přihlášeníbadges.ninja/me, magický odkaz, bez hesla
Veřejné ověřeníAno, veřejná URL pro každý odznakAno, endpoint Open Badge v2.0 JSON-LD
Nástroje pro návrhPevná ikona + posuny pozice80+ šablon, palety, vlastní fonty/ikony
Sdílení na LinkedInRuční, bez vestavěného tlačítkaNativní postup Přidat do profilu na LinkedIn
Hromadné zpětné vydáváníŘešení pomocí SQL nebo ručního CSVVestavěné hromadné udělování s pozastavením/pokračováním
Viditelnost zapojeníŽádnáStatistiky zobrazení/sdílení pro každý odznak
Přístup po odchodu z instituceVázaný na stav účtu v MoodleTrvalý, patřící příjemci

Moodle přesto vyhrává v jedné věci: pokud je vaším jediným požadavkem, aby „odznak existoval, byl technicky v souladu s Open Badge v2.0 a žil uvnitř LMS, který student už používá“, nativní odznaky vás nestojí nic navíc a nevyžadují žádnou integrační práci. Kompromis se projeví ve chvíli, kdy vám záleží na kvalitě návrhu, přenositelnosti po skončení kurzu, nebo na tom, aby se vydávání odznaků stalo náborovým/marketingovým signálem – což je časem případ většiny institucí.

Širší pohled na to, jak si ostatní platformy pro Open Badges stojí z hlediska ceny a funkcí, najdete ve srovnání nejlevnějších platforem pro Open Badges. A pokud vaše instituce zvažuje Open Badge v2.0 oproti novější specifikaci ověřitelných pověření, vysvětlení Open Badge v2 vs v3 popisuje, kterou variantu dnes skutečně nasadit.

Připraveni vydat své první ověřitelné pověření? Začněte zdarma na badges.ninja – vizuální návrhář, veřejná stránka pro ověření, PDF certifikát, výstup ve formátu Open Badge v2.0. Bez nutnosti kreditní karty.

Nacho Coll

O autorovi

Founder & Engineer at Badges Ninja

Nacho founded Badges Ninja to make issuing verifiable digital credentials as simple as a single API call — Open Badge v2.0 badges and certificates, minted, hosted, and verifiable without standing up your own issuer infrastructure. Writes about the Open Badges spec, credential verification, and running a credentialing platform serverless on AWS, from the operator side of the wire.

Zpět na Blog

Související články