Commit Graph

17 Commits

Author SHA1 Message Date
김보곤
099d08e49e chore: [ai] Gemini 모델 gemini-2.0-flash → gemini-2.5-flash 마이그레이션
- config/services.php fallback 기본값 변경
- AiConfig DEFAULT_MODELS 상수 + getActiveGemini() fallback 변경
- NotionService fallback 변경
- AI 설정 관리 UI placeholder/기본값 변경
- Google Cloud AI 가이드 서비스 현황 모델명 변경
- 환경변수 관리 아카데미 예시 변경
2026-03-03 08:09:28 +09:00
김보곤
52b26c7216 refactor: [ai-config] 모든 API 키를 DB(ai_configs)에서 .env로 전환
- AiConfig::getActiveGemini() → config('services.gemini') 기반
- AiConfig::getActiveGcs() → config('services.google') 기반
- AiConfig::getActiveClaude() → config('services.claude') 기반
- AiConfig::getActiveNotion() → config('services.notion') 기반
- GoogleCloudStorageService: DB 우선 로직 제거, .env만 사용
- 8개 서비스 파일은 수정 없이 동작 (AiConfig 인터페이스 유지)
2026-02-23 09:55:07 +09:00
김보곤
1b73fd1cf2 refactor: [notion] API 키를 DB(ai_configs)에서 .env로 전환
- NotionService: AiConfig::getActiveNotion() → config('services.notion')
- config/services.php에 notion 섹션 추가
- .env에 NOTION_API_KEY, NOTION_VERSION 추가
2026-02-23 09:48:40 +09:00
김보곤
e6f1d6ba46 feat: [dashboard] 주간 날씨 위젯 추가
- 기상청 공공데이터포털 API 연동 (단기+중기 7일 예보)
- WeatherService: 3시간 캐시, SKY/PTY 아이콘 매핑
- HTMX 비동기 로딩 + 스켈레톤 UI
- 오늘 카드 파란색 강조, 요일/날짜/아이콘/기온 표시
2026-02-21 13:10:54 +09:00
김보곤
6ab93aedd2 feat:YouTube Shorts AI 자동 생성 시스템 구현 (Veo 3.1 + Gemini)
- GeminiScriptService: 트렌딩 제목/시나리오 생성
- VeoVideoService: Veo 3.1 영상 클립 생성
- TtsService: Google TTS 나레이션 생성
- BgmService: 분위기별 BGM 선택
- VideoAssemblyService: FFmpeg 영상 합성
- VideoGenerationJob: 백그라운드 처리
- Veo3Controller: API 엔드포인트
- React 프론트엔드 (5단계 위저드)
- GoogleCloudService.getAccessToken() public 변경

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 08:46:28 +09:00
김보곤
79ed88fd10 fix:STT V2 기본 리전을 싱가포르(asia-southeast1)로 변경
Chirp 2 지원 리전: us-central1, europe-west4, asia-southeast1
서울(asia-northeast3)은 Chirp 2 미지원

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 21:04:13 +09:00
김보곤
4c360b3834 fix:STT V2 기본 리전을 서울(asia-northeast3)로 변경
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 21:03:25 +09:00
김보곤
7f1f7165a5 feat:최고 품질 음성 녹음 시스템 구축 (STT V2 + Chirp 2 + Web Audio)
- 프론트엔드: Web Audio API 전처리 파이프라인 (GainNode + DynamicsCompressor + AnalyserNode)
- 프론트엔드: VU 미터 실시간 레벨 표시 + 마이크 감도 슬라이더 (0.5x~3.0x)
- 프론트엔드: getUserMedia constraints 강화 + MediaRecorder 128kbps Opus
- 백엔드: Google STT V2 API + Chirp 2 모델 batchRecognize 메서드 추가
- 백엔드: V2→V1 자동 폴백 래퍼 (speechToTextWithDiarizationAuto)
- 백엔드: Speech Adaptation 도메인 용어 힌트 (블라인드/스크린 등 22개)
- 백엔드: V2 SentencePiece 토큰 자동 감지 분기 처리
- 설정: config/services.php에 google.location 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 21:01:37 +09:00
pro
d212956f25 feat:바로빌 CERT_KEY 테스트/운영 모드 분리
- BAROBILL_CERT_KEY_TEST: 테스트 환경용
- BAROBILL_CERT_KEY_PROD: 운영 환경용
- BAROBILL_TEST_MODE에 따라 자동 선택

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23 10:50:46 +09:00
pro
861192a606 feat:바로빌 회원사관리 멀티테넌트 지원
- 전체 테넌트 보기 토글 추가 (바로빌본사용)
- 테이블에 테넌트 컬럼 표시 (전체 모드에서)
- 회원사 등록 시 테넌트 선택 기능 추가
- 통계 API에도 전체 테넌트 모드 적용
- 컨트롤러에서 tenant_id 직접 지정 지원

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 18:58:39 +09:00
6525bfd715 feat: MNG → DEV 자동 로그인 기능 구현
- LoginToken 모델 생성 (토큰 생성 및 URL 생성)
- UserController에 loginToken API 메서드 추가
- DEV_APP_URL 환경설정 추가 (config/services.php)
- 사용자 목록에 "DEV 접속" 버튼 추가
- openDevSite JavaScript 함수 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-20 13:43:13 +09:00
2ed273097e feat: API 토큰 교환 연동 (FCM 푸시용)
- ApiTokenService: API 서버 토큰 교환 서비스 추가
- AuthService: 로그인 성공 시 API 토큰 교환 연동
- 레이아웃: 세션 토큰을 localStorage에 동기화 (FCM 사용)
- config/services.php: exchange_secret 설정 추가

환경변수 필요: INTERNAL_EXCHANGE_SECRET (API와 동일)
2025-12-18 14:21:50 +09:00
f7a8839ded feat: API 로그 재전송 기능 추가
- 리스트/상세 페이지에 재전송 버튼 추가
- 인증 방식 선택: 토큰 직접 입력 / 사용자 선택(Sanctum 토큰 발급)
- 환경별 API URL 변환 (API_BASE_URL 설정)
- X-API-KEY 헤더 자동 추가 (FLOW_TESTER_API_KEY 사용)
- 성공/실패 상태 배너 표시
- 세션에 토큰 저장하여 다음 재전송 시 자동 입력
- 재전송 성공 시 1초 후 페이지 새로고침
- 에러만 필터 옵션 추가 (4xx+5xx)
2025-12-17 18:56:40 +09:00
331eaebf86 feat: 웹 녹음 AI 요약 기능 구현
- MeetingLog 모델 (BelongsToTenant, SoftDeletes)
- GoogleCloudService (GCS 업로드, STT API)
- MeetingLogService (Claude API 요약)
- MeetingLogController (HTMX/JSON 듀얼 응답)
- 순수 Tailwind CSS UI 구현
- API 라우트 8개 엔드포인트 등록
2025-12-16 15:07:56 +09:00
534ffcfbc0 feat(mng): 사업자등록증 OCR 기능 구현
## 주요 변경사항
- BizCertController: 내부 API (OCR, CRUD)
- BizCertOcrService: Claude Vision API 연동, Tesseract.js 지원
- BizCert 모델 및 FormRequest 추가
- config/services.php에 Claude API 설정 추가

## 프론트엔드
- business-ocr.blade.php: layouts.app 레이아웃 적용
- JS/AI 토글 모드 (Tesseract.js / Claude Vision)
- 이미지 전처리 추가 (그레이스케일, 대비 강화, 이진화)
- SweetAlert2 연동 (토스트, 삭제 확인)

## API 엔드포인트
- POST /api/biz-cert/ocr - OCR 처리
- GET /api/biz-cert - 목록 조회
- POST /api/biz-cert - 저장
- DELETE /api/biz-cert/{id} - 삭제

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-16 01:56:49 +09:00
5d0f2d1346 feat(lab): SAM AI 음성 어시스턴트 레거시 마이그레이션
레거시 5130.sam.kr/ai_sam의 Google Gemini Live API 음성 어시스턴트를
MNG 프로젝트로 이전 (React → Pure JS + Blade)

변경 내용:
- GeminiController: API 키 제공 엔드포인트 추가
- sam-ai-live.js: LiveManager, AudioVisualizer ES 모듈
- sam-ai-menu.blade.php: 전면 재작성 (Tailwind UI)
- 환경변수: GEMINI_API_KEY, GEMINI_PROJECT_ID 추가

기능:
- 실시간 음성 입출력 (WebAudio API)
- UI 도구: navigateToPage, searchDocuments
- 오디오 시각화 (Canvas API)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-14 02:13:20 +09:00
ece1f28747 feat: MNG 인증 시스템 구현
- Laravel Sanctum 기반 세션 인증 시스템 구축
- Service-First 아키텍처: AuthService 작성
- FormRequest 분리: LoginRequest 검증
- DaisyUI 기반 로그인 UI 구현
- 라우트 설정: /login, /logout, /dashboard
- Tailwind CSS 4.x PostCSS 설정
- Vite 빌드 완료

Phase 1-1: 인증 시스템 개발 완료
2025-11-20 16:24:40 +09:00