본문으로 건너뛰기
☾LUNAKAKAO · DISCORD
홈개인정보처리방침이용약관🇺🇸 English

LUNA · LEGAL

LUNA 개인정보처리방침

LUNA가 실제로 처리하고 저장하는 정보와 이용자의 권리를 안내해요.

목차
1. 적용 범위2. 처리하거나 저장하는 정보3. 이용 목적4. 저장 위치와 보관 기간5. 외부 서비스와 정보 전달6. 정보 삭제와 사용자의 권리7. 보호 조치8. 아동의 이용9. 방침 변경10. 문의
↑ 맨 위로

시행일: 2026년 9월 22일 최종 수정일: 2026년 10월 9일

운영자 공개 이메일과 사업자 정보 안내를 정정했어요. 이용자의 개인정보 처리 항목·목적·보유기간과 권리 및 기존 서비스 이용 조건은 변경하지 않았어요.

LUNA는 KakaoTalk과 Discord에서 대화 도구, 플랫폼 간 메시지 연동, 음악, 서버 관리, 게임, 지원 기능을 제공하는 독립 서비스예요. 이 방침은 LUNA가 실제로 어떤 정보를 처리하고 저장하는지 설명합니다.

1. 적용 범위

이 방침은 LUNA KakaoTalk 봇, LUNA Discord 봇, LUNA Dashboard와 공식 웹사이트에 적용돼요. Discord와 KakaoTalk 자체의 정보 처리는 각 플랫폼의 정책이 적용됩니다. LUNA는 Discord 또는 Kakao가 제작하거나 보증하는 공식 제품이 아니에요.

2. 처리하거나 저장하는 정보

Discord 봇과 서버 관리

  • Discord 사용자 ID, 사용자명, 글로벌 표시명, 서버 닉네임, 아바타 URL을 사용자 식별, 권한 확인, 게임 진행도, 지원 및 관리 로그에 사용해요.
  • 서버 ID, 서버명, 채널 ID·이름, 메시지 ID, 역할 ID·이름, 서버 소유자 ID, 서버 구성원 수와 권한 정보를 서버별 설정과 Dashboard 기능에 사용해요.
  • 로그 채널, 언어, 명령어 접두사, 금지어 규칙, 스팸 감지 기준과 로그 보관 기간 같은 서버 설정을 저장해요.
  • 멤버 입장·퇴장, 역할 부여·회수, Dashboard에서 실행한 역할 변경·강퇴·타임아웃과 입력된 사유를 구조화된 관리 로그로 저장할 수 있어요. 이 기록에는 대상과 실행자의 ID·표시명, 역할 정보, 시각 및 처리 결과가 포함될 수 있어요.
  • 일반 Discord 메시지의 생성·수정 본문은 관리 로그 DB에 영구 저장하지 않아요. 다만 삭제 로그를 만들기 위해 사람 사용자의 메시지 본문, 작성자, 채널과 첨부파일 메타데이터를 메모리에서 최대 6시간 또는 최대 10,000건까지 임시로 보관해요. 메시지가 삭제되면 서버 설정에 따라 본문과 첨부파일 ID·파일명·형식·크기·URL·이미지 크기가 관리 로그 DB에 저장될 수 있어요.
  • 금지어·스팸 감지 중 메시지 본문은 실시간으로 검사하지만 감지 로그에는 본문을 저장하지 않고 사용자·채널·메시지 ID와 감지 규칙 또는 사유만 저장해요.
  • 응애의 숲은 Discord 사용자 ID와 표시명, 캐릭터·아이템·재화·펫·전투·거래 등 게임 진행도, 상호작용 ID, 실행 명령과 처리 결과를 저장해요.
  • 음악 기능은 서버별 컨트롤러 채널·메시지 ID와 Dashboard 알림 상태를 로컬 파일에 저장해요. 검색어 본문은 애플리케이션 로그에 남기지 않고 길이와 처리 결과 같은 기술 정보만 기록하도록 구현돼 있어요. 음성 채널 상태 점검 로그에는 서버·채널·사용자 ID가 포함될 수 있어요.

Support Ticket

  • 사용자가 LUNA Discord 봇에 DM을 보내면 Discord 사용자 ID, 티켓 상태와 생성·수정·종료 시각, 사용자·운영자 측 원본 및 전달 메시지 ID를 로컬 SQLite DB에 저장해 중복 전달을 막고 답변 대상을 확인해요.
  • 문의 본문과 첨부파일 자체는 LUNA의 Support Ticket DB에 저장하지 않아요. 해당 내용은 Discord DM으로 운영자에게 전달되므로 Discord 안의 메시지로 남을 수 있어요.

KakaoTalk 봇

  • KakaoTalk 사용자 ID 또는 안정적인 발신자 해시, 닉네임, 채팅방 ID·이름, 메시지 ID·유형·시각을 기능 제공과 사용자·방 식별에 처리해요.
  • 활성화된 방의 메시지는 삭제 메시지 확인 기능을 위해 본문과 함께 PostgreSQL에 저장돼요. 이미지·파일·이모티콘은 실제 파일 대신 메시지 유형을 나타내는 표시가 저장되며, 현재 코드에서는 이 기능의 미디어 파일 캐시를 호출하지 않아요. 저장 항목에는 방·사용자·메시지 식별자, 닉네임, 메시지 내용, 채팅 유형과 오픈채팅 링크 식별자가 포함될 수 있어요.
  • 대화 요약 기능이 활성화된 방에서는 명령어가 아닌 메시지의 본문, 작성자 ID·닉네임, 방 ID, 메시지 ID·유형·시각을 별도의 PostgreSQL 요약 버퍼에 저장해요. 이미지·파일·이모티콘은 원본 대신 [이미지], [파일], [이모티콘] 같은 표시만 저장해요.
  • 부재중 멘션 알림은 방·발신자·대상 사용자 ID, 닉네임, 메시지 ID와 본문, 시각을 로컬 JSON 또는 PyKV 저장소에 저장해요.
  • 닉네임 변경 이력은 KakaoTalk 사용자 ID, 방 ID, 닉네임과 변경 시각을 PyKV에 저장해요. Discord 입장·퇴장 로그를 만들 때 Discord 서버 닉네임과 현재 KakaoTalk 닉네임이 정확히 대응하는지 비교할 수 있으며, 일치한 KakaoTalk 닉네임이 해당 Discord 관리 로그에 포함될 수 있어요. 별도의 Discord 계정과 KakaoTalk 계정 간 고정 매핑 테이블은 없어요.
  • 입장·퇴장·강퇴 통계는 사용자 ID, 현재 닉네임, 방 이름, 횟수, 최근 시각과 최근 기록을 로컬 JSON에 저장해요. 출석 기능은 방 이름과 닉네임, 최근 출석일, 출석·결석 횟수를 PyKV에 저장해요.
  • 스레드 응답 설정, 관리자·차단 사용자 ID, 체스 순위, 코인 보유 입력값, 낚시·모의주식·응애의 숲 등 게임 진행도와 사용자 표시명을 로컬 JSON, SQLite 또는 PyKV에 저장할 수 있어요.
  • KakaoTalk 명령어 메시지는 대화 요약 버퍼에서는 제외되지만, 삭제 메시지 확인용 7일 DB에는 포함돼요. LUNA는 별도의 범용 명령어 사용 이력 테이블을 만들지 않지만, 게임 기능은 진행도와 명령 처리 결과를 저장할 수 있어요.
  • 이미지 생성 기능으로 만든 결과 이미지는 LUNA 서버의 res/temppic 디렉터리에 파일로 저장된 뒤 KakaoTalk으로 전송돼요. 현재 이 디렉터리에는 자동 만료 또는 정리 절차가 구현돼 있지 않아요.

KakaoTalk ↔ Discord 연동

  • 운영자가 로컬 설정에 KakaoTalk 방 ID·이름과 Discord 채널 ID·Webhook 주소의 연결 관계를 저장해요. 이는 사용자 계정 간 매핑이 아니라 방과 채널 간 라우팅 설정이에요.
  • KakaoTalk에서 정해진 연동 접두사로 보낸 메시지는 KakaoTalk 닉네임, 메시지 본문, 답장 문맥과 이미지·첨부파일이 연결된 Discord 채널로 전달될 수 있어요.
  • 연결된 Discord 채널의 메시지는 Discord 표시명, 본문, 답장 대상 이름, 첨부파일·이미지·스티커·임베드 정보와 함께 KakaoTalk 방으로 전달될 수 있어요. 전송 과정에서 첨부파일을 메모리 또는 임시 디렉터리에 내려받지만 영구 보관용 매핑 DB는 만들지 않아요.
  • 중복 전송 방지를 위한 메시지 식별 키는 메모리에서 현재 설정 기준 60초 동안 유지돼요.

웹사이트와 Dashboard

  • 공식 웹사이트는 로그인 기능이 없고 쿠키를 설정하지 않아요. 선택한 언어만 브라우저 localStorage의 luna-language 항목에 저장하며, 사용자가 브라우저 저장소를 지울 때까지 남을 수 있어요.
  • Dashboard 로그인은 Discord OAuth의 identify와 guilds 범위를 사용해 Discord 사용자 ID, 사용자명, 글로벌 표시명, 아바타와 사용자가 속한 서버 ID 목록을 받아요. OAuth 액세스 토큰은 정보 확인 후 버리고 DB에 저장하지 않아요.
  • OAuth 상태 쿠키는 최대 10분, Dashboard 세션 쿠키는 현재 설정 기준 14일 동안 유지돼요. 두 쿠키는 HttpOnly, Secure, SameSite=Lax로 설정돼요. 세션의 사용자 정보는 서버 메모리에만 저장되며 서비스 재시작 또는 만료 시 사라져요.
  • Dashboard는 요청 제한을 위해 접속 IP 주소를 메모리에서 최대 60초 단위로 처리하지만 애플리케이션 DB나 파일에는 저장하지 않아요. 네트워크 전송 과정에서는 호스팅·프록시 제공자가 IP 주소와 요청 정보를 자체 정책에 따라 처리할 수 있어요.

운영 로그와 관리자 정보

  • 오류 진단과 서비스 운영을 위해 서버·방·채널·메시지·사용자 ID, 기능 처리 결과, 시각, 예외 유형과 음성 상태 같은 기술 로그가 로컬 로그 파일과 진단 JSON에 남을 수 있어요. 플랫폼 간 연동 로그에는 처리 대상인지 확인하기 위한 짧은 메시지 일부가 포함될 수 있어요. 일부 로그는 크기 기준으로 순환하지만 모든 구성요소에 동일한 자동 삭제 기간이 설정돼 있지는 않아요.
  • 내부 KakaoTalk 관리 페이지는 관리자 사용자명, 비밀번호 해시, 활성 상태와 로그인 쿠키를 사용해요. 이는 공개 사용자용 Dashboard 계정과 별개인 운영자 정보예요.

3. 이용 목적

LUNA는 위 정보를 다음 목적으로만 처리해요.

  • 봇 명령, 음악, 게임, 출석, 알림, 대화 요약과 Support Ticket 제공
  • Discord 서버별 설정, 권한 확인, 관리 작업과 감사 로그 제공
  • 삭제 메시지 확인, 금지어·스팸 감지와 입장·퇴장 기록 제공
  • KakaoTalk 방과 Discord 채널 간 요청된 메시지 전달
  • 중복 요청 방지, 장애 분석, 보안과 서비스 안정성 유지

4. 저장 위치와 보관 기간

  • Discord 관리 설정·로그는 LUNA 서버의 luna-dashboard.sqlite3에 저장돼요. 관리 로그는 서버별로 7일, 30일, 90일 또는 자동 삭제 없음 중 설정되며 현재 생성되는 서버의 기본값은 30일이에요. 정리 작업은 약 6시간마다 실행돼요.
  • Discord 응애의 숲은 luna-forest.sqlite3, Support Ticket은 luna-support.sqlite3, 음악 컨트롤러 상태는 로컬 JSON에 저장돼요. 이 데이터에는 현재 자동 만료 기간이 없으며 기능 초기화, 유효한 삭제 요청 또는 서비스 종료 시 삭제할 수 있어요.
  • KakaoTalk 삭제 메시지 확인 데이터는 PostgreSQL의 luna_deleted_messages에 저장되고 7일이 지난 데이터는 새 메시지 처리 또는 조회 시 실행되는 정리 작업에서 삭제돼요.
  • KakaoTalk 대화 요약 버퍼는 PostgreSQL의 chat_summary_log에 저장돼요. 요약과 결과 전송이 모두 성공하면 요약한 범위가 삭제되고, 실패하면 다음 시도를 위해 유지돼요. 요약하지 않은 기록에 대한 별도 시간 기반 만료는 현재 없어요.
  • 멘션 알림은 7일이 지난 항목을 다음 조회·저장 시 정리해요.
  • 닉네임 이력, 사용자 입장·퇴장 통계, 출석, 게임 진행도, 사용자 설정과 차단·관리자 ID에는 현재 공통 자동 만료 기간이 없어요. 기능별 초기화, 운영상 삭제, 유효한 사용자 요청 또는 서비스 종료 시 삭제할 수 있어요.
  • 이미지 생성 결과 파일은 LUNA 서버의 res/temppic에 저장되며 현재 자동 만료 기간이 없어요. 운영상 삭제, 유효한 사용자 요청 또는 서비스 종료 시 삭제할 수 있어요.
  • 삭제 시 기본 DB·파일에서 제거하지만, 이미 Discord 또는 KakaoTalk에 전달된 메시지와 각 플랫폼이 보유한 데이터는 해당 플랫폼에서 별도로 삭제해야 할 수 있어요.

5. 외부 서비스와 정보 전달

LUNA는 개인정보를 판매하지 않아요. 기능 제공을 위해 다음 서비스에 필요한 데이터가 전달될 수 있어요.

  • Discord: 봇 동작, OAuth 로그인, 서버·멤버·역할 관리, DM Support Ticket, Webhook 메시지와 첨부파일 전달
  • KakaoTalk 및 Iris 연동 환경: KakaoTalk 메시지 수신·전송, 방·멤버 조회, Discord에서 전달된 본문과 첨부파일 전송
  • Google Gemini: 사용자가 요청한 AI 프롬프트, 선택하거나 답장한 이미지, 대화 요약을 요청한 방의 대화 기록
  • OpenRouter: AI 대화·이미지 분석에 사용자가 입력한 프롬프트와 선택한 이미지. 현재 설정된 모델 제공자가 추가로 처리할 수 있어요.
  • Naver, Open-Meteo, OpenWeather, 기상청, Yahoo Finance, Upbit, Binance 및 Random Word API: 사용자가 입력한 검색어·지역명·종목·코인 기호 등 조회에 필요한 값. LUNA 코드는 이 요청에 Discord 또는 KakaoTalk 사용자 ID를 함께 보내지 않아요.
  • YouTube 및 음악 처리 구성요소: 사용자가 입력한 음악 검색어 또는 URL과 재생에 필요한 트랙 정보
  • Cloudflare 등 웹 전송·프록시 환경: 웹 요청을 전달하는 과정의 IP 주소와 HTTP 요청 정보

각 외부 서비스가 수신한 정보는 해당 서비스의 약관과 개인정보 정책에 따라 처리될 수 있어요.

6. 정보 삭제와 사용자의 권리

사용자는 자신의 정보에 대해 확인, 정정 또는 삭제를 요청할 수 있어요. Discord에서는 LUNA 봇에 DM을 보내 Support Ticket으로 요청할 수 있습니다. 요청할 때 본인 확인과 대상 범위를 위해 Discord 사용자 ID 또는 KakaoTalk 사용자 ID, 관련 서버·방을 알려 달라고 요청할 수 있어요.

서버 관리자는 자신이 관리하는 Discord 서버의 설정과 서버별 관리 로그 삭제를 요청할 수 있어요. 다른 이용자의 권리, 보안, 부정 이용 방지 또는 플랫폼 기능에 필요한 범위에서는 요청을 확인한 뒤 처리 범위를 조정할 수 있어요. 법적 의무나 분쟁 대응을 위해 보관해야 하는 경우가 생기면 필요한 범위만 별도로 보관할 수 있어요.

7. 보호 조치

LUNA는 비밀번호 해시, 환경 변수 기반 비밀정보 설정, 서버 측 세션, 보안 쿠키, 요청 출처 검사, 속도 제한과 권한 검사를 사용해요. OAuth 액세스 토큰과 일반 Discord 메시지 본문을 불필요하게 영구 저장하지 않도록 분리해 두었어요. 다만 어떤 온라인 서비스도 완전한 보안을 보장할 수는 없어요.

8. 아동의 이용

LUNA는 아동을 대상으로 설계된 서비스가 아니며, 이용자는 Discord와 KakaoTalk에 적용되는 연령 및 보호자 동의 규칙을 따라야 해요. 보호자가 아동의 정보가 부적절하게 처리됐다고 생각하면 Support Ticket으로 삭제를 요청할 수 있어요.

9. 방침 변경

기능, 저장 구조 또는 외부 서비스가 바뀌면 이 방침도 실제 동작에 맞게 수정할 수 있어요. 변경 시 이 페이지의 시행일과 최종 수정일을 갱신하고, 중요한 변경은 가능한 범위에서 홈페이지 또는 서비스 안내를 통해 알려요.

10. 문의

개인정보 확인·정정·삭제와 이 방침에 관한 문의는 Discord에서 LUNA 봇에 직접 메시지(DM)를 보내 Support Ticket으로 접수해 주세요. 공식 이메일은 local@babpul.kr이며, 사업자 정보는 공식 홈페이지 Footer에서 확인할 수 있어요.

☾LUNAKAKAO · DISCORD

대화와 모험에 작은 달빛을 더해요.

개인정보처리방침이용약관

© LUNA. All rights reserved.