Keresek egy szoftvert - Info megjelenítése (lehetőleg webalapu)

Fórumok

Sziasztok!

 

Tudtok valami olyan szoftvert  (szerver alapu, kozponti megoldas ) amivel kulonbozo dolgokat lehet megjeleniteni monitoron (pl pontos ido, szunetrend, custom felirat, ezek kombinacioja, ilyesmi...)

nem baj ha fizetos, de nem lenne rossz, ha webalapu lenne (vagy legalabb lenne linux kliense, ami egy Pi-n is elfut)

Hozzászólások

Szerkesztve: 2023. 07. 14., p – 10:02

google://digital signage

Ha webalapút keresel, akkor pl. csak a Wordpresshez is egy zsáknyi digital signage plugin létezik. (WPScreens és társai)

nezegettem ezeket, az a gond hogy a legtobb vagy agyuval verebre, vagy csak kepet/videot/szoveget tud rotalni.

 

Jelenleg van maugy ra szoftverunk, csak a fejleszto lelepett es most senki hozza sem szagol... Ezert szeretnenk egy kereskedelmi megoldast, ahol van support.

 

Amit a mostani tud: 

 

- Python alapu

- Normal esetben mutatja a pontos idot (fekete hatter, feher betuk semmi extra) illetve a ceg nevet

- Ha szunet van, akkor kiirja melyik csoport van szuneten illetve elindit egy visszaszamlalast a szunet kezdetetol a szunet vegeig

 

Kb ezeket kene tudnia az ujnak, is lehetoleg kozponti managementel, a "kliens" legyen egy webbongeszo, de ha van valami Pi-hez jo kliens az is OK.

ja, hogy supportált kell, meg kulcsra kész :) Bocsánat, az rpiből arra következtettem. hogy hajlandó vagy összereszelni. :)

Fizetősben nem tudom, van-e olyasmi, ami nem ágyúval verébere, meg szerintem itt nem igazán a megjelenítés az érdekes requirement, hanem ez a központi management dolog. Tulajdonképp honnan jönnek ezek az adatok? Csoportok, meg szünet, meg ilyesmi? Meg mennyire kell/lehet a klienseknél user interakció?

index.php

Mindent tudni fog amit beleirsz. :-)

Ezt elfogadom, de ne vessétek el, mert jó ötletet adott a kolléga. Ha csak egyszerű dolgot kell kiírni, akkor lényegében elég, ha statikus HTML-t össze tudsz hozni, ha más nem valami szerkesztővel, generátorral, és onnan PHP-síteni alig pár sor, néhány extra tag, meg a dinamikus részekhez találtok példakódokat a neten, pl. ami egy órát jelenít meg. Ezen a szinten a PHP még nagyon primitív, néhány print sor, semmi nagy extra, nem kell hozzá programozó zseninek lenni, mert néhány sorból összehozható az, amit akartok. Elfut bármelyik webszerveren, csak egy PHP-t kell telepíteni, a kliensoldalon meg akármilyen böngésző jó hozzá, max. kiteszitek teljes képernyőre, kiosk módban.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Adatforrastol fugg.

Ha fix, hogy mettol meddog van szunete egy csoportnak, akkor az johet egy konfigbol, es onnantol kezdve egy jol iranyzott if kell, hogy az aktualis idopont szunet intervallumba esik-e, es ha igen akkor print szunet, ha ne akkor print munka vagy nemtudom.

De ez a resz akar javascriptbol is mehet, peldakodbol tengernyi vam a neten, en megiratnam a chatGPT -vel, es nem viccelek, ezt a bonyolultsagot siman megugorja.

Szerintem a dolog legbobyolultabn resze az, hogy milyen infot honnan szerez a kod, fix ertek, vagy txt parseolas, vagy sql lekeres, vagy egy masik service -tol keri el halozaton, valamilyen API-n keresztul, vagy... akarmi is lehet, ezt mi ugye nem tudhatjuk.

Utana a megjelenites mar hobby feladat, ez meg szepen formazva es komentelve sem lesz tobb mint egy-ket oldal kod.

Ezt a melyik csoportot konkrétan nem tudom, de a visszaszámlálás egyszerű date() és time() függvénnyel, meg 1 soros if-fel megoldható. Ha kell legyen mögötte adatbázis, akkor viszont igazad van, az nem néhány sor lesz csak.

Természetesen nem csak PHP-ben írható, hanem mondjuk Perl-ben is, de az szerintem kevésbé felhasználóbarát, vagy akár POSIX vagy Bash shell script is (ilyenkor egyszerű flat adatbázisfájl cat-tel, sed-del, awk-kal vagy cut-tal is kezelhető) vagy Python, Lua. Kinek mi, mit tanul, mit ismer, mit tud használni.

Csak arra akartam rávilágítani, hogy nem olyan bonyolult, mint egy PHP CMS-t összehozni, ahol figyelni kell mindenféle támadhatósági faktorra, meg adatbázisos kérdésre, addonokra, hiszen ez csak egy infópanelen, kioskon fog futni helyileg, fixre drótozva, senki nem turkál bele user inputtal, nincs kitéve a publikus netre, stb.. Emiatt nem kell hozzá oltári nagy programozói tudás, meg nagy kódbázis. Isten bizony, ezt a szintet szerintem még kikepzo is megugorja, ha annyira akarja.

A kolléga valamennyire a programozást nem ússza meg, mert akármilyen megoldás mellett dönt, abban lesz valami minimális markup language-hez hasonló tag vagy parancsrendszer, amivel formáz, pl. BBcode, markdown, HTML, XML, akármi, és még innen valami bonyolódás a dinamikus részekhez, tipikusan GyávaSzkript vagy hasonló. Így teljesen programozás nélkül nem hinném, hogy meg lehetne úszni.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Nekem ez az "Uzemelteto vagyok, nem programozo" mondat nagyon furan hangzik.

Mar evek ota a csapbol is devops meg a software defined blabla folyik, letezik meg olyan uzemelteto akinek nem szukseges a munkajahoz valamelyik (barmelyik) scriptnyelv ismerete?

Ne erts felre, nem cinkelni akarlak, vagy ilyesmi, hanem csak meglepodtem, hogy a fenti mondatot igy leirtad.

Nekem ez nagyon fura, mert amit haromszor kell csinalnom, arra en mar scriptet irok, es vilagosan emlekszem a pillanatra, amikor szerelemem a linux irant komolyra fordult: ez akkor tortent, amikor rajottem, hogy bash alatt siman lehet irni parancssorba C szintaxisu for ciklust. Instant orgazmus.

Megkerdezhetem, hogy milyen rendszereket kezelsz, amelyekhez nem szukseges semmilyen scripteles?

+sok

en mondjuk mar 22 eve is azt vallottam, hogy egy rendszergazdanak tudnia kell programoznia, akkor fogja csak megerteni a problemakat, bugokat es tudja megszuntetni az okat. enelkul max guglizni tud, ami vagy segit vagy nem.

ezerszer oldottam mar meg olyan problemakat, amit a kedves kollegak nem tudtak, pedig eleg volt belenezni a scriptbe vagy a forraskodba, hogy az adott hibauzenetet pontosan mi is idezi elo...

lenyegre tapintottal :)

Ok, lefejlesztem en, majd en is lelepek... mar ket ilyen progink van, amit nem akar senki sem a nyakaba venni, nem kell a cegnek egy harmadik... :)

 

Aztan persze, ahogy irtad "csak egy mezo kell"... Pl akkor mar jo lenne hasznalni ezt a szunetjelzot a duda vezerlesre is (GPIO-k huzogatasa a Pi-n), meg akkor integralni kene valamelyik vallalati szoftverunkbe az egesz manageleset, hogy a kollegaknak ne kelljen uj programot megtanulni, csak legyen egy plusz menupont a megszokottban...

nameg persze par uj funkcio, pl tetszoleges szoveg esetleg video "kikuldese" ha ugy van. (tipikus pelda amikor osszefossa magat az Exchange server, vagy a Citrix,  a monitorokon egy "nem megy a levelezes" felirat megjelenne, megleozendo a +- 300 hivast a szerviznek hogy "nem tudom tudjatok-e de nem megy az outlook..." 

Ami infom van errol a dologrol, az alapjan bennem egy nagyon egyszeru "program" fogalmazodott meg, amit le kene fejleszteni.

A feladat legnagyobb resze szerintem a kornyezetbe valo illesztes, es ez az a resz, amit egy dobozos szoftver eseteben sem lehet meguszni. Sot, ha van barmi nem szabvanyos, vagy a megvett szoftvert altal nem ismert adatforras, akkor maris lehet nekiallni wrapper scripteket irogatni.

Nem ismerem sem az adatforrasokat, sem a jovobeni fejlesztesi iranyokat, potencialis lehetosegeket es igenyeket, igy nem sok esely van ra, hogy pont az optimalis javaslattal allok elo. Csupan annyit tudok mondani, hogy maga a megjelenites nem nagy para. Ha suep megjelenites kell, akkor akar egy Nagios, Zabbix, akarmi is lehet, osszekattingatod a dashboardot, jol nez ki, es megeteted adatokkal igeny szerint. Tenyleg sok mulik az adatforrasokon.

Jó lenne, ha leírnád, hogy valójában mit is szeretnél. Eddig kb annyit tudunk, hogy kell neked egy weboldal, amin látszik óra, meg valami visszaszámláló, ez egy képernyőnyi html/css/js alatt marad, erre senki nem fog neked dobozos terméket ajánlani, mert ez picsafüst.

Ezen kívül van még valami homályos központi management, meg kevered bele már a GPIOt a pi-n, amit alapvetően oda se szeretnél tenni, de továbbra se egyértelmű, hogy mit is szeretnél, márpedig ennek ez a része az érdekes, mint már mondtam, max az ajánlott cuccban lesz majd egy rakás fölösleges másik widget a frontend oldalon, amit nem használsz. Bár arra meg közölted, hogy ágyúval verébre, szóval ez így nehéz lesz, hogy szeretnél egy dobozos terméket, ami pont annyit tud, mint ami szerény igényeid vannak, csak nem árulod el őket :)

ezek alapvetoen orak, amikor beszelunk. Ez mellett olyan funkcioval rendelkeznek, hogy ha pl szunet van, akkor kiirja melyik csoportnak van szunete es meddig tart (egy visszaszamlalo fut)

 

Az egesz mogott (jelenleg) egy egyszeru config fajl van, minden Pi-n egy. 

 

A cel a kovetkezo:

- A megjelenites resz alapvetoen jo igy ahogy van, abban jelenleg nem kell plusz funkcio.

- Ne legyen egyeni config, egy kozponti helyrol (optimalisan egy DB-bol) kapjak a Pi-k mit mutassanak

- Lehessen a Pi-ket (klienseket) csoportositani, tehat ne ugyanazt mutassa mindegyik. (van ami csak óra, van ami szunetrendet is mutat, etc...) 

- legyen egy komolyabb admin felulet ahol a kulonbozo csoportok beconfigolhatoak, kb ilyen modon:

szunet kezdete szunet vége megjelenítendő szöveg duda vezerles
        15:00      15:15           "csoport neve"    (checkbox)

- Admin feluleten lehessen csoportositani a Pi-ket, legyen opcio arra, hogy az adott Pi dudat is vezerel, (gpio vezeres, egy rele modul van hozza csatlakoztatva)

- Legyen lehetoseg admin feluletrol "overwriteolni" a megjelenitett szoveget egy custom szoveggel.

- lehetne egy kezdetleges "REST API" amivel lehetne masba integralni a szoftvert (de akar az is megoldas ha a DB-t egy masik program is irhatja, ez meg egyszerubb)

Ja, hát az nem. Nyilván én az egyszerű index.php-t, meg CGI shell scriptet úgy értettem, hogy a topikindítóból nekem az jött le, hogy a kolléga egy egyszerű elektronikus faliújságot, hirdetőtáblát akar, némi dinamikus tartalommal. Ilyenről szó se volt, hogy több példányban, különböző dolgokat megjeleníteni, meg Pi és GPIO vezérlés, ja, az már nem pár sor, meg nem script kiddie szint, ahhoz tényleg professzionális fejlesztőt kell fogadni, hogy ilyen egyedi, komplex cucc rendesen, megbízhatóra le legyen fejlesztve. Nem is lesz olcsó.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Alakul, de ez még kicsit vegyes. Az első pontot, ha kész dolgot akarsz venni, kb felejtsd is el, az hozni fog magával valami ezzel kb ekvivalenset. Én kb két utat látok: junior kolléga lent elárulta, hogy a megfelelő keresőszó a signage, úgy látom itt az ajánlottakon túl is vannak még opciók, akár githubon is.

A másik valami no-code/low-code platformon összehekázni valamit. Az admin panelre az kb jó lesz, a kliensek ebből a szempontból pedig kő bután tarthatók, kell nekik egy egyedi url, a központ oda bassza ki a lerenderelt htmlt (megjelenítendő adatot jsonben), azt csoki.

Ez utóbbinak előnye lehet, hogy ránézésre az a struktúra, amit te szeretnél egy kicsit nyögvenyelősen lesz majd konfigurálható azokban a signage dolgokban. További előny, hogy azzal szinte biztosan fog járni egy API.

A dudavezérléssel mindkét esetben szopni fogsz, vmi no-code esetén lehet csinálni, hogy valami script még nézi ugyanazt az endpointot, aztán dudál ha kell, de ha fontos a pontos szinkron, akkor szopni fogsz.

A legtobb rendszergazda eloszor meg is van rola gyozodve, hogy tud programozni, amig a class hierarchy manias enterprise javasok es dependency hell yarn/npm typescriptes reactosok sarba nem tiporjak oket a par soros scriptjeik kodminosege miatt.

Aztan visszaadjak a kapott kinevetest amikor lehal az SQL szerver es csak a rendszergazda erti mit kurtak el a programozok. Kozben a programozok vakon kapkodva git revertelgetnek.

Ennyire nem lennék elítélő a kérdezővel. Tökéletesen megértem, ha valaki nem programozó, nincs hozzá affinitása, nem szeretné. De az volt a mondandóm lényege, hogy nem is kell annak lenni, pl. én se vagyok programozó, mégis össze tudnék ilyesmit ütni.

Plusz azt is érteni kell, hogy adott esetben, ha nem ő akarja programozni, lehet nem spórol semmi munkát magának, csak más nehézséget vállal be, pl. a piacról ajánlatokat bekérni, sajátot íratni, vagy valami kész kereskedelmi vagy ingyenes megoldást keresni, de azt meg sorban letesztelni, jóváhagyatni, bevezetni, jó lesz, nem lesz jó, később derül ki, hogy az igényeket mégse teljesen fedi le, akkor megint váltani másik megoldásra. Adott esetben egy pár soros szkript gyorsabban megvan, kevesebb szívás, és ki tudja, lehet bejöhet, mint megoldás, nagy veszteni való nincs vele, egy kis extra időt leszámítva.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Esetleg az nem lenne jó, hogy a mostani kódot átvennénk és támogatnánk tovább a fejlesztő helyett?

Egy fél napig kínlódtam, mire sikerült elindítani, mert mindig ezt a hibát írta ki:

[WinError 10013] An attempt was made to access a socket in a way forbidden by its access permissions

 

Végül kiderült, hogy a National Instruments (LabVIEW van telepítve) háttérben futó folyamatai okoztak galibát. Azok letiltása óta megy a NiceGUI.

Egy ilyen feladatot még talán Grafana-val is meg lehet oldani (no-code, vagy épp csak egy kicsit): képet megjeleníteni tud, adatbázisból olvas, canvas, tetszőleges szöveg, táblázat, newsfeed (RSS), kiosk-mód (vagy hogy hívják), stb. Persze lehet hogy ettől sokkal bonyolultabb kell.

Erre nézz rá: https://pisignage.com/

Elvileg megy felhőből is, 2 megjelenítő ingyenes, de telepítheted local serverre is, több megjelenítő egyszeri licenszes.

 

Máshol meg ezt használjuk: https://otrumsignage.com/

Ez viszont keményen havidíjas megjelenítőnként, de el lehet dönteni, hogy mire és milyen supporttal / rendelkezésre állással kell.

"Probléma esetén nyomják meg a piros gombot és nyugodjanak békében!"