[IOT프로젝트] 4. gh-connector on AoL

category AndroidOverLinux 2019.09.26 23:15

오늘은 아기나무집 님의 google home connector 를 올려보겠습니다.


추출방법이 docker 에서 nodejs 파일을 빼오는 것임으로 이후 업데이트는 직접 적용하셔야합니다. ㅠㅠ 


docker 를 AoL 에서 쓰는 날까지.. ㅠㅠ





1. 다운 받고 폴더 배치


압축된 소스를 다운받습니다. 그리고 압축을 풀고 적절한 위치에 배치합니다.


root@AOL-Debian:~# wget http://u5pvr.djjproject.com/ghconnector.tar

--2019-09-26 22:21:52--  http://u5pvr.djjproject.com/ghconnector.tar

Resolving u5pvr.djjproject.com (u5pvr.djjproject.com)... 211.49.151.29

Connecting to u5pvr.djjproject.com (u5pvr.djjproject.com)|211.49.151.29|:80... connected.

HTTP request sent, awaiting response... 200 OK

Length: 292362240 (279M) [application/x-tar]

Saving to: ‘ghconnector.tar’


ghconnector.tar           100%[====================================>] 278.82M  29.2MB/s    in 12s     


2019-09-26 22:22:04 (24.0 MB/s) - ‘ghconnector.tar’ saved [292362240/292362240]


root@AOL-Debian:~# mkdir -p /home/ghconnector

root@AOL-Debian:~# mv ghconnector.tar /home/ghconnector/


압축을 풀고 파일을 위로 옮긴다음, 안쓰는 것은 삭제합니다.


root@AOL-Debian:~# cd /home/ghconnector/

root@AOL-Debian:/home/ghconnector# ls

ghconnector.tar

root@AOL-Debian:/home/ghconnector# tar xf ghconnector.tar 

root@AOL-Debian:/home/ghconnector# ls

app  ghconnector.tar

root@AOL-Debian:/home/ghconnector# rm ghconnector.tar 

root@AOL-Debian:/home/ghconnector# mv app/* .

root@AOL-Debian:/home/ghconnector# rm -rf app

app/    app.js  

root@AOL-Debian:/home/ghconnector# rm -rf app/





2. nodejs 버전 문제 및 해결


현재 miconnector 는 node 9.xx 버전 / ghconnector 는 10.xx 를 사용해야합니다.


일단 아기나무님께서 node 버전을 10으로 해도 문제가 없으실 꺼라 해서 


노드 버전을 10으로 설치하고 이전에 설치했던 miconnector 도 손을 조금 봅니다.


curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -


rm -rf /home/miconnector/node_modules/*


cd /home/miconnector


npm install


상기로 miconnector 를 손봅니다.


db 관련 에러가 발생하는데 그냥 파일 소켓 연결을 허용했습니다.


동일하게 ghconnector 에 대해서도 작업합니다.


rm -rf /home/ghconnector/node_modules/*


cd /home/ghconnector


npm install


설정폴더를 일관성 있게 아래와 같이 배치합니다.


mkdir /home/ghconnector/config

cp /home/ghconnector/gh-config.json /home/ghconnector/config/


nano /home/ghconnector/util/config.js


var jsonfile = require('jsonfile')

var fs   = require('fs');

const logger = require('./log').log;

var cmd = require('node-cmd');

const ghUtil = require('./ghUtil');


class ConfigUtil {


  constructor(){

    this.configPath = "/home/ghconnector/config/gh-config.json";

    this.config = {};

  }






3. 자동 실행 스크립트 작성


wget https://github.com/djjproject/android_over_linux/raw/master/init.d/ghconnector -O /etc/init.d/ghconnector


chmod a+x /etc/init.d/ghconnector


update-rc.d ghconnector defaults


root@AOL-Debian:~# service ghconnector stop

Stopping ghconnector: ghconnector.


root@AOL-Debian:~# service ghconnector start

Starting ghconnector: ghconnector.

root@AOL-Debian:~# 


http://ipaddr:30010/ 으로 진입 후 admin / 12345 후 작업을 진행하시길 바랍니다.


gt-mini 가 잡히긴 하는데 동작하지는 않습니다.





감사합니다.





댓글을 달아 주세요