-

 

 

XPEnology DSM 5.2 에 Telegram CLI 설치하기

 

 


 

 

XPEnolgy DSM 5.2 기준으로 설명합니다.

 

 

 

 

1. 패키지센터에서 debian - chroot 설치 필요

 

 

 

패키지 센터에서 설정 버튼 클릭

 

 

설정 화면에서 패키지 소스 탭을 클릭

 

추가 버튼을 클릭하고 다음 정보를 추가한다.

 

이름 : synocommunity

위치 : http://packages.synocommunity.com

 

 

 

일반 탭으로 이동한 다음 신뢰 수준을 "모든 게시자" 로 변경한다.

 

 

 

 

패키지 센터에서 커뮤니티를 선택 하고 Debian Chroot 를 설치한다.

 

 

 

 

설치가 완료 되면 작업을 클릭 한 다음 실행을 눌러 Debian Chroot 를 실행한다.

 

 

 

 

2. XPEnology 에 SSH로 접속을 한다.

 

Shell 환경에서 다음 명령어를 입력한다.

 

chroot /volume1/@appstore/debian-chroot/var/chroottarget bash

 

volume1 은 Debian Chroot 가 설치된 곳으로 지정해준다.

 

위 명령을 실행하면 기존의 Shell 과는 다른 Bash Shell 이 실행 된다.

 

 Acidpop_NAS> chroot /volume1/@appstore/debian-chroot/var/chroottarget bash
bash: warning: setlocale: LC_ALL: cannot change locale (en_US.utf8)
root@Acidpop_NAS:/#

 

/# 으로 시작 되는 Shell 이 나온다면 Debian Chroot 로 들어오게 된것이다.

 

이제 다음 명령어들을 차례대로 입력한다.

 

 

1. home 디렉토리로 이동

cd /home/

 

2. apt 소스 업데이트

apt-get update

 

3. 텔레그램에 필요한 라이브러리 설치 및 git, sqlite 설치

apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev make git-core python2.7-dev libjansson-dev sqlite3

 

4. Telegram CLI 소스 체크아웃
git clone --recursive https://github.com/vysheng/tg.git && cd tg

 

5. Telegram CLI Make 파일 생성

./configure


6. 소스 컴파일

make

 

 

위 명령들을 수행 하게 되면 Debian Chroot 아래에 Telegram CLI 가 설치된다.

 

나머지는 Telegram CLI BOT 강좌를 참고해서 응용하면 된다

 

 

단, BOT 강좌에 올려둔 lua 스크립트와 shell 스크립트는 Raspberry pi 기준으로 작성된 것이기 떄문에 작동이 안되는부분이 존재 할 수 있다.

 

 

 


 

Debian Chroot 한글 깨짐 현상 해결 하기

 

apt-get install locales

dpkg-reconfigure locales

 

위 명령어를 수행 한 다음 아래 목록에 있는 항목을 선택한다.

 

en_US.UTF-8

ko_KR.UTF-8

 

선택하고 OK하면 한글 깨짐 현상이 사라진다.

 

 

 


 

 

vim 설치하기

 

apt-get install vim

 

vi명령어를 vim으로 수정

vim /etc/profile

 

맨 아랫줄에 다음 구문 추가

 

alias vi='vim'

 

파일 저장 후 다음 명령 수행

source /etc/profile

 


 

https://github.com/acidpop/acidpop_tgbot.git

 

github 에 올려둔 bot 확인 결과 어느정도는 정상적으로 확인되는걸로 보입니다.

 

단, lua 스크립트와 shell 스크립트 내부에 /home/pi/tg 로 되어 있는 경로를 /home/tg 이렇게 수정을 해야 합니다.

 

XPEnology 전용 BOT 을 개발 해 봐야 할듯 합니다. ^^;


 

 

 

현재 XPEnology DSM 5.2 update 2에 시험적으로 설치해본 결과 컴파일 잘 되고 실행 잘 됩니다.

 

Docker 를 이용하는 방법도 있는것 같은데 Docker를 이용하게 되면 메모리를 너무 많이 차지 하게 될거 같더군요..

 

 

 

아래는 사용 예제입니다.

 

 

 

 

저작자 표시 비영리 변경 금지
신고

  • BlogIcon 하얀바나나우유 2015.09.01 12:49 신고

    오오, 고맙습니다.

    XPEnology 전용 bot 개발 해주세요 ㅎ
    XPEnology 에서 트랜스미션 다운로드 완료알림 과 DSM 메시지를 텔레그램으로 받고 싶습니다.

    소중한 정보 고맙습니다.

    1. BlogIcon Acidpop acidpop 2015.09.01 13:17 신고

      시간이 되는데로 해보겠습니다 ^^;
      당장은 시간이 없어서 좀 어렵습니다..

      정 급하시면 제 블로그에 있는 내용을 토대로 약간만 수정하시면 작동을 하긴 합니다

    2. 하얀바나나우유 2015.10.02 02:02 신고

      추석 잘 보내셨나요?ㅎ
      https://github.com/acidpop/acidpop_tgbot.git
      를 다운받아 사용해보려했는데 트랜스미션 다운로드 완료시 알림 받는 기능은 없는듯 싶어서요. 제가 트랜스미션 사용중이라...
      그리고 저번의 DSM 알림도 텔레그램으로 받고 싶습니다.

      개인적으로 Flexget 도 사용하는데...
      http://flexget.com/wiki/Plugins/pushbullet
      Flexget 알림을 pushbullet 으로 받는데 이것도 텔레그램으로 받을 수 있을까요?
      Flexget 에는 아직 텔레그램 plugin 이 없는거 같습니다 ㅠ.ㅜ

    3. BlogIcon Acidpop acidpop 2015.10.02 10:26 신고

      안녕하세요.

      트랜스 미션의 다운로드 완료 알람은 스크립트를 이용하시면 됩니다.

      1. 트랜스미션 서비스를 중단.
      2. 트랜스미션의 settings.json 파일을 수정
      - script-torrent-done-enabled": false 이 부분의 false 를 true 로 변경
      - script-torrent-done-filename": ""
      큰 따옴표 안에 실행 할 쉘 스크립트 경로와 파일 이름을 넣어주세요. (예 : /volume1/homes/admin/trnoty.sh)



      쉘 스크립트 내용은 다음과 같이 작성 하시면 됩니다.

      #! /bin/sh

      echo "msg 홍길동 $TR_TORRENT_NAME 다운로드 완료" | nc localhost 8888

      작성 하신 다음 실행 권한을 줍니다.
      sudo chmod 755 /volume1/homes/admin/trnoty.sh

      이렇게 하시고 트랜스 미션 서비스를 다시 시작 하시면 됩니다.

      트랜스 미션에서 script-torrent-done-filename 이 부분에 쉘 스크립트 경로를 입력 하면
      몇몇 변수를 사용 하실 수 있습니다.
      •TR_APP_VERSION
      •TR_TIME_LOCALTIME
      •TR_TORRENT_DIR
      •TR_TORRENT_HASH
      •TR_TORRENT_ID
      •TR_TORRENT_NAME

      자세한 사항은 https://trac.transmissionbt.com/wiki/Scripts
      여기를 참고하시면 되구요.

      flexget 은 제가 사용을 안해서 잘은 모르겠네요 ^^;

    4. 하얀바나나우유 2015.10.03 03:32 신고

      알려 주신 방법은 전부터 그렇게 사용하고 있습니다. Pushbullet 으로 알림을 받고 있죠.
      이걸 텔레그램 봇으로 알림을 받으려면 sh 내부에 텔레그램 관련 명령어 같은것들을 넣어할텐데 그걸 모릅니다.

      | nc localhost 8888
      뒤에 이부분이 텔레그램으로 봇으로 알림을 받는 부분인가요?

    5. BlogIcon Acidpop acidpop 2015.10.05 15:29 신고

      chroot_debian 에서 텔레그램 실행 하실때
      -P 8888 이 옵션이 8888 포트로 오는 내용을 받겠다 라는 의미 입니다.
      즉, 8888 포트로 텔레그램 CLI 메시지를 보내면 똑같이 작동 하는구조구요.
      nc 는 netcat 이라고 리눅스용 유틸리티 입니다.

      echo "msg 홍길동 $TR_TORRENT_NAME 다운로드 완료" | nc localhost 8888

      위와 같이 수행 하면 8888 포트로
      "msg 홍길동 $TR_TORRENT_NAME 다운로드 완료"
      라는 텍스트를 그대로 전송 하게 해주는 유틸리티입니다.

  • BlogIcon Shekinah 2015.09.02 11:47 신고

    debian을 다시 재설치하고 재부팅하니 apt-get이 되네요~ usr/bin/ 경로에는 파일이 없지만요~

    텔레그램 설치를 하고 폰 번호를 입력하는 부분에서 잘못 입력했는데, 수정하는 방법을 못찾겠네요...

    그리고 home 폴더에 직접 winscp로 접속해서 인증파일을 삭제하고 다시 해보려고했더니, home폴더는 volume1에 보이지 않네요~ㅠ

    또한, vovox나 textplus 어플로 생성한 번호는 죄다 맞지 않는다고 뜨네요...

    답변 감사드립니다~

    1. BlogIcon Acidpop acidpop 2015.09.02 11:57 신고

      debian chroot 쉘로 접속 하셨다면

      chroot 접속(실행)한 상태에서

      cd /root 로 가셔서
      ls -al 이라고 쳐보면

      .telegram-cli 이 디렉토리가 보일겁니다.

      rm -rf ./.telegram-cli

      이렇게 삭제 하시고 다시 실행하시면 됩니다.

      textplus 는 안되나요?
      앞에 국가코드까지 다 넣으셔야 됩니다.
      만약 대한민국 국적번호로 111-2222
      라면 "+821112222"

      이렇게 +기호화 국가코드 그리고 전화번호가 들어가야 합니다.


      그리고 home 폴더는 DSM 관리 웹페이지 가셔서
      제어판 -> 사용자 -> 고급 탭 -> 사용자 홈 서비스 활성화
      이걸 체크 하셔야 보입니다.

    2. BlogIcon Shekinah 2015.09.02 12:18 신고

      특이하게, 명령어로 치면 root/home/ 폴더에 접근이 가능한데
      winscp 같이 ui로 봐지는 것에는 home폴더를 못찾겠네요~
      사용자 홈 서비스 활성화는 해놨구요~

      내컴퓨터에서 \\\나스이름\ 으로 들어가면 home폴더는 보이지만 설치한 텔레그램 폴더가 보이지 않는 현상이네요..

      뭐 putty로 접근이 가능하니 별 문제될건 없는 것 같구요.

      textplus번호나 다른 어플 번호는 텔레그램에서 막은 것 같네요~
      pc버전으로 인증받으려고하니 올바른 번호가 아니라고 뜹니다...

      인증문제부터 해결해야겠네요 ㅠ 감사합니다~

    3. BlogIcon Acidpop acidpop 2015.09.02 12:57 신고

      winscp 나 네트워크 드라이브 형태로 접근 하신다면
      다음 경로에 chroot 가 존재합니다.
      /volume1/@appstore/debian-chroot/var/chroottarget

      chroot 가 XPEnology 위에서 debian 리눅스를 돌리는 개념(?)으로 보셔야 되요.
      합해진 시스템이 아닙니다 ^^;

      textplus 가 막혔군요? ㅠㅠ

    4. BlogIcon Shekinah 2015.09.02 13:30 신고

      답변 감사합니다!

      데이터 쉐어링 사용중이라 그걸로 인증을 받았네요 ㅠ 드디어 안녕이라고 치면, 반응 메세지가 뜹니다 ! 감사합니다~

      이제 데몬 등록하려고 메세지를 입력했더니 다음과 같이 뜨네요.

      root@Noel_Nas:/home/tg# bin/telegram-cli -s bot/basicbot.lua -d &
      [3] 16676
      root@Noel_Nas:/home/tg# change_user_group: can't find the user telegramd to switch to

      한 번 봐주시면 감사하겠습니다ㅠ

    5. BlogIcon Acidpop acidpop 2015.09.02 13:37 신고

      root@Noel_Nas:/home/tg# change_user_group: can't find the user telegramd to switch to

      이 에러메시지는 무시 하셔도 됩니다.

      [3] 16676
      이 메시지가 지금 Telegram 이 데몬으로 실행 되었다는걸로 보시면 됩니다. 이 숫자를 Telegram CLI 의 process ID 입니다.
      PID라고 하죠.

      해당 숫자를 잘 기억 하시고 Telegram CLI 를 종료 하시려면
      kill -9 16676
      이렇게 하시면 됩니다.

      만약 PID 를 잊어버리셨다면 chroot 상태가 아닌 XPEnology 의SSH로 접속 하셔서
      ps | grep telegram
      이렇게 치시면 나옵니다.

      '|' 이 기호는 '\' 이 키를 shift 누르고 입력하는 문자입니다.

    6. BlogIcon Shekinah 2015.09.02 14:08 신고

      감사합니다~
      갑자기 이 단계에서 정전이 되어버려서 재부팅했더니, 봇이 작동을 안하고 있어서
      bin/telegram-cli -s bot/basicbot.lua -P 8888 -d &
      이 단계까지 넘어갔더니 작동하는데, 이제는 재부팅해도 저절로 작동이 되는거 맞는지요?

      그리고 그 다음 단계에서 로그 파일을 기록하려고 했더니
      sudo 명령어가 실행이 안됩니다~ㅠㅠ

      root@Noel_Nas:/home/tg# sudo echo "" > /var/log/telegram.log
      bash: sudo: command not found
      root@Noel_Nas:/home/tg# echo "" > /var/log/telegram.log
      root@Noel_Nas:/home/tg# chown pi:pi /var/log/telegram.log
      chown: invalid user: 'pi:pi'
      root@Noel_Nas:/home/tg#

      그리고 또 그냥 다음 단계로 넘어가서 tg.sh 파일을 저장하고

      sudo chown pi:pi tg.sh 명령은 역시나 sudo가 먹히지 않아서 그냥 넘어가고 권한만 755로 준 다음 ./tg.sh status를 실행하니 예시와 같이 나오지 않고 아래와 같이 나옵니다.

      /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.utf8)
      Usage : tg.sh [ start | stop | chk ]

    7. BlogIcon Acidpop acidpop 2015.09.02 16:28 신고

      아.. XPEnology 는 현재 telegram cli가 서비스로 등록이 되어 있질 않은 상태입니다.
      즉, 재부팅 하면 다시 실행 해주셔야 합니다.

      그리고 debian chroot 자체가 root 권한으로 실행 되기 때문에 sudo 명령어는 안쓰셔도 되구요.

      chown pi:pi 이 부분은 라즈베리파이 에서 pi 계정으로 설정해주는 명령어 입니다. 즉, 안하셔도 됩니다.

      tg.sh 파일 역시 라즈베리파이 기준으로 작성된것이기 때문에 작동을 보장 할 수 없습니다 ^^;

      지금 현재로서는 telegram-cli -s basicbot.lua -d &
      처럼 직접 명령어를 쳐서 실행 하시는게 가장 간단합니다.

      root 권한이므로 다른것들 할 필요 없이 다음 명령어로 실행하면 될것 같네요.

      bin/telegram-cli -s bot/basicbot.lua -L /var/log/telegram-cli.log -P 8888 -e "contact_list" -d &

      다시 한번 말씀 드리지만 Telegram CLI 강좌는 라즈베리파이 기준으로 설명 되어 있고 XPEnology 는 설치와 실행 정도만 테스트 해본정도입니다.

    8. BlogIcon Shekinah 2015.09.02 16:41 신고

      계속 상세한 답변 감사드립니다~

      일단 여기까지가 할 수 있는 부분인것 같네요ㅎㅎ

      다음에 XPEnology 용으로 올리시는 글 기다리고 있겠습니다~

      특히 토렌트 관련해서 만드신 부분이 꼭 알고 싶네요!

      정말 감사드립니다!

  • BlogIcon Shekinah 2015.09.04 17:52 신고

    하나 더 다른 질문을 좀 드리고 싶은데요 ㅠ

    제가 nas에다가 wake on lan 을 설치해서 sh 파일을 만든 후에, 같은 네트워크에 있는 데스크탑을 wol하려고 하는데,
    chroot /volume1/@appstore/debian-chroot/var/chroottarget bash 이 명령어를 사용해야

    apt-get update && apt-get install wakeonlan 이게 설치가 되더라구요. 그리고 vi wol.sh 파일을 만들었는데.

    chroot /volume1/@appstore/debian-chroot/var/chroottarget bash 이 명령어 없이는 sh wol.sh 실행이 안되네요.

    혹시 기본으로 chroot /volume1/@appstore/debian-chroot/var/chroottarget bash 이 명령이 자동실행될 수는 없는건가요?

    제가 폰으로 바로 터미널 접속해서 sh wol.sh 만 실행는걸 해보려고 하는 중인데, 여기가 막히네요 ㅠ

    답변 미리 감사드립니다!


    Noel_Nas> sh wol.sh
    wol.sh: line 1: wakeonlan: not found
    Noel_Nas>
    Noel_Nas> chroot /volume1/@appstore/debian-chroot/var/chroottarget bash
    bash: warning: setlocale: LC_ALL: cannot change locale (en_US.utf8)
    root@Noel_Nas:/# sh wol.sh
    perl: warning: Setting locale failed.
    perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = "en_US.utf8",
    LANG = "en_US.utf8"
    are supported and installed on your system.
    perl: warning: Falling back to the standard locale ("C";).
    Sending magic packet to 255.255.255.255:9 with xx:xx:xx:xx:xx

    1. BlogIcon Acidpop acidpop 2015.09.07 09:34 신고

      생각하시는것보다 상당히 간단합니다...

      chroot /volume1/@appstore/debian-chroot/var/chroottarget bash /home/test.sh


      chroot bash 명령 뒤에 해당 shell script 경로를 써주시면 됩니다.
      단, 경로는 chroot 상에서의 경로입니다.

      wol.sh 파일을 최상위 경로에 생성하신거 같은데

      다음과 같이 사용하시면 될듯 하네요.

      chroot /volume1/@appstore/debian-chroot/var/chroottarget bash /wol.sh

    2. BlogIcon Shekinah 2015.09.07 10:07 신고

      아 이런 간단한 방법이... 감사합니다~
      그렇다면 이 실행문을 sh 안에 넣어두고 실행할 수 있을까요?

      지금 제가 하려고 하는게, 클라이언트에 저장한 sh 파일을 실행하면, 서버에 있는 wol.sh 파일이 실행되어 컴퓨터를 키려고 하는거거든요...

      서버랑, 컴퓨터랑 같은 공유기고, 클라이언트는 외부입니다.

      클라이언트에서는 root@아이피 하면 바로 비밀번호 없이 로그인 될 수 있게 https://opentutorials.org/module/432/3742 이 글을 참조해서 셋팅은 해놨구요...

      클라이언트 sh 파일에 어떻게 써야할지 찾아봐도 쉽지가 않은데..

      #!/bin/sh
      root@아이피 ## 클라이언트에서 서버로 바로 로그인
      chroot /volume1/@appstore/debian-chroot/var/chroottarget bash /wol.sh ##서버에 있는 wol.sh파일을 실행

      이런식으로 했더니 아예 되질 않네요 ㅠ 도움 부탁드립니다ㅠ

    3. BlogIcon Acidpop acidpop 2015.09.07 10:44 신고

      똑같이 응용해보시면 될거 같은데요...

      root@아이피 "chroot /volume1/@appstore/debian-chroot/var/chroottarget bash /wol.sh"

      뒤쪽 chroot 는 큰 따옴표로 묶으시면 되구요.

    4. BlogIcon Shekinah 2015.09.07 13:35 신고

      감사합니다 ㅠ

      sh 파일에
      ssh root@아이피 "chroot /volume1/@appstore/debian-chroot/var/chroottarget bash /wol.sh"
      로 해결했습니다 ㅎㅎ 정말 감사합니다 !

  • Hue 2015.09.24 15:07 신고

    알려주신 정보대로 차근차근 따라해서 텔레그램 메세지 수신과 발신 모두 성공했습니다1! 감사합니다 ㅎㅎ

    하지만 아직 반쪽짜리인것이 github에 올려놓으신 봇을 다운받아서 경로 수정 후 이용해봤는데 사용이 다 안되더라구요ㅜ

    예를 들어 날씨의 경우 "날씨 **동" 이란 command를 작성하게되면 봇에서 답장이 경기도 **시 **동 까지는 오고 날씨예보가 날라오질 않더라구요, 토렌트의 경우는 토렌트 없음으로 뜨구요.

    경로수정말고 어떤부분을 또 수정해야하는건가요??

    1. BlogIcon Acidpop acidpop 2015.09.24 16:29 신고

      안녕하세요 ^^;
      제가 쉘 모드라는 기능을 추가 하면서 전역 변수 이름을
      잘못 만들어 버려서 shell_path 라는 변수를 공백으로 지워버리는 문제가 있었습니다.
      github에 다시 커밋 해놓았으니 다시 받으셔서 해보시면 될겁니다

  • 도막사라모 2015.10.10 23:42 신고

    안녕하세요
    좋은 정보 정말 감사합니다.
    현재 xpenology 5.0 에 설치 했는데 많은 문제 없이 잘 실행 됩니다.
    하나 해결하고 싶은게 있는데요 download station 에서 마그넷을 다운 받게 하려면 어떻게 해야 하는지 알수 있을까요?

    1. BlogIcon Acidpop acidpop 2015.10.12 10:37 신고

      안녕하세요
      Downlaod Station 에 마그넷 링크를 추가 하는 방법은 아래와 같습니다.

      psql -U postgres -d download -At -c "INSERT INTO download_queue (username, url, status, filename, pid, created_time, destination) VALUES ('dsm_id', 'magnet:?xt=urn:btih:A7D', 1, 'Magnet Link', 23876, 1444475976, 'download/torrent');"

      VALUES 뒷 부분에 dsm_id 는 DSM 에서 사용하는 사용자 ID
      url = 마그넷 링크
      status = 1 로 설정
      file name = 파일 이름
      pid 는 그냥 아무 숫자나 넣어도 상관 없습니다
      create_time = date +%s 를 실행한 값
      destination = 다운로드 받을 경로 입니다.

    2. 도막사라모 2015.10.15 14:44 신고

      ㄴ 답변 감사드립니다.
      chroot 에서는 psql 명령어를 사용할수가 없는데요... 어떠한 방법으로 사용할수가 있을까요? ㅠㅠ

    3. BlogIcon Acidpop acidpop 2015.10.15 16:02 신고

      안녕하세요
      chroot 상에서 사용하시려는 목적이었군요 ^^;;

      chroot 에서 직접 psql 로 접근은 안될겁니다.

      저 같은 경우는 XPenology 에 웹 서버봐 php 서비스를 실행 되게 해놓고
      php 파일을 하나 짜서 올려놓고
      curl 명령으로 해당 php 파일을 호출합니다.

      즉, 실제 DB 를 사용하는 명령어는 php 로 작성해서 만들어 놓고
      chroot 나 또는 다른 시스템에서는 curl http://xpenology_ip:port/test.php --data-urlencode query="select * from test;"

      위와 같은 방식으로 호출 해서 사용합니다.

      Magnet 링크 추가 하는 Telegram 측 루아 스크립트와
      XPenology 측 php 파일 일부분을 질문 게시판쪽에 올려놓겠습니다.

      참고 하시면 됩니다.

  • 놀러왔습니다. 2015.11.04 11:04 신고

    클리앙 나스당에서 보고 놀러왔습니다.
    뭔가 손대기가 초보 입장에서 어렵네요 ㅎ

    XPEnology 봇 만들어 주시면 감사히 잘 사용하겠습니다 ㅎ

    1. BlogIcon Acidpop acidpop 2015.11.04 11:08 신고

      안녕하세요 ^^

      XPEnology BOT 은 제가 요즘 작업할 시간이 없어서 계속 미뤄지게 되네요 ㅠㅠ

      개발이 완료되는데로 바로 포스팅 하겠습니다.

      감사합니다.

  • fabric 2015.11.07 22:12 신고

    https://i.imgur.com/7nDM8sU.png

    Debian Chroot 한글 깨짐 현상 해결 하기

    dpkg-reconfigure locales

    위 명령어를 수행 한 다음 아래 목록에 있는 항목을 선택한다.

    en_US.UTF-8
    ko_KR.UTF-8

    선택하고 OK하면 한글 깨짐 현상이 사라진다.

    이 부분 dpkg-reconfigure locales 입력했더니 이미지처럼 저렇게 뜨네요.
    한글 깨짐은 확인 못 했으나 입력하니 저러는데 locals 가 설치 안 된 모양인데...다시 해야하는건가요?

    1. BlogIcon Acidpop acidpop 2015.11.09 13:42 신고

      안녕하세요

      답변이 좀 늦었습니다.

      제가 이것저것 테스트 하다가 한국어 로케일 설정을 한거다 보니
      중간에 뭔가 과정이 누락된걸로 보입니다.

      일단 다음 명령어를 차례대로 수행해 주세요.

      apt-get install locales

      locale

      locale-gen "en_US.UTF-8"
      locale-gen "ko_KR.UTF-8"

      제가 지금 chroot 를 설정해놓은 상태여서 확답은 안되지만
      시도해 보시고 다시 알려주세요.

    2. fabric 2015.11.10 02:18 신고

      네, 알려주신대로 locales 설치하고 설정 완료 했습니다. 고맙습니다 ㅎ

    3. BlogIcon Acidpop acidpop 2015.11.10 10:34 신고

      해결 되셨다니 다행입니다. ^^

  • 도막사라모 2015.11.22 21:21 신고

    안녕하세요.
    telegram-cli 프로세스가 죽었을때 다시 살리는 스크립트를 만들수 있을까요?
    chroot 에서 실행이 되다 보니 다른 포스트에 있는 글을 참조해도 좀처럼 쉽지가 않네요 ㅠㅠ

    1. BlogIcon Acidpop acidpop 2015.11.23 14:13 신고

      안녕하세요
      답변이 좀 늦었습니다.

      아래 스크립트를 참고하셔서 if 와 else 사이 구문만 적절하게 바꿔서 쓰시면 될것 같습니다.

      #!/bin/sh

      while :
      do
      PID=`/bin/ps -e -u 0 | /bin/grep -w telegram-cli | awk '{print $1}'`
      if [ $PID ]; then
      echo "Telegram is Execute..."
      else
      echo "Telegram is not Execute..."
      fi

      sleep 1
      done

      이 스크립트는 당연히 데몬으로 돌려야 하구요.

      데몬으로 하는게 싫으시다면 while do done 구문을 없애고 나머지 부분만 남겨둔채 1초에 한번씩 해당 스크립트를 실행하셔도 됩니다.

      else 구문의 echo 구문 아래쪽에 sudo service telegramd start 명령을 추가 하시면 될듯 하네요

  • hello 2015.12.15 15:39 신고

    XPEnology 에서 날씨가 제대로 안 되는것 같습니다. 설치는 완료했고 날씨에 대한 반응도 옵니다만, 동네명 아래로 온도 : C 까지만 날아옵니다. 그리고 저항계산기도 해봤는데 응답이 없고, 토렌트 검색은 어떻게 하는건가요?

    설치는 제대로 된거 같은데 말이죠. 내부에 /home/pi/tg 도 /home/tg 로 수정할만한건 다 수정했습니다.

    1. BlogIcon Acidpop acidpop 2015.12.15 16:17 신고

      동네 조회는 아래 명령어가 정상적으로 작동 하는지 먼저 수행해보세요

      curl -s "http://www.kma.go.kr/wid/queryDFSRSS.jsp?zone=1111061500"

      1차로 위 curl 명령을 했을때 정보를 제대로 가져오는지 확인하시구요

      2차로 아래 명령을 실행해보세요
      curl -s "http://www.kma.go.kr/wid/queryDFSRSS.jsp?zone=1111061500" | xmlstarlet sel -t -c "/rss/channel/item/description/body/data[@seq="0"]" | xml2 | grep -E 'temp|wfKor|pop|ws|wdKor|reh' | cut -d '=' -f 2

      6.0
      구름 많음
      20
      4.0

      55

      위 처럼 6줄이 나오면 텔레그램 봇도 정상적으로 나올겁니다.

      저항계산기는 응답이 없다고 하셨는데..
      텔레그램 경로로 가셔서
      bin/telegram-cli -s bot/basicbot.lua
      위와 같이 실행 한 다음 저항 계산기 라고 메시지를 보내고 나서
      나오는 화면 내용을 알려주세요

      그리고 토렌트 검색은 뭐가 안되나요?

    2. hello 2015.12.15 20:42 신고

      그리고 날씨 삼성동 뭐 이렇게 입력했다고치면...대략 30-40분 후에도 날씨에 대한 응답이 날아 옵니다. 처음 날씨 삼성동 넣을때 바로 응답을 받고 30-40분후에도 이상하게 날아오더라구요.

    3. BlogIcon Acidpop acidpop 2015.12.16 09:49 신고

      저항계산기 같은 경우는 사용법이 잘못됐네요 ^^;

      저항 계산기 이렇게 쓰는게 아니라..

      저항 갈주적금

      이런식으로 사용하시면 됩니다.

      위 명령들은 ssh 접속 하셔서 chroot_debian 으로 들어가셔서 실행 해보시면 됩니다.

      날씨 관련해서는 이정도 정보만 가지고는 판단을 못하겠네요.

      토렌트는 bot/shell 디렉토리에 보시면 tdget.sh 라는 파일이 있습니다.

      이 파일을 열어 보시면 RSS를 지원하는 토렌트 사이트에서 RSS 구조로 토렌트 내용을 검색하는 구조인데

      torrentproject 는 요근래 들어서 작동을 안하는것 같고..

      그 아래에 있는 사이트는 은 http 에서 https 로 변경이 되서 그런걸로 보입니다.

      github 에서 tdget.sh 파일만 다시 받아주시면 됩니다.

    4. hello 2015.12.16 12:46 신고

      날씨는 curl 이 설치 안되서 그런거 였네요. 따라하면서 빠진 부분은 없었던거 같은데...

    5. BlogIcon Acidpop acidpop 2015.12.16 12:48 신고

      그렇군요..

      XPEnology 에 debian_chroot는 curl 이 기본으로 설치가 안되는것일수도 있습니다.

    6. hello 2015.12.16 12:52 신고

      토랭이는 따로 받는데가 있어서 상관없지만, 봇 설치하고서 잘 안 되서 문의 드리면서 같이 여쭤 본 겁니다. 날씨가 안 되서 말이죠. 리눅스나 이런 명령어는 젬병이라...

      아무튼 지금 날씨 랑 알려주신 저항계산기 사용은 잘 됩니다. 고맙습니다.

    7. BlogIcon Acidpop acidpop 2015.12.16 13:16 신고

      해결이 되셨다니 다행입니다.

  • hello 2015.12.16 15:59 신고

    https://github.com/yagop/telegram-bot

    google map 이라던가 gps 이외에도 여러기능이 있는 봇이던데 이거 설치해서 같이 사용해도 문제 없나요?
    설치가 되는지 혹은 설치 후 사용할때 하나만 작동한다던지 하는 문제가 발생하지 않을까 여쭤 봅니다.

    1. BlogIcon Acidpop acidpop 2015.12.17 09:31 신고

      둘 다 사용하고 싶으시면 코드 작업을 좀 하셔야 됩니다..

다른 카테고리의 글 목록

강좌/XPEnology 활용 카테고리의 포스트 목록