본문 바로가기

웨어박스 이야기

스마트폰을 위한 나만의 동기화 서버를 구성해 보자!

스마트폰의 대중화와 함께 동기화 서비스에 대한 관심 또한 점차 증가하고 있습니다. 구글을 필두로 다음과 네이버에서도 동기화를 지원하고 있기 때문에 그리 낯설지 않은 서비스입니다.

이들 동기화 서비스는 모두 ‘마이크로소프트의 ActiveSync’라는 프로토콜을 지원하고 있습니다. 그리고 대부분의 스마트폰에는 이미 ActiveSync를 통해 동기화 서비스를 제공 받을 수 있는 아웃룩 기능이 있습니다. 따라서 스마트폰을 구입하게 되면 누구나 이용할 수 있는 온라인 서비스 중 하나입니다.


구글 동기화 기술 나도 적용할 수 있다.

동기화 서버라고 하니 상당히 어려운 기술처럼 느껴질 수 있습니다. 그러나 쉽게 생각하면 웹 서버를 하나 구성하는 것과 동일합니다. 차이점이 있다면 웹 서버는 화면이 있는데 동기화 서버는 화면이 없습니다.

인터넷이 대중화 되면서 비동기 통신이라는 말도 익숙한 단어가 되었습니다. 그리고 많은 웹 기술에 활용되고 있기 때문에 AJAX와 REST (Representational State Transfer) 또한 자주 듣게되는 단어가 되었습니다. 이런 기술이 동기화에도 그대로 사용되고 있습니다.

웹 서버를 구성할 정도면 동기화 서비스를 구성할 수 있다.



다운로드 한 압축 파일을 풀면 위와 같습니다. 그리고 이것을 웹 서버로 구성하기 위해 Web.config 파일을 열면 Setting이 필요한 것들이 있습니다. 그 중에서 처음에 나타나는 다음과 같은 것을 서버 환경에 맞도록 설정합니다.

 <!-- 웨어박스 사용을 위한 라이센스 키를 기록합니다. 평가판인 경우 웨어박스 익스체인지 설치시 자동 부여되는 라이센스를 적용합니다.  -->
 <add key="LicenseKey" value="XXXX-XXXXXX-XXXXXX"/>
 <!-- 웨어박스 사용 데이터베이스의 연결 정보를 기록합니다. (패스워드 설정 참조)  -->
 <add key="ConnectString" value="server=(local);database=WareBox;uid=sa;pwd=password;"/>
 <!-- Representational State Transfer Parameters.  -->
 <add key="VirtualPath" value="RestSyncWare,Microsoft-Server-ActiveSync"/>
 <!-- 웹 사이트 URL을 표시하며 URL이 없는 경우 컴퓨터 이름 또는 IP 주소를 기록합니다.  -->
 <add key="RestUrl" value="http://syncrest.domain.net"/>
 <!-- 웹 사이트를 표시할 수 있는 도메인을 기록합니다.  -->
 <add key="Domain" value="domain.net"/>

※ 그 밖의 것들은 IIS 서버 버전에 따라 system.web 을 변경해 주어야 합니다.
해당 Web.config 파일은 IIS 6.0 과 ASP.NET 2.0, AJAX를 위한 Web Extention 3.5을 기준으로 구성되어 있습니다.

설정 시 준비할 사항

서버를 구성하기 위해서는 데이터베이스가 구성되어 있어야 합니다. 데이터베이스 구성과 라이선스는 웨어박스 익스체인지 평가판을 활용할 수 있습니다. 동기화 서버 구성을 위해서는 새 버전으로 업그레이드를 적용하면 됩니다. (최신 평가판 v1.83)

웨어박스 익스체인지 다운로드 (평가판)

이전 글 참조 -> 윈도우 환경에서 지원되는 데이터베이스 기반 익스체인지


구글 동기화와 어떤 차이가 있나?

구글이나 다음, 네이버의 동기화는 주소록과 일정관리를 동기화 합니다. 최근 구글에서는 ActiveSync를 위한 메일도 동기화 제공하는 것으로 나타납니다. 그러나 정식 서비스로 등록 되어 있는 것 같지는 않군요! 그 이유는 구글 메일이 있고 IMAP이 따로 있기 때문으로 보입니다.

마찬가지로 ‘싱크박스’는 주소록, 일정관리 그리고 메일 동기화를 제공합니다. 차이가 있다면 협업을 위한 비동기 서비스와 확장이 가능한 API를 제공하는 것이 차이입니다.

이전 글 참조 -> 모바일 오피스 어떻게 도입하고 구성할 것인가?


누구나 소스를 들여다 볼 수 있는 REST 서버


REST 서버를 구성하기 위해 원시 소스가 공개되어 있어야 합니다. 압축 파일의 Virtual 이라는 디렉터리에 2개의 파일이 있는데 이를 활용하면 누구나 REST 서버를 만들어 적용할 수 있습니다.