
안녕하세요. 문의주신내용 답변드립니다.
-----
1. 알림을 확인하는 시점
자동 확인은 말씀하신 두 가지가 맞습니다.
- 페이지 로드 시 1회: 최초 접속·새로고침·다른 페이지 이동 후 실행됩니다.
- 설정한 폴링주기마다: 페이지를 이동하지 않아도 반복 실행됩니다.
다만 get-events.php는 알림 목록 조회와 읽음 · 삭제 처리에도 사용하는 파일입니다.
따라서 알림창 열기, 분류 탭 변경, 알림 읽기·삭제 시에도 요청이 발생하며, 이때는 요청의 act 값이 다릅니다. 자동 확인은 act: 'alarm'입니다.
2. 폴링을 담당하는 위치
/rb/rb.mod/alarm/alarm.php:57 입니다.
$(function() {
setInterval(function() {
check_alarm();
}, <?php echo $wset['delay'] ?>);
check_alarm();
});
실제 AJAX 요청은
/rb/rb.mod/alarm/alarm.js:23 에서 담당합니다.
앱에서는 /rb/rb.mod/alarm/alarm.app.js:24 를 사용합니다.
3. JavaScript에서 직접 확인하는 방법
알림 스크립트가 로드된 페이지에서는 원하는 시점에 다음 함수를 호출하면 됩니다.
if (typeof check_alarm === 'function') {
check_alarm();
}
호출할 때마다 get-events.php에 알림 확인 요청을 보내고,
응답에 따라 알림 · 쪽지 개수와 플로팅 알림을 갱신합니다. 수동 호출해도 기존 자동 폴링은 계속 작동합니다.
참고로 자동 폴링 코드는 로그인한 회원에게만 출력되며, 쪽지 · 포인트 등 일부 제외 페이지에서는 출력되지 않습니다.
플로팅 알림 표시를 꺼도 알림 개수 갱신을 위한 조회는 실행됩니다.
-----
NODE 웹소켓 상담을 get-events.php 를 대체하도록 하는 부분은
부가기능에서 배포되는 웹소켓은 유상기능 (모든 회원이 사용할 수 있는 부분은 아니므로) 이므로
상담에 연결 하는것은 어려울것같고,
소켓사용을 위한 외부서비스를 빌더 자체에 연결하는 부분은
빌더 설치이후 추가적으로 연결 작업을 필요로하므로 범용성에는 부합하지않을것같습니다.
다만, 필요에따라 ajax 요청을 소켓으로 대체할 수 있는 부가기능을 배포한다면
해소가 되지않을까 합니다.
좋은의견 감사합니다.
2026-11-05 02:20