Balans notifikacije - sistem za obaveštavanje korisnika: Difference between revisions

04.12.2025 Prusac | 09.12.2025

No edit summary
No edit summary
Line 8: Line 8:
Aplikaciju na računaru korisnika pokreće Windows Task Scheduler. Notifikacije se prikazuju u sistem tray-u (taskbaru).
Aplikaciju na računaru korisnika pokreće Windows Task Scheduler. Notifikacije se prikazuju u sistem tray-u (taskbaru).


 
[[File:notification.jpeg|400px]]


== Zadatak ==
== Zadatak ==

Revision as of 09:56, 8 December 2025


< 1 min
Ovo bi verovatno trebalo da bude uputstvo za instalaciju sistema za notifikaciju korisnika.


Uvod

Notifikacioni sistem "Balans notifikacije" je inicijalno razvijen za potrebe obaveštavanja korisnika o neobrađenim nalozima za prenos robe, ali će biti korišćen i za druge namene.

Aplikaciju na računaru korisnika pokreće Windows Task Scheduler. Notifikacije se prikazuju u sistem tray-u (taskbaru).

Zadatak

Potrebno je napraviti program koji će korisnika obaveštavati putem Windows notifikacija o postojanju neobrađenih naloga za prenos robe vezanih za konkretan MP objekat (mOkrK.DefSklID). mOkrK.DefSklID ne znači ništa nekome ko ne zna Balans.

Potrebno je:

  1. Pokazivati obaveštenja na "Windows Tray".
  2. Omogućiti da se aplikacija pokreće iz "Windows Task Scheduler"-a zadavanjem parametara komandnom linijom

https://razvoj.melany.rs/issues/4499

Rešenje

Kreiran je sistem za notifikaciju koji pronalazi broj otvorenih naloga (DocTip (89)) i obaveštava korisnika notifikacijama u "Windows Tray". DocTip (89) ne znači ništa nekome ko ne zna Balans.

Kreirana je logika za lozinku koja se menja svakog dana da bi se izbeglo gašenje samog sistema:

gašenje samog sistema?
Koji će se to sistem ugasiti ako se šifra ne menja na 24h?


(Dan u mesecu + Dan u nedelji) * (42) + specijalni karakter

Dan u mesecu: 1-31

Dan u nedelji: 1-7 (ponedeljak 1, ... nedelja 7)

Specijalni karakter: Pon=^ Uto=% Sre=$ Čet=# Pet=@ Sub=! Ned=&

Primer za ponedeljak, 11.08.2025:

(11+1)*42 + spec. karakter = 504^

Dodavanje u Windows Task Scheduler i startovanje aplikacije

Aplikacija se dodaje/pokreće iz Windows Task Scheduler zadavanjem parametara komandnom linijom.

Dodavanje

schtasks /Create /TN "Balans Notifikacije" /SC ONLOGON /RU "%USERNAME%" /RL LIMITED /TR "\"C:\Users\Downloads\BalansNotifikacije.exe\" /f:4 /t:45" /F

/f: - Firm ID
/t: - interval u sekundama


/Create Schedules a new task
/TN "Balans Notifikacije" Specifies a name for the task
/SC ONLOGON Specifies the schedule type; ONLOGON - Specifies that the task runs whenever a user (any user) logs on.
/RU "%USERNAME%" Runs the task with permissions of the specified user account.
/RL LIMITED Specifies the Run Level for the job; LIMITED - scheduled tasks will be ran with the least level of privileges, such as Standard User accounts
/TR "\"C:\Users\Downloads\BalansNotifikacije.exe\" /f:4 /t:45" Specifies the program or command that the task runs.
/F Specifies to create the task and suppress warnings if the specified task already exists.


default path?
Trebalo bi odrediti neki default dir za BalansNotifikacije.exe, da ne bude kog svakog korisnika na drugoj lokaciji, i svakako ne u Downloads kao u gornjem primeru.

Startovanje

schtasks /Run /TN "Balans Notifikacije"

"... regulisati putanju ka filu i sekunde za notifikaciju , takodje parametar za kacenje na bazu. Pokrece se CMD prompt u admin modu".

parametar za kačenje na bazu?
Gde ga treba regulisati i kako?


Šifra

nije mi jasan smisao šifre
Sudeći po kodu na RAPP5, korisnik treba da unese šifru i ona se proverava. U isto vreme imamo na internetu javno dostupan generator šifre - https://ws.melany.rs/api/keygen/


keygen
Promenio bih na https://ws.melany.rs/api/keygen/ sledeće: 1) Page title i naslov na formi na 'Balans Obaveštenja'. 2) Formatirao bih datum u kalendaru na naš/EU način (a i nedelje kod nas počinju od ponedeljka). 3) Tekst ispod dugmeta - 'Klik na dugme da iskopirate šifru'