Sembunyikan kartu ATF sepenuhnya ketika semua bidang terkunci oleh model terapan
Probe master model endpoint dan fix appliedModel org ID
- Ganti berlaku Model.source- berbasis gerbang dengan probe langsung dari / api / keamanan / master- model di mount; r.ok = false (409) berarti org diatur oleh ...
Gate censorship tab options by applied model constraints
- Hide EDIT MASTER MODEL button when org is governed by a branch type (use appliedModel.source instead of unreliable org context branchTypeID) - Hide ATF fiel...
Mark-as-read and message fetch for shared/member mailboxes
Classic mode now loads shared mailbox messages via the correct /messages/{folder} endpoint (was calling the non-existent /conversations endpoint). Fetching a fu...
Mark-as-read for shared and member mailboxes
EmailController.setFlags now accepts an optional mailboxId query param and routes through resolveProviderWithMailbox so member-mailbox flags are set against the...
Use extensionId as external ID, not Relay node id
FreePBX returns the same Relay id (ZXh0ZW5zaW9uOg== = "extension:") for every extension because the id field is not populated. Using it caused all extensions to...
Menangani IMAPInputStream dalam getMessage untuk mencegah Eksepsi Kelas
JavaMail dapat mengembalikan IMAPInputStream daripada String yang diterjemahkan dari part.getContent () ketika isi pesan belum pernah ada sebelumnya. The straig...
Meningkatkan TTL dari 90-an sampai 300s untuk mencegah OCLINE salah pada pemintalan tab
Tulis ulang semua kueri / mutasi GQL terhadap introspeksi skema hidup
Verifikasi setiap nama dan tipe lapangan terhadap skema FreePBX 17 yang sebenarnya. Set penuh koreksi: Query: - fetchAllExtensions: hapus daerah 'voicemail' da...
Lewati Folder yang dipilih ke ThreadDetailView sehingga surel: folder- mengubah kebakaran dengan folder yang valid
konversi. Folder selalu tidak terdefinisi karena Java ConversationEntity memiliki folderIds (teks []) bukan sebuah daerah string folder. Hal ini menyebabkan loa...
Nama ruas GraphQL yang benar untuk fetchAsteriskDetail
FreePBX API kembali "Apakah maksudmu fetchAsteriskDetail?" - ganti nama kesehatan periksa query dan data path yang sesuai.
Tambahkan header XHR / Terima dan respon String parsing ke klien GraphQL
Pola yang sama seperti FreePBXTokenCache: tambahkan X-Requested- Dengan + Terima: aplikasi / json untuk menekan respon redirect HTML FreePBX, dan menukar ketiga...
Selaraskan dropdown kotak-surat ke kotak-surat utama pada load
Dropdown digagalkan ke butir daftar pertama karena memilih kotak-surat yang diinisialisasi tanpa kotak surat, menyebabkan nilai mata uang untuk menyelesaikan 'p...
Naikkan batas ukuran berkas upload ke 500MB
Spring Boot default cap multipart bagian di 1MB, menyebabkan gambar latar belakang upload untuk gagal dengan 500 dalam request.getParts (). Match SecurityServic...
Galat permukaan HTTP sehingga kegagalan upload terlihat
Displaced diam konsole.warn dengan Galat dilemparkan pada status bukan-OK, sehingga pengguna melihat alasan kegagalan sebenarnya (tubuh status + respons) daripa...
Tambahkan tajuk + XHR dan raw-string respon parsing untuk tanda titik akhir
FreePBX kembali teks / html ketika disebut via cluster DNS karena Header host tidak cocok dengan PBX _ HOSTNAME yang dikonfigurasi. Menambahkan Terima: aplikasi...
Drive minimal-tab entri melalui kontrol animasi
Mengaktifkan animasi = {...} ke animasi = {tabControlls} memecah entri animasi: tabControlls tidak memiliki target antrian pada kait, sehingga tombol tetap pada...
Benang scope Oaut2 yang benar bagi API FreePBX
Scope FreePBX adalah identifier tingkat atas: 'gql' (semua GraphQL) dan 'rest' (all REST). Format 'gql: read' berarti GQL untuk sebuah modul bernama 'read', yan...
Tampilkan port 8088 secara langsung pada layanan ClusterIP
Layanan hanya memiliki port 80 £8088 pemetaan. Layanan internal memakai * * * * * * * * * * * * * * * (mis. token API VOIPService permintaan) adalah waktu kelua...
Backend Trust pendingCount, drop client offset
Backend pendingCount kini tidak terbaca-berbasis (dihitung sesi SUPPORT _ TIKET dengan pesan yang lebih baru daripada pemilik yang lastViewed). Ketika agen terb...
Tambahkan fail2ban- config ConfigMap untuk k1m1
Pemindahan referensi kegagalan 2ban- config ConfigMap (jail.local + asterisk- security.conf) tetapi tidak ada, memblokir pod di MountVolume. Penyiapan dan pence...
MarksRead setelah agen mengirim kemajuan yang lama
Pada tiket dukungan, baik pengunjung dan pesan agen disimpan di bawah Anggota Systemm yang sama, jadi permintaan yang belum dibaca adalah memberagnostik dan Sem...
Tiket dukungan membutuhkan jumlah yang tak terbaca anggota agnostik
Pesan pengunjung pada tiket dukungan disimpan di bawah system Anggota yang sama bahwa agen membuktikan sebagai, sehingga sesi CHAT- yang ada tidak dibaca query ...
Berikan folder ke tombol coba ulang loadThread
loadThread mengambil (threadId, folder); rrror- state coba saja melewati threadId, melanggar kamo- internal build. Cocokkan panggilan ke tanda tangan.
JsonIdentity benar Properti info dari 'uniqueId' ke 'id'
Entitas anggota dideklarasikan @ JsonIdentityInfo (properti = "uniqueId") tapi ruas kunci primer sebenarnya bernama 'id'. Jackson melemparkan "tidak dapat menem...
Hapus SSR guard menyebabkan dehidrasi tidak cocok; drop SockJS untuk web Socket asli
Hero.tsx: hapus pengecekan jendela di sekitar ParticleField - ParticleField sudah memiliki ssr: salah sehingga penjaga dihasilkan server / pohon klien tidak coc...
Bersihkan indikator yang belum dibaca ketika percakapan dibuka
ThreadDetailView kini mengirim surel: folder- berubah setelah MarkConversationRead sukses sehingga MailButton mengembalikan jumlah lencana inbox navtop. Tampila...
Move CORS to Traefik via kamo-middlewares, remove in-app CorsFilter
The CorsFilter @Bean in the Spring app was silently not applying headers after WebConfig.java was removed. CORS is now handled entirely at the Traefik layer by ...
Use /public/{mainDomain}-{tld} path matching actual MinIO bucket layout
The getThemePath() was generating /domain/{tld}/{split}/kamosite paths that don't exist in MinIO — theme files live in the public bucket under kamocrm-com/, bad...
Break rantai min- w-0 untuk memuat gulungan email dalam kolom tubuh saja
Tambahkan min-w-0 ke luar kontainer dan isi utama flex div sehingga flex anak-anak tidak dapat memperluas ke email lebar min-content, yang menyebabkan kontes-le...
Naikkan penyedia di atas Pengatur Alat
Akar penyebab yang sama dengan Hoist ChatWebSocketSocketprovider: Pasokan TicketWindow panggilan * * * * * * * * * * * * useUnread () .markAsRead (), tapi kedua...
Tambah penekanan Peringatan Hidration dan perbaiki gambar placeholder rusak
appressHydrationWarning di < html > mencegah Galat Reasi # 418 disebabkan oleh peramban ekstensi (mis. diterjemahkan, mode gelap) bermutasi atribut html antara ...
Ijinkan / domain / path awalan pada tema IngressRoute untuk CORS
Konfig tema di theme.kamocrm.com / domain /... tidak cocok dengan aturan rute yang ada (hanya / publik / dan / internal / diijinkan), jadi Traefik mengembalikan...
Hapus duplikasi CorsFilter dan strip header upstream CORS dalam gateway
WebConfig.java didefinisikan kedua CorsFilter kacang bersaing dengan CorsConfig. java kacang, mempertaruhkan duplikat header menulis. Dihapus sehingga hanya sat...
Hapus duplikasi CorsFilter bean yang menyebabkan double Access- Control- Allow- Origin header
The eksplisit CorsFilter kacang menyebabkan filter CORS kedua bersama Spring Pembangunan keamanan dalam dukungan CORS (yang menggunakan CorsConfigurationSource)...
Hapus laporan debug console.log dan tambahkan rute yang hilang
Hapus semua penelusuran sementara yang ditambahkan selama pelacakan WebSocket dari ChatBox, TicketChat, MenmberItem, ChatTool, dan Use ChatChWebSocket; tambahka...
Mencegah header pesan dari memperluas kolom pada alamat panjang
Kepala kiri anak fleks tidak memiliki email yang tidak bisa dipecahkan alamat dalam From / To / Cc memaksa lebar min- konten untuk tumbuh, seret tajuk (dan tata...
Hoist ChatWebSocketProvider di atas ToolProviders
ToolDock (dan perangkat jendelanya seperti SupportTicketWindow £TicketChat) adalah dipasang di dalam ToolProviders, yang terletak ABOVE PresenceWrapper dalam po...
Jatuhkan Shadow DOM dalam perender email sehingga overflow-x-auto kebakaran
Shadow DOM adalah penyebab akar. Isi surel lebar (tabel fixed- lebar) di dalam pohon bayangan melukis melewati host tanpa berkontribusi kotak tata letak host, s...
Align Path impor ChatWebSocketContext yang cocok dengan penyedia
TicketChat dan ChatNotificationListener diimpor konteks via '@ / app / contexts /...' alias ketika PresenceWrapper (penyedia) impor itu melalui jalur relatif '....
Paksa penahanan host bayangan dengan gaya inline + berisi: tata letak
Kelas berdasarkan overflow-x-auto pada host bayangan tidak dipercaya menang terhadap bayangan ': host {all: initial}' reset, so wide email isi (tabel fixed- wid...
Scroll isi email lebar di dalam bayangan DOM, bukan di luar
Upaya sebelumnya untuk menambahkan overflow-x-auto ke moyang DOM ringan tidak dapat menangkap isi email lebar karena visual pohon bayangan cat overflow tidak be...
Gunakan getHasAttachments () untuk mencocokkan tipe pembungkus Boolean
* * * * * * * * * * * * * adalah Boolean (wrapper), begitu Lombok menghasilkan getHasAttachments () bukan isHasAttachments (). Yang terakhir saja ada untuk bool...
Pemindaian repositori Expand JPA untuk memasukkan paket perdagangan
Kamo- shared- perpustakaan baru membawa dalam * * * * * * * * * * * * * * * * * yang membutuhkan * * * * * * * * * * * * * * * (dalam com.kamo.z.shared.commerce...
Kembalikan impor HashMap dalam ChatWebSocketController
Reaktor sebelumnya menghapus impor HashMap tapi handleTyping metode masih membangun sebuah HashMap untuk muatan peristiwa mengetik, menyebabkan Forgejo build un...
Tambahkan min-w-0 ke isi email div sehingga overflow-x-auto kebakaran
Tanpa min-w-0, anak flex-col baku lebar: otomatis menyelesaikan ke min-content, membiarkan tabel email lebar memperluas div melewati kolom lebar. Overflow-x-ter...
Hapus duplikasi connectStomp panggilan dalam sendMessage
Ketika pesan pertama menciptakan sesi baru, alat peraga pemutakhiran onSessionmade yang memicu use Effect untuk memanggil connectStomp. Panggilan pesan masuk it...
Proaktif membuat konsumen NAS pada pembuatan sesi untuk mencegah hilangnya pesan
Sebelumnya NATS JetStream mendorong konsumen hanya dibuat ketika klien STOMP dikirim / app / chat / berlangganan. Dengan DeliverPolicy. Baru, ada pesan yang dit...
Tutup jeda reconnect menyebabkan pesan real-time jatuh
Hapus 'tersambung' dari kotak penggunaan efek langganan dalam TicketChat dan ChatBox. Sebelumnya, setiap reconnect WebSocket memicu efek membersihkan yang diseb...
Ijinkan pengguna sistem untuk mengelola branding org dan memperbaiki logo auth
- Tambahkan sistem pengguna bypass sebagai penjaga pertama dalam canManageOrganic Branding sehingga platform pengguna sistem memiliki percabangan penuh kontrol ...
Seperti apa yang Anda lihat pengiriman?
Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.