Zamenjava Moodlovih nativnih Open Badges z Badges Ninja (boljši oblikovalec, enak API)

Moodle ponuja nativne Open Badges, vendar je oblikovalec omejen, izkušnja prejemnika pa je zaklenjena znotraj Moodla. Namesto tega izdajajte poverila Badges Ninja neposredno iz zaključkov v Moodlu.

Nacho Coll Avtor Posodobljeno 7 min branja
Moodle ponuja nativne Open Badges, vendar je oblikovalec omejen, izkušnja prejemnika pa je zaklenjena znotraj Moodla. Namesto tega izdajajte poverila Badges Ninja neposredno iz zaključkov v Moodlu.

Moodle izdaja Open Badges nativno že od različice 2.5 in za mnoge skrbnike tečajev je to dovolj velik razlog, da nikoli ne pogledajo drugam. Je vgrajen, je brezplačen in tehnično proizvede poverilo, skladno s standardi. Zakaj torej toliko skrbnikov Moodla do svojega petdesetega izdanega značka konča frustriranih?

Iskren odgovor: sistem značk v Moodlu je bil zasnovan za odkljukanje polja skladnosti, ne kot produkt za izdajanje poveril. Deluje, vendar deluje tako, kot deluje funkcija, privijačena na LMS — funkcionalno, zastarelo in omejeno z omejitvami platforme, znotraj katere živi. Če ste kdaj poskusili narediti, da bi značka Moodla izgledala kot karkoli drugega kot okrogla ikona iz kliparta, ali ste slišali diplomanta vprašati „počakajte, kje pa sploh vidim to stvar?”, potem to vrzel že poznate.

To ni obračunavanje z Moodlom — je odličen LMS in njegov mehanizem meril za značke (zaključek tečaja, zaključek dejavnosti, ročna podelitev, članstvo v kohorti) je resnično dobro premišljen za sprožitev poverila. Težava je vse, kar sledi po sprožitvi: orodja za oblikovanje, izkušnja prejemnika in vidnost značke zunaj vaše instance Moodla. Prav za to je zgrajen badges.ninja in za njegovo uporabo vam ni treba opustiti logike zaključevanja v Moodlu — sprožilec preprosto usmerite na drug mehanizem izdajanja.

Kje nativne značke Moodla ne zadostujejo

Oblikovalec je sestavljalnik slik na osnovi koordinat, ne orodje za oblikovanje. Urejevalnik značk v Moodlu vam omogoča izbiro osnovne slike, dodajanje nekaj vnaprej nastavljenih prekrivnih ikon in prilagajanje položaja s premiki v pikslih. Ni knjižnice oblik, ni sistema palet, ni izbire pisav zunaj tistega, kar je vgrajeno v nabor ikon. Če ima vaša organizacija znamko — logotip, barvno paleto, specifičen vizualni jezik za vaše certifikate — urednik Moodla tega ne more izraziti. Večina institucij na koncu oblikuje grafiko značk v Photoshopu ali Canvi in naloži ploščat PNG, kar izniči smisel imeti oblikovalca znotraj aplikacije.

Prejemniki potrebujejo prijavo v Moodle, da vidijo svoje lastne značke. Značke, podeljene učencu, živijo znotraj njegove profilne strani v Moodlu. Če je tečaj že zaključil, pozabil svoje institucionalne poverilnice, ali je institucija medtem ukinila njegov račun, je značka z njegove strani dejansko izginila — čeprav se osnovna trditev (assertion) morda še vedno lahko razreši prek Moodlovega backpack konektorja ali javne strani značke. Ne obstaja namensko, znamčeno, vedno dosegljivo mesto, kjer bi se prejemnik lahko prijavil samo z e-pošto in videl vsa poverila, ki jih je kdaj pridobil pri vseh tečajih.

Deljenje je postranska misel. Moodle lahko potisne značke v storitev, združljivo z Mozilla Backpack, in izpostavi javni URL za preverjanje vsake značke, vendar nima vgrajenega poteka „Dodaj na LinkedIn”, nobenega gumba za deljenje z enim klikom in nobene analitike vključenosti o tem, ali je kdo sploh pogledal značko po izdaji. Za programe, ki želijo, da značka deluje kot marketing od ust do ust — bootcampi, ponudniki nadaljnjega izobraževanja, korporativno usposabljanje — je to resnična izgubljena priložnost.

Množične operacije so nerodne. Podelitev značke celotni kohorti deluje, če vsi hkrati zaključijo sprožitveno dejavnost znotraj Moodla. Če pa morate za nazaj dopolniti značke za pretekle kohorte, uvoziti zgodovinske zaključke iz preglednice ali izdati značko za nekaj, kar se je zgodilo popolnoma zunaj LMS-ja, se znajdete v pisanju SQL-ja neposredno proti bazi podatkov Moodla ali v boju z orodji za uvoz CSV, ki niso bila zgrajena posebej za značke.

Vzorec zamenjave: obdržite Moodlove sprožilce, zamenjajte izdajatelja

Za to popravilo vam ni treba migrirati stran od Moodla. Najčistejši vzorec je, da Moodle še naprej počne to, v čemer je dober — sledenje zaključku tečaja, zaključku dejavnosti, članstvu v kohorti — in da ob sprožitvi pogoja zaključka pokliče API Badges Ninja, namesto (ali poleg) podelitve svoje nativne značke.

Moodle to podpira na nekaj načinov:

  1. Webhook ob zaključku tečaja / poizvedovanje prek Moodle Web Services (REST). API core_completion v Moodlu izpostavlja stanje zaključka za vsakega uporabnika in tečaj. Lahkotna razporejena naloga (razporejena cron naloga v Moodlu ali zunanje opravilo cron, ki kliče REST API Moodla) lahko poizveduje po novo zaključenih vpisih in za vsakega pokliče končno točko za podeljevanje značk Badges Ninja.

  2. Kavelj lokalnega vtičnika. Če imate v ekipi razvijalca, lahko sistem dogodkov Moodla (\core\event\course_completed) opazuje majhen lokalni vtičnik, ki sproži HTTP zahtevo takoj ob zaključku — brez zamude zaradi poizvedovanja.

  3. Zapier/Make/n8n kot vezivo, če se raje izognete poseganju v kodo Moodla — Moodle lahko potisne dogodke zaključka na sprejemnik webhookov, ki jih orodje za avtomatizacijo brez kode pretvori v klic za podelitev.

Tukaj je dejanski klic za podelitev, ko že imate ime in e-pošto uporabnika, ki je zaključil:

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"
  }'

Ali v Node, znotraj katere koli razporejene naloge ali sprejemnika webhookov, ki ga poganjate:

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-pošta prejemnika je pri shranjevanju zgoščena s SHA-256, podelitev samodejno dobi edinstven URL za preverjanje, QR kodo in potrdilo v obliki A4 PDF, in — kar je ključno — prejemnik ga lahko prevzame s prijavo prek čarobne povezave (magic link) na badges.ninja/me, brez potrebe po ločenem računu v Moodlu. Celotno obliko zahteve in odgovora si oglejte v referenci API za awards, za delovanje API ključev od začetka do konca pa v vodniku po avtentikaciji.

Če bi to raje izvedli paketno — na primer za nazaj dopolnili zaključke celega semestra v enem koraku namesto povezovanja dogodkov v realnem času — izvozite zaključke iz Moodla kot CSV in uporabite neposredno potek množičnega podeljevanja, ki pri velikih datotekah podpira premor/nadaljevanje. To je podrobno opisano v članku kako izdati Open Badges iz CSV.

Oblikovanje same značke

Ko je povezava vzpostavljena, dejansko oblikovanje značke traja minute, ne prijave vaši spletni ekipi. Vizualni oblikovalec vam ponuja več kot 80 predlog oblik, resničen sistem barvnih palet, knjižnice ikon in nalaganje lastnih pisav — tako da lahko značka za „Napredna statistika — zaključeno” resnično izgleda, kot da pripada znamki vaše institucije, namesto generični ikoni dosežka Moodla.

API ključi — prazno stanje

Vsak API ključ je obseg omejen in preklicljiv iz iste nadzorne plošče, kjer upravljate značke in izdajatelje, tako da izročitev integracijskega poverila razvijalcu (ali orodju za avtomatizacijo, kot je Zapier) ne pomeni deljenja prijave v vaš glavni račun.

Ustvarjanje ključa — obrazec z imenom

Drug ob drugem: izkušnja prejemnika

Nativna značka MoodlaBadges Ninja
Kje jo prejemniki vidijoZnotraj profila Moodla, zahteva prijavobadges.ninja/me, čarobna povezava, brez gesla
Javno preverjanjeDa, javni URL za vsako značkoDa, končna točka Open Badge v2.0 JSON-LD
Orodja za oblikovanjeFiksna ikona + zamiki položaja80+ predlog, palete, lastne pisave/ikone
Deljenje na LinkedInuRočno, brez vgrajenega gumbaNativen potek Add-to-LinkedIn-Profile
Množično izdajanje za nazajSQL ali ročna rešitev s CSVVgrajena množična podelitev s premorom/nadaljevanjem
Vidnost vključenostiNobenaStatistika ogledov/deljenj za vsako podelitev
Dostop po odhodu iz institucijeVezan na stanje računa MoodlaTrajen, v lasti prejemnika

Moodle še vedno zmaga pri eni stvari: če je vaša edina zahteva „značka obstaja, je tehnično skladna z Open Badge v2.0 in živi znotraj LMS-ja, ki ga učenec že uporablja”, nativne značke ne stanejo nič dodatnega in ne zahtevajo nobenega integracijskega dela. Kompromis se pokaže v trenutku, ko vam je mar za kakovost oblikovanja, prenosljivost po koncu tečaja ali spremembo izdajanja v signal za zaposlovanje/trženje — kar je navsezadnje večina institucij.

Za širši pogled na to, kako se druge platforme za Open Badges primerjajo po ceni in funkcijah, si oglejte primerjavo najcenejših platform za Open Badges. In če vaša institucija tehta Open Badge v2.0 proti novejši specifikaciji preverljivih poveril, Open Badge v2 proti v3 razloženo opisuje, katero dejansko uvesti danes.

Pripravljeni izdati svoje prvo preverljivo poverilo? Začnite brezplačno na badges.ninja — vizualni oblikovalec, javna stran za preverjanje, PDF potrdilo, izhod Open Badge v2.0. Kreditna kartica ni potrebna.

Nacho Coll

O avtorju

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.

Nazaj na Blog

Povezani članki