구글 챗으로 LG U+ 센트릭스 전화 알림 받기 2/3


1. 연재기사 소개

이 연재기사에서는 LG U+ IMS 센트릭스 기업 인터넷 전화로 전화가 올 때에, 구글 챗으로 알림을 보내는 방법을 소개합니다.

고객 응대를 위해서 기업 인터넷 전화를 사용하는 경우, 전화가 올 때에 고객이 우리 DB에 이미 있는 고객인지 또는 신규 고객인지 구글 챗을 통해 알 수 있다면 좋지 않을까요? LG U+ IMS 센트릭스 기업 인터넷 전화의 Open API를 활용하면 여러 가지 편의 기능들을 구현할 수 있습니다. 기사에서 필요한 부분을 확인해보세요.

이번 포스트는 2번째 포스트로 서버에 릴레이용 php 파일을 세팅하는 방법을 다룹니다.

2. 구글 앱스 스크립트 doPost(e) 생성하기

이제 고정 IP의 서버는 세팅하였습니다. 이제 다음과 같은 프로세스를 준비해야 합니다.

  1. 서버에서 callback URL로 사용할 php 파일

    2. php 파일이 수신할 데이터를 앱스 스크립트로 릴레이해 줄 때 이를 수신할 doPost(e) 앱스 스크립트 웹앱

    3. doPost(e)에서 수신한 정보를 구글 챗에 보내주는 앱스 스크립트

    이번 포스트에서는 1, 2번을 다루고 다음 포스트에서 3번을 다룹니다. php 파일을 만들 때에, doPost(e) 앱스 스크립트 웹앱을 주소가 필요하기 때문에 먼저 doPost(e)를 만들겠습니다.


    코드를 작성하고 배포를 진행합니다. 권한은 현재 로그인한 사용자로 해야 문제가 없습니다. (웹 앱을 액세스하는 사용자로 하면 실행이 안될 수 있습니다.) 액세스 권한은 모든 사용자로 합니다.


    배포한 웹 앱 URL을 복사해둡니다.

    3. 릴레이용 PHP 파일 생성하기

    이제 다음과 같이 릴레이용 php 파일을 생성합니다. 중간에 $gasUrl에 배포한 웹 앱 URL을 입력합니다.

    LG U+에서 callback URL로 정보를 보내준 것을 json 형태로 변환해서 앱스 스크립트 웹 앱으로 릴레이하는 스크립트 입니다. 서버에 SSL 설정은 하지 않았기 때문에 해당 옵션은 curl에서 무시하는 것으로 처리되어 있습니다.


    파일을 FTP를 통해 업로드합니다.

    이제 정상적으로 동작하는지 테스트 코드를 작성해서 실행해보겠습니다. LG U+에서 보내주는 GET 방식으로 파라미터들을 추가한 callback URL을 호출합니다.


    올바르게 세팅이 되었다면 다음과 같은 응답을 받게 됩니다. 그리고 doPost가 한 번 실행 됩니다. sendChatMessage(data) 함수를 정의하지 않았기 때문에 당연히 실패로 표시됩니다.



    웹앱으로 doPost가 실행되는 경우에는 실행 메뉴에서 로그를 볼 수 없습니다. 로그를 보기 위해서는 설정에서 프로젝트를 클라우드 프로젝트로 전환해야 합니다.


    3. LG U+ 센트릭스에 callback URL 등록하기

    이제 준비한 callback URL 을 LG U+ 센트릭스 서버에 등록합니다. API에서 호출할 URL은 https://icentrex.uplus.co.kr/RestApi/setringcallback 입니다. 그리고 다음의 변수들이 필요합니다.

    1. id: 숫자로 된 전화번호. 하이픈 있으면 안됩니다.

    2. password: 전화번호의 비밀번호입니다. 잊어버린 경우에는 센트릭스 관리자 페이지에서 리셋합니다. 여기서 비밀번호는 SHA512로 해시합니다. 아래에 앱스 스크립트에서 SHA512 해시하는 함수를 추가해두었습니다.

    3. callbackurl: FTP에 올린 php 파일의 url입니다.

    4. callbackhost: 고정 ip 주소입니다. IP만 넣으세요.

    5. callbackport: ‘80’ 으로 설정합니다.

    유플러스 매뉴얼은 다음 이미지를 참고해주세요



    setUplusCallbackUrl 함수로 callback URL이 올바르게 등록되었다면 성공메시지를 회신 받게 됩니다.

    이제 전화를 걸어봅니다. 정상적으로 세팅이 되었다면, doPost가 실행됩니다. (여전히 실패라고 나오지만 정상적으로 동작하는 것입니다.)

    여기까지 진행하셨다면, 거의 다 오신 것입니다. 이제 LG U+ 센트릭스로 전화가 들어오면, 가비아의 릴레이 서버를 거쳐서 구글 앱스 스크립트 doPost로 정보가 들어옵니다. 이 정보를 사용해서 구글 챗으로 메시지를 보내면 됩니다.

    이어지는 포스트에서 구글 챗으로 메시지를 보내는 마지막 부분을 다루겠습니다.

    Similar Posts