IT관련(197)
-
드롭박스 webhooks 연결하기
라즈베리파이로 만드는 전자액자 구상 드롭박스의 파일이 변경되면 Push 메시지를 받고 싶어서 IFTTT랑 연동을 했었다.그런데 push가 제대로 오지 않거나 딜레이가 발생하는 경우가 많았다.확인해 보니 드롭박스에서 Webhooks라는 서비스를 제공하고 있었다. Webhooks는 웹 어플리케이션으로 드롭박스내 파일의 변경이 있는 경우 실시간으로 노티를 주는 서비스였다.그리하여 IFTTT를 포기하고 webhooks를 사용하기로 결정하였다. 먼저 이 서비스를 이용하기 위해서는 verification request를 수행해야 한다.설명을 읽어 보니 나의 웹서버 URL을 등록하면 해당 URL로 드롭박스가 GET 방식으로 challenge라는 파라미터에 데이터 담아 전달한다.웹서버는 전달받은 challenge 값을..
2016.10.20 -
라즈베리파이로 Push 서버 만들기
라즈베리파이로 만드는 전자액자 구상 집에 놔둔 라즈베리파이로 웹서버는 구성해 두었고 이제 Push 서버를 만들어야 한다.결국 Push 서버라는건 심플하게 생각해 보면 소켓을 이용한 서버-클라이언트 프로그램과 다를게 없어 보인다. 그런데 소켓 프로그램은 클라이언트가 루프를 돌면서 메시지가 오는지 계속 체크를 해야하기 때문에 배터리 소모가 꾸준히 있을 것 같아 문제가 될것 같다. 뭔가 손쉽게 Push 서버를 만들수 있는 방법이 뭐가 없을까 찾아보는 도중 RabbitMQ를 확인하게 되었다.요즘은 Node.JS 처럼 비동기 프로그램이 유행인데 RabbitMQ가 AMQP(Advanced Message Queuing Protocol)을 이용한 비동기 메시지 전송 서버로 보여진다. 물론 내가 필요한건 대용량도 아니고..
2016.10.12 -
드롭박스 Python SDK를 이용한 동기화
라즈베리파이로 만드는 전자액자 구상 드롭박스용 Python SDK를 이용하여 드롭박스 클라이언트가 없는 OS에서 사용하려 한다.확인해 보니 v2가 배포되어 있고 예제코드도 충분해서 개발하는데 어렵지 않아 보인다. 먼저드롭박스용 Python SDK를 설치해야 한다. Download and install the SDK.pip install dropbox 이제 Python 코드에 아래와 같이 import 하면 된다.import dropbox 틈틈이 테스트하면서 먼저 단방향 동기화만 가능하도록 코드를 구현해 두었다.Github에 올려두었으니 필요하면 다운로드 받으시라.https://github.com/jasmine125/syncmanager 이것을 사용하기 위해서는 반드시 자신만의 Dropbox app과 Acc..
2016.09.22 -
라즈베리파이로 만드는 전자액자 구상
라즈베리파이를 전자액자로 만들어서 부모님께 드리려한다.드롭박스로 파일을 공유하고 파일이 업데이트 되면 라즈베리파이와 동기화가 되어야 하고 동기화가 완료되면 재생이 되면 된다. 드롭박스로 공유하려는 것이 사진이다 보니 Public으로 공개해 놓을 수는 없으니 접근권한이 필요하다.불행히 라즈베리파이용 드롭박스 클라이언트는 존재하지 않는다. 그래서 ifttt와 드롭박스를 연결해서 파일이 업데이트가 되면 ifttt를 이용해 웹서버가 push를 받고 웹서버는 각각의 라즈베리파이에 push를 전달하여 각각의 라즈베리파이가 드롭박스와 동기화를 하고 완료 후 재생하면 될것 같다. 가만히 생각해 보면 굳이 이렇게 만들지 말고 저렴한 안드로이드 테블릿을 사면 고민없이 끝날텐데... ㅎㅎ졸지에 웹서버와 Push 서버를 운영..
2016.09.22 -
라즈베리파이로 Git 서버 운영하기
Raspbian Jessie를 설치하면 기본적으로 SSH(Secure Shell)과 Git이 설치되어 있어 Git 서버로 사용하는데 불편함이 없다. 일반적으로는 Git을 운영하는데 대표 계정을 하나 만들어서 접근하는 형태로 많이들 사용하던데, 나는 혼자 사용할거라서 굳이 그렇게 할필요는 없을 것 같다. 원하는 경로에 Git repository로 사용할 디렉토리를 만들고 나서 해당 디렉토리 안에서 아래 명령어를 실행하면 Git repository가 만들어 진다. $ git init –bare –shared 이후 다른 PC에서 해당 repository를 내려받으면 끝난다. $ git clone ssh://ID@서버주소:/repository path
2016.09.20 -
라즈베리파이에 워드프레스 설치(nginx + php + mysql + wordpress)
라즈베리파이를 외부에서 접속 할 수 있게 해 두었다.외부 네트워크에서 라즈베리파이에 접속하기(포트포워딩) 이제 웹서버를 구축하고 워드프레스도 설치를 한다. 원래는 아파치(Apache)를 사용하려고 했는데 라즈베리파이가 성능이 떨어져서 엔진액스(Nginx)를 설치하는게 좋다는게 일반적인 평가였다. Nginx + php 설치는 아래 링크를 참조하자.Ubuntu에서 Nginx + PHP-FPM 연동하기 이제 MySQL Server와 PHP-MySQL 패키지를 설치해야 한다.$ sudo apt-get install mysql-server php5-mysql 남은건 워드프레스 다운로드 및 설치방법이다.아래 링크는 지금 나의 방식과는 조금 다르지만 "Download wordpress" 부터 동일하게 진행하면 된다...
2016.09.01