KamoCRM

Live Change Log

Every feature, fix and improvement, posted as it ships. Nothing is held back for a launch.

17,630
Total Changes
6,064
Features
5,326
Fixes
30
Projects
Filter by project
All Projects17,630AIService259APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService583InitializerService329KBService151KlusterServices744MCPGatewayService261MediaService604RAGService79SecurityService1,871TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,398kamo-login339kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,677kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore775Docs3,257Feature6,064Fix5,326Other998Performance165Refactor278Revert23Style42Test162Upgrade1
November 15, 2025
Featurekamo-internal

Update leads page with LeadManager component matching doc manager layout

- Created LeadManager component similar to DocManager with lead-specific fields - Updated /leads/page.tsx to match doc manager layout with gradient header - Add...

snadjafinia·11mo ago
November 7, 2025
Fixkamo-internal

Auto-scroll chat to bottom on load and new messages

Track previous message count and scroll smoothly when new messages arrive; scroll immediately on initial load or when un-minimizing

snadjafinia·11mo ago
November 6, 2025
Fixkamo-internal

Frontend WebSocket persistence - match backend timing and faster reconnect

Heartbeat: 4s -> 20s to match backend, reconnect delay: 5s -> 1s, add 30s connection timeout

snadjafinia·11mo ago
Refactorkamo-internal

Unified header design spanning both chat and softphone panels

REMOVED: Status bar from softphone (wifi, signal, time - unnecessary for web app) SHARED HEADER: Title bar now spans both softphone and chat when expanded LAY...

snadjafinia·11mo ago
Fixkamo-internal

Optimize softphone to fit all content without scrolling at 680px height

CHATBOX HEIGHT: 550px -> 680px (optimal balance) PHONE DISPLAY: Reduced minHeight (100/75 -> 85/65), padding (14/16 -> 12/14) CALL CONTROLS: All 9 buttons - p...

snadjafinia·11mo ago
Fixkamo-internal

Reduce ChatBox height to more comfortable 550px

Changed from 85% viewport (750-850px) to fixed 550px for better UX WebRTC call controls remain fully intact and functional

snadjafinia·11mo ago
Featurekamo-internal

Add premium enterprise features - Analytics, CRM, AI Assistant, Advanced

ANALYTICS DASHBOARD - Real-time call metrics with interactive charts CRM INTEGRATION - Customer data, lifetime value, activity tracking AI ASSISTANT - Sentime...

snadjafinia·11mo ago
Featurekamo-internal

Implement 100% enterprise VoIP desk phone features

Complete implementation of 100+ features matching Cisco 8800, Polycom VVX 600, Yealink T58A 7 Tabs: Dialpad, Speed Dial/BLF, History, Voicemail, Contacts, Queu...

snadjafinia·11mo ago
Fixkamo-internal

Make softphone fully visible without scrolling - comprehensive compact layout

CHATBOX HEIGHT: - Changed from fixed 600px to 85% of viewport height - Uses Math.floor(window.innerHeight * 0.85) for responsive sizing - Provides much more ver...

snadjafinia·11mo ago
Fixkamo-internal

Eliminate horizontal scrollbars and increase softphone visibility

LAYOUT FIXES: - Increase DOCKED_HEIGHT from 480px to 600px for better vertical space - Add explicit width constraints (minWidth, maxWidth) to SoftphonePanel roo...

snadjafinia·11mo ago
Refactorkamo-internal

Elevate softphone to enterprise-grade with premium features

ENTERPRISE FEATURES: - Call Recording with visual indicator and pulsing animation - Call Transfer functionality for seamless handoffs - Call Notes with expandab...

snadjafinia·11mo ago
Featurekamo-internal

Add expandable softphone panel to ChatBox

- Add PhoneInTalk icon button to ChatBox header for softphone toggle - Create comprehensive SoftphonePanel component with full UI - Implement dialpad with 0-9, ...

snadjafinia·11mo ago
Fixkamo-internal

Remove connected check and add debug logging for STOMP activation

STOMP client was not activating because connected check was preventing it. Added debug logs to diagnose.

snadjafinia·11mo ago
Fixkamo-internal

Activate STOMP client only after SockJS opens

Critical bug fix: STOMP client was being activated before SockJS opened, causing immediate disconnect. Now waits for SockJS onopen event before activating STOMP...

snadjafinia·11mo ago
Fixkamo-internal

Enable SockJS fallback transports for WebSocket connection

Allow xhr-streaming and xhr-polling as fallback if WebSocket upgrade fails.

snadjafinia·11mo ago
Refactorkamo-internal

Enhance ChatBox with dynamic color system and increased height

- Increase message viewing area by 33% (DOCKED_HEIGHT: 360 -> 480) - Create ChatBoxStyles.tsx with dynamic CSS variable-based color system - Apply primary color...

snadjafinia·11mo ago
Refactorkamo-internal

Modernizează designul ChatBox cu poloneză profesională

- Implementeaza fundal alb curat cu gradienti gri subtili - Adăugaţi stil personalizat bara de defilare integrat cu schema de culori primare - Îmbunătățește bul...

snadjafinia·11mo ago
Fixkamo-internal

Elimină verificarea nevalidă a proprietății "active" în utilizareChatWebSocket

Tipul Client de la @stomp/stompjs nu are o proprietate "activă." Eliminat cecul invalid deoarece clientul.activare() este numit imediat după crearea clientului.

snadjafinia·11mo ago
Fixkamo-internal

Așteptați ca SockJS să se deschidă înainte de activarea clientului STOMP

- Fixaţi condiţia de cursă unde clientul STOMP activat înainte de conexiunea SockJS a fost gata - Mutare client.activare() la SockJS apel deschis - Acest lucru ...

snadjafinia·11mo ago
Otherkamo-internal

Add STOMP debug logging to diagnose connection issue

snadjafinia·11mo ago
Fixkamo-internal

Traseul ALL WebRTC API solicită portul 8443

- Actualizat toate rutele WebRTC API pentru a utiliza media. - Nu mai folosesc Traefik pentru criteriile finale WebRTC - Meciuri media API și configurare WebSoc...

snadjafinia·11mo ago
Fixkamo-internal

Traseu TOATE cererile de servicii media la portul 8443 (pass Traefik)

- Actualizat toate rutele API media pentru a utiliza media. - Nu mai folosesc Traefik pentru MediaService - Atât API cât și WebSocket merge direct la portul 844...

snadjafinia·11mo ago
November 5, 2025
Fixkamo-internal

Conectează-te la portul 8443 (extern) pe care se îndreaptă către NodePort 30843

- Router forwards extern 8443 to k1m1 NodePort 30843 - Browser folosește media.kamocrm.com:8443 - NodePort intern este 30843 (Raza Kubernetes valid)

snadjafinia·11mo ago
Featurekamo-internal

Conectaţi-vă la portul MediaService 8443 pentru WebSocket

- Actualizare conexiune WebSocket pentru a utiliza media.kamocrm.com:8443 - Bypasses Traefik pentru traficul numai pe WebSocket - Foloseste conexiunea directa H...

snadjafinia·11mo ago
Fixkamo-internal

Elimina restrictia de transport numai pe WebSocket pentru compatibilitate HTTP/2

- Browser WebSocket API nu suporta HTTP/2 (RFC 8441 nu este implementat) - WebSocket nativ necesită HTTP/1.1 Upgrade care nu reușește peste HTTP/2 - Să SockJS a...

snadjafinia·11mo ago
Fixkamo-internal

Utilizați doar transportul WebSocket (dezactivează sondajele XHR)

- Transporturi SockJS modificate de la [websocket, xhr-streaming, xhr-polling] la [websocket] - Elimină retragerea la sondajul XHR - Forte conexiune WebSocket p...

snadjafinia·11mo ago
Revertkamo-internal

Conectați WebSocket direct la media.kamocrm.com

- Reversed to original approach: conect to media.* subdomeniu direct - Eliminarea complexității inutile de aceeași origine - Eliminat /ws bypass din mijlocware ...

snadjafinia·11mo ago
Fixkamo-internal

Elimină trimiterea explicită de namespace din kamowsmedia-service

- Ambele servicii sunt în același namespace (kamo) - Nu este nevoie de referinţă explicită de namespace - Evita potentiale probleme inter-namespace

snadjafinia·11mo ago
Fixkamo-internal

Elimină /ws rescrie de la următoarea. config (handled by Traefik)

- Eliminat Next.js rescrie pentru /ws căi - rutare WebSocket acum manipulate la nivelul Traefik IngressRoute - Traefik routes intern.kamocrm.com/ws -> MediaServ...

snadjafinia·11mo ago
Fixkamo-internal

Solicitări direct către MediaService via Traefik

- Adauga trasee dedicate pentru /ws trasee in IngressRoute - Trasee interne.kamocrm.com/ws -> MediaService direct - Foloseste aceleasi servere Transportare ca m...

snadjafinia·11mo ago
Fixkamo-internal

Permite /ws WebSocket obiective fără redirecționare aut

- Calea Adăugat /ws la middleware bypass - SockJS trebuie să se conecteze la /ws/info fără redirecţionare - Conexiunile WebSocket vor avea în continuare *** coo...

snadjafinia·11mo ago
Fixkamo-internal

Schimbă conexiunea WebSocket cu aceeași origine

- Schimbat de la media.kamocrm.com la aceeaşi origine (intern.kamocrm.com) - Evita problemele legate de conexiunea WebSocket - Adăugat Next.js rescrie regula pe...

snadjafinia·11mo ago
Featurekamo-internal

Adaugă căi proxy API pentru criteriile de evaluare WebRTC

- Adăugat /api/webrtc/config proxy la MediaService - Adăugat /api/webrtc/token proxy pentru autentificare Janus - Adăugat /api/webrtc/call/inițiate, responde, e...

snadjafinia·11mo ago
Fixkamo-internal

Elimină proprietatea coder invalid de la getDisplayMedia

- Folosind video simplu: adevarat pentru partajarea ecranului - Construcţia ar trebui să reuşească

snadjafinia·11mo ago
Fixkamo-internal

Rezolvați eroarea de construire - înlocuiți TelefonOff cu CallEnd

- Pictograma telefonică nu există în @mui/icons-material - Folosind CallEnd care este pictograma MUI corectă - Elimină fișierele duplicate neutilizate (ChatBoxW...

snadjafinia·11mo ago
Featurekamo-internal

Apel complet peer-to-peer WebRTC cu semnalizare

- Cârlig WEBRTC cu semnalizare completă - Semnalizare WebSocket integrata (oferte, raspunsuri, candidati ICE) - Adauga notificări de apel primite cu butoane ras...

snadjafinia·11mo ago
Featurekamo-internal

Adaugă integrarea Janus WebRTC pentru apeluri audio/video

- Utilizarea adăugată JanusWebrTC cârlig pentru managementul apelurilor WebRTC - Added VideoCallPanel component for in-chat video show - Integrat cu ChatBox pen...

snadjafinia·11mo ago
Revertkamo-internal

Restaurare WebSocket transport în SockJS

- Revenind la utilizarea transportului websocket (nu sondaje) - WebSockets sunt standard și ar trebui să funcționeze în mod corespunzător - Concentrează-te pe f...

snadjafinia·11mo ago
Fixkamo-internal

Skip WebSocket transport în SockJS pentru a evita probleme HTTP/2

- Utilizați xhr-streaming și xhr-polling transporturi în loc de websocket - Aceste transporturi lucreaza atat cu HTTP/1.1 cat si cu HTTP/2 fara a necesita upgra...

snadjafinia·11mo ago
Fixkamo-internal

Configurează transporturile SockJS pentru a gestiona problemele de actualizare HTTP/2 WebSocket

- Configurați explicit comanda de transport SockJS pentru a prefera WebSocket, apoi revenire la xhr-streaming / xhr-polling - upgrade-uri HTTP/2 WebSocket poate...

snadjafinia·11mo ago
November 4, 2025
Fixkamo-internal

Asigurați-vă că ruta mesajelor este recunoscută de Next.js

- Adauga logare pentru a verifica ruta este lovit - Există fişier traseu şi structura este corectă pentru Next.js 15

snadjafinia·11mo ago
Fixkamo-internal

Elimină proprietatea "activă" inexistentă din STOMP Arhivarea clienților

- STOMP Clientul nu are o proprietate "activă" - Verificaţi numai proprietatea "conectată" care este indicatorul de stat corect

snadjafinia·11mo ago
Fixkamo-internal

Eliminați nesuportat peWebSocketError handler de la client STOMP

- onWebSocketError nu este o proprietate validă în ClientOptions - Manipulatori de eroare SockJS (onerror, onclose) deja oferă o manipulare a erorilor

snadjafinia·11mo ago
Fixkamo-internal

Adăugați webSocket cuprinzător de gestionare a erorilor și de logare

- Manipulatoare de erori SockJS Adăugat (ondeschis, onerror, onclose) pentru a prinde eșecuri de conectare - Detectare timeout de conectare adăugată (10 secunde...

snadjafinia·11mo ago
Fixkamo-internal

Elimină activitatea incorectă a agentului HTTPS

- Modificări inversate care ocolesc validarea certificatului - Certificatele sunt eliberate de serviciul auto-cert (Sa Criptam), nu auto-semnat - Nevoia de a in...

snadjafinia·11mo ago
Fixkamo-internal

Utilizați HTTPS cu agentul care acceptă certificate autosemnate

- Reversed to use always HTTPS (not HTTP) - Adăugat agent HTTPS cu respingere Neautorizată: fals pentru certificate auto-semnate - Acest lucru permite server-si...

snadjafinia·11mo ago
Fixkamo-internal

Utilizați numele serviciului Kubernetes pentru MediaService pentru a evita problemele de certificare SSL

- Server-side Next.js rute utilizate acum *************** - Aceasta evită erorile de certificat autosemnate atunci când se conectează la https://media.kamocrm.c...

snadjafinia·11mo ago
Fixkamo-internal

Elimină vechi / api / securitate / media / rute care au fost interceptarea cererilor

- Trasee vechi au fost transmise către APIService care nu mai are obiective media - Toate cererile media ar trebui să treacă prin /api/media / rute direct la Me...

snadjafinia·11mo ago
Featurekamo-internal

Adaugă eroare detaliată pentru crearea sesiunii MediaService

- Log MediaService URL fiind numit - Antete de răspuns jurnal - Inregistrare eroare sporita cu detalii de eroare completa - Include URL în răspunsul de eroare p...

snadjafinia·11mo ago

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing