텔레그램 봇으로 메시지 보낼때 이모지 문제
CMS/프레임워크 | Rhymix 2.0 |
---|---|
개발 언어 | PHP 7.2 |
새글 알림을 텔레그램 봇에게 메시지를 전달해서 메시지를 발생시키는데 이모지가 문제가 되고 있습니다.
저희 사이트의 경우 이모지 사용이 흔하게 사용되는데 텔레그램에서는 이모지를 처리할 수 없는지 이모지 이후부터 메시지가 잘려서 출력이 됩니다.
저희가 전달한 부분에서 이모지부터 잘리는 문제..
오래전에 db가 utf8mb4 를 지원하지 않을때 게시글이 이모지 이후 잘려서 저장되는 것과 비슷한 증상입니다.
해결하는 방법이 있을까요?
이모지를 제거하는 함수를 사용하는 것은 추가되는 이모지가 있을 경우 문제가 계속 될 것 같기도 하구요.
댓글 7
api 로 전송받는 문자형식 중 이모지가 문자가 처리가 안되는 것 같습니다.
테스트 해보니까 잘되는것같습니다.
file_get_contents('https://api.telegram.org/bot<token>/sendMessage?text=test%F0%9F%A6%81&chat_id=<chat_id>')
이런식으로 테스트했습니다.
네. 애드온에서 url 에 메시지를 포함시켜서 실행할때 뭔가 문제가 되는 듯 합니다.
제목,댓글에서는 이상이 없는데 유독 지금 문서 내용부분을 전송하는 부분에서 발생하고 있네요.
그리고 문제가 되는 하트 모양이 글 수정해서 소스보기로 보면
♥︎♥︎
이런식으로 나오네요. 다른 이모티콘은 소스보기에서도 이모티콘 모양으로 나오는데요...
문제가 되었던 부분이 ♥ 이건데 이게 이모지가 아닌것 같네요.
$content = html_entity_decode($content);
위 코드로 한번 처리해주니 해결이 되었습니다.
검색해서 힌트를 얻는 분들께 시원한 빗줄기일 것 같네요!
늘 감사드립니다. ^^