KR101459549B1 - 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템 및 방법 - Google Patents

이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템 및 방법 Download PDF

Info

Publication number
KR101459549B1
KR101459549B1 KR1020100117945A KR20100117945A KR101459549B1 KR 101459549 B1 KR101459549 B1 KR 101459549B1 KR 1020100117945 A KR1020100117945 A KR 1020100117945A KR 20100117945 A KR20100117945 A KR 20100117945A KR 101459549 B1 KR101459549 B1 KR 101459549B1
Authority
KR
South Korea
Prior art keywords
message
user terminal
application program
developer
terminal
Prior art date
Application number
KR1020100117945A
Other languages
English (en)
Other versions
KR20120056420A (ko
Inventor
이철민
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1020100117945A priority Critical patent/KR101459549B1/ko
Publication of KR20120056420A publication Critical patent/KR20120056420A/ko
Application granted granted Critical
Publication of KR101459549B1 publication Critical patent/KR101459549B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/224Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • H04W88/184Messaging devices, e.g. message centre

Abstract

본 발명은 이동 단말로 응용 프로그램을 위한 메시지를 호스팅하는 시스템 및 방법에 관한 것으로서, 보다 상세하게는, 하나 이상의 운영체제를 이용하는 하나 이상의 사용자 단말로 응용 프로그램에 대한 메시지를 호스팅하는 시스템 및 방법에 관한 것이다.
메시지 호스팅 시스템이 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 방법은 (a) 개발자 단말로부터 응용 프로그램에 매칭되는 메시지를 수신하는 단계, (b) 상기 응용 프로그램을 포함하는 사용자 단말을 검색하는 단계, (c) 상기 사용자 단말의 운영체제에 매칭되는 메시지 푸시 서버를 검색하는 단계 및 (d) 상기 검색된 메시지 푸시 서버에 매칭되는 통신 인터페이스를 통해 상기 메시지 푸시 서버로 상기 메시지 및 상기 사용자 단말 인증 정보를 전송하는 단계를 포함하고, 상기 메시지 푸시 서버는 상기 사용자 단말 인증 정보에 기초하여 상기 메시지를 상기 사용자 단말로 전송할 수 있다.

Description

이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템 및 방법{SYSTEM AND METHOD OF MESSAGE NOTIFICATION HOSTING FOR APPLICATION ON MOBILE DEVICE}
본 발명은 이동 단말로 응용 프로그램을 위한 메시지를 호스팅하는 시스템 및 방법에 관한 것으로서, 보다 상세하게는, 하나 이상의 운영체제를 이용하는 하나 이상의 사용자 단말로 응용 프로그램에 대한 메시지를 호스팅하는 시스템 및 방법에 관한 것이다.
최근 들어 스마트폰, 태블릿PC 등 이동 단말을 사용이 폭발적으로 늘어남에 따라 각 이동 단말의 운영체제(operating system, OS) 기반의 응용 프로그램에 대한 사용자 요구도 증가하고 있다. 이에 따라 이동 단말 운영체제인 애플의 iOS, 구글의 안드로이드 등 각각 운영체제마다 SDK(software development kit)가 공개되고, 응용 프로그램 개발자는 각각의 운영체제마다 공개된 SDK를 이용하여 다양한 응용 프로그램을 개발하여 사용자에게 제공하고 있다.
이러한 이동 단말의 응용 프로그램에서 자주 이용되는 기능 중에 하나가 메시지 알림 기능이며, 이러한 알림 기능은 약속시간이나 기념일에 대한 알림, 메일 도착이나 메시지에 대한 알림, 경고 메시지에 대한 알림 등에 이용될 수 있다. 각 운영체제의 SDK는 이러한 메시지 알림 기능을 SDK에 포함시켜 응용 프로그램 개발자가 이용할 수 있도록 제공해주고 있다. 대표적인 단말 메시지 알림 서비스로는 애플의 APNs(Apple Push Notification Service), 안드로이드의 C2DM(Cloud to Device Messaging) 등을 들 수 있다.
도 1은 종래의 기술에 따른 응용 프로그램의 메시지를 사용자 단말로 전송하는 시스템을 도시한 도면이다.
종래의 기술에서 개발자 단말(10)은 개발자/응용프로그램 인증 서버(20)로 개발자 단말(10)에 의해 개발된 응용 프로그램에 대한 인증서를 요청하고(S105), 이에 응답하여 개발자/응용프로그램 인증 서버(20)는 응용 프로그램 인증서 및 메시지 푸시 서버(50)에 의해 메시지 푸시가 수행되기 위한 서버 인증서를 개발자 단말(10)로 제공한다(S110).
종래 기술에 따르면 응용프로그램의 개발자는 매시지 푸시 서버(50)와 통신을 수행할 수 있는 메시지 제공 서버(30)를 별도로 구축하고, 개발자 단말(10)이 개발자/응용프로그램 인증 서버(20)로부터 수신한 서버 인증서를 구축한 메시지 제공 서버(30)에 설치한다.
이후, 개발자 단말(10)은 응용 프로그램 및 개발자/응용프로그램 인증 서버(20)로부터 수신한 응용프로그램 인증서를 응용 프로그램 제공 서버(40)를 통해 사용자 단말(60)에 제공한다(S120 및 S125).
사용자 단말(60)은 개발자 단말(10)로부터 수신한 응용 프로그램에 대한 토큰 발급을 메시지 푸시 서버(50)에 요청하고(S130), 이에 응답하여 메시지 푸시 서버(50)는 토큰을 사용자 단말(60)에 설치된 응용 프로그램에 전달한다(S135). 메시지 푸시 서버(50)는 사용자 단말(60)의 운영체제를 공급하는 공급자의 메시지 알림 인터페이스, 예를 들어 애플의 APNs(Apple Push Notification Service) 인터페이스를 포함할 수 있다.
사용자 단말(60)은 메시지 푸시 서버(50)로부터 수신한 토큰을 개발자에 의해 별도로 구축된 메시지 제공 서버(30)로 전송하고, 메시지 제공 서버(30)는 수신한 토큰을 사용자 단말(60)에 매칭하여 등록한다(S140).
이후, 개발자가 응용 프로그램 메시지를 해당 응용 프로그램을 설치한 사용자 단말(50)로 전송하게 되는 경우, 개발자 단말(10)은 개발자에 의해 구축된 메시지 제공 서버(30)로 메시지를 전송하고(S145), 메시지 제공 서버(30)는 수신한 메시지를 사용자 단말(60)에 매칭되어 등록된 토큰과 함께 메시지 푸시 서버(50)로 전송한다(S150).
메시지 푸시 서버(50)는 수신한 토큰을 이용하여 사용자 단말(60)을 식별하고, 식별된 사용자 단말(60)로 수신한 메시지를 전송한다(S155).
종래의 기술에서 개발자/응용 프로그램 인증 서버(20) 및 메시지 푸시 서버(50)는 사용자 단말에 제공되는 운영체제(operating system, OS) 공급자, 예를 들어 iOS, 안드로이드 등의 공급자인 애플, 구글 등에 의해 제공되어 운용된다.
개발자/응용 프로그램 인증 서버(20)는 개발자와 응용 프로그램에 대한 인증서를 발급하고 응용 프로그램 개발을 위한 SDK(software development kit)를 제공하고, 메시지 푸시 서버(50)는 메시지 알림 서비스에서 사용자 단말(60)로 알림 메시지를 전송한다.
따라서, 응용 프로그램의 개발자에 의해 제공되는 응용 프로그램이 다양한 운영체제, 예를 들어 iOS, 안드로이드, 심비안, 바다, 윈도우폰7 등의 다양한 운영체제를 사용하는 다양한 종류의 사용자 메시지에 제공되는 경우, 개발자에 의해 별도로 구축되는 메시지 제공 서버(30)는 각각의 운영체제에 매칭되는 통신 인터페이스를 포함하여야 한다.
이처럼 응용 프로그램의 개발자가 메시지 알림 기능을 이용하기 위해서는 사용자 단말에 설치될 응용 프로그램을 개발하는 것 이외에도 각각의 운영체제 별로 사용자 단말로 메시지 푸시를 수행하는 서버, 즉 메시지 푸시 서버와 통신을 수행하기 위한 메시지 제공 서버도 개발해야 한다.
따라서, 종래 기술에 따르면, 사용자 단말에 사용되는 운영체제의 종류가 다양해짐에 따라 운영체제 별로 응용 프로그램을 개발하여 제공하고자 하는 개발자가 응용 프로그램 외에도 메시지 알림 서비스를 위해 별도의 서버를 구축하여야 하므로, 이를 위해 별도의 시간 및 비용이 소모되어 개발자의 응용 프로그램 개발 의욕을 저하시키는 문제점이 있었다.
본 발명의 일 실시예는 이동 단말에 이용되는 응용 프로그램을 개발하는 개발자가 별도의 메시지 제공 서버를 구축하지 않아도 메시지 알림 기능을 이용하여 다양한 운영체제가 적용된 응용 프로그램을 설치한 다양한 이동 단말로 메시지를 전송할 수 있는 메시지 호스팅 시스템 및 방법을 제공하여, 개발자가 운영체제 별로 운용되는 메시지 푸시 서버와의 통신을 위한 별도의 서버를 구축하고 개발하는 부담을 감소시키고자 한다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면은 (a) 개발자 단말로부터 응용 프로그램에 매칭되는 메시지를 수신하는 단계, (b) 상기 응용 프로그램을 포함하는 사용자 단말을 검색하는 단계, (c) 상기 사용자 단말의 운영체제에 매칭되는 메시지 푸시 서버를 검색하는 단계 및 (d) 상기 검색된 메시지 푸시 서버에 매칭되는 통신 인터페이스를 통해 상기 메시지 푸시 서버로 상기 메시지 및 상기 사용자 단말 인증 정보를 전송하는 단계를 포함하고, 상기 메시지 푸시 서버는 상기 사용자 단말 인증 정보에 기초하여 상기 메시지를 상기 사용자 단말로 전송하는 것인 메시지 호스팅 시스템이 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 방법을 제공할 수 있다.
본 발명의 제 1 측면에서, 상기 (a) 단계는 (a1) 상기 개발자 단말에 의해 생성된 응용 프로그램의 정보를 획득하는 단계 및 (a2) 상기 응용 프로그램을 구동하는 사용자 단말로부터 상기 사용자 단말의 운영체제에 매칭되는 메시지 푸시 서버에 대한 인증 정보를 수신하는 단계를 포함하고, 상기 (b) 단계에서, 상기 메시지 호스팅 시스템은 상기 인증 정보에 기초하여 상기 응용 프로그램을 포함하는 사용자 단말을 검색할 수 있다.
또한, 본 발명의 제 1 측면에서, 상기 (a) 단계에서, 상기 메시지는 상기 메시지 호스팅 시스템에 의해 상기 개발자 단말에 제공된 API(application programming interface)를 통해 수신될 수 있다.
또한, 본 발명의 제 2 측면은 개발자 단말에 의해 생성된 응용 프로그램의 인증 정보를 상기 개발자 단말 및 상기 응용 프로그램에 매칭시켜 저장하는 개발자 인증 정보 관리부, 상기 응용 프로그램을 포함하는 사용자 단말의 정보를 상기 사용자 단말로부터 수신하여 저장하는 사용자 단말 관리부, 상기 개발자 단말로부터 응용 프로그램에 관련된 메시지를 수신하고, 상기 메시지에 매칭되는 응용 프로그램을 포함하는 사용자 단말을 검색하는 전송 메시지 관리부 및 상기 검색된 사용자 단말에 매칭되는 메시지 푸시 서버로 상기 수신한 메시지를 전송하는 메시지 전송부를 포함하고, 상기 메시지 푸시 서버로 전송된 메시지는 상기 메시지 푸시 서버를 통해 상기 검색된 사용자 단말로 전송되는 것인 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템을 제공할 수 있다.
전술한 본 발명의 과제 해결 수단에 의하면, 다양한 운영체제(operating system, OS)에 기반하여 개발된 응용 프로그램을 하나 이상의 사용자 단말에 제공하고, 제공된 응용 프로그램에서 원격 알림 메시지 서비스가 필요한 경우, 개발자가 운용체제 별로 별도의 메시지 제공 서버를 구축하지 않고도, 운영체제의 종류에 관계없이 메시지를 사용자 단말로 전송할 수 있다.
또한, 전술한 본 발명의 과제 해결 수단에 의하면, 개발자 단말은 메시지 호스팅 시스템으로부터 제공된 API(application programming interface)를 통해 메시지 전송을 수행하므로, 동일한 응용 프로그램의 메시지를 다양한 운영체제 별로 배포하는 것을 용이하게 수행할 수 있다.
도 1은 종래의 기술에 따른 응용 프로그램의 메시지를 사용자 단말로 전송하는 시스템을 도시한 도면,
도 2는 본 발명의 일 실시예에 따른 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템을 이용한 메시지 알림 시스템의 구성을 도시한 도면,
도 3은 본 발명의 일 실시예에 따른 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 방법의 흐름을 도시한 신호흐름도,
도 4는 본 발명의 일 실시예에 따른 이동 단말 응용 프로그램을 위한 메시지 호스팅 시스템의 구성을 도시한 도면.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 2는 본 발명의 일 실시예에 따른 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템을 이용한 메시지 알림 시스템의 구성을 도시한 도면이다.
개발자 단말(100)은 개발자/응용 프로그램 인증 서버(200)로 응용 프로그램에 대한 인증서를 요청한다. 개발자 단말(100)은 특정한 운영체제에 대하여 제공된 소프트웨어 개발 키트(software development kit, SDK)를 이용하여 특정 운영체제에 적합한 응용 프로그램을 개발할 수 있으며, 응용 프로그램에 매칭되는 운영체제에 대한 개발자/응용 프로그램 인증 서버로 인증서를 요청할 수 있다.
개발자/응용 프로그램 인증 서버(200)는 각각의 운영체제, 예를 들어 iOS, 안드로이드, 심비안, 윈도우폰7 등의 운영체제에 따른 하나 이상의 인증 서버를 포함할 수 있다. 개발자/응용 프로그램 인증 서버(200)는 각각의 운영체제에 매칭되는 응용 프로그램의 개발을 위한 SDK를 개발자 단말에 제공하고, 제공된 SDK에 의해 생성된 응용 프로그램에 대한 인증서 및 메시지 푸시를 위한 서버 인증서를 개발자 단말에 제공한다.
따라서, 개발자 단말(100)은 하나 이상의 인증 서버 중에서 개발된 응용 프로그램의 운영 체제에 매칭되는 인증 서버에 인증서를 요청하여 응용 프로그램 인증서 및 서버 인증서를 제공 받을 수 있다.
이러한 하나 이상의 개발자/응용 프로그램 인증 서버(200)는 각각의 운영체제를 공급하는 공급자에 의해 각각 관리될 수 있다.
개발자 단말(100)은 개발자/응용 프로그램 인증 서버(200)로부터 수신한 서버 인증서를 이용하여 메시지 호스팅 시스템(300)에 응용 프로그램에 대한 메시지 호스팅 서비스를 등록한다.
이 경우, 응용 프로그램이 구동되는 운영체제 별로 동일한 응용 프로그램에 대한 하나 이상의 서버 인증서가 등록될 수 있다. 예를 들어, 개발자 단말(100)이 동일한 응용 프로그램을 iOS 및 안드로이드의 두 종류의 OS를 이용하는 사용자 단말에 제공하는 경우, 개발자 단말(100)은 iOS에 매칭되는 개발자/응용 프로그램 인증 서버로부터 수신한 서버 인증서 및 안드로이드에 매칭되는 개발자/응용 프로그램 인증 서버로부터 수신한 서버 인증서를 메시지 호스팅 시스템(300)에 등록할 수 있다.
따라서, 메시지 호스팅 시스템(300)은 다양한 운영체제에 대한 서버 인증서를 개발자 단말(100)에 매칭하여 등록한다.
개발자 단말(100)은 개발자/응용 프로그램 인증 서버(200)로부터 수신한 응용 프로그램 인증서를 이용하여 응용 프로그램 제공 서버(400)에 개발한 응용 프로그램을 등록한다.
응용 프로그램 제공 서버(400)는 사용자 단말(600)이 요청한 응용 프로그램 및 응용 프로그램 인증서를 사용자 단말(600)에 제공한다. 응용 프로그램 제공 서버(400)는 개발자/응용 프로그램 인증 서버(200)와 마찬가지로 운영체제 별로 하나 이상의 서버를 포함할 수 있다. 즉, 응용 프로그램 제공 서버(400)는 운영 체제 별로 구동되는 응용 프로그램을 사용자 단말에 제공하는 하나 이상의 서버를 포함할 수 있다.
사용자 단말(600)은 응용 프로그램 제공 서버(400)를 통해 수신하여 설치한 응용 프로그램에 대한 토큰 발급을 메시지 푸시 서버(500)에 요청하고, 메시지 푸시 서버(500)로부터 요청한 토큰을 수신한다.
메시지 푸시 서버(500)는 각각의 운영체제에 따른 하나 이상의 메시지 푸시 서버(510 내지 530)를 포함하며, 각각의 메시지 푸시 서버는 각각의 운영체제를 공급하는 공급자의 메시지 알림 인터페이스, 예를 들어, 애플의 APNs(Apple Push Notification Service), 구글의 C2DM(Cloud to Device Messaging) 등의 인터페이스를 포함할 수 있다.
사용자 단말(600)은 메시지 푸시 서버(500)에 포함된 하나 이상의 메시지 푸시 서버 중에서 사용자 단말(600)이 사용하고 있는 운영체제에 맞는 메시지 푸시 서버에 대해 토큰을 요청하고 수신할 수 있다.
사용자 단말(600)은 메시지 푸시 서버(500)로부터 수신한 토큰을 메시지 호스팅 시스템(300)으로 전송하여 등록을 요청한다.
메시지 호스팅 시스템(300)은 사용자 단말(600)로부터 수신한 토큰을 사용자 단말(600) 및 토큰 발급 대상 응용 프로그램에 매칭하여 등록한다.
메시지 호스팅 시스템(300)은 개발자 단말(100)로부터 수신한 메시지의 전송 요청에 응답하여, 전송하고자 하는 메시지에 매칭되는 응용 프로그램을 수신하여 설치한 사용자 단말을 검색하고, 검색된 사용자 단말에 매칭하여 등록된 토큰을 검색한다.
메시지 호스팅 시스템(300)은 검색된 토큰을 이용하여 메시지 푸시 서버(500)로 개발자 단말(100)로부터 수신한 메시지를 전송한다. 메시지 호스팅 시스템(300)은 메시지 푸시 서버(500)에 포함된 하나 이상의 메시지 푸시 서버(510 내지 530) 중에서 메시지의 수신 대상인 응용 프로그램을 설치한 사용자 단말의 운영체제에 매칭되는 메시지 푸시 서버로 각각 메시지를 전송한다.
메시지 호스팅 시스템(300)은 하나 이상의 메시지 푸시 서버(510 내지 530)에 적용된 통신 인터페이스를 각각 포함하는 하나 이상의 메시지 제공 가상 서버(310 내지 320)를 포함할 수 있다. 따라서, 메시지 제공 가상 서버(310 내지 330) 각각은 메시지 푸시 서버(510 내지 530) 각각에 매칭될 수 있다.
메시지 푸시 서버(500)는 메시지 호스팅 시스템(300)으로부터 수신한 메시지와 함께 수신한 토큰 정보를 이용하여 사용자 단말(600)를 검색하고, 메시지 호스팅 시스템(300)으로부터 수신한 메시지를 사용자 단말(600)로 전송한다.
전술한 본 발명의 일 실시예에서, 개발자/응용 프로그램 인증 서버(200), 응용 프로그램 제공 서버(400) 및 메시지 푸시 서버(500)에 포함된 하나 이상의 서버는 설명의 편의를 위하여 하나의 서버에 포함되어 동일한 장소에 위치하는 것으로 표현된 것일 뿐이며, 메시지 푸시 서버의 공급자에 따라 다양한 장소에 위치할 수 있다.
도 3은 본 발명의 일 실시예에 따른 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 방법의 흐름을 도시한 신호흐름도이다.
단계(S205)에서, 개발자 단말(100)은 개발자/응용 프로그램 인증 서버(200)로 응용 프로그램 인증서 및 서버 인증서를 요청한다. 개발자 단말(100)은 응용 프로그램 인증서를 이용하여 응용 프로그램을 앱스토어, 안드로이드 마켓 등의 응용 프로그램 마켓에 등록할 수 있으며, 서버 인증서를 이용하여 메시지 푸시 서버의 이용 신청을 인증하여 응용 프로그램 메시지를 메시지 푸시 서버를 통해 사용자 단말로 전송할 수 있다.
단계(S210)에서, 개발자/응용 프로그램 인증 서버(200)는 단계(S205)에서 수신한 인증서 요청에 응답하여 응용 프로그램 인증서 및 서버 인증서를 개발자 단말(100)에 제공한다.
단계(S215)에서, 개발자 단말(100)은 단계(S210)에서 수신한 응용 프로그램 인증서 및 서버 인증서를 메시지 호스팅 시스템(300)으로 전송하여 응용 프로그램 인증서 및 서버 인증서의 등록을 요청한다.
전술한 바와 같이 서버 인증서는 응용 프로그램 메시지를 메시지 푸시 서버를 통해 사용자 단말로 전송하기 위하여 이용되므로, 개발자 단말(100)은 메시지를 메시지 호스팅 시스템(300)으로부터 메시지 푸시 서버(500)를 통해 사용자 단말(600)로 전송하기 위하여 서버 인증서의 등록을 메시지 호스팅 시스템(300)에 요청한다.
단계(S220)에서, 메시지 호스팅 시스템(300)은 단계(S215)에서 개발자 단말(100)로부터 수신한 요청에 응답하여 단계(S215)에서 수신한 서버 인증서를 개발자 단말(100)에 매칭하여 등록한다.
메시지 호스팅 시스템(300)은 서버 인증서에 의해 사용될 수 있는 메시지 푸시 서버의 종류를 분석하고, 개발자 단말(100) 및 메시지 푸시 서버의 종류에 매칭하여 서버 인증서를 등록할 수 있다.
따라서, 메시지 호스팅 시스템은 사용자 단말에 이용되는 운영체제 별로 하나 이상의 서버 인증서를 등록할 수 있다.
단계(S225)에서, 개발자 단말(100)은 응용 프로그램 제공 서버(도시 생략)를 통해 개발자 단말(100)이 개발한 응용 프로그램 및 단계(S210)에서 개발자/응용 프로그램 인증 서버(200)로부터 수신한 응용 프로그램 인증서를 사용자 단말(600)에 제공한다.
단계(S230)에서, 사용자 단말(600)은 단계(S225)에서 응용 프로그램 제공 서버(도시 생략)를 통해 개발자 단말(100)로부터 수신한 응용 프로그램 및 응용 프로그램 인증서를 설치한다.
단계(S235)에서, 사용자 단말(600)은 단계(S230)에서 설치한 응용 프로그램에 대한 토큰의 발급을 메시지 푸시 서버(500)에 요청하여 메시지 푸시 서버(500)에 의해 제공되는 메시지 푸시 서비스의 등록을 요청한다.
단계(S240)에서, 메시지 푸시 서버(500)는 단계(S235)에서 수신한 토큰 발급 요청에 응답하여, 요청된 토큰을 사용자 단말(600)에 발급한다.
단계(S245)에서, 사용자 단말(600)은 단계(S240)에서 수신한 토큰의 등록을 메시지 호스팅 시스템(300)에 요청한다. 단계(S240)에서 수신한 토큰은 메시지 푸시 서버(500)를 통해 사용자 단말(600)로 메시지를 전송하기 위하여 사용될 수 있다.
단계(S250)에서, 메시지 호스팅 시스템(300)은 단계(S245)에서 토큰 등록 요청과 함께 수신한 토큰을 사용자 단말(600) 및 단계(S230)에서 사용자 단말(600)에 설치된 응용 프로그램에 매칭하여 등록한다.
단계(S255)에서, 개발자 단말(10)은 단계(S225)에서 사용자 단말(600)에 제공한 응용 프로그램에 대한 메시지를 생성한다. 응용 프로그램에 대한 메시지는 응용 프로그램에 관련된 내용을 포함하며, 응용 프로그램과 관련하여 사용자 단말(600)에 제공할 알림 내용 등을 포함할 수 있다.
단계(S260)에서, 개발자 단말(100)은 메시지 호스팅 시스템(300)에 단계(S255)에서 생성한 메시지의 전송을 요청한다. 개발자 단말(100)은 메시지 전송 요청과 함께 메시지에 관련된 응용 프로그램의 정보를 메시지 호스팅 시스템(300)에 제공할 수 있다.
개발자 단말(100)은 메시지 호스팅 시스템(300)에 의해 제공되는 오픈 API(application programming interface)를 이용하여 메시지 전송 요청을 수행할 수 있다.
단계(S265)에서, 메시지 호스팅 시스템(300)은 단계(S260)에서 수신한 메시지 전송 요청에 응답하여 메시지를 전송할 사용자 단말의 정보를 분석하여 전송 대상 사용자 단말을 파악한다.
즉, 메시지 호스팅 시스템(300)은 단계(S250)에서 토큰 등록 시 저장된 사용자 단말 정보를 이용하여 단계(S260)에서 수신한 메시지에 관련된 응용 프로그램을 설치한 사용자 단말을 검색한다.
단계(S270)에서, 메시지 호스팅 시스템(300)은 단계(S265)에서 파악한 응용 프로그램을 설치한 사용자 단말의 운영체제를 분석하고, 사용자 단말의 운영체제에 매칭되는 메시지 푸시 서버를 파악한다.
전술한 바와 같이, 사용자 단말의 운영체제 별로 메시지를 전송시키는 메시지 푸시 서버가 상이하며, 메시지 푸시 서버별로 통신 인터페이스가 상이하므로, 메시지 호스팅 시스템(300)은 메시지를 메시지 푸시 서버를 통해 사용자 단말(600)로 전송하기 위하여, 사용자 단말(600)로 메시지를 전송할 수 있는 메시지 푸시 서버를 파악한다.
단계(S275)에서, 메시지 호스팅 시스템(300)은 단계(S270)에서 파악한 메시지 푸시 서버(500)로 단계(S260)에서 전송 요청된 메시지와 함께 메시지 수신 대상인 사용자 단말(600)에 매칭되는 토큰 정보를 함께 전송한다.
단계(S280)에서, 메시지 푸시 서버(500)는 단계(S275)에서 메시지 호스팅 시스템(300)으로부터 수신한 토큰 정보를 확인하고, 사용자 단말(600)이 메시지 푸시 서비스에 등록된 단말인지 여부를 판단한다.
단계(S285)에서, 메시지 푸시 서버(500)는 사용자 단말(600)이 메시지 푸시 서비스에 등록된 단말인 것을 확인하고, 단계(S275)에서 수신한 메시지를 사용자 단말(500)로 전송한다.
도 4는 본 발명의 일 실시예에 따른 이동 단말 응용 프로그램을 위한 메시지 호스팅 시스템의 구성을 도시한 도면이다.
본 발명의 일 실시예에 따른 메시지 호스팅 시스템(300)은 API 제공부(310), 개발자 인증 정보 관리부(320), 사용자 단말 관리부(330), 전송 메시지 관리부(340) 및 메시지 전송부(350)를 포함한다.
API 제공부(310)는 개발자의 인증서 등록, 사용자 단말의 토큰 등록, 메시지 전송 요청 등에 관련되 API(application programming interface)를 제공하여 개발자 단말(도시 생략)에 제공한다.
개발자 인증 정보 관리부(320)는 API 제공부(310)를 통해 개발자 단말로부터 수신한 응용 프로그램 인증서 및 서버 인증서를 등록한다. 메시지 호스팅 시스템(300)은 개발자 인증 정보 관리부(320)에 의해 등록된 응용 프로그램 인증서 및 서버 인증서를 이용하여 개발자 단말에 의해 요청된 응용 프로그램 메시지를 사용자 단말로 전송할 수 있다.
사용자 단말 관리부(330)는 사용자 단말(도시 생략)로부터 수신한 토큰 등록 요청에 응답하여 토큰 등록을 요청한 사용자 단말의 운영 체제, 식별 정보, 설치한 응용 프로그램의 정보 등을 사용자 단말 별로 등록하여 관리하며, 개발자 단말에 의해 제공되는 응용 프로그램의 메시지의 수신 여부를 등록하여 관리한다.
전송 메시지 관리부(340)는 API 제공부(310)에 의해 제공된 API를 통해 개발자 단말로부터 응용 프로그램 관련 메시지를 수신하고, 해당 응용 프로그램이 제공되는 운영체제를 파악한다.
전술한 바와 같이, 운영체제 별로 제공되는 응용 프로그램의 종류가 상이할 수 있으므로, 전송 메시지 관리부(340)는 전송 대상 메시지에 매칭되는 응용 프로그램이 어떤 종류의 운영체제에서 구동되는지 여부를 판단한다.
전송 메시지 관리부(340)는 전송 대상 메시지에 매칭되는 응용 프로그램이 구동되는 운영체제를 판단한 후, 판단 결과에 기초하여 해당 운영체제에 매칭되는 메시지 푸시 서버를 검색한다.
전술한 바와 같이, 운영체제 별로 운영체제의 공급자가 제공하는 메시지 푸시 서버가 상이할 수 있으며, 해당 운영체제에서 구동되는 응용 프로그램에 대한 메시지는 해당 운영체제에 매칭되는 메시지 푸시 서버를 통해 사용자 단말로 전송된다.
따라서, 전송 메시지 관리부(340)는 개발자 단말에 의해 전송 요청된 메시지를 사용자 단말로 전송할 메시지 푸시 서버를 검색하고, 메시지 푸시 서버 별로 토큰이 등록된 사용자 단말을 검색한다.
메시지 전송부(350)는 개발자 단말에 의해 전송 요청된 메시지를 사용자 단말로 전송하기 위하여 전송 메시지 관리부(340)에 의해 검색된 메시지 푸시 서버로 개발자 단말에 의해 전송 요청된 메시지를 전송한다. 메시지 전송부(350)는 메시지와 함께 메시지 수신 대상인 사용자 단말에 매칭된 토큰 정보를 메시지 푸시 서버로 전송한다.
메시지 전송부(350)로부터 메시지 및 토큰 정보를 수신한 메시지 푸시 서버는 수신한 토큰 정보를 이용하여 메시지 수신 대상인 사용자 단말을 파악하고, 파악한 사용자 단말로 메시지 전송부(350)로부터 수신한 메시지를 전송할 수 있다.
메시지 전송부(350)는 상이한 운영체제를 이용하는 하나 이상의 사용자 단말로 응용 프로그램 관련 메시지를 전송하기 위하여, 각각의 운영체제별로 요구되는 프로토콜로 구현된 통신 인터페이스를 포함하며, 이러한 통신 인터페이스를 이용하여 각각의 운영체제에 매칭되는 메시지 푸시 서버로 응용 프로그램 관련 메시지를 전송할 수 있다.
상술한 본 발명의 일 실시예에 따르면, 응용 프로그램의 개발자는 응용 프로그램만을 구현하여 사용자 단말에 제공하고, 응용 프로그램 알림 메시지 서비스를 위해 별도의 메시지 제공 서버를 구축할 필요 없이 메시지 호스팅 시스템을 통해 사용자 단말에 응용 프로그램 관련 메시지를 전송할 수 있다.
또한, 메시지 호스팅 시스템은 다양한 종류의 메시지 푸시 서버와 통신을 수행하기 위하여 각각의 메시지 푸시 서버와 통신 가능한 통신 인터페이스를 포함하므로, 개발자는 메시지 호스팅 시스템에 메시지 호스팅 서비스를 요청하는 것만으로도 응용 프로그램에 대한 메시지를 하나 이상의 운영체제에 의해 구동되는 하나 이상의 사용자 단말로 전송할 수 있다.
이로 인해 응용 프로그램 개발자는 응용 프로그램 메시지 알림 서비스를 사용자에게 제공하기 위하여 사용자 단말의 운용체제 별로 별도의 메시지 제공 서버를 구축할 필요 없이 메시지 호스팅 시스템을 통해 다양한 사용자 단말로 응용 프로그램 관련 메시지를 전송할 수 있다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다.
또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100 : 개발자 단말 200 : 개발자/응용 프로그램 인증 서버
300 : 메시지 호스팅 시스템 310 : API 제공부
320 : 개발자 인증 정보 관리부 330 : 사용자 단말 관리부
340 : 전송 메시지 관리부 350 : 메시지 전송부
400 : 응용 프로그램 제공 서버 500 : 메시지 푸시 서버
600 : 사용자 단말

Claims (9)

  1. 메시지 호스팅 시스템이 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 방법에 있어서,
    (a) 개발자 단말로부터 응용 프로그램에 매칭되는 메시지를 수신하는 단계,
    (b) 상기 응용 프로그램을 포함하는 사용자 단말을 검색하는 단계,
    (c) 상기 사용자 단말의 운영체제에 매칭되는 메시지 푸시 서버를 검색하는 단계 및
    (d) 상기 검색된 메시지 푸시 서버에 매칭되는 통신 인터페이스를 통해 상기 메시지 푸시 서버로 상기 메시지 및 상기 사용자 단말 인증 정보를 전송하는 단계
    를 포함하고,
    상기 메시지 푸시 서버는 상기 사용자 단말 인증 정보에 기초하여 상기 메시지를 상기 사용자 단말로 전송하는 것인 메시지 알림 호스팅 방법.
  2. 제 1 항에 있어서,
    상기 (a) 단계는
    (a1) 상기 개발자 단말에 의해 생성된 응용 프로그램의 정보를 획득하는 단계 및
    (a2) 상기 응용 프로그램을 구동하는 사용자 단말로부터 상기 사용자 단말의 운영체제에 매칭되는 메시지 푸시 서버에 대한 인증 정보를 수신하는 단계
    를 포함하고,
    상기 (b) 단계에서, 상기 메시지 호스팅 시스템은 상기 인증 정보에 기초하여 상기 응용 프로그램을 포함하는 사용자 단말을 검색하는 것인 메시지 알림 호스팅 방법.
  3. 제 1 항에 있어서,
    상기 (a) 단계에서, 상기 메시지는 상기 메시지 호스팅 시스템에 의해 상기 개발자 단말에 제공된 API(application programming interface)를 통해 수신되는 것인 메시지 알림 호스팅 방법.
  4. 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템에 있어서,
    개발자 단말에 의해 생성된 응용 프로그램의 인증 정보를 상기 개발자 단말 및 상기 응용 프로그램에 매칭시켜 저장하는 개발자 인증 정보 관리부,
    상기 응용 프로그램을 포함하는 사용자 단말의 정보를 상기 사용자 단말로부터 수신하여 저장하는 사용자 단말 관리부,
    상기 개발자 단말로부터 응용 프로그램에 관련된 메시지를 수신하고, 상기 메시지에 매칭되는 응용 프로그램을 포함하는 사용자 단말을 검색하는 전송 메시지 관리부 및
    상기 검색된 사용자 단말에 매칭되는 메시지 푸시 서버로 상기 수신한 메시지를 전송하는 메시지 전송부
    를 포함하고,
    상기 메시지 푸시 서버로 전송된 메시지는 상기 메시지 푸시 서버를 통해 상기 검색된 사용자 단말로 전송되는 것인 메시지 알림 호스팅 시스템.
  5. 제 4 항에 있어서,
    응용 프로그램 인증 정보 전송 및 메시지 전송을 수행하는 API(application programming interface)를 상기 개발자 단말에 제공하는 API 제공부
    를 더 포함하고,
    상기 응용 프로그램의 인증 정보 및 상기 응용 프로그램에 관련된 메시지는 상기 API 제공부에 의해 제공되는 API를 통해 상기 개발자 단말에 의해 전송되는 것인 메시지 알림 호스팅 시스템.
  6. 제 4 항에 있어서,
    상기 사용자 단말 관리부가 저장하는 사용자 단말의 정보는 사용자 단말의 운영체제에 매칭되는 메시지 푸시 서버에 대한 인증 정보를 포함하는 것인 메시지 알림 호스팅 시스템.
  7. 제 6 항에 있어서,
    상기 전송 메시지 관리부는 상기 인증 정보에 기초하여 상기 메시지에 매칭되는 응용 프로그램을 포함하는 사용자 단말을 검색하는 것인 메시지 알림 호스팅 시스템.
  8. 제 7 항에 있어서,
    상기 메시지 전송부는 상기 메시지와 함께 상기 인증 정보를 상기 사용자 단말에 매칭되는 메시지 푸시 서버로 전송하고, 상기 메시지 푸시 서버는 상기 인증 정보에 기초하여 상기 메시지를 상기 사용자 단말로 전송할 것인지 여부를 판단하는 것인 메시지 알림 호스팅 시스템.
  9. 제 4 항에 있어서,
    상기 메시지 전송부는 상기 검색된 사용자 단말의 운용체제에 매칭되는 메시지 푸시 서버로 상기 수신한 메시지를 전송하는 것인 메시지 알림 호스팅 시스템.
KR1020100117945A 2010-11-25 2010-11-25 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템 및 방법 KR101459549B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100117945A KR101459549B1 (ko) 2010-11-25 2010-11-25 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100117945A KR101459549B1 (ko) 2010-11-25 2010-11-25 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20120056420A KR20120056420A (ko) 2012-06-04
KR101459549B1 true KR101459549B1 (ko) 2014-11-07

Family

ID=46608567

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100117945A KR101459549B1 (ko) 2010-11-25 2010-11-25 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101459549B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102008486B1 (ko) 2012-10-10 2019-08-07 에스케이플래닛 주식회사 푸시 서비스 제공 시스템 및 방법
KR101284353B1 (ko) * 2012-11-16 2013-07-08 박순영 호스트 단말기와 다수의 클라이언트 단말기 간의 대용량 데이터 전송을 지원하는 클라우드 기반 푸시 서비스 호스팅 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090101055A (ko) * 2008-03-21 2009-09-24 인터내셔널 비지네스 머신즈 코포레이션 콘텐츠 푸시 서비스
KR20100042685A (ko) * 2008-10-06 2010-04-27 (주)씽크엠 무선망 환경에서 동적 ip기반의 양방향 푸시 서비스 시스템
KR20100006265U (ko) * 2008-12-11 2010-06-21 김동우 다중의 운영체계를 지원하는 개인 휴대통신 단말기
KR20100122391A (ko) * 2009-05-12 2010-11-22 주식회사 엘지유플러스 다수의 브라우저 코어를 포함하는 웹 애플리케이션 플랫폼, 그를 기반으로 하는 이동통신 단말기 및 그를 이용한 웹 애플리케이션 서비스 제공방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090101055A (ko) * 2008-03-21 2009-09-24 인터내셔널 비지네스 머신즈 코포레이션 콘텐츠 푸시 서비스
KR20100042685A (ko) * 2008-10-06 2010-04-27 (주)씽크엠 무선망 환경에서 동적 ip기반의 양방향 푸시 서비스 시스템
KR20100006265U (ko) * 2008-12-11 2010-06-21 김동우 다중의 운영체계를 지원하는 개인 휴대통신 단말기
KR20100122391A (ko) * 2009-05-12 2010-11-22 주식회사 엘지유플러스 다수의 브라우저 코어를 포함하는 웹 애플리케이션 플랫폼, 그를 기반으로 하는 이동통신 단말기 및 그를 이용한 웹 애플리케이션 서비스 제공방법

Also Published As

Publication number Publication date
KR20120056420A (ko) 2012-06-04

Similar Documents

Publication Publication Date Title
KR102046700B1 (ko) 메시지 버스 서비스 디렉토리
US10492048B2 (en) Service layer resource propagation across domains
US11622022B2 (en) System and method for a multi-channel notification service
CN110839078B (zh) 代理推送
US20220014594A1 (en) Framework for dynamic brokerage and management of topics and data at the service layer
JP6612437B2 (ja) サービス層登録
US9276934B2 (en) Self-activation of user device
CN107274222B (zh) 广告投放方法及装置
CN111510466B (zh) 客户端的数据更新方法、装置、电子设备及可读介质
CN114938395A (zh) 服务响应方法、装置、设备及存储介质
KR101459549B1 (ko) 이동 단말 응용 프로그램을 위한 메시지 알림 호스팅 시스템 및 방법
US20130007094A1 (en) Client server communication system
US20180218419A1 (en) Method and apparatus for providing digital product using user account synchronization
US20180115946A1 (en) TRUSTED METHOD FOR CONSUMING AND SHARING Wi-Fi INTERNET ACCESS
CN115587860A (zh) 业务处理方法、装置、存储介质及电子设备
CN106664593B (zh) 无线数据传输
CN110943975A (zh) 服务注册的方法、装置、计算机设备和存储介质
KR101568584B1 (ko) 디바이스 제어 기술을 통한 웹 커뮤니케이션 서비스 제공 방법
CN111131414B (zh) 后端平台、服务调用方法、第一服务模块及服务器
US20140128111A1 (en) Converged dialog in hybrid mobile applications
CN118012500A (en) Version compatible method, device, equipment and computer readable storage medium
CN117499486A (zh) 数据处理方法及装置、电子设备、计算机可读存储介质
CN116860806A (zh) 数据查询方法、装置、电子设备及计算机存储介质
CN111901445A (zh) 查询无线接入点的密码的方法和设备

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171101

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181031

Year of fee payment: 5