KamoCRM

비밀번호

모든 기능, 수정 및 개선, 그것은 배로 게시. 출시를 위해 다시 열지 않습니다.

17,500
총 변경
5,986
제품 설명
5,284
수정 사항
30
프로젝트
프로젝트
모든 프로젝트17,500AIService251APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService576InitializerService329KBService151KlusterServices740MCPGatewayService251MediaService602RAGService79SecurityService1,847TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,349kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,657kamo-signer-monorepo56kamolos114
필터 유형
모든 유형Build16CI523Chore774Docs3,254Feature5,986Fix5,284Other994Performance165Refactor278Revert23Style42Test160Upgrade1
April 25, 2026
Fixkamo-internal

드롭 섀도 DOM 이메일 렌더링기 그래서 오버 플로우 X 자동 화재

Shadow DOM은 뿌리 원인이었습니다. 넓은 이메일 내용 (fixed-width 테이블) 그림자 나무 안쪽에 기여하지 않고 호스트를 그린 호스트의 레이아웃 상자, 그래서 부모 바디 래퍼의 오버 플로우 X 자동 오버플로를 감지하지 않고 스크롤바를 제작하지 않았습니다. 일반 div +...

kamo·6mo ago
Fixkamo-internal

Align ChatWebSocketContext 가져오기 경로에 매치 공급자

TicketChat 및 ChatNotificationListener는 컨텍스트를 통해 수입 '@/app/contexts/...' alias while PresenceWrapper (제공자) 가져오기 상대를 통해 '../contexts/...' 경로. Next.js 번들러는 이러한 것을 ...

kamo·6mo ago
Fixkamo-internal

인라인 스타일 +를 가진 힘 그림자 주인 containment는 포함합니다: 배치

그림자 호스트의 Class-based overflow-x-auto는 믿을 수 없을 것 그림자에 대하여 ':host { all: 초기 }' 리셋, 그래서 넓은 이메일 content (fixed-width table)는 호스트의 과거에 시각적으로 그림이었습니다. 레이아웃 상자와 3-colu...

kamo·6mo ago
Fixkamo-internal

Shadow DOM 내부의 넓은 이메일 내용, 외부

이전 시도 overflow-x-auto 에 빛 DOM 조상 그림자 나무의 시각 때문에 넓은 이메일 내용을 잡을 수 없습니다 페인트 오버플로우는 호스트의 레이아웃 박스에 기여하지 않습니다. 이름 * 넓은 테이블이 과거에 그려진 동안 란 폭에 체재해, 타격 외부 오버 플로우 x-숨겨진 및 ...

kamo·6mo ago
FixEmailService

사용 getHasAttachments() Boolean 래퍼 유형 일치

***********는 Boolean (wrapper), 그래서 Lombok입니다 getHasAttachments()를 생성합니다. 후자의 만 primitive boolean에 대한 존재. 안전하게 취급하기 위하여 Boolean.TRUE.equals ()를 사용하십시오 null의 경우.

Kamo·6mo ago
FixMediaService

JPA 저장소 스캔을 확장하여 상거래 패키지를 포함

새로운 kamo-shared-library에서 가져옵니다 *********** 제품 설명 *************** (com.kamo.z.shared.commerce에서). MediaService는 donotmodify.dao.repos 만 스캔했습니다. 그리고 응용 프로그램은 시작 ...

Kamo·6mo ago
FixMediaService

ChatWebSocketController에서 HashMap 가져오기 복원

이전 refactor는 HashMap 가져 오기를 제거하지만 HandleTyping 여전히 태핑 이벤트 페이로드에 대한 HashMap을 구성, 원인 Forgejo는 '암호를 찾을 수 없습니다. class HashMap'.

Kamo·6mo ago
Fixkamo-internal

이메일 내용에 min-w-0을 추가하십시오 div 그래서 overflow-x-auto 불

Min-w-0 없이, flex-col 아이의 과태 최소한도 폭: 자동차는 해결합니다 min-content, 넓은 이메일 테이블 확장 div 과거 열 폭. 외부 오버 플로우 x-숨겨진 다음 확장 된 div 대신 scrollbar 생산 min-width 설정:0 div를 유지 열의 할당된 ...

kamo·6mo ago
Fixkamo-marketing

SendMessage에 중복 connectStomp 호출 제거

첫 번째 메시지가 새로운 세션을 만들 때, onSessionCreated update props useEffect를 트리거하여 connectStomp를 호출합니다. sendMessage의 인라인 호출 redundant 였고, useEffect 의 splitStomp에 의해 즉시 사망 할...

Kamo·6mo ago
FixMediaService

세션 생성에 NATS 소비자를 활성화하여 메시지 손실을 방지합니다

NATS JetStream 푸시 소비자는 STOMP 클라이언트가 만들 때만 생성되었습니다. /app/chat/subscribe를 보냈습니다. DeliverPolicy로. 새로운, 어떤 메시지가 전에 출판 소비자는 영구적으로 손실되어 있습니다. 방문자 메시지 및 이름 변경 에이전트가 먼저...

Kamo·6mo ago
Fixkamo-internal

실시간 메세지를 떨어뜨리는 reconnect gap

구독 useEffect deps에서 `connected` 제거 채팅박스. 너무 이른, 모든 WebSocket reconnect 트리거 효과 unsubscribe()라고 하는 정리, 세션을 삭제 구독지도 및 /app/chat/unsubscribe를 백엔드에 전송 — NATS→STOMP 브...

kamo·6mo ago
FixSecurityService

시스템 사용자를 허용 org 브랜딩 및 수정 로고 auth

- canManageOrgBranding에 있는 첫번째 감시로 체계 사용자 우회를 etc로 추가하십시오 체계 사용자는 모든 non-parent orgs에 가득 차있는 브랜딩 통제가 있습니다 - bypassed의 raw org-owner-only check가 있는 uploadLogo en...

Kamo·6mo ago
Fixkamo-internal

이메일 보기 pane에서 3번째 란에 수평한 과잉을 포함합니다

- MessageBrowser 외부 컨테이너에 overflow-x-hidden 추가 - 이메일 내용 영역에 오버플로우 x-hidden을 열 3 래퍼 및 오버플로우 x-auto 추가 - Constrain SanitizedEmailRenderer shadow host with max-w-f...

kamo·6mo ago
FixKlusterServices

Piper TTS (en US-norman-medium)를 가진 Coqui TTS를 대체하십시오

Coqui VCTK 모델에는 지명 된 스피커가 없습니다. - Piper TTS와 교체하십시오. 정확한 norman[medium] 음성. Piper 바이너리 (~3 MB) 및 모델 (~60 MB) 첫 번째 실행 및 캐시에 init 컨테이너에 의해 다운로드 /var/lib/piper/{bi...

Kamo·6mo ago
FixEmailService

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...

Kamo·6mo ago
Fixkamo-internal

대답 / 앞으로 및 수정에서 Pre-populate 주소

- DraftMessage는 이제 fromAddress를 운반하므로 openNewMessage에서 흐릅니다. 작곡가에게 - MessageBrowser는 Active mailbox 이메일주소를 저장합니다. 개인적인 우편함) 그리고 그것을 때 오프닝 대답/forward 통과하십시오 - Me...

kamo·6mo ago
FixEmailService

Send에 지원 fromAddress override

Adds FromAddressRequest to EmailSendRequest 그래서 프론트엔드를 지정할 수 있습니다. alias/shared/mailbox 주소로 전송합니다. SmtpOnlyProvider 지금 헤더의 주소는 현재가 떨어지면 공급자 설정하지 않을 때 이메일.

Kamo·6mo ago
FixKlusterServices

Split-DNS / LAN 클라이언트 RTP 수정에 대한 local net 추가

K1m1과 같은 LAN의 전화는 분할 DNS를 통해 연결 (도메인은 해결 192.168.4.22 내부). local net없이, Asterisk는 여전히 광고 SDP에서 LAN 클라이언트에 외부 도메인, 공공 IP를 통해 RTP 라우팅. local net=192.168.4.0/24 은 ...

Kamo·6mo ago
FixKlusterServices

Persist sorcery contact=memory 수정 및 start.sh에서 SIP 스캐너 차단

- [res pjsip] contact=memory as sorcery.conf 앞에 Asterisk 시작; 기본적으로 sorcery-astdb SQLite는 조용히 모든 REGISTER 연락처를 삭제 - 팟 스타트에서 iptables를 통해 알려진 SIP 스캐너 87.246.54.22...

Kamo·6mo ago
Fixkamo-internal

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...

kamo·6mo ago
FixEmailService

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...

Kamo·6mo ago
Fixkamo-internal

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...

kamo·6mo ago
April 24, 2026
FixEmailService

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...

Kamo·6mo ago
Fixkamo-internal

Proper layout, 패딩 및 공급자 로고

레이아웃 / 간격 수정 : - 모든 6개의 탭(Providers, Extension, Phone Users, Device, Voicemail, Health) 이제 px:{xs:2,md:3} py:3 pb:6 패딩을 사용하여 TabShell에서 콘텐츠를 감싸고 있습니다. 단추 패널의 가장...

kamo·6mo ago
FixEmailService

Correct field name and type in getFromAddresses response

Backend was sending 'email' key but frontend expected 'address', and sent type 'shared_mailbox' when frontend expected 'shared'. Also fixes hasMailboxes flag wh...

Kamo·6mo ago
Fixkamo-internal

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...

kamo·6mo ago
FixInitializerService

CockroachDB 호환 DROP INDEX CASCADE 구문

CockroachDB는 ALTER TABLE을 거부합니다 ... UNIQUE 제약을위한 DROP CONSTRAINT : unimplemented : UNIQUE constraint "uk org oauth provider"를 사용하지 마십시오. ALTER TABLE DROP CONST...

Kamo·6mo ago
FixVOIPService

저장소 스캔에 com.kamo.z.shared.commerce 포함

최신 kamo-shared-library propagates *************** (donotmodify.dao.services)는 생성자 의존성을 가지고 있습니다. *************** *************** 더 보기 서비스는 VOIPService의 구성 요소 검사...

Kamo·6mo ago
Fixkamo-internal

첨부 파일 다운로드 버튼 및 decouple Mark-as-read 추가

- 각 첨부 파일 행에 다운로드 아이콘 버튼을 추가하여 사용자가 강제할 수 있습니다. 파일 다운로드 대신에만 새 탭에서 열기 - Decouple markConversation 스레드 로드 시도 / 캐치에서 transient OTK/network 실패 거짓 실 짐으로 더 긴 표면 오류 또...

kamo·6mo ago
FixKlusterServices

로컬 /var/lib/pbx에 hostPath를 이동

Rclone FUSE를 통해 MinIO는 POSIX chmod 또는 symlink()를 지원하지 않습니다. FreePBX의 모듈 시스템에 의해 요구되는. 모든 FreePBX 및 MariaDB 변경 /mnt/shared-files/pbx/에서 /var/lib/pbx/로 hostPath 볼...

Kamo·6mo ago
FixKlusterServices

MinIO FUSE hostPath를 위한 PHP를 통해 포장 fwconsole/amportal

/var/lib/asterisk는 지원하지 않는 rclone FUSE를 통해 MinIO에 의해 역행됩니다 POSIX chmod, 그래서 fwconsole 스크립트는 그 볼륨에 실행할 수 없습니다. start.sh는 이제 ephemeral /usr/local/bin의 래퍼 스크립트를 생성...

Kamo·6mo ago
FixKlusterServices

PreStop 후크 및 종료GracePeriodSeconds 추가

컨테이너는 배경 Asterisk 때문에 종료에 갇혀 있었다 apache2ctl (PID 1) 종료 후 실행되는 프로세스. preStop 걸이는 보냅니다 Kubernetes가 컨테이너를 죽이기 전에 Asterisk에 SIGTERM, 깨끗한 포트 릴리즈 및 포트 사용 오류 타격에서 다음 팟...

Kamo·6mo ago
FixKlusterServices

Bootstrap.php 추가 /etc/freepbx.conf 재생

Installer는 datasource='와 require once로 freepbx.conf를 작성합니다. bootstrap.php의 경우, config.php는 FreePBX 클래스를로드하는 데 따라 다릅니다. 재생 된 버전은 모두 누락되었습니다. "Class FreePBX는 찾을 수...

Kamo·6mo ago
FixKlusterServices

재시작 /etc/freepbx.conf

/etc는 ephemeral (hostPath), 그래서 /etc/freepbx.conf에 의해 작성된 installer는 각 pod 재시작에 손실됩니다. 다른 지점을 재생 그것은 env vars 때 bootstrap.php 이미 존재, 그래서 관리자 UI 수 있습니다 MariaDB에 ...

Kamo·6mo ago
FixKlusterServices

Bypass start asterisk, 대신 제어 소켓을 기다립니다

start asterisk는 pod에 false 긍정적을 반환하는 `pidof asterisk`를 사용합니다. 다시 시작, 대기 - Asterisk 루프를 걸기 위해. 지금 start.sh 시작 Safe asterisk를 통해 직접 Asterisk ( stale 소켓 / pid 파일 삭...

Kamo·6mo ago
FixKlusterServices

배경에서 Asterisk를 시작, 그것을 기다리고, 다음 설치 프로그램을 실행

Entrypoint.sh는 FreePBX 설치 프로그램을 실행하지 않습니다 - 그것은 단지 시작 서비스. start.sh 이제 엔트리포인트 설정 단계를 복제, 시작 배경에 Asterisk는, 그것의 소켓을 준비하기 위하여 기다립니다, 그 후에 달립니다 php는 첫 번째 부팅이라면 아파치...

Kamo·6mo ago
FixKlusterServices

Entrypoint 핸들 설치, start.sh가 아닌

FreePBX installer (php install -n)는 이미 Asterisk가 필요합니다. 실행. 우리의 Startup.sh는 Asterisk가 시작되기 전에 호출되었습니다. "Asterisk와 함께 시작" 추락. 이제 start.sh 만 기다립니다 MariaDB 및 패치 Ap...

Kamo·6mo ago
FixKlusterServices

마운트 /etc/asterisk 만, /etc, PHP 간단한 XML 오류 수정

HostPath 볼륨으로 전체 /etc 설치는 PHP 확장을 손상 이미지에서 파종 후도 로딩 — simplexml load file undefined 설치 시간. 지금만 /etc/asterisk는 persisted입니다; /etc는에서 옵니다 이미지 및 PHP 설정 intact 유지. ...

Kamo·6mo ago
FixKlusterServices

과량 제거를 위해 2:1 비율에 CPU 한계를 감소시키십시오

Docs 4→1 핵심, 지브리 4→2 핵심, libretranslate 2→1 핵심, bergamot 2→1 핵심, coturn 1→0.5 핵심. 저장 ~7.5 노드 제한을 코어.

Kamo·6mo ago
FixKlusterServices

Escomputers/freepbx:17에 스위치 정확한 건축

피곤 / freepbx는 FreePBX 17 이미지가 없습니다 (2022). escomputers/freepbx:17 (4월 2026일 새롭게 한, Asterisk 21 + FreePBX 17)는 요구합니다 별도의 MariaDB 팟과 한 번 PHP 설치 단계. 변경 사항: - Free...

Kamo·6mo ago
Fixkamo-internal

이진 corruption을 방지하기 전에 파스 formData

request.text() 에 multipart/form-data corrupts 바이너리 파일 바이트; init.body로 parsed FormData를 전달하기 때문에 forwardToApi는 request.text()를 건너 뛸 수 있습니다. 정확한 경계를 가진 청결한 multip...

kamo·6mo ago
Fixkamo-internal

MinHeight 제거:100vh 두 배 scrollbars 원인

외부 상자의 minHeight:100vh는 배치의 calc (100vh - 56px)를 초과했습니다 브라우저 수준의 스크롤과 내부를 두는 컨테이너 overflow: 동시에 능동태이기 위하여 자동. 고도: 혼자 100%는 충분합니다.

kamo·6mo ago
Fixkamo-internal

보안 모델 테이블에서 Drop stale Pay 컬럼 헤더

Employee Self-Pay Kamo 수수료 필드가 제거되었을 때, 일치 행 몸에 TableCell은 삭제되었지만 헤더 행은 여전히 '<팀회원> 지불의 세포, 각 몸 란 1개의 구멍에 이동 머리의 왼쪽. orphaned 헤더를 제거하기 그래서 열 / 헤더 폭은 다시 라인.

kamo·6mo ago
FixSecurityService

GoDaddy 400 오류 뒤에 표면 실제적인 이유

GoDaddy는 이제 코드 = UNIABLE TO AUTHENTICATE와 몸으로 HTTP 400을 반환합니다. "Bad Request : Bad Request" 계정이 현재의 일치하지 않는 경우 생산 영역 API 자격 (10 + 도메인 계정 또는 활성 할인 도메인 클럽 회원). 자격은...

Kamo·6mo ago
Fixkamo-internal

Censorship sub-tab 이제는 spec 당 ATF를 첫째로 만듭니다

Censorship sub-tab 카드를 요청한 순서와 일치합니다. 1. 알콜, 담배 & 소화기 2. 허용된 회원 연령 범위 3. 허용된 직원 (팀 회원) 연령 범위 다른 sub-tabs는 이미 정확한 순서 (일반: 기본 정보 / 가시성 / 누가 만들 수 / 플랫폼 설정 / Domai...

kamo·6mo ago
FixSecurityService

FindByIdWithDomains를 통해 Eager-load 도메인, 드롭 @Transactional

@Transactional on the Controller 메소드는 DB 연결이 실행되도록 합니다. 전체 MinIO 업로드, 또한 위험 LazyInitializationException if 내부 getOrganizationById 거래가 해결하기 전에 커밋 org.getDomains(...

Kamo·6mo ago
Fixkamo-internal

ApiPath에서 중복 제거?type=

forwardToApi 이미 appends incomingSearch (?type=...) 원본에서 요청 URL. Embedding ?type= 생성 된 apiPath의 두 번째 시간 ?type=full?type=full at the backend, 그래서 봄은 유형을 구부렸습니다 "f...

kamo·6mo ago
Fixkamo-internal

Int64 회원 ID에 대한 mailbox 스위처 복원

Mailboxes/member fetch를 위한 getMemberIdString를 사용하여, id/mailboxId를 정상화하십시오 EmailService에서 접근 가능한 개인의 스위처를 구동 우편함 사용할 때 JS 번호 coercion는 ID 정밀도를 스트립 할 수 없습니다.

kamo·6mo ago
Fixkamo-register

ThemeRevision을 사용하여 캐시 스트레치 로고 URL config.json

DynamicMetaLoader는 이제 테마를 저장합니다. 세션 저장 및 화재 KAMO THEME CONFIG LOADED config.json을 fetching 후. ThemeLogo 듣기 그 이벤트를 위해 ?v={revision} 쿼리 매개 변수, forcing 브라우저는 캐시 된 ...

Kamo·6mo ago

배송을 보는 것과 같이?

모든 것이 자신의 작업 공간에서 도착합니다. 무료 플랜을 시작하고 이 페이지를 다시 한 달에 읽으십시오.

무료 영원히 시작가격 비교