알림 채널
단계별 전화 연결은 앱 연결를 참조하세요.
콘솔에서 구성
- 알림을 열고 Bark, Pushover, Webhook 또는 Mailwake 앱을 선택하세요.
- 아래에서 선택한 채널의 필드를 채우세요. Mailwake 앱의 경우 먼저 전화 페어링를 누른 다음 알림을 수신할 휴대폰을 선택하세요.
- 미리보기, 알림 언어 및 재시도 횟수를 선택하세요. 재시도 횟수가 0이면 한 번 시도합니다.
- 저장한 다음 명시적으로 테스트 알림을 보냅니다. 휴대폰이나 웹훅의 수신자와 전달 결과를 확인하세요.
설정은 모든 사서함에 적용됩니다. 설정을 변경하면 기존 전달 계획에 따라 대기 중인 작업이 유지됩니다. 새 메시지로 향후 동작을 확인하세요.
채널 구성
/api/v1/settings/delivery 를 통해 글로벌 채널을
구성하고 현재 revision 를 보냅니다. 채널, 미리보기,
재시도 횟수 및 알림 언어는 모든 사서함에 적용됩니다. 모든 자격
증명은 암호화되어 있으며 쓰기 전용입니다. 대상이 같으면 생략한 자격
증명은 저장된 값을 유지합니다. 저장된 Bark 주소를 변경할 때는 기기
키를 다시 입력해야 합니다.
| 채널 | 매개변수 | 신임장 |
|---|---|---|
bark |
bark.endpoint, 기본
https://api.day.app
|
bark.key |
pushover |
없음 |
pushover.token , pushover.user
|
webhook |
HTTPS, 쿼리 허용 |
webhook.url 및
webhook.secret(공백이 아닌 문자 32자 이상)
|
native |
기본적으로 공식 생산 푸시 전달 서비스;
MAILWAKE_RELAY_URL로 재정의 ; 앱 인증에서
휴대폰 페어링
|
로컬에서 생성되고 암호화된 아웃포스트 ID |
경로 및 쿼리에 라우팅 자격 증명이 포함될 수 있으므로 웹훅 URL은 쓰기
전용입니다. preview는 off 또는
subject를 허용합니다. retry_count는 0~9를
허용하며 기본값은 0입니다. language는
9개의 카탈로그 코드 및 해당 지역 별칭를 허용하고 기본값은 en입니다. Bark 및 Pushover는
subject가 있는 피사체만 표시합니다. 웹훅은 구조화된
발신자와 제목을 유지하는 반면, message에는 제목만
포함됩니다. off(및 빈 제목)는 현지화된 "새
메일" 메시지를 사용합니다. 타이틀은
{display name} · {folder}로 유지됩니다. 동일한 잘린
제목으로 그룹을 짖습니다. 테스트 알림 텍스트는 변경되지 않습니다.
API 입력 sender_subject는 400
config_preview_invalid를 반환합니다. 타사 채널의 경우
subject에서 off로 전환하면 보류 중이거나
실패한 모든 레코드에서 보낸 사람과 제목이 원자적으로 제거됩니다.
이후의 대기열에도 저장된 개인 정보 보호 정책을 따릅니다. 네이티브
푸시는 타사 미리 보기 기본 설정을 유지하면서 항상 보낸 사람과 제목을
기록합니다.
Bark 기록 보존은 메일 및 테스트 알림 모두에 대한 Bark 앱의 저장 기록 설정을 따릅니다.
웹훅 페이로드
아웃포스트는 JSON 본문과 함께 POST를 보내고 절대
리디렉션을 따르지 않습니다.
{
"version": 1,
"id": "3f9c…",
"test": false,
"mailbox_id": "mbx_example",
"account": "Work mailbox",
"folder": "Clients",
"sender": "anna@example.org",
"subject": "Re: Q4 proposal",
"received_at": "2026-09-28T10:32:00Z",
"title": "Work mailbox · Clients",
"message": "Re: Q4 proposal"
}
mailbox_id는 안정적인 메일함 ID입니다.
account는 대기열에 추가할 때의 표시 이름입니다. Bark,
Pushover 및 Webhook 일반 알림은 지원하는 모든 언어에서
{display name} · {folder}라는 제목을 사용합니다. 사서함
이름을 바꾸거나 삭제하면 이미 대기 중인 작업의 ID 메타데이터가
보존됩니다. 테스트 알림은 별도의 텍스트를 사용하고 사서함 필드를
생략합니다.
sender 및 subject는
subject 미리보기에서만 나타납니다.
title 및 message는 현지화되어 ntfy, Gotify
및 유사한 서비스로 전달할 준비가 되었습니다. 미리보기가 꺼진
상태에서도 표시 이름과 폴더가 전송됩니다. 알림 제공자와 공유하기에
적합한 라벨을 선택하세요.
| 헤더 | 의미 |
|---|---|
X-Mailwake-Event |
이벤트 ID는 id 와 동일합니다. 재시도 시
변경되지 않으며 이를 사용하여 중복 제거
|
X-Mailwake-Timestamp |
Unix 초 단위로 시간 보내기 |
X-Mailwake-Signature |
sha256= 뒤에 16진수
HMAC-SHA256(secret, "<timestamp>.<raw
body>")가 옵니다.
|
상수 시간 비교를 사용하여 동일한 비밀로 서명을 확인하고 5분 이상 떨어진 타임스탬프를 거부합니다.
import hashlib, hmac, time
def verify(secret: bytes, timestamp: str, body: bytes, signature: str) -> bool:
expected = "sha256=" + hmac.new(secret, timestamp.encode() + b"." + body, hashlib.sha256).hexdigest()
return abs(time.time() - int(timestamp)) <= 300 and hmac.compare_digest(expected, signature)
모든 2xx 응답은 수락된 것으로 간주됩니다. 429 및 5xx는 재시도 설정을 따릅니다. 다른 상태에서는 시도가 종료되고 실패가 기록됩니다.
알림 설정을 저장하면 테스트를 보내지 않고도 필드, 주소, 페어링 상태 및 수정 버전의 유효성을 검사할 수 있습니다. 저장 후 명시적 테스트 버튼을 사용하세요. 네이티브 테스트는 푸시 전달 서비스의 고정 무료 테스트 엔드포인트를 사용하고 앱 테스트 할당량을 공유합니다. 일반 이메일 알림에는 Native Push 자격이 필요합니다.
Markdown · AGPL-3.0-only · Mailwake 기여자