게시판 활동 알림 1.1.1 (텔레그램 푸쉬 알림)
선알림
일단 저는 라이믹스에서 작업했음을 알려드립니다.
하지만 원래 애드온이 XE용으로 제작되었기에 XE에서도 제대로 작동할 것입니다.
간략 소개
게시판의 활동들, 즉 게시글 등록, 수정, 삭제, 댓글의 등록, 수정, 삭제에 대한 알림을 텔레그램으로 알려줍니다.
Acidpop님의 푸쉬 텔레그램을 기능 개선 및 추가하여 배포하는 자료입니다.
배포 경위
제 라이믹스 사이트의 경우 이용자 분들이 게시글을 남기는 경우가 모두 문의글 성격입니다.
누군가 게시글을 남기면 알림을 받아 보고 싶은데 뭐 좋은거 없나 찾아보다가 Acidpop님의 푸쉬텔레그램 애드온을 발견했습니다. 몇 가지 문제가 있었지만(닉네임이 표시 안된다거나, 신규 등록과 수정을 구분 못한다거나) 그대로 사용하다가.. 결국 11월 28일 허락을 맞고 수정 및 기능을 추가하여 배포하게 되었습니다.
이런 분들에게 이 애드온이 필요합니다.
1) 저 처럼 사이트에 남기는 글들이 대부분 문의 글이다.
2) 관리자가 놓치지 말아야 하는 게시판이 있다. (주로 문의게시판 따위가 되겠네요)
원자료:푸쉬 텔레그램의 기능
1) 글이 등록되거나 수정될 때 알림(구분 X)
2) 댓글이 등록되거나 수정될 때 알림(구분 X)
게시판 활동 알림의 기능
1) 글이 등록되거나 수정되거나 삭제될 때 알림
- 세 가지 활동 모두 구분되어 알려주며, 각각 on/off가 가능합니다.
2) 댓글이 등록되거나 수정되거나 삭제될 때 알림
- 세 가지 활동 모두 구분되어 알려주며, 각각 on/off가 가능합니다.
3) 푸쉬 텔레그램에서 회원일 경우 닉네임이 표시되지 않던 문제 해결
- 댓글 등록의 경우 게시판 스킨에 추가 작업이 필요합니다. -> 문의 필요
반드시 필요한 두 가지 작업
1) 알림용 Telegram Bot 계정을 만들고 발급받은 Token을 준비합니다. - 참고. http://blog.acidpop.kr/215
2) 텔레그램 사용자 아이디(chat_id)를 준비합니다. - 참고. http://blog.acidpop.kr/216
몇 가지 문제점
1) 댓글 등록에 대해서는 게시판 스킨 수정이 필요합니다. (혹시 수정 안하고도 할 수 있다면 알려주세요ㅜ)
2) 신규 댓글에 첨부파일이 있을 경우 댓글 수정으로 알림이 옵니다. (게시글하고는 status가 또 다른 것 같네요.. 게시글은 TEMP가 있는데 댓글은 없는 것 같습니다.)
3) 애드온이 동작하여 메시지를 보내는 과정을 거치면 조금의 딜레이가 생깁니다. (텔레그램 메시지를 보내야 하니 어쩔 수 없는 부분인 것 같습니다. 관리자에게 알림이 필요한 게시판에만 적용하시는 것을 권합니다.)
회원의 신규 댓글에 닉네임 미표기 문제 해결
<input type="hidden" name="member_nickname" value="{$logged_info->nick_name}" />
위 코드를 회원이 코멘트 입력하는 form 안에 다른 비슷한 코드들 사이에 추가해 주시면 신규 댓글도 닉네임이 표시됩니다.
표기해야 할 위치는 각 스킨마다 달라지니 유의하시고, 회원의 코멘트 입력 폼 마다 추가해주셔야 합니다.
댓글과 대댓글도 폼 위치가 다르니 둘 다 추가하셔야 모두 표기됩니다.
<스케치북의 경우>
_comment_write.html 파일 18번, 75번
comment_form.html 파일 27번
위 세 군데에 추가하시면 됩니다.
애드온 설정 화면
실제 알림 화면
버전 히스토리
v1.0 - 11월 29일 01:30 / 공개
v1.1 - 12월 2일 02:30 / 본문 내용 표시 옵션, 알리지 않을 대상 추가.
V1.1.1 - 12월 2일 10:15 / 제거 안한 코드로 인해 게시글 작성 알림이 안오는 문제 수정
댓글 72
최신버전에 xe 최신버전(1.9.6)에서 테스트했습니다.
텔레그램 생성 봇으로는 xe 게시판의 글이 알림이 잘 옵니다.
그런데 텔레그램 신규로 만든 채널에 생성 봇을 초대해서 관리 권한을 줘도..
아무런 반응이 없는데... (봇에만 알림이 오고, 채널에는 오지 않습니다.)
혹시 채널에 생성한 봇을 초대해서 XE 알림 받는분들 성공하신분 계신가요?
감사합니다..
정말 감사합니다!
문제점 3번은 $command 변수 제일 끝에 " > /dev/null 2>/dev/null &" 를 붙여주는 것으로 푸시가 백그라운드에서 일어나도록 해서 해결했습니다. 다만 이 방법은 윈도우 서버에서는 사용할 수가 없겠네요.
텍스트만 있으면 잘오는데 ㅜㅜ
해결방법이 있을까요?