Új Hammy verzió: 3.20.10


A legújabb Hammy verzióban bemutatkozik a Vizuális Szerkesztő, melynek segítségével a kreatív tartalom-szerkesztés még egyszerűbbé válik a Hammy-ben. Bevezettük az organizáció alapú felhasználókezelést, és egységes lett a fix csatolmányok kezelése. Mostantól megkülönböztetjük a visszapattanókat aszerint, hogy címzettről vagy cc/bcc másolatról pattantak-e vissza. A PDF form kezelő felület láthatósági feltétellel és differenciált értékkészlettel bővült ki. Üzenetek, dokumentumok logikai törlése is lehetővé vált. Mindezeken felül a 3.20.10-es kiadás is számos hibajavítást és performancia-fejlesztést tartalmaz. 

Verziószám: 3.20.10
Kiadás dátuma: 2020. október

Hammy Vizuális Szerkesztő

A Hammy vizuális szerkesztő egy komponens-alapú HTML sablonszerkesztő, amelyben előregyártott komplex tartalmi elemekkel dolgozhatunk. Nagyfokú rugalmasság jellemzi: az előre definiált és sokrétűen paraméterezhető komponensek segítségével bármilyen HTML e-mail tartalmat elő tudunk állítani. Előnézetek széles skálája is elérhető, ezzel lehetővé válik az egyes levelező kliensekre történő optimalizálás.

Az egyes tartalmi elemeket a "húzd és ejtsd" módszerével, a munkaterületen "kattintgatva" tudjuk a helyükre illeszteni, és ezáltal mélyebb műszaki ismeret nélkül hozhatunk létre teljes értékű, modern HTML e-maileket. A Vizuális Szerkesztőről egy külön blogbejegyzés is született, videóval. 

Kreatív tartalom, drag-and-drop HTML szerkesztés a Hammy-ben

CC/BCC és fő címzett visszapattanók megkülönböztetése 

Egy rég várt funkcionalitás, aminek keretében a Hammy képes már arra, hogy pontosan megkülönböztesse honnan, melyik címzettről történt a visszapattanás email küldés esetén. Három forrása lehet ennek az eseménynek, jöhet a fő címzett felől, érkezhet a CC mezőben megadott fiókból (fiókokból), végül akár a BCC-től is. Ha ez nem a fő címzett, hanem CC vagy BCC, azt külön jelezzük. Ez esetben az üzenet státusza nem változik, nem módosítjuk ‘Visszapattant’-ra. A visszapattanás idejét sem tároljuk el ebben az esetben, és a kiküldéssel sem kell újra próbálkozni.

Ha a visszapattanás a fő címzettről történik, akkor a megszokott módon történik a folyamat: státusz változás, megfelelő dátum tárolása, újraküldési lehetőség aktiválása. Az üzenet lekérdezéshez használt API és az admin felület is bővült ennek megfelelően, azaz már egy listában szolgáltat információt, tételesen a visszapattanás forrásáról, és okáról.

PDF kitöltő felülethez láthatósági feltétel és differenciált értékkészlet bevezetése

A Hammyben lehetőség van arra is, hogy egy docx alapú word sablonból megszemélyesített, változó adatokkal (sablonváltozó) ellátott PDF-et állítsunk elő, akár a kiküldési folyamatban, hivatalos email csatolmány készítéséhez, de akár tömegesen is van lehetőség a PDF-ek előállítására, szervízen keresztül is.

Ehhez a funkcióhoz készült egy kitöltő felület is, ahol kézzel lehet megadni a docx sablon sablonváltozóit, elő lehet állítani a PDF-et, le lehet tölteni, vagy akár kiküldeni emailben. (A funkció részletes ismertetését hamarosan egy bővebb bejegyzésben is tervezzük.)

A kézi kitöltő felület a docx sablonhoz definiált validációkat, értékkészleteket, megkötéseket is kezel. Ezen megkötések közé bekerül egy új típus, a láthatósági megkötés. Ezzel lehet szabályozni, hogy adott docx sablonváltozó megjelenjen-e a kitöltő formon, vagy sem. Abban az esetben jelenik meg a változó, a hozzá tartozó értékmegadó mezővel együtt, ha a megkötésben szereplő feltétel teljesül. Ha a változó nem jelenik meg a formon, és előtöltéssel sem érkezik a PDF generáláshoz, akkor üresen is használható a mező. A láthatósági megkötésekhez ugyanazokat a beállításokat lehet megadni, mint a többi megkötés típushoz. 

A funkció másik fontos eleme a differenciált értékkészlet. Ezzel megtehetjük azt, hogy a kitöltő felületen bizonyos feltételek mellett más más értékkészletből engedjük a felhasználót választani az adott sablonváltozó feltöltésénél. 

Üzenetek, dokumentumok logikai törlésének bevezetése

A jelenlegi jogi környezetben nagyon fontos követelmény, hogy lehetőséget biztosítsunk a tárolt ügyféladatok megfelelő és teljes körű törlésére, megsemmisítésére.

A Hammy által kiküldött és tárolt dokumentumok vagy üzenetek hordozhatnak érzékeny adatokat. Ennek a törlésére most már külön elérhető szervízpontot alakítottunk ki, ezáltal is jobban alkalmazkodva az adatvédelmi törvényekhez és ajánlásokhoz. Van lehetőség többszintű törlésre is, nem végleges törlés esetén az adatot nem távolítjuk el véglegesen, de a kereső és lekérdező szolgáltatásokon keresztül nem érhetőek el többé. Megfelelő jogosultsággal ezek az adatok, üzenetek, visszaállíthatóak, vagy véglegesen is törölhetőek. 

Fix csatolmányok kezelésének végleges egységesítése

A HammyAdmin felületen a sablonok definícójánál, illetve a DDM felületen a kampány beállítások alatt lehetőség van fix fájlok feltöltésére és használatára, emailhez csatolására. Ezt a funkciót már egy nagy átalakításon átvezettük, de további feladatok maradtak hátra, amit ebben a verzióban elvégeztünk. 

Ilyen feladat volt a fájlok tárolási helyének egységesítése. A fix fájlok a Hammy régi működése miatt egy külön könyvtárban voltak tárolva. Erre azért volt szükség, mert nem volt az Admin felületen lehetőség a fájlok feltöltésére, és az ügyfelek ide másolták fel manuálisan a sablonokhoz tartozó fix csatolmányokat, majd rendelték hozzá a felületen keresztül a sablonhoz. A fájlfeltöltés funkció már elérhető, ezért van szükség a szerkezeti változtatásra is. A fix csatolmányok is ugyanabba a könyvtárba kerülnek, ahol a képek is vannak. Belső működés szintjén így a feltöltött fájlok kezelése nem válik ketté ezen túl, illetve törlés esetén, a fájl fizikailag a fájlrendszeren marad. Ez azért is fontos, mert a kiküldött üzenet megjelenítésekor a fájl is letölthető marad, ezzel a felügyeleti megfelelőség is teljesül.

Organizáció alapú felhasználó

Szintén egy rég várt funkcionalitás a szervezet (organizáció) alapú felhasználókezelés. Célja, hogy lehessen olyan felhasználókat menedzselni, akik több szervezethez (organizációhoz) is tartoznak, és hogy ezek a felhasználók szabadon váltogathassanak a különböző organizációk között a HammyAdmin funkciók használata közben.

A felhasználó - organizáció összerendeléseket tároljuk, és belépéskor, ha a felhasználóhoz csak egy organization tartozik, akkor ezzel lesz beléptetve. Ha több organizáció is tartozik hozzá, akkor a felhasználó kiválaszthatja, melyikkel kíván belépni. Ha nem tartozik hozzá organizáció, akkor kap egy alapértelmezett organizációt, hogy a rendszer visszafelé is kompatibilis legyen.

Technikai részletek

Core

  • MessageTypes listázó API kiegészítése templateKind listás szűrővel: a templateKind filter ezentúl listát is tud fogadni, nem csak egy elemet
  • DBX Stencilben a jodconverter hívás átdolgozása: hiba esetén az input fájl nem záródott, és lock maradt rajta, így a következő feltöltésnél nem tudta felülírni. Ennek javítása (fix)
  • Megjelenítést szabályozó megkötés létrehozása. Az új változó típus VISIBLE névre hallgat. Ha teljesül az adott megkötés, a sablonváltozó csak ebben az esetben lesz látható a formon. A többi megkötéshez hasonlóan a Sablonváltozók felületen lehet megadni.
  • Velocity contextben új funkció jött létre, mellyel az acutalDate-hez hozzá tudunk adni vagy kivonhatunk belőle tetszőleges számú napot. Az újítás lényege egy dateUtils nevű osztály, ami vissza tudja adni az aktuális dátumot, vagy az ettől paraméterben megadott számú nappal hamarabb vagy később lévő dátumot.

Admin 3.20.10

  • Külön route a Vizuális Szerkesztőnek
  • Értesítési sablon szűrőben nem létező sablont megadva minden sablon feljött (fix)
  • Felhasználói tár elemeinek átnevezése
  • Batch felületen, Visszaállít gombra nyomva NEW státuszt küldünk a BE-nek, de RESET kellene helyette. Ennek javítása (fix)
  • Konténer típusú komponens bevezetése a Vizuális Szerkesztőben
  • Alapértelmezett betűméretet nem veszik át a komponensek. Ennek javítása (fix)
  • Mester sablonban található linkek listázása
  • Megnyitotta és Zárolva kereső feltételek esetén az Igen változat nem működött. Ennek javítása (fix)
  • HammyAdmin hiba esetén a felugró hibaüzenetben paraméterezhető az email cím, ahová a hibát küldeni kell. A paraméter a hammyAdmin.yml-ben van (first_line_support_email_address).
  • Templatekind beküldés átformálása a Blacklist/Whitelist felületen, hogy ugyanúgy küldjön, mint a Sablonok/Üzenettípusok felületen.
  • Sablontípus nevű típus engedélyezése minden környezeten

DDM 3.20.10

  • DDM integráció: a DDM felületén a második lépésben van egy új gomb Hammy Vizuális Szerkesztő névvel. Ez a gomb vezet át a Vizuális editorba, úgy, hogy a kampány sablon automatikusan létrejön a háttérben. A visszafelé irány úgy működik, hogy a sablon Bezár gombja a DDM második lépésére navigál vissza.

Customer specific 3.20.10

  • GPR és GT specifikus sql-ek
  • CIG specifikus sql-ek
  • JWT token kezelésében konfigurálható clock skew: amennyiben a HammyAdmint futtató szerver órája siet a Hammy-t futtató szerver órájához képest, úgy SSO esetén a HammyAdmin által előállított JWT tokent a Hammy nem fogadja el. Ennek kezelésére a hammy.properties-be kivezetjük, hogy mekkora időeltérés ne okozzon még gondot a Hammy - HammyAdmin szerverek közötti token ellenőrzésekor.
  • A megkötéseknél nem csak a változó egyedi nevét vesszük figyelembe, hanem a beküldendő nevet is, és elsősorban az alapján érvényesülne a megkötés. Ha egy megkötésnek pedig több változó szerint kéne számolódnia egyszerre, akkor megnézzük, hogy a változónak teljesül-e a láthatósági megkötése (azaz megjelenik-e a felületen), és csak akkor vesszük figyelembe a megkötés kiértékelésénél, ha látható is a felületen.

Doky 3.20.10

  • Doky viewer jogosultsággal nem megfelelő működés: Szerkesztés gomb átnevezése megnyitásra, illetve a gomb használatának engedélyezése a doky_viewer jogosultság számára.
  • Doky Admin is megjeleníti a rendszerüzeneteket, hasonlóan a Hammy Adminhoz, a három vízszintes vonalra kattintva 
  • Dokumentum keresésnél, ha üres filterrel megy be a kérés a keresésre, validációs hibát dobunk.
     

 

A bejegyzés teljes szövege a medium.com-on olvasható
production | 1.6.1