Conţine supraîncărcare orizontală în vedere vedere e-mail la coloana a 3-a
- Adăugați supraîncărcare-x-ascuns în Containerul exterior de mesaj ca limită tare - Adăugaţi supraîncărcare-x-ascuns la coloana 3 ambalaj şi supraîncărcare-x-a...
Se înlocuiește Coqui TTS cu Piper TTS (en US-norman-mediu)
Modelul Coqui VCTK nu are boxe numite vocea exacta a lui Norman [mediu]. Piper binar (~3 MB) și model (~60 MB) sunt descărcate de un container init pe prima cu...
Reset stale hasAttachments on sync and accumulate correctly
- Reset has_attachments=false at start of bulk sync so stale true values from old false-positive MIME detection are cleared before re-indexing - Accumulate ha...
Pre-populare DE la răspuns / înainte și fix trimite de la Adress
- DraftMessage acum poartă de la Adress astfel încât curge de la OpenNewMessage prin intermediul compozitorului - MesajBrowser stochează e-mailul cu căsuță poșt...
Suport de la @ info: whatsthis
Adaugă FromAddressRequest to EmailSendRequest so the frontend can specification din care se poate trimite adresa de e-mail/împărtășit/cutie. SmtpOnlyProvider ac...
Adaugă local net pentru Split-DNS / LAN client RTP fix
Telefoane pe același LAN ca și conexiunea k1m1 prin DNS divizat (domeniul rezolvă la 192.168.4.22 intern). Fără a local net, Asterisk încă face publicitate dome...
Contact vrăjitoresc persist = fix memorie și bloc SIP scanner la pornire.sh
- Injectaţi [res pjsip] contact=memorie în vrăjitorie.conf înainte de începerea tratamentului cu Asterisc; backend-ul implicit SQLite scade în tăcere toate cont...
Sub-tab content fills full content-area width
Drop the centered max-width constraint (was 920 / 1200 / 680 / 720 depending on tab) on SubTabShell. The page already lives inside SettingsView's content column...
Fix attachment parsing and hasAttachment false positives
Three fixes to EmailImapService: 1. toEnvelope: narrow multipart check to multipart/mixed only — plain HTML+text emails (multipart/alternative) no longer sh...
Add download button to classic view attachment section
The classic view (MessageBrowser) had its own attachment list that was missing the download button — only the conversation view was fixed previously. Also align...
Add com.kamo.z.shared.commerce to EnableJpaRepositories scan
**************** (required by **************** in the shared library) lives under com.kamo.z.shared.commerce but was not included in the JPA repository scan, ca...
Layout corespunzătoare, budding, și logo-uri furnizor
Fixare/spațiere: - Toate cele şase file (Providers, Extensii, Utilizatori de telefoane, Dispozitive, Voicemail, Health) Acum împachetați conținutul lor într-un ...
Numele și tipul de câmp corecte în răspuns de la Adders
Platforma trimitea cheia 'e-mail' dar frontend se aştepta la 'adresă' şi a trimis tip "împărtășit mailbox" atunci când frontend se aștepta la "împărțit." De ase...
Load FROM addresses from accessible mailboxes and aliases
Replaces the broken getFromAddresses() endpoint (which sent 'email' instead of 'address') with getAccessibleMailboxes() + listMemberAliases(), matching the same...
Utilizaţi sintaxa CockroachDB-compatibilă DROP INDEX CASCADE
CockroachDB respinge tabelul ALTER ... DROP CONTRAINT pentru constrângerile UNIQUE cu: neimplementată: nu poate scădea constrângerea UNIQUE "uk org oauth prov...
Include com.kamo.z.shared.commerce în scanare depozit
Ultimele propagate kamo-shared-library - Nu. (numodificați.dao.servicii) care are o dependență de constructor Nu-ţi face griji. Nu-ţi face griji. ă serviciul es...
Adaugă butonul de descărcare atașament și decuplează marca ca citit
- Adăugați un buton de descărcare pictogramă la fiecare rând de atașare astfel încât utilizatorii pot forța o descărcare fișier în loc de deschiderea numai într...
Mută gazdaPath din MinIO (rclone FUSE) la local /var/lib/pbx
MinIO via rclone FUSE nu suportă CHmod POSIX sau Symlink () impusă de sistemul modulului FreePBX. Schimbat toate FreePBX și MariaDB gazduieste Volume path de la...
Wrap fwconsolă/amportal prin php pentru MinIO FUSE gazdăPath
/var/lib/asterisk este susținut de MinIO via rclone FUSE care nu suportă POSIX chmod, astfel încât scripturile fwconsole nu pot fi executate pe acest volum. sta...
Adaugă preStop cârlig și terminareGracePeriodSeconds
Containerele au fost obtinerea blocat în Terminare deoarece fundal Asterisc procesele continuate după apache2ctl (PID 1) ieșit. PreStop cârlig trimite SIGTERM t...
Adăugați bootstrap.php nevoie pentru a regenerat /etc/freepbx.conf
Instalatorul scrie freepbx.conf cu sursa de date=" și one once pentru bootstrap.php, care config.php depinde de încărcarea clasei FreePBX. Versiunea noastra reg...
Regenerează/etc/freepbx.conf la repornire
/etc este efemeră (nu o gazdăPath), deci /etc/freepbx.conf scris de Instalatorul este pierdut la fiecare repornire. Ramură adăugată pentru regenerare ea de la e...
Bypass start asterisk, așteptați priza de control în schimb
start asterisk foloseste Reporneşte, făcând ca bucla de aşteptare pentru Asterisk să fie atârnată. Acum porneşte. Asterisk direct prin safe asterisk (după ce a...
Start Asterisc în fundal, așteptați pentru ea, apoi executați instalator
Punctul de intrare.sh nu ruleaza FreePBX incursiune servicii. startup.sh acum reproduce pașii de configurare punctul de intrare, începe Asterisk în fundal, așt...
Lasă punctul de intrare să se ocupe de instalare, nu de pornire.sh
Instalator FreePBX (php install -n) necesită asterisk să fie deja Alergând. Startup nostru.sh a fost de asteptare înainte de a începe Asterisk, provocând "Error...
Mont /etc/asterisk numai, nu /etc, pentru a remedia eroarea PHP simplexml
Montarea întregului /etc ca gazdă Volumul Path corupea extensia PHP încărcare chiar și după însămânțare din imagine la timpul de instalare. Acum doar /etc / as...
Reducerea limitelor de procesor la raportul 2:1 pentru eliminarea supraangajamentului
Docs 4→1 core, jibri 4→2 cores, libretranslate 2→1 core, bergamot 2→1 miez, coturn 1→0.5 miez. Salvează ~7,5 nuclee off limite nod.
Comută la escomputers/freepbx:17 cu arhitectura corectă
obosit/freepbx nu are imagine FreePBX 17 (abandonată din 2022). escomputers/freepbx:17 (actualizat Apr 2026, Asterisk 21 + FreePBX 17) necesită un pod separat M...
Parse FormularData înainte de expediere pentru a preveni corupția binară
request.text() on multipart/form-data corupe binare file bytes; pass parsed FormDate as init.body so forward ToApi skips request.text() Şi hai să regeneram un m...
Eliminați minHeight:100vh cauzând bare duble de defilare
Cutia exterioară minHeight:100vh a depășit calcul aspectului (100vh - 56px) container, care a cauzat atât sulul de nivel de browser și interior revărsare:auto s...
Afişează antetul coloanei de plăţi vechi din tabelul modelelor de securitate
Când câmpul de auto-plată al angajatului Kamo a fost eliminat, potrivirea TabelulCell în corpul rând a fost șters, dar rândul antet a avut încă "<TeamMember> Pa...
Motivul real de suprafață în spatele GoDaddy 400 eroare
GoDaddy returnează acum HTTP 400 cu cod=UNABLE TO AUTENTICATE și corp "Cerere proasta: cerere proasta" atunci cand un cont nu corespunde curentului producţie Do...
Cenzura sub-tab acum face ATF primul pe spec
Reordonează cardurile de cenzură pentru a corespunde ordinului solicitat: 1. Alcool, tutun şi arme de foc 2. Limitele de vârstă permise membrilor 3. Stagiarii p...
Domenii Eager-load prin findByIdWithDomains, drop @Transactional
@Transacţional pe o metodă de controler păstrează o conexiune DB deschisă peste întregul MinIO upload, și, de asemenea, riscă LazyInitializare Excepție în cazul...
Elimină duplicatul?tip= din apiPath
forwardToApi aboneaza deja Search (?type=...) din original solicita URL. Embedding ?type= a doua oară în apiPath produs ?type=full?type=full at the backend, so ...
Restaurare comutator cutie poștală pentru ID-uri membre int64
Utilizați getMemberIdString pentru cutiile poștale/membru aduce, normaliza id/mailboxId de la EmailService, și conduce comutatorul de la personal accesibil căsu...
URL-uri logo Cache-bust folosind temaRevision from config.json
DynamicMetaLoader stochează acum temaRevision în sesiuneStorage and fires KAMO THE ME CONFIG LOADED după ce a adus config.json. TemaLogo ascultă pentru acest ev...
URL-uri logo Cache-bust folosind temaRevision from config.json
DynamicMetaLoader stochează acum temaRevision în sesiuneStorage and fires KAMO THE ME CONFIG LOADED după ce a adus config.json. TemaLogo ascultă pentru acest ev...
Încărcare direct în public/{dosarul principal}/img/ în loc de găleată de montare
Obiectivul de uploadLogo a fost de a scrie la un hardcoded "Sumtingwong" locholder (Setare necompletată) în loc de calea tematică publică reală a orgii. Logos a...
Elimină implicit nodul k2m1 coborât
k2m1 (10,8.2.1) este în scădere permanentă. Lăsând-o în lista de eșec a cauzat retries de încărcare să stea până la noul timeout OkHttp incendii. Implicit este ...
Aplicați timeout-uri de conectare/scriere/citire pe MinioClient via OkHttpClient
Fără timeout-uri, un peer de replicare a site-ului redus (k2m1) a cauzat makeBucket și putObject cheamă pentru a bloca pe termen nedefinit, iesind la suprafață ...
Caseta de bifare citeste org domenii, nu domenii furnizor
Cablajul anterior citit /api/email/domenii (email provider domenii Tabel). Acest tabel este populat numai atunci când un furnizor de e-mail terț integrarea est...
Despachetează {piețele:[...]} plicul din dialogul Atașat
GET /api/security/commerce-markets returns {markets: [...], mesaj: "...}, nu o matrice goală. Dialogul pieței de comerț atașați a fost tratarea întregului răspu...
Combină OTK-redirect în proxy.ts, șterge duplicate Middleware.ts
Next.js 15 refuză să construiască atunci când există atât Middleware.ts și proxy.ts. ă OTK hand-off redirecționare care a trăit în Middleware.ts ?otk=... pentr...
Citește nou *** de la Redis master și dedupe OTK POST
Replica citește ratat sesiuni proaspăt scrise după schimbul OTK, cauzând eşec fals şi redirecţionare de conectare. Sari peste intarzierea intro atunci cand otk ...
Garda împotriva răspunsurilor non-array pe /platform/orgs
Un răspuns non-array (corp gol, plic de eroare sau {date: [...]} ambalaj) a fost aterizarea în starea de orgi și suflare până rend cu "E.Map nu este o funcție."...
Enforce/Rețea introduce reguli server-side
Respinge atunci când ținta este org sesiune curentă, domeniul personalizat SSL nu este Confirmat, sau membru țintă uman este inactiv. Configurează domeniul logi...
Necesită membru de destinațieId și validează calitatea de membru al org
Intro-ca acum construiește întotdeauna noul *** cu ținta asigurată de client rândul membrilor; respinge org/membru neuniform. Îmbunătățește depanarea sesiune de...
Ca ceea ce vezi de transport maritim?
Fiecare dintre aceste actualizări aterizează automat în spațiul de lucru. Începe gratuit și urmăriți-l crească săptămână după săptămână.