Laden org Logos von MinIO Thema öffentlichen Weg wie Dashboard
Verwenden Sie getThemePublicBaseForDomain so Logo URLs entsprechen getThemePath()/img/logo.svg statt legacy /domain/.../kamosite Pfade, die 404 und fiel zurück ...
Vermisste nav-Top-Strings und Umfangsübersetzungen hinzufügen
Englische Nachrichten aufgelistet Komponenten.navtop.* Tasten für Mail/Docs/Voip-Buttons, aber nie definiert hi/welcome, Filialen, Konto, Credits, Kalender, Cha...
löse nav-pri Etiketten mit rohen i18n-Tasten
Verwenden Sie namespaced next-intl Übersetzer für Navi und Komponenten.nav.navPri so Lookups lösen gegen die fusionierten Nachrichtenbäume; fügen Sie Panel-Arie...
MessageBrowser i18n Strings hinzufügen und Lastfehlerkopie wiederherstellen
next-intl warf MISSING_MESSAGE für Komponenten.messages.browser.* Tasten fehlt von en.json, brechen /messages render. Englische Saiten hinzufügen, loadMessagesF...
Re-Export MemberAvailabilityStatus und VerfügbarkeitKarte aus dem Kontext
Build Aufnahme MinIO Objekt-Taste wie Bild-Stream
Die Erweiterung auslassen, wenn FILE_EXT null/leer ist, so dass der Objektname übereinstimmt RecordingImagingService und ImagingController. Java String-Consat m...
Wähltwähler abbrechen, wenn Hangup vor sdk.invite aufgerufen löst
Race Zustand: hangup() während des Anschlusses hatte noch keine Sitzung zu beenden (sdk.invite wird vor wireSession erwartet), so dass der Anruf sowieso verbund...
Auto-enter neue org nach der Gründung so Mitglied landet mit ihrer eigenen Rolle und Rechten
Nach der Erstellung von Org blieb die Sitzung im Elternkontext (keine Admin-Rechte), lässt der neue org-Besitzer keine Einstellungen sehen. Jetzt der erstellen ...
Erlauben Sie Ende Anruf während der Verbindung, deaktivieren AI-Assistent, entfernen Warteschlange-Register
- Endruf-Taste ist jetzt aktiv und rot während des Verbindungszustands, so dass Anrufe abgebrochen werden können, bevor sie verbinden - Betätigen Sie die KI-Ass...
Anrufhistorie-Erweiterung von member_voip_config lösen, nicht phone_extension
**************** war NULL für einige Erweiterungen auch dann member_voip_config hat das Mitglied korrekt auf seine Erweiterung abgebildet. Verwendung member_voi...
Volle Touch-Unterstützung für Softphone Popup auf Tabletten
- Touch-Action hinzufügen: Manipulation + WebkitTapHighlightColor zu iconBtnStyle damit Fenstersteuerungstasten (minimieren/maximieren/schließen) sofort auf T...
Go-sql-driver/mysql v1.7.1 checksumme to go.sum hinzufügen
go mod tidy ohne Quelldateien ist ein No-Op, so dass die mysql-Prüfsumme wurde nie hinzugefügt. Erzeugt die richtige h1 hashes über einen Wegwerf- golang:1.22-A...
Vermächtnis ordinal Strings für CountryType über AttributeConverter behandeln
DB-Reihen hatten Land als ordinale ganze integer gespeichert (z. "186" für UNITED_STATES) statt enum Namen, was zu IllegalArgumentException auf findAll() führt....
Kündigen Sie Jobs sofort durch Tsx im Hintergrund übersetzen
Wenn Forgejo einen Arbeitsablauf aufhebt, wartet auf jedes Vordermannkind vor der Verarbeitung des Signals zu beenden - so ein laufender Tsx locale Job würde di...
Verschieben Sie ASTERISK_CDR_DSN zu lokal config.json, nicht CI/CD-Geheimnisse
CDR-Anscheins sind für jeden FreePBX-Server lokal und haben nichts zu suchen in der CI/CD-Pipeline. Betreiber fügen ASTERISK_CDR_DSN direkt zu ihrem config.json...
Erlauben Sie erhöhten Zugriff auf getDomainById und überprüfen-dns Endpoints
Top-Level-Org-Besitzer und Systemmitglieder wurden immer 403 auf getDomainById und überprüfen-dns, weil diese Endpunkte überprüft wirdUserMemberOfOrg direkt. Ad...
vorhandene Org-Domain anstelle des Anmeldeformulars anzeigen, wenn keine eigene Domain
Fallen Sie zurück auf die org-Plattform Subdomain als Display-Domain so DnsProgressView gerendert anstatt DomainEntryForm, wenn keine eigene externe Domain exis...
Surface Imaging Fallback, wenn Anbieter hat keine Anruf-Historie
KamoPBXProvider.getCallHistory gibt jetzt null statt zu werfen **************** also die 501 Antwort nicht mehr Bypasses die bildgebende Fallback. Der Provider-...
Korrigieren Kontoliste Mitglied/TeamMember Fallback Etiketten und Trigger-repeploy
Wiederherstellen NavPri Panel-Labels und LeadHistory Säulenkopfer
NavPri: Bergungsschlüssel griffen href URLs als Labelwerte und tauschten Label/Beschreibungspaare für Accounts, KB und Notizen Navi-Panels. LeadHistoryPanel: M...
Plattform-Domain-Kontext anzeigen, wenn keine eigene Domain gesetzt ist
Oberflächen die aktive *.kamocrm.com Hostname in der Domain-Eingabeform, so dass Benutzer können ihre aktuelle Plattform-Domain anstelle eines leeren Eintragsbi...
Checkpoint-Übersetzungen pro Stück und pro Locale auf Haupt
Beharrliche JSON nach jedem API-Stück, so dass Stornierung verliert bei höchstens eine Charge. CI übersetzt eine Locale pro Prozess und Commits/Pushes nach jede...
Checkpoint-Übersetzungen pro Stück und pro Locale auf Haupt
Beharrliche JSON nach jedem API-Stück, so dass Stornierungen bei höchstens eine Charge verliert. CI übersetzt eine Locale pro Prozess und Commits/Puschs nach je...
Docker BuildKit-Cache zu Deaktivieren, so dass jeder Pipeline-Lauf einen kompletten Umbau macht
Setzt No-Cache auf beiden Bild-Build-Schritte so npm ci und npm run build always run, auch wenn der Quellbaum unverändert ist.
Bust Docker BuildKit Cache pro Commit so npm run build läuft jeder Push
Identische Kassenbäume (z.B. leere Commits) wiederverwendete Cappellen und Überspringen eine echte Next bauen. GIT_COMMIT vom Workflow und Label abgeben die Bil...
Suppress grep non-match Ausgang in OLD_PID Erfassung zu vermeiden pipefail Abbruch
Erlauben Sie Top-Level-Besitzer und Systemmitgliedern, die Domains von Org zu verwalten
Sync members.email wenn primäre Mailbox zugewiesen, geändert oder entfernt wird
Wenn eine Mailbox einem Mitglied in einer KAMO_MAIL org zugewiesen wurde, werden Mitglieder.email wurde nie aktualisiert, was dazu führte, dass EmailCredentialS...
Verbieten Sie doppelte Root-Domains und beheben primäre Domain-Anzeige
ONE_DOMAIN_PER_ORG Check fälschlicherweise ausgeschlossen .kamocrm.com web-alias Domains, die es einer Org ermöglichen, mehrere Root-Domains zu sammeln (und 10 ...
Serialisieren Sie Mitglieder-Sicherheit und Mitglieder PUT-Anrufe, um CockroachDB-Konflikt zu vermeiden
Zwei gleichzeitige Schreibvorgänge in die gleiche "members"-Reihe verursachten eine serializierbare Isolationskonflikt - Mitglieds-Sicherheit lesen Sie die Reih...
Reduzieren Sie Org-Erstellungs-Latency und beheben Übersetzungskaskaden-Bulvers
- OrganisationController: ersetzen sicherstellenTeamMitgliederForAllOrgs (voller Org Tabelle Scan) mit sicherstellenTeamMemberForOrg (Single org) eliminiert d...
Widen commit_log_translations.Titel zu TEXT zur DB-Spalte
Die Spalte war VARCHAR(512) sowohl in der Anmerkung und der DB, was dazu führte Übersetzungsbeilagen scheitern bei längst übersetzten Titeln. Die DB-Spalte ist ...
Katalog und Berechnung aus Backend Antwort-Umschlag
erhaltenSubscriptionCatalog zurückgeschickt { Katalog: {...] wurde aber direkt gegossen als AbonnementCatalog, so dass catalog.pläne und der Plan nicht definier...
Hinzufügen @JsonProperty zu ist*-prefixed boolean DTO Felder
Lombok generiert isXxx() is-getters für boolesche Felder namens isXxx. Jackson entkleidet die führenden 'ist' von is-getters und serialisiert sie als 'xxx' stat...
Verwenden Sie ss statt fuser, um abgestandenen Port-Forward zu töten (fuser nicht auf k0m1)
fuser und lsof sind nicht auf dem Läufer Host installiert. Verwenden Sie ss -tlnp mit grep, um den PID-Holding-Port 18080 zu extrahieren und direkt zu töten. Au...
Aufräumen abgestandenen Port-Forward so abgesagt übersetzen Job nicht blockieren nächsten Lauf
Bash leitet keine Signale an Hintergrundprozesse weiter, also kubectl Port-Forward überholte abgebrochene Workflow-Läufe und hielt Port 18080, blockiert jeden n...
Wiederherstellen Sie alle gebrochenen Platzhalter-Werte über Seiten
Salvage-Keys Skript hatte CSS classNames, Inline-Stile und JS gegriffen template literals statt des englischen Originaltextes für 114 Nachricht Schlüssel über N...
Restore führt Seite Helden Titel und Untertitel aus git Geschichte
heroTitel war 'Hero Title' (Platzhalter), heroUntertitel war 'flex gap-2' (Salvage-Tasten versehentlich schnappte sich den benachbarten CSS-Klassennamen). Richt...
Aktivieren Sie die Schaltfläche Beenden, indem Sie widget.getState() abfragen und auf auto=onload umschalten
Der Statechange Event-Hörer aktivierte die Finish-Taste nicht zuverlässig nach *** Überprüfung. Zwei Ursachen: 1. Die Abfluss-Logik lesen WidgetAny.state, die ...
Einbemü unget auf Abonnement-Zielkonten in Org-Liste
listForOrg gibt nun auch Konten zurück, deren Abonnements auf die angeforderte org - nicht nur Konten direkt im Besitz von ihm. In der Multi-Or Modell der zahle...
StatusWindow Labels namespace hinzufügen und alle Einstellungs-First-Insetholders beheben
- ************ hinzufügen (50 Tasten) so die Einstellungen nav sidebar zeigt echten Text statt Schlüsselpfade - Beheben branchTypesLabel ICU Format: \${branch...
Passen Sie andere Werkzeugfenster Größe + Farbschema
- defaultSize und minSize jetzt 320x650, resizable: false (passiert Softphone, Chat, Taschenrechner, SMS, AI Chat) - Wechselte von dunklem Schiefergradient auf ...
Forward Range Header so Audio-Wiedergabe kann schrubben
Ohne dies gibt der VOIPService-Aufnahme-Streaming-Endpunkt immer die vollständige Datei zurück (Range Header wird von buildForwardHeaders fallen gelassen), die ...
Rewrite /etc/odbc.ini um auf $MARIADB_HOST auf jedem Boot zu zeigen
Das escomputer/freepbx:17 Image backt /etc/odbc.ini mit Server=db (das Docker-Comppose Link Target). Auf diesem Kubernetes-Einsatz verfehlt MariaDB bei \$MARIAD...
Resolve member-Extension vor VM/CDR Provider Lookup
CallController war vorbei MitgliedId, wo FreePBX (und andere PBX-Stil Anbieter) erwarten eine Erweiterungsnummer - Voicemail-Liste zurückgegeben leer weil keine...
Auto-assign ersten Sitz, Frei als Boden, breiter Org ungültig
BillingSetupService aktiviert jetzt den ersten offenen Lizenz-Slot für den Schöpfer bei der Aussaat eines Sub-Or-Abonnements (und dasselbe für die Promotion-to-...
Wie, was Sie sehen Versand?
Alles kommt in Ihrem Arbeitsbereich für sich. Starten Sie mit dem kostenlosen Plan und lesen Sie diese Seite in einem Monat wieder.
