Skip to content

게으른 알림 - PWA (웹앱 설치), 푸시/이메일 알림

조회 수 170 추천 수 0
게으른 알림 - PWA (웹앱 설치), 푸시/이메일 알림 - 1
게으른 알림 - PWA (웹앱 설치), 푸시/이메일 알림 - 2

소개

홈페이지 제작도구인 라이믹스에서 사용할 수 있는 php 프로그램(=모듈) 입니다.
2023년에 제작하여 수년간 운용하면서 기능이나 오류를 검증하여 안정적으로 작동됩니다.
회원들은 사이트를 이탈한 후에도 알림을 통해 다시 유입될 수 있습니다.

  • 버튼을 누르면 push 구독되게 하고 싶어.
    > push 버튼 코드가 제공되어 원하는 위치에 간단히 삽입할 수 있습니다.
    > 예: 이 홈페이지 PC버전에서 왼쪽의 OFF/ON 누르면 됩니다.
  • 앱을 만들고 싶어
    > 클릭 몇 번으로 설정이 완료되어 유저들에게 PWA 앱을 제공할 수 있습니다.
  • 앱/웹 알림을 제공하고 싶어.
    > 제공되는 구독 버튼을 누르면 라이믹스 기본 기능에 Fcmv1 데이터를 저장하여 Push 알림이 제공됩니다.
  • 글/댓글/쪽지 알림을 발송하고 싶어. 하지만 즉시 발송하지 않고 읽지 않은 알림만 보내고 싶어.
    > 60초내 확인하지 않았다면 Web Push 발송됩니다. (초 단위로 설정 변경 가능)
    > 10분내 확인하지 않았다면 이메일 알림이 발송됩니다. (분 단위로 설정 변경 가능, 메일 알림에 포함된 링크를 통해 구독 해제 가능)
  • 얼마나 효과가 있을까?
    > 알림이 얼마나 보내지고 얼마나 확인되어 유입했는지 통계 화면이 제공됩니다.
  • 카톡 같은 push 채팅 서비스를 제공하고 싶어.
    > elkhatalk3 모듈의 읽지 않은 개인 채팅이 이 모듈의 push 알림과 연동됩니다.

프로그램 요구 사양

  • 사이트가 https 프로토콜이 적용되어야 웹 앱과 웹 푸시가 작동됩니다.
    이 기능은 http 환경에서 작동되지 않게 브라우저가 보안, 설계 되었기 때문입니다. 같은 이유로 시크릿모드에서도 기능이 제한됩니다.
  • 라이믹스 2.1.25 버전에서 테스트 하였습니다.
  • php 7.4 ~ 8.4 에서 테스트 하였습니다.
  • 웹 호스팅은 확인하지 않은 글/댓글/쪽지 알림 기능이 제한적입니다.
    • (권장) php 에서 proc_open 함수가 허용되어야 합니다. / 또는 crontab 으로 알림을 게으르게 발송할 수 있습니다. gif -> mp4 기능이 작동한다면 아마도 proc_open 함수 사용이 가능합니다.
    • 또는 설정 화면의 안내에 따라 cron 의한 작동이 가능합니다.
    • Rhymix Queue Task 의한 제공은 아직 미지원 입니다. (제가 que 안써서 테스트 필요;;)
  • 라이믹스 관리 화면에서 Google Firebase 설정이 필요합니다. (라이믹스 고유 기능, 무료)
  • 테스트 환경:
    • Safari - iPhone, Mac
    • Chrome - Android, Windows, Mac

온라인 데모

  • 이 홈페이지에서 테스트 해보실 수 있습니다.
    • PC 화면 왼쪽에 "게으른 알림 테스트" 항목으로 알림을 키거나 끌 수 있습니다.
    • 모바일로 접속하면 PWA 설치 안내를 볼 수 있습니다.
    • https://elkha.kr/rx/member/dispLazypushMyConfig (악용 방지로 메일 알림은 테스트를 꺼 두었습니다.)
  • 이 홈페이지에 가입을 원치 않으시면 다음의 두 가지 계정으로 테스트할 수 있습니다.
    • 아이디: test
      비밀번호: test
    • 아이디: test2
      비밀번호: test2
  • 테스트 push 발송: (준비중)

설치 방법

  1. index.php?module=admin&act=dispAdminConfigNotification 에서 이메일 알림을 올바로 설정합니다.
  2. index.php?module=admin&act=dispAdminConfigNotification 에서 firebase push 설정이 필요합니다.
    firebase 설정을 하지 않으셨다면 https://console.firebase.google.com 통해서 설정 값을 가져오시기 바랍니다. (캡쳐를 참고 해주세요)
    1.png 2.png 3.png 4.png
  3. index.php?module=admin&act=dispLazypushAdminConfig 에서 pwa 설정을 진행합니다.
    먼저 DB 테이블 생성 버튼을 누른 후 PWA 항목을 입력해주세요.
    vapidKey 값은 클라우드 메시징에서 Generate key pair 항목에서 값을 가져옵니다.
    5.png 6.png 7.png 8.png 9.png
  4. index.php?module=admin&act=dispNcenterliteAdminConfig
    알림센터와 충돌하지 않도록 메일 알림, 푸시 알림을 끕니다.
    11.png
  5. index.php?module=admin&act=dispNcenterliteAdminAdvancedconfig
    푸시 알림 포맷을 data 선택합니다.
    image.png
  6. index.php?module=admin&act=dispLazypushAdminConfig 항목들을 설정합니다.
    • queue exec
      • command: (권장) proc_open 함수를 이용하여 해당 시간 만큼이 지나 push 발송합니다.
        라이믹스의 백엔드 기능을 사용하려면 웹 계정과 files 계정이 일치해야 합니다.
        웹 계정으로 직접 백엔드 실행하고 빈 값이면 정상, 오류가 나온다면 아마 계정 권한이 잘못되었다는 메세지가 나옵니다.
        테스트 예) php ~/www/rx/index.php lazypush.exec 실행 결과가 빈 값이면 정상입니다.
      • cron: proc_open 사용할 수 없다면 crontab 으로 유사한 효과를 낼 수 있습니다.
        화면 안내에 나온 crontab 설정을 직접 하셔야 됩니다.
    • push invalidate
      7 설정하면 알림이 7일이 지난 경우 지워집니다.
    • email denied
      24 설정하면 발송한 이메일 알림이 24시간 이내에만 거부 가능합니다.

    • config: trigger
      모두 키는게 좋습니다.
    • config: PWA
      • manifest.json / pwa 정보를 설정할 수 있습니다.
      • html header
        activate 체크하면 pwa 정보를 브라우저에게 띄웁니다.
      • pwa install button
        앱 설치 버튼을 보여줄 기기를 선택합니다.
        저는 mobile 만 체크했습니다.

설정 화면

1-statistics.jpg 2-config.jpg 3-config-pwa.jpg 4-config-triggers.jpg 5-config-pwa.jpg 6-button-html.jpg 7-myconfig.jpg

비고

  • (권장) 라이믹스의 짧은 주소 기능이 필요합니다.
    만약 짧은 주소를 켜지 않으면 manifest.json 파일을 루트 경로에 집어넣고 연동해야 합니다.
  • ios safari 정책상 홈 화면에 사이트를 추가한 후에 push 알림을 연동할 수 있습니다.
  • 다운로드: https://rhymix.org/pds/1911541

기술 지원

프로그램을 배포할 때 다양한 환경에서 작동할 수 있는 경우의 수를 고려하지 못한 점 죄송합니다.
오류 해결을 위해 다음의 정보를 첨부해주시면 문제를 찾는데 큰 도움이 됩니다.

  1. index.php?module=admin&act=dispNcenterliteAdminConfig
    이 화면에서 config: triggers 항목을 캡쳐로 보여주세요. (환경에 따라 옵션이 다를 수 있음)
    예: image.png
  2. index.php?module=admin&act=dispNcenterliteAdminConfig
    이 화면에서 기본 설정을 캡쳐해주세요.
    예: image.png
  3. 가능하면 URL 알려주세요, ~.com 호스트 생략하고 경로만 알려주셔도 좋습니다.
    가능하면 디버그 화면에 나오는 코드 위치도 알려주세요.
개발자
  • 갓호 2025.07.11 11:56
    비밀글입니다.
  • 개발자 2025.07.12 19:15
    비밀글입니다.
  • 이시헌 2025.07.12 23:19
    비밀글입니다.
  • 개발자 2025.07.13 15:51
    비밀글입니다.
  • 이온디 2025.07.14 12:32
    비밀글입니다.
  • 개발자 2025.07.14 23:38
    비밀글입니다.

  1. 상점 모듈 (작성 중) secretupdate

    비밀글입니다.

    날짜2024.12.06 글쓴이개발자 조회 수0 추천 수0
  2. 글댓추비 제한 secret

    비밀글입니다.

    날짜2025.07.14 글쓴이개발자 조회 수0 추천 수0
  3. 새 글 알리미 file

    / / 소개 아직 push 연동하지 않은 경우: 게으른 알림의 push 등록을 선행 시도하고 성공되면 해당 게시판의 새 글이 push 알림으로 발송됩니다. 이 과정은 복잡하지만 사용자는 클릭 한번으로 구독 서비스를 제공받...

    날짜2025.07.13 글쓴이개발자 조회 수86 추천 수0
  4. 댓추 후 보기 file

    제작 의도: google drive 의 대용량 자료를 rx 통해 공유할 때 확장변수에 주소를 입력해놓으면 추천을 하거나 댓글을 달아야 다운로드가 가능합니다. 캡쳐 예시: 게시판의 확장 변수 eid 값이 url 인 경우 그 글을 ...

    날짜2025.07.08 글쓴이개발자 조회 수65 추천 수0
  5. 게으른 알림 - PWA (웹앱 설치), 푸시/이메일 알림 6 file

    소개 홈페이지 제작도구인 라이믹스에서 사용할 수 있는 php 프로그램(=모듈) 입니다. 2023년에 제작하여 수년간 운용하면서 기능이나 오류를 검증하여 안정적으로 작동됩니다. 회원들은 사이트를 이탈한 후에도 알림...

    날짜2025.02.20 글쓴이개발자 조회 수170 추천 수0
  6. 데모 file

    소개 내가 만든 RX 모듈의 기능을 체험판으로 보여주고 싶어. 'test' 계정과 'demo' 그룹 계정들은 특정 행위만 허용하기: 로그인, 글쓰기, 댓글쓰기 등. 추천 조작 했던 계정들은 앞으로 추천 금지다. '주작' 그룹 ...

    날짜2025.05.25 글쓴이개발자 조회 수94 추천 수0
  7. 랭킹 위젯 file

    다운로드: https://rhymix.org/pds/1907834 최신 php 에서 포인트 랭킹 위젯에 오류가 발생해서 만들어 보았습니다. 주요 기능 다양한 순위를 제공할 수 있습니다. 포인트 순위 (point) 친구(=팔로워) 순위 (friends)...

    날짜2025.05.19 글쓴이개발자 조회 수87 추천 수0
  8. 마이로그 file

    트위터, 페이스북을 모방한 모듈입니다. 주요 기능 친구, 팔로워, 팔로잉 친구: 내가 상대를 친추(라이믹스 고유 기능)했고 상대도 나를 친추했다면. 팔로워: 상대가 나를 친추했지만 나는 상대를 친추하지 않음. 팔...

    날짜2024.11.30 글쓴이개발자 조회 수278 추천 수0
  9. 이미지 압축 file

    주요 특징 files 테이블에 첨부하는 이미지 파일을 압축 합니다. 압축 대상: jpg(jpeg), png, gif, svg, webp 효과: jpg 이미지는 퀄리티 85로 변환하고 다른 이미지는 무손실이나 손실이 거의 없는 수준에서 압축됩...

    날짜2024.11.30 글쓴이개발자 조회 수178 추천 수0
  10. Elkha - POPORINA Zerostar 50 file

    POPORINA님이 만든 아이콘을 수정했습니다. 원본 글을 조회할 수 없게 되어서 링크 대신 이 글에 첨부파일로 남깁니다.

    날짜2024.11.30 글쓴이개발자 조회 수99 추천 수0
  11. 커뮤니티 글 댓글 추천 제한 모듈 file

    github: https://github.com/Elkha/evote xetown: https://xetown.com/download/1650998

    날짜2024.11.30 글쓴이개발자 조회 수110 추천 수0
  12. XE 레벨 아이콘 White | Elkha file

    요약: 흰색과 검은 배경 모두 사용 가능, 레벨 숫자에 컬러, 0~50레벨 xetown: https://xetown.com/tips/1519777

    날짜2024.11.30 글쓴이개발자 조회 수104 추천 수0