idriz f17a16a34d Nova aplikacija "Namaz" (vaktija)
Vremena dnevnih namaza (sabah, podne, ikindija, akšam, jacija) sa api.vaktija.ba.
- idriz/apps/vaktija/store.py: izbor lokacije + bundlana lista (lokacije.json, 118
  lokacija; id=indeks). Sarajevo default. Bez openai/requests (uvozi ga admin).
- client.py: dohvat vakat[] po (lokacija, datum) sa keširanjem; API vraća lokalna
  vremena (sam vodi DST). vakat[1] je izlazak sunca (nije namaz), preskočen.
- manifest.py: alat namaz_vrijeme(koji): 'sljedeci' = prvi nadolazeći (ili sutra
  sabah ako su svi prošli); ili konkretan namaz (danas ako nadolazi, inače sutra).
  Bosanska gramatika za "za X sati/minuta" i rod (prošao/prošlo/prošla).
- admin.py + templates/vaktija.html: dropdown svih lokacija, Sarajevo default.
- Registrovano u load_apps() i ADMIN_APPS.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LzKpYaEsuWDevuNnvSjcFW
2026-09-11 18:48:59 +02:00
2026-09-11 18:48:59 +02:00
2026-09-11 18:48:59 +02:00

Idriz

Glasovni pomoćnik za djecu, alternativa ekranu. Sluša preko mikrofona, govori na zvučnik, a rezultate štampa na printer. Radi samo na mašini idriz (Debian 13); ovaj repozitorij služi za sigurnosne kopije koda.

Šta zna (v0.2)

  • Razgovor: odgovara na pitanja glasom, kratko. Dijete kroz razgovor traži "naprednije" ili "pojednostavi" i Idriz drži taj nivo do kraja razgovora.
  • Sažetak sa Wikipedije: nađe članak na engleskoj Wikipediji, prevede ga i sažme na bosanski, prilagodi uzrastu i odštampa najviše 2 stranice.
  • Bojanka: generiše crno-bijelu sliku sa konturama preko cijele A4 stranice i odštampa je.

Razgovor ide preko OpenAI Realtime API-ja (govor u govor). Tišina znači kraj komande. Idriz prije štampanja uvijek pita za potvrdu.

Struktura

  • idriz/assistant.py glavna petlja (Realtime sesija, alati, half-duplex audio)
  • idriz/audio.py mikrofon i zvučnik preko pacat (PipeWire), PCM16 24 kHz
  • idriz/wiki.py pretraga i preuzimanje članka
  • idriz/textgen.py prevod i sažetak (chat model, JSON)
  • idriz/render.py HTML → PDF (WeasyPrint), automatsko uklapanje u 2 stranice
  • idriz/coloring.py generisanje slike i pretvaranje u čiste konture, A4 PDF
  • idriz/printer.py lp na CUPS printer idriz-printer
  • systemd/idriz.service korisnički servis

Instalacija

scripts/install.sh
# upiši OPENAI_API_KEY u ~/.config/idriz/env
systemctl --user start idriz
journalctl --user -u idriz -f

Konfiguracija (okolina)

OPENAI_API_KEY, IDRIZ_REALTIME_MODEL (gpt-realtime-2.1), IDRIZ_TEXT_MODEL (gpt-5.5), IDRIZ_IMAGE_MODEL (gpt-image-2), IDRIZ_VOICE (cedar), IDRIZ_PRINTER (idriz-printer), IDRIZ_DRY_RUN=1 (ne štampa), IDRIZ_MAX_PAGES (2), IDRIZ_VAD_SILENCE_MS (900), IDRIZ_MIC_DEVICE, IDRIZ_SPEAKER_DEVICE.

Odštampani PDF-ovi ostaju u ~/.local/share/idriz/out/.

Test bez štampanja

IDRIZ_DRY_RUN=1 .venv/bin/python scripts/test_summary.py "Volcano" "8 godina"

Igra "Superheroji"

Glasovna igra (bez štampanja). Tok: Idriz pita koliko igrača (1–5) i imena, pa se igra nekoliko rundi. Svaku rundu svaki igrač kaže jednog izmišljenog lika (bilo koji medij — Supermen, Mario, La Linea, Mad Max...), a Idriz presudi ko bi pobijedio i zašto. Pobjednik runde se više ne može birati do kraja partije. Sistem pamti relativne jačine likova (Elo) u ~/.local/share/idriz/heroes.json da borbe budu dosljedne kroz partije. Za prepoznavanje likova koristi se najjači tekstualni model (game_model, default gpt-5.5) i njegovo znanje; web search (Responses API) samo kad model ne zna lika.

  • idriz/gamestore.py — trajno skladište (heroji, Elo, broj rundi), bez vanjskih zavisnosti.
  • idriz/game.py — prepoznavanje likova, presuđivanje, tok partije (Match).
  • Broj rundi i rang-lista heroja se podešavaju u admin panelu (tab "Superheroji").
Description
No description provided
Readme 983 KiB
Languages
Python 85.4%
HTML 14.3%
Shell 0.3%