KR101730339B1 - 정보 처리 단말 및 제어 방법 - Google Patents

정보 처리 단말 및 제어 방법 Download PDF

Info

Publication number
KR101730339B1
KR101730339B1 KR1020150010331A KR20150010331A KR101730339B1 KR 101730339 B1 KR101730339 B1 KR 101730339B1 KR 1020150010331 A KR1020150010331 A KR 1020150010331A KR 20150010331 A KR20150010331 A KR 20150010331A KR 101730339 B1 KR101730339 B1 KR 101730339B1
Authority
KR
South Korea
Prior art keywords
information
function
service
application
processing terminal
Prior art date
Application number
KR1020150010331A
Other languages
English (en)
Other versions
KR20150087815A (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 캐논 가부시끼가이샤
Publication of KR20150087815A publication Critical patent/KR20150087815A/ko
Application granted granted Critical
Publication of KR101730339B1 publication Critical patent/KR101730339B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • H04L67/2809
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • H04L67/2823
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content

Abstract

프록시 어플리케이션은, 정보 처리 단말내의 어플리케이션이 제공하는 기능을 유저 에이전트를 통해서 호출하기 위해서, 상기 어플리케이션의 정의 정보를 웹 인텐츠 형식으로 변환하여, 상기 유저 에이전트에 등록한다. 웹 인텐츠 요구에 따라, 유저 에이전트는, 유저에 대하여, 네트워크상의 서비스 및 정보 처리 단말내의 어플리케이션이 제공하는 기능을 호출하는데 사용된 화면을 제공한다. 상기 화면에 대한 유저가 발행한 선택 지시에 따라, 유저 에이전트는, 프록시 어플리케이션을 거쳐 어플리케이션의 기능을 호출한다.

Description

정보 처리 단말 및 제어 방법{INFORMATION PROCESSING TERMINAL AND CONTROL METHOD}
본 발명은, 네트워크상의 서비스와 정보 처리 단말내의 어플리케이션을 서로 연계시키는데 사용된 기술에 관한 것이다.
최근, 스마트 폰 등의 정보 처리 단말의 대중화에 따라, 복수의 어플리케이션간에 연계를 실현하고, 보다 개선된 서비스를 유저에 제공하는 구조가 실현되고 있다.
예를 들면, 일본국 공개특허공보 특개 2013-96969호에는, 제1 어플리케이션이 제2 어플리케이션에 화상식별자를 넘겨주는 것에 의해, 제2 어플리케이션이, 제1 어플리케이션보다 해상도가 높은 화상을 표시하는 것이 가능해지는 기술이 개시되어 있다.
또한, 인터넷상에서는, 웹 서버 기능을 갖는 웹 사이트내의 웹 어플리케이션끼리의 연계를 실현하는 구조가 제안되고 있다. 이들 구조의 예들로서는, 웹 인텐츠(Web Intents)가 있다.
그러나, 상기 일본국 공개특허공보 특개 2013-96969호의 기술은, 정보 처리 단말내의 2개의 어플리케이션이 서로 연계하는 것을 가능하게 하지만, 인터넷상의 웹 어플리케이션과의 연계에 관해서는 고려되지 않고 있다.
또한, 웹 인텐츠등의 새로운 연계의 구조는, 웹 어플리케이션끼리가 연계하는 것을 가능하게 하지만, 정보 처리 단말내의 일반적인 어플리케이션과의 연계를 실현할 수는 없다.
본 발명은, 정보 처리 단말내에서 실행되는 어플리케이션과 웹 어플리케이션을 용이하게 서로 연계 가능한 구조를 대상으로 한다.
본 발명의 일 국면에 의하면, 데이터를 관리하는 클라이언트와 상기 클라이언트에서 관리되는 데이터를 이용해서 기능을 제공하는 서비스를, 네트워크를 거쳐서 서로 연계시키는 중계 기능을 갖는 정보 처리 단말은, 네트워크상의 제1 서비스가 제공하는 기능을 호출하기 위한 기능 정보를 수신하는 수신 수단과, 상기 정보 처리 단말내의 제2 서비스가 제공하는 기능을 상기 중계 기능을 거쳐서 호출하기 위해서, 상기 제2 서비스의 정의 정보를, 상기 기능 정보의 형식으로 변환하는 변환 수단과, 상기 제1 서비스 및 상기 제2 서비스가 제공하는 기능을 호출하기 위한 상기 중계 기능을 사용하여 등록 처리를 행하는 등록 수단과, 상기 등록 처리에 따라, 유저에 대하여, 상기 제1 서비스 및 제2 서비스가 제공하는 기능을 호출하는데 사용된 화면을 제공하기 위한 제공 수단을 구비하고, 상기 화면에 대한 유저가 발행한 선택 지시에 따라, 상기 수신 수단에 의해 수신한 기능 정보 또는 상기 변환 수단에 의해 상기 정의 정보를 변환하여 얻어진 정보를 사용하여 상기 기능의 호출이 행해진다.
본 발명의 또 다른 특징들은, 첨부도면을 참조하여 이하의 예시적 실시예들의 설명으로부터 명백해질 것이다.
도 1은 웹 인텐츠의 기본적인 시스템 구성을 예시하는 도다.
도 2는 웹 인텐츠의 기본적인 동작의 개요를 예시하는 시퀀스 도다.
도 3a 및 3b는 웹 인텐츠의 등록용 마크업 및 웹 인텐츠의 기본적인 웹 인텐트 처리 요구를 예시하는 도다.
도 4는 로컬 인텐츠의 전체구성을 예시하는 도다.
도 5는 로컬 인텐츠의 기본적인 동작의 개요를 예시하는 시퀀스 도다.
도 6a 및 6b는 로컬 인텐츠의 등록용 마크업 및 로컬 인텐츠의 기본적인 로컬 인텐트 처리 요구를 예시하는 도다.
도 7은 본 발명의 예시적 실시예에 따른 시스템 구성도다.
도 8은 정보 처리 단말의 하드웨어 구성을 예시하는 도다.
도 9a 및 9b는 서버 및 정보 처리 단말의 소프트웨어 구성을 각각 예시하는 도다.
도 10a, 10b, 10c 및 10d는 제1 예시적 실시예에 따른 테이블 구성을 예시하는 도다.
도 11은 제1 예시적 실시예에 따른 프록시 어플리케이션의 인스톨시에 행해진 동작을 예시하는 시퀀스 도다.
도 12는 제1 예시적 실시예에 따른 클라이언트와 연계처 어플리케이션의 연계를 행할 때 행해진 동작을 예시하는 시퀀스 도다.
도 13a 및 13b는 제1 예시적 실시예에 따른 정보 처리 단말의 유저 인터페이스(UI)를 예시하는 도다.
도 14a 및 14b는 제2 예시적 실시예에 따른 프록시 어플리케이션의 매니페스트 파일과 소스 코드를 예시하는 도다.
도 15a, 15b 및 15c는 제3 예시적 실시예에 따른 테이블 구성을 예시하는 도다.
도 16은 제3 예시적 실시예에 따른 프록시 어플리케이션의 인스톨시에 행해진 동작을 예시하는 시퀀스 도다.
도 17은 제3 예시적 실시예에 따른 클라이언트와 연계처 어플리케이션이 연계를 행할 때 행해진 동작을 예시하는 시퀀스 도다.
도 18a 및 18b는 제3 예시적 실시예에 따른 정보 처리 단말의 UI를 예시하는 도다.
도 19는 제4 예시적 실시예에 따른 프록시 어플리케이션의 매니페스트 파일을 예시하는 도다.
도 20은 제4 예시적 실시예에 따른 정보 처리 단말의 유저 인터페이스(UI)를 예시하는 도다.
이하, 본 발명의 여러 가지의 예시적 실시예, 특징 및 국면을 도면을 참조하여 상세히 설명한다.
<웹 인텐츠의 기본적인 구조>
우선, 전용의 응용 프로그래밍 인터페이스(API)를 사용하지 않고 임의의 웹 서비스(또는, 웹 어플리케이션)와 연계하기 위한 구조의 일례인 웹 인텐츠에 관한 기본적인 구조에 대해서 도 1 내지 도 3a를 참조하여 설명한다. 본 발명의 예시적 실시예에서는 구체적인 예로서 웹 인텐츠를 들지만, 임의의 웹 서비스(또는, 웹 어플리케이션)와 연계하는 기술로서, 다른 같은 구조를 적용하여도 된다.
도 1은, 웹 인텐츠의 전체구성을 도시한 도면이다.
도 1을 참조하면, 웹 인텐츠 서비스(이하, 간단히 "서비스"라고 함)(103)는, 웹 인텐츠 기술을 이용해서 서비스나 기능을 제공한다. 웹 인텐츠 클라이언트(이하, 간단히 "클라이언트"라고 함)(101)는, 그 서비스(103)를 이용한다. 유저 에이전트(UA)(106)는, 클라이언트(101)로부터의 요구를 서비스(103)에 건네 주고, 서비스(103)로부터의 결과를 클라이언트(101)에 건네주는 역할을 한다. UA(106)는, 클라이언트(101)와 서비스(103)의 사이에서 요구를 실행하고, 데이터를 교환하기 위한 중계 기능이라고 할 수 있다. 더욱이, UA(106)는, 서비스(103)의 제공 기능을 호출하기 위한 정보인 웹 인텐트를 UA(106)에 등록되게 한다.
본 구조에 있어서는, 예를 들면, 클라이언트(101)는 데이터를 관리하고, 서비스를 호출하는 버튼이 배치된 웹 사이트다. UA(106)는 상기 웹 사이트를 표시하는 웹 브라우저이다. 서비스(103)는, UA(106)를 통해 클라이언트(101)가 관리하는 데이터를 접수하고, 처리하는 클라이언트(101)의 연계처인 웹 사이트다.
예를 들면, 본 구조를 소셜 네트워킹 서비스(SNS)에 적용하는 경우에는, 서비스(103)는 클라이언트에서 관리하는 사진이나 코멘트를 수신해서 열람 사이트를 구성하는 투고처 서비스다. SNS서비스의 "좋네요", "체크" 및 "셰어" 등의 소셜 버튼을 웹 인텐츠의 구조에 비유하면, 클라이언트(101)는 버튼을 배치하고 있는 사이트이고, UA(106)는 웹 브라우저이고, 서비스(103)는 "좋네요"등의 포스트를 전달하는 투고처 서비스다. 서비스(103)가 서비스를 제공할 때, 유저 인증이나 유저 조작이 필요할 경우, UA(106)상에서 유저가 조작을 행한다.
UA(106)는, 후술하는 서비스와 연계하기 위한 기능을 갖는 것이라면, 웹 브라우저이외에도, 정보 처리 단말에서 동작하는 오퍼레이팅 시스템(OS)이나 어플리케이션등으로 실현하는 것도 가능하다. 정보 처리 단말의 예로서는, 퍼스널 컴퓨터, 스마트 폰, 타블렛형 컴퓨터 및 카 네비게이션이 있다.
또한, 서비스(103)는, 서비스 제공자일 수 있고, 그 예는, 전술한 투고처 서비스와 같은, 인터넷상의 서비스 제공자이외에도, 정보 처리 단말이 내장하는 카메라, 프린터, 스캐너등의 디바이스를 포함한다. 또한, 그 서비스(103)의 예들은, 네트워크를 거쳐 접속되는 프린터, 스캐너, 네트워크 카메라등의 주변기기와, 냉장고와 텔레비전 등의 가전제품을 포함한다. 클라이언트(101), UA(106) 및 서비스(103)의 임의의 조합이, 동일 시스템내에서 가동할 수 있다. 구체적으로는, 웹브라우저의 동등한 기능을 갖는 문서편집 어플리케이션은, 클라이언트(101)와 UA(106)를 포함하는 구성으로서 동작할 수 있다. 또한, 클라이언트(101), UA(106) 및 서비스(103) 모두는, 같은 장치상에서 동작할 수도 있다.
도 2는, 웹 인텐츠를 이용한 서비스 제공에 관한 기본동작을 설명하기 위한 시퀀스 도다. 본 시퀀스 도는, 단계S201∼단계S207을 포함하는 서비스 등록부와, 단계S208∼단계S222를 포함하는 서비스 실행부로 이루어진다.
우선, 서비스 등록부에 관하여 설명한다.
단계S201에서, UA(106)는, 유저의 조작에 따라 서비스(103)에 액세스한다. 단계S202에서, 서비스(103)는, 서비스(103)가 제공하는 기능을 UA(106)에 등록하게 하기 위한 등록용 마크업을 포함하는 하이퍼텍스트 마크업 언어(HTML) 응답을 작성한다. 단계S203에서, 서비스(103)는, UA(106)에 HTML을 회답한다.
도 3a는, 단계S203에서 서비스(103)로부터 UA(106)에 송신된 HTML문서를 예시하는 도다. 이하, 도 3a에 나타낸 예를 참조하여, 서비스(103)로부터 UA(106)에 송신되는 HTML문서(300)의 내용에 관하여 설명한다.
<intent>태그에는, 제공 기능을 특정하고, 서비스(103)가 제공하는 기능을 호출하기 위한 기능 정보가 기재되어 있다. action속성은, 제공 기능의 분류 정보(카테고리)를 나타낸다. 달리 말하면, 그 action 속성은, 제공 기능이 어떤 기능 또는 어떤 서비스를 제공하는 것일지의 분류 정보를 나타낸다. 제공 기능의 분류 정보의 예는, 데이터를 공유하는 기능에 대응하는 분류 정보 "Share", 데이터를 편집하는 기능에 대응하는 분류 정보 "Edit", 데이터를 열람하는 기능에 대응하는 분류 정보 "View", 데이터를 취득하는 기능에 대응하는 분류 정보 "Pick", 및 데이터를 보존하는 기능에 대응하는 분류 정보 "Save"를 포함한다. 다시 말해, 상기 기능 정보에는, 예를 들면 Share, Edit, View, Pick 및 Save 중 어느 하나의 분류 정보가 기재되어 있다.
type속성은, 제공 기능을 취급할 수 있는 데이터의 종류를 나타낸다. 달리 말하면, type속성은, action속성에 대하여 취급할 수 있는 데이터형을 나타낸다. href속성은, 제공 기능의 접속처(Uniform Resource Locator(URL))를 나타낸다. title속성은, 제공 기능의 타이틀을 나타낸다. disposition속성은, 호출된 제공 기능이 어떻게 표시되는지를 나타낸다.
도 3a에 나타낸 예에서는, 제공 기능의 카테고리가 "share"이며, 취급할 수 있는 데이터의 종류가 "모든 포맷(*)의 화상 데이터"이며, 접속처는 "share.html"이다. 또한, 타이틀은 "Share image using e-mail"이다. 한층 더, 본 예는, 이 제공 기능이 UA(106)를 거쳐 별개의 윈도우에 표시되는 것을 보이고 있다.
단계S204에서, UA(106)는, 상기의 HTML응답을 수신해 해석한다. 단계S205에서, UA(106)는, UA(106)가 웹 브라우저이면, 제공 기능 등록 화면, 예를 들면, 팝업 윈도우를 표시시켜, 서비스(103)의 제공기능을 UA(106)에 등록할 것인지를 판정하도록 유저에 촉구한다. 단계S206에서, 유저가 이 서비스(103)의 제공 기능을 UA(106)에 등록한다고 결정하였는지를 판정한다. 유저가 상기 제공 기능을 웹 인텐츠로서 등록한다고 결정하였으면(단계S206에서 YES), 단계S207에서, UA(106)는, 상기 단계S204에서 수신한 정보를 UA(106)에 기억하는 등록 처리를 행한다. 보다 구체적으로는, UA(106)는, 상기 단계S204에서 수신한 정보를 UA(106)가 동작하는 정보 처리 단말의 기억영역에 기억하여서, 그 정보를 UA(106)에 웹 인텐츠로서 등록한다. 한편, UA(106)는, 유저가 상기 제공 기능을 웹 인텐츠로서 등록하지 않았다고 결정하였으면(단계S206에서 NO), 웹 인텐츠의 등록을 행하지 않는다.
다음에, 서비스 실행부에 관하여 설명한다.
단계S208에서, UA(106)는, 유저의 조작에 따라 클라이언트(101)에 액세스한다. 단계S209에서, 클라이언트(101)는, 클라이언트(101)가 서비스(103)의 제공 기능(웹 인텐트)을 이용하려고 하는 것을 나타내는 정보가 기재된 HTML문서를 작성한다. 단계S210에서, 클라이언트(101)는 UA(106)에 HTML문서를 송신한다. 예를 들면, 클라이언트(101)로서의 웹 사이트에서, 화상과 "공유"버튼이 표시될 경우에, 상기 웹 사이트는, 웹 인텐트의 처리 요구인 도 3b에 나타낸 바와 같은 ECMAScript를 포함하는 HTML문서를 UA(106)에 송신한다.
도 3b는, 단계S210에서 클라이언트(101)로부터 UA(106)에 송신되는 HTML문서를 예시하는 도다. 이하, 도 3b에 나타낸 예를 참조하여, 클라이언트(101)로부터 UA(106)에 송신되는 HTML문서의 내용에 관하여 설명한다.
ECMAScript는, HTML내의 ID "share-photo"를 갖는 버튼이 클릭되면, 지정된 무명함수를 실행하는 것을 가리킨다. 무명함수는, 우선, 신규의 인텐트 오브젝트를 작성하고, 이 오브젝트를 인수로서 사용한 startActivity()함수를 호출한다. 이 함수를 실행하면, UA(106)는 UA(106) 자신을 사용하여서 등록된 웹 인텐츠중에서, 지정된 웹 인텐트 오브젝트의 action과 type이 일치하는 웹 인텐츠를 추출하고, 그 추출된 웹 인텐츠의 일람을 표시시킴으로써, 유저에게 선택을 촉구한다. 또한, UA(106)는, 무명함수내에서 호출하고 있는 getImageFrom()함수를 실행하여, 클라이언트(101)에 기억된 화상 데이터를 취득한다.
단계S211에서, UA(106)는, 클라이언트(101)로부터 송신되는 HTML문서를 수신하고, 그 HTML문서에 근거하는 화면을 표시한다. 단계S212에서, UA(106)는, 유저에 의한 화면상의 "공유"버튼의 가압을 검출하면, UA(106)는, 상기한 바와 같이 웹 인텐츠 기동용의 ECMAScript를 실행하고, 클라이언트(101)에 대하여 화상 데이터 취득 요구를 발행한다. 단계S213에서, 상기 단계S212에서 발행된 화상 데이터 취득 요구를 수신하면, 클라이언트(101)는, 화상 데이터를 준비한다. 단계S214에서, 클라이언트(101)는, 상기 준비한 화상 데이터를 UA(106)에 송신한다. 그리고, UA(106)는, 클라이언트(101)로부터 송신된 화상 데이터를 수신한다.
그리고, UA(106)는, 상기 단계S212에서의 "공유"버튼 가압에 의해, 단계S215에서, UA(106) 자신에 웹 인텐츠가 등록되어 있는지를 판정한다.UA(106)에 웹 인텐츠가 등록되어 있는 경우(단계S215에서 YES), 단계S216에서, UA(106)는, UA(106)에 등록된 웹 인텐츠의 일람을 표시한다. UA(106)에 제공 기능을 나타내는 웹 인텐츠가 등록되지 않고 있는 경우에(단계S215에서 NO), 단계S221의 처리로 진행된다. 단계S221에서, UA(106)는, 처리가 실패한 것을 나타내는 메시지를 클라이언트(101)에 송신한다.
UA(106)는, 웹 인텐츠의 일람으로부터 유저가 서비스(103)의 제공 기능을 나타내는 웹 인텐트를 선택한 것을 검출하면, 단계S217에서, 상기 선택된 제공 기능을 제공하는 서비스(103)에 하이퍼텍스트 전송 프로토콜(HTTP)요구(웹 인텐트 처리 요구)를 송신한다. 그 때, UA(106)는, 송신 데이터에, 도 3b에 나타낸 ECMAScript가 작성한 웹 인텐트 오브젝트의 내용을 포함시킨다.
단계S218에서, 서비스(103)는, UA(106)로부터 수신한 HTTP요구(웹 인텐트 처리 요구)로부터 웹 인텐트 오브젝트를 추출하고, UA(106)를 통해 유저와 상호작용하면서, 선택된 제공 기능(이 경우에는 클라이언트(101)에 속하는 화상 데이터의 "공유")의 이용을 실현한다.
서비스(103)는, 제공 기능에 관한 처리가 종료하면, 단계S219에서, 처리 결과를 클라이언트(101)에 송신하는 ECMAScript를 포함하는 응답을 UA(106)에 송신한다. 단계S220에서, UA(106)는, 상기 응답에 포함된 ECMAScript를 실행하고, 상기 단계S211에서 얻어진 startActivity()함수의 인수에 의해 지정된 콜백(callback) 함수onSuccess()를 호출한다. 단계S221에서, UA(106)는, 콜백 함수onSuccess()에 따라 클라이언트(101)에 처리 결과를 송신한다. 최후에, 단계S222에서, 클라이언트(101)는, 상기 처리 결과를 수신한다.
여기에서, 도 2에 나타낸 시퀀스에서, 웹 메일을 이용하는 예에 관하여 설명한다. 우선, 유저는 웹 브라우저(UA(106))로, 사진 데이터를 관리하는 웹 스토리지(클라이언트(101))의 웹 인텐츠의 호출 버튼이 제공된 사이트에 방문해, 해당 버튼을 누른다. 그 후, 웹 브라우저(UA(106))가 등록 서비스 일람을 포함하는 팝업 윈도우를 표시한다. 유저가 서비스로서 웹 메일 기능을 선택하면, 상기 웹 메일 기능을 제공하는 사이트가 별개의 윈도우에 표시되어, 처리 결과로서, 그 윈도우상에서는 사진 데이터를 첨부한 신규 메일이 작성된다. 이상과 같이, 웹 인텐트 처리 요구로부터 웹 인텐트 오브젝트를 추출하고, 해석해서 처리하는 동작을, 이후의 설명에서는 "웹 인텐트를 처리한다"고 한다.
이상의 처리에 의해, 클라이언트(101)는, UA(106)를 통하여, 서비스(103)가 제공하는 웹 인텐츠의 기능(이 예에서는 화상 데이터의 "공유")을 호출하는 것이 가능해진다.
<모바일 단말내에서의 어플리케이션끼리의 연계에 관한 기본적인 구조>
다음에, 도 4 및 도 5를 참조하여, 정보 처리 단말의 일례인 모바일 단말내에서 동작하는 어플리케이션끼리의 연계에 관한 기본적인 구조(scheme)에 관하여 설명한다. 본 예시적 실시예에서, 모바일 단말내에서는 오퍼레이팅 시스템으로서 Android(등록상표)등이 동작하는 경우의 예를 설명한다.
Android(등록상표) 오퍼레이팅 시스템(OS)에서는, 인텐츠를 사용하여, 복수의 어플리케이션의 사이에서 데이터를 주고받는 등의 연계를 행한다. 여기에서, Android에 있어서의 인텐츠란, 어플리케이션끼리의 연계시에 서비스의 호출에 사용하는 등록 정보나 그 등록 정보를 사용한 구조를 나타낸다. 본 명세서의 이후의 설명에서는, 웹 인텐츠와 구별하기 위해서, Android등의 OS가 실행하는 단말내에서 동작하는 다른 어플리케이션들의 기능의 호출을 위해 사용된 등록 정보의 일례인 인텐츠는, "로컬 인텐츠"를 나타낸다. 또한, 본 발명은, 상술한 것과 같이 단말내에서 동작하는 어플리케이션간에 데이터를 주고받거나 서비스의 연계를 실현하기 위한 같은 구조를 가지고 있으면, Android이외의 OS가 동작하는 경우에도 적용할 수 있다.
도 4는, 로컬 인텐츠의 전체구성을 나타낸 도면이다.
도 4를 참조하면, 정보 처리 단말(102)에서, 연계처 어플리케이션(503)은, 로컬 인텐츠 기술을 이용해서 기능을 제공한다. 연계원 어플리케이션(501)은, 상기 연계처 어플리케이션(503)의 기능을 이용한다. 제어부(502)는, 연계원 어플리케이션(501)으로부터의 요구를 연계처 어플리케이션(503)에 건네 주고, 연계처 어플리케이션(503)으로부터의 결과를 연계원 어플리케이션(501)에 건네준다. 제어부(502)는, 예를 들면 OS에 의해 실현될 수 있다.
도 5는, 로컬 인텐츠를 이용한 기능 제공에 관한 기본동작을 설명하기 위한 시퀀스 도다. 본 시퀀스 도는, 단계S601 및 S602를 포함하는 어플리케이션 등록부와, 단계S603∼단계S612를 포함하는 어플리케이션 실행부로 이루어진다.
우선, 어플리케이션 등록부에 관하여 설명한다.
유저 조작 등에 의해 정보 처리 단말(102)에 인스톨된 후, 연계처 어플리케이션(503)은, 단계S601에서, 제어부(502)에, 연계처 어플리케이션(503)이 제공하는 기능의 정보를 송부한다. 제어부(502)는, 상기 연계처 어플리케이션(503)으로부터 정보를 수신하고, 단계S602에서, 상기 연계처 어플리케이션(503)이 제공하는 기능의 정보를 제어부(502)에 등록한다.
도 6a는, 연계처 어플리케이션(503)이 인스톨된 후에 연계처 어플리케이션(503)이 제공하는 기능을 제어부(502)에 등록하기 위한 매니페스트 파일(700)의 일부를 예시하는 도다.
매니페스트 파일(700)에는, <application>태그가 기록되어 있다. <application>태그에는, 연계처 어플리케이션(503)이 제공하는 기능의 정의(definition) 정보를 기재한다. <activity>태그에는, 연계처 어플리케이션(503)이 제공하는 1개의 기능에 관한 정보를 기재한다. 연계처 어플리케이션(503)이 복수의 기능을 제공하는 경우에는, 제공된 기능의 수에 해당하는 <activity>태그의 수를, 매니페스트 파일(700)에 기록한다.
<intent-filter>태그에는, 본 기능이 어떤 로컬 인텐츠의 요구를 접수할 수 있고, 그 기능이 어떤 데이터를 취급할 수 있는지를 제어부(502)에 알리기 위한 정보를, 기재한다. 보다 구체적으로는, <intent-filter>태그내에는, <action>, <category>, <data>태그를 기록한다.
<action>태그는, 본 기능이 어떤 로컬 인텐츠의 요구를 접수할 수 있는지를 나타낸다. <category>태그는, 본 기능의 종류를 의미하는 부가적인 정보를 나타낸다. <data>태그는, 본 기능이 취급하는 것이 가능한 데이터의 종류를 나타낸다. 달리 말하면, 그 <data>태그는, <action>태그의 내용에 대하여 취급할 수 있는 데이터의 종류를 나타낸다. 도 6a에 나타낸 예는, "activity"의 이름이 "SendActivity"인 기능이, 데이터를 송부하기(intent.action.SEND) 위한 로컬 인텐트의 요구를 접수하는 것을 나타낸다. 또한, <data>태그의 기재는, 취급할 수 있는 데이터의 종류가 모든 포맷(*)의 화상 데이터인 것을 나타낸다.
다음에, 어플리케이션 실행부에 관하여 설명한다.
단계S603에서, 연계원 어플리케이션(501)은, 버튼 가압등의 유저 조작을 접수하면, 다른 어플리케이션과 연계하기 위해서, 제어부(502)에 대하여 어플리케이션 연계 처리 요구로서, 로컬 인텐트의 처리 요구를 송부한다. 단계S604에서, 제어부(502)는, 상기 단계S603에서 송부된 상기 요구를 수신한다. 단계S605에서, 제어부(502)는, 연계원 어플리케이션(501)과 연계가능한 어플리케이션의 일람을 표시한다. 여기에서, 단계S603에서 연계원 어플리케이션(501)이 버튼 가압을 접수하는데 사용된 소스 코드의 예, 및 단계S603, S604의 동작에 대해서, 도 6b를 참조하여 상세하게 설명한다.
도 6b는, 단계S603에서 연계원 어플리케이션(501)이 버튼 가압을 접수하는데 사용된 소스 코드(800)의 일부를 예시하는 도다.
소스 코드(800)는, onClick()과 onActivityResult()의 2개의 함수로 이루어진다. onClick()함수는, 연계원 어플리케이션(501)이 버튼 가압을 접수했을 때에 실행하는 함수다. onActivityResult()함수는, 연계원 어플리케이션(501)이 제어부(502)로부터 로컬 인텐트의 처리 요구에 따라 얻어진 결과를 수신했을 때에 실행하는 함수다.
연계원 어플리케이션(501)은, 유저 인터페이스(UI)에 표시된 버튼이 눌려질 때, onClick()함수를 실행한다. 연계원 어플리케이션(501)은, onClick()함수에서는, 신규의 로컬 인텐트 오브젝트를 작성하고, 이것을 인수로서 사용해서, 제어부(502)의 startActivityForResult()함수를 호출한다(단계S603). 이 startActivityForResult()함수가 실행된 후, 제어부(502)는 어플리케이션 연계 처리 요구로서, 로컬 인텐트의 처리 결과를 수신한다(단계S604). 다음에, 제어부(502)는, 제어부(502)에 등록된 제공 기능 중에서, 지정된 로컬 인텐트의 Action과 Type가 일치하는 제공 기능을 제공하는 어플리케이션을 추출하여, 그 추출된 어플리케이션의 일람을 표시한다. 그 후에, 제어부(502)는, 유저에 의해 만들어진 연계처 어플리케이션의 선택을 접수한다(단계S605). 도 6b에 나타낸 예에서, Action이 ACTION_SEND이며, 모든 포맷(*)의 화상 데이터를 처리가능한 어플리케이션의 일람이 표시된다. 따라서, 연계처 어플리케이션(503)도 일람 표시된다.
다시, 도 5의 설명으로 돌아간다.
유저에 의해 일람으로부터 연계처 어플리케이션(503)이 선택되면, 단계S606에서, 제어부(502)는, 선택된 연계처 어플리케이션(503)에 어플리케이션 처리 요구를 송부한다. 더 구체적으로는, 제어부(502)는 선택된 연계처 어플리케이션(503)에 로컬 인텐트의 처리 요구를 건네 준다. 이 때, 제어부(502)는, 상기 로컬 인텐트 처리 요구에, 로컬 인텐트 오브젝트의 내용을 포함시킨다.
단계S607에서, 연계처 어플리케이션(503)은, 로컬 인텐트의 처리 요구를 수신한다. 단계S608에서, 연계처 어플리케이션(503)은, 상기 단계S607에서 수신한 로컬 인텐트의 처리 요구로부터 로컬 인텐트의 오브젝트를 추출하고, 제공하는 기능(연계원 어플리케이션(501)이 요구한 기능)을 실현한다. 예를 들면, 연계처 어플리케이션(503)은, 로컬 인텐트의 오브젝트로부터 화상 데이터를 추출하고, 연계처 어플리케이션(503) 자신이 관리하는 영역에 화상 데이터를 보존한다. 이상과 같이, 로컬 인텐트 처리 요구로부터 로컬 인텐트 오브젝트를 추출하고, 해석해서 처리하는 동작을, 이후의 설명에서는 "로컬 인텐트를 처리한다"고 한다.
연계처 어플리케이션(503)은, 로컬 인텐트의 처리가 종료하면, 단계S609에서, 처리 결과를 제어부(502)에 송부한다. 단계S610에서, 제어부(502)는, 상기 처리 결과를 수신한다. 단계S611에서, 제어부(502)는, 연계원 어플리케이션(501)에 처리 결과를 송부하기 위해서, 상기 콜백 함수onActivityResult()을 호출한다. 연계원 어플리케이션(501)은, 단계S612에서, 상기 처리 결과를 수신한다.
이상의 처리에 의해, 연계원 어플리케이션(501)은, 제어부(502)를 통하여, 연계처 어플리케이션(503)이 제공하는 기능을 호출하는 것이 가능해진다.
<본 발명의 예시적 실시예에 있어서의 시스템 구성>
도 7은, 본 발명의 예시적 실시예에 따라 웹 인텐츠의 구조를 적용한 네트워크 시스템의 구성 예를 나타낸 도다.
도 7을 참조하면, 정보 처리 단말(102)상에서는, 웹 인텐츠의 유저 에이전트(UA)로서 기능하는 웹 브라우저(106), 제어부(502) 및 연계처 어플리케이션(503)이 동작한다. 또한, 정보 처리 단말(102)상에서는, 후술하는 도 9b에 나타낸 프록시 어플리케이션(901)도 동작한다. 서버(104)상에서는, 웹 인텐츠의 클라이언트(101)가 동작한다.
정보 처리 단말(102) 및 서버(104)는, 네트워크(105)를 통해서 서로 통신가능하다. 네트워크(105)는, 근거리 통신망(LAN), 인터넷 또는 그 조합일 수 있다. 그 네트워크(105)의 접속 구성은, 유선이나 무선이어도 된다.
<본 예시적 실시예에 따른 정보 처리 단말(102)의 하드웨어 구성 예>
도 8은, UA(106), 연계처 어플리케이션(503) 및 프록시 어플리케이션(901)으로서 기능하는 프로그램이 실행되는 정보 처리 단말(102)의 하드웨어 구성을 나타내는 블록도다. 또한, 클라이언트(101)로서 기능하는 프로그램(웹 사이트등)이 동작하는 서버(104)도 같은 구성을 취할 수 있다.
도 8을 참조하면, 정보 처리 단말(102)은, 중앙처리장치(CPU)(1002), 랜덤 액세스 메모리(RAM)(1003), 판독전용 메모리(ROM)(1004) 및 외부기억장치(1009)를 구비한다. CPU(1002)는, ROM(1004)과 외부기억장치(1009)에 기억된 프로그램, 또는 LAN이나 인터넷등의 네트워크(105)에서 다운로드한 프로그램을 실행하고, 시스템 버스(1011)에 접속된 각 디바이스를 총괄적으로 제어한다.
RAM(1003)은, CPU(1002)의 주메모리 혹은 워크 에어리어로서 기능한다. 외부기억장치(1009)는, 하드 디스크(HD) 또는 메모리카드(MC)로 이루어진다. 외부기억장치(1009)는, 부트 프로그램, 오퍼레이팅 시스템, 인증 서버 및 인증 클라이언트를 포함하는 각종의 어플리케이션, 데이터베이스 데이터, 및 유저 파일들을 기억한다.
키보드 콘트롤러(KBDC)(1006)는, 키보드(KBD)(1005)나 (도면에 나타나 있지 않은) 포인팅 디바이스로부터의 입력 정보를 CPU(1002)에 보낸다. 정보 처리 단말(102)이 모바일 단말의 경우, 키보드(1005)는 소프트웨어로 실현될 수 있는 것이 일반적이다.
비디오 콘트롤러(VC)(1008)는, 음극선관(CRT)이나 액정표시장치(LCD)로 이루어진 표시장치(1007)의 표시동작을 제어한다. 디스크 콘트롤러(1010)(DKC)는, 외부기억장치(1009)에의 액세스를 제어한다. 정보 처리 단말(102)은, 통신 콘트롤러(COMM I/F)(1012)를 거쳐서 네트워크(105)에 접속된다.
<본 예시적 실시예에 따른 서버(104)의 소프트웨어 구성 예>
도 9a는, 서버(104)의 소프트웨어(처리부)의 구성의 일례를 나타낸 도면이다.
서버(104)에 있어서, 클라이언트(101) 및 각 처리부는, 서버(104)의 외부기억장치(1009)에 보존된 파일들로서 존재한다. 이 파일들은, 실행시에, 상기 OS나 그 각 처리부를 이용하는 다른 처리부(서버(104)의 CPU(1002))에 의해, 서버(104)의 RAM(1003)에 로드되고 나서 실행되는 프로그램 모듈이다.
클라이언트(101)는, 예를 들면 화상 데이터나 문서 데이터의 보관등의 스토리지 서비스를 제공하는 어플리케이션이다. 클라이언트(101)는, HTTP리퀘스트에 응답해서 처리를 실행하는 프로그램으로서 실현된다. 클라이언트(101)는, 인텐트 처리 요구 작성부(1102), 프리젠테이션부(1103) 및 데이터관리부(1105)를 구비한다.
인텐트 처리 요구 작성부(1102)는, 인텐트의 처리 요구인 ECMAScript를 작성하는 소프트웨어 모듈이다. 프리젠테이션부(1103)는, 통신부(1101)를 통해서 받은 페이지 취득 요구에 따라 HTML문서를 작성하는 소프트웨어 모듈이다. 데이터관리부(1105)는, 프리젠테이션부(1103)로부터의 요구에 따라 클라이언트 데이터 격납부(1106)로부터 또는 이 클라이언트 데이터 격납부에 화상 데이터를 취득하거나 격납하거나 하는 소프트웨어 모듈이다.
클라이언트 데이터 격납부(1106)는, 데이터를 기억 및 관리하고, 다른 처리부로부터의 요구에 따라 데이터의 격납과 취출을 행한다. 클라이언트 데이터 격납부(1106)에서는, 후술하는 도 10a에 나타나 있는 바와 같은, 화상 데이터 관리 테이블(1210) 및 화상 데이터 등의 데이터를 기억하고 관리한다. 또한, 클라이언트 데이터 격납부(1106)는, 다른 기기상에 위치되어도 된다.
통신부(1101)는, 외부기기로부터의 HTTP리퀘스트 메시지를 수신하고, 프리젠테이션부(1103)에 그 HTTP리퀘스트 메시지의 내용을 통지하는 소프트웨어 모듈이다. 또한, 통신부(1101)는, 프리젠테이션부(1103)로부터의 요구에 따라, HTTP의 응답 메시지를 외부기기에 송신한다.
<본 예시적 실시예에 따른 정보 처리 단말(102)의 소프트웨어 구성 예>
도 9b는, 정보 처리 단말(102)의 소프트웨어(처리부)의 구성의 일례를 나타낸 도다.
정보 처리 단말(102)에 있어서, 제어부(502), UA(106), 연계처 어플리케이션(503), 프록시 어플리케이션(901) 및 각 처리부는, 정보 처리 단말(102)의 외부기억장치(1009)에 보존된 파일들로서 존재한다. 이것들 파일은, 실행시에 상기 OS나 그 각 처리부를 이용하는 다른 처리부(정보 처리 단말(102)의 CPU(1002))에 의해 정보 처리 단말(102)의 RAM(1003)에 로드되고 나서 실행되는 프로그램 모듈이다.
제어부(502)에는, 어플리케이션 정보 격납부(1121)가 접속되어 있다.
예를 들면, 도 5에 나타낸 단계S601이 실행된 후, 단계S602에서, 제어부(502)는, 도 6a에 예시한 것과 같은 매니페스트 파일에 기재되어 있는 정보를, 어플리케이션 정보 격납부(1121)에 등록한다. 어플리케이션 정보 격납부(1121)에서는, 후술하는 도 10b에 나타나 있는 바와 같은, 등록된 어플리케이션 관리 테이블(1220)을 기억 관리한다.
UA(106)는, 표시부(1142), 해석부(1143) 및 서비스 관리부(1144)를 구비한다. 표시부(1142)는, HTML문서를 렌더링(rendering) 하는 소프트웨어 모듈이다. 또한, 표시부(1142)는, 다른 처리부로부터의 요구에 따라, 서비스의 선택을 접수하는데 사용된 화면을 표시한다.
해석부(1143)는, HTML문서를 해석하는 소프트웨어 모듈이다. 또한, 해석부(1143)는, 인텐트 처리 요구인 ECMAScript도 해석한다. 서비스 관리부(1144)는, 후술하는 서비스 격납부(1145)로부터 또는 이 서비스 격납부에 등록된 제공 기능을 특정하는 정보를 취득하거나, 격납하거나 하는 소프트웨어 모듈이다. 서비스 격납부(1145)는, 도 1에 나타낸 서비스(103)와 후술하는 프록시 어플리케이션(901)이 제공하는 제공 기능을 포함하는 웹 인텐츠의 제공 기능의 일람을 관리하고, 서비스 관리부(1144)로부터의 요구에 따라 데이터의 격납과 취출을 행한다. 서비스 격납부(1145)는, 도 10c에 나타나 있는 바와 같은, 등록된 웹 인텐츠 서비스 테이블(1230)을 기억하고 관리한다. 또한, 서비스 격납부(1145)는, 정보 처리 단말(102)의 외부기억장치(1009)내에 위치되어도 좋거나, 정보 처리 단말(102)과는 다른 기기상에 위치되어도 좋다.
프록시 어플리케이션(901)은, 프리젠테이션부(1111), 인텐트 변환부(1112), 변환 테이블 관리부(1113) 및 인텐트 처리부(1114)를 구비한다. 프리젠테이션부(1111)는, 연계처 어플리케이션(503)의 정보를 제어부(502)에 등록하기 위한 요구에 따라, HTML문서를 작성하는 소프트웨어 모듈이다. 또한, 연계처 어플리케이션(503)이 제공하는 기능은, UA(106)에 의한 등록 처리를 위한 형식(웹 인텐츠의 형식)에 부합한다.
인텐트 변환부(1112)는, 웹 인텐츠 형식의 정보와 로컬 인텐츠 형식의 정보의 변환을 행하는 소프트웨어 모듈이다. 변환 테이블 관리부(1113)는, 후술하는 변환 테이블 격납부(1115)로부터 또는 이 변환 테이블 격납부에 인텐트 변환부(1112)가 정보의 변환을 행하는데 사용된 변환 테이블을 취득하거나 격납하거나 하는 소프트웨어 모듈이다. 인텐트 처리부(1114)는, 로컬 인텐츠 정보의 취득등, 로컬 인텐츠에 관한 처리를 행하는 소프트웨어 모듈이다.
변환 테이블 격납부(1115)는, 웹 인텐츠 형식의 정보와 로컬 인텐츠 형식의 정보의 변환을 행하는데 사용된 테이블을 관리하고, 변환 테이블 관리부(1113)로부터의 요구에 따라 데이터의 격납과 취출을 행한다. 변환 테이블 격납부(1115)는, 후술하는 도 10d에 나타나 있는 바와 같은, Action변환 테이블(1240), 어플리케이션 정보 변환 테이블(1250) 및 등록된 어플리케이션 관리 테이블(1260)을 기억하고 관리한다. 또한, 변환 테이블 격납부(1115)는, 정보 처리 단말(102)의 외부기억장치(1009)내에 위치되어도 좋거나, 정보 처리 단말(102)과는 다른 기기상에 위치되어도 좋다.
통신부(1150)는, 다른 처리부로부터의 요구에 따라 HTTP의 리퀘스트 메시지를 외부기기나 프록시 어플리케이션(901)에 송신한다. 또한, 통신부(1150)는, 외부기기나 프록시 어플리케이션(901)으로부터의 HTTP응답 메시지를 수신하고, 해석부(1143)에 그 HTTP응답 메시지의 내용을 통지하는 소프트웨어 모듈이다.
도 10a, 10b, 10c 및 10d는, 제1 예시적 실시예에 따른 테이블 구성을 예시하는 도다.
도 10a는, 서버(104)의 클라이언트(101)가 관리하는 화상 데이터 관리 테이블(1210)의 구성의 일례를 나타낸다. 도 10a에 나타낸 테이블 구성은, 어디까지나 일례이며, 다른 테이블 구성이어도 된다.
화상 데이터 관리 테이블(1210)은, 클라이언트(101)가 취급하는 화상 데이터를 관리하는데 사용된 테이블이다. 화상 데이터 관리 테이블(1210)이 관리하는 정보는, "ImageID"와 "File"을 포함한다. "ImageID"는, 클라이언트(101)내에서 각기 특정 데이터를 유일하게 식별하기 위한 식별자(ID)다. "File"은, 각 특정 데이터의 파일명을 나타낸다. 따라서, 화상 데이터 관리 테이블(1210)일 경우에, "image125.jpg"와 "image435.jpg"의 2개의 화상 데이터 파일이 관리된다.
도 10b는, 정보 처리 단말(102)의 제어부(502)가 관리하는 상기 등록된 어플리케이션 관리 테이블(1220)의 구성 예를 나타낸다. 도 10b에 나타낸 테이블 구성은, 어디까지나 일례이며, 다른 테이블 구성이어도 된다.
등록된 어플리케이션 관리 테이블(1220)은, 정보 처리 단말(102)에 등록된 어플리케이션의 제공 기능의 일람을 관리하는데 사용된 테이블이다. 등록된 어플리케이션 관리 테이블(1220)이 관리하는 정보는, "App ID", "application name", "action" 및 "mime(Multipurpose Internet Mail Extensions(MIME) type"을 포함한다. "App ID"는, 제어부(502)내에서 각 어플리케이션의 제공 기능을 유일하게 식별하기 위한 ID다. "application name"은, 각 어플리케이션의 이름을 나타낸다. "action"은, 각 어플리케이션이 제공가능한 기능의 카테고리를 나타낸다. "mime type"은, 각 어플리케이션을 취급할 수 있는 데이터등의 종류를 나타낸다.
도 10c는, 정보 처리 단말(102)의 UA(106)가 관리하는 등록된 웹 인텐츠 서비스 테이블(1230)의 구성의 일례다. 도 10c에 나타낸 테이블 구성은 어디까지나 일례이며, 다른 테이블 구성이어도 된다.
등록된 웹 인텐츠 서비스 테이블(1230)은, UA(106)가 중계할 수 있는 웹 인텐츠의 제공 기능에 관한 정보를 관리하는데 사용된 테이블이다. 등록된 웹 인텐츠 서비스 테이블(1230)로 관리하는 정보는, "ID", "action", "type", "href", "title", "base URL"을 포함한다. 이들 요소는, 도 3a에 나타낸 <intent>태그가 나타내는 정보에 대응한다.
"ID"는, UA(106)내에서 웹 인텐츠의 각 제공 기능을 유일하게 식별하는 ID다. "action"은, 각 제공 기능의 카테고리를 나타낸다. "type"은, 각 제공 기능을 취급할 수 있는 데이터등의 종류를 나타낸다. "href"는, 각 제공 기능의 접속처(URL)를 나타낸다. "title"은, 각 제공 기능의 타이틀을 나타낸다. "base URL"은, 각 제공 기능을 제공하는 사이트의 기준이 되는 URL을 나타낸다.
도 10d는, 정보 처리 단말(102)의 프록시 어플리케이션(901)이 관리하는 테이블들의 구성의 예들을 나타낸 도다. 도 10d에 나타낸 테이블 구성은 일례일 뿐이이며, 다른 테이블 구성이어도 된다.
프록시 어플리케이션(901)은, 액션 변환 테이블(1240), 어플리케이션 정보 변환 테이블(1250), 및 등록된 어플리케이션 관리 테이블(1260)을 관리한다.
액션 변환 테이블(1240)은, 웹 인텐츠의 action과 로컬 인텐츠의 action의 변환 방법을 관리하는데 사용된 테이블이다. 어플리케이션 정보 변환 테이블(1250)은, 정보 처리 단말(102)내의 각 어플리케이션의 정보를 웹 인텐츠 형식의 정보로 변환하여 얻어진 결과를 관리하는데 사용된 테이블이다. 등록된 어플리케이션 관리 테이블 1260은, 도 10b에 나타낸 등록된 어플리케이션 관리 테이블 1220과 같다.
액션 변환 테이블(1240)로 관리하는 정보는, "ID", "Web Intents action", "Local Intents action"을 포함한다. "ID"는, 프록시 어플리케이션(901)내에서 변환 방법을 유일하게 식별하는 ID다. "Web Intents action"은, 웹 인텐츠의 액션 정보를 나타낸다. "Local Intents action"은, 로컬 인텐츠의 액션 정보를 나타낸다.
어플리케이션 정보 변환 테이블(1250)로 관리하는 정보는, "ID"," App ID", "action", "type", "href", "title" 및 "base URL"을 포함한다. "ID"는, 변환된 웹 인텐츠 정보를 유일하게 식별하는 ID다. "App ID"는, 본 어플리케이션 정보 변환 테이블(1250)로 정보 변환되는 각 어플리케이션을 유일하게 식별하는 ID다. 도 10d에 나타낸 경우에서는, 등록된 어플리케이션 관리 테이블(1260)의 "App ID"에 대응한 ID가 어플리케이션 정보 변환 테이블(1250)의 "App ID"에 격납되어 있다. 등록된 어플리케이션 관리 테이블(1260)의 "application name", "action" 및 "mime type"으로부터 생성된 정보는, 어플리케이션 정보 변환 테이블(1250)의 "action", "type", "href", "title" 및 "base URL"에 격납되어 있다. 이러한 정보의 생성 규칙은 후술한다.
상기 등록된 어플리케이션 관리 테이블 1260은, 도 10b에 나타낸 상기 등록된 어플리케이션 관리 테이블 1220과 같은 테이블이기 때문에, 그 설명을 생략한다.
다음에, 도 11 및 도 12를 참조하여, 클라이언트(101)와, 정보 처리 단말(102)내에 포함된 연계처 어플리케이션(503)이 서로 연계할 때 행해진 동작에 관하여 설명한다.
우선, 도 11의 시퀀스 도를 참조하여, 정보 처리 단말(102)에 프록시 어플리케이션(901)이 인스톨되어, UA(106)에 웹 인텐츠의 정보가 격납될 때까지 행해진 동작에 관하여 설명한다.
도 11은, 정보 처리 단말(102)에 프록시 어플리케이션(901)이 인스톨되어, UA(106)에 웹 인텐츠의 정보가 격납될 때까지 행해진 동작을 나타내는 시퀀스 도다. 여기에서는, 연계처 어플리케이션(503)의 정보는, 도 5에 나타낸 단계S601 및 S602와 같은 방식으로 제어부(502)에 사전등록되고, 등록된 어플리케이션 관리 테이블(1220)로 관리되어 있는 것으로 한다.
단계S1301에서는, 유저 조작 등에 따라, 제어부(502)가, 정보 처리 단말(102)에 프록시 어플리케이션(901)을 인스톨한다. 파일 카피 등, 인스톨에 관련된 처리가 완료하고 프록시 어플리케이션(901)이 기동된 후, 단계S1302에서, 프록시 어플리케이션(901)은, 제어부(502)에의 어플리케이션 정보의 등록등, 인스톨에 관련된 처리를 실행한다.
단계S1303에서는, 프록시 어플리케이션(901)의 인텐트 처리부(1114)는, 제어부(502)에 대하여, 등록된 어플리케이션 정보의 취득 요구를 송부한다. 예를 들면, Android OS에서는, 인텐트 처리부(1114)는, PackageManager급의 getInstalledApplications()등, 각종 함수를 호출함으로써 그 취득 요구를 발행할 수 있다.
단계S1304에서, 제어부(502)는, 상기 단계S1303에서 송부된 상기 취득 요구를 수신하고, 어플리케이션 정보 격납부(1121)로부터 도 10b에 나타낸 바와 같은 등록된 어플리케이션 관리 테이블(1220)을 취득한다. 그 후에, 제어부(502)는, 단계S1305에서, 상기 취득한 등록된 어플리케이션 관리 테이블(1220)의 정보를, 등록된 어플리케이션 정보의 수집 결과로서, 프록시 어플리케이션(901)에 송부한다.
단계S1306에서, 프록시 어플리케이션(901)은, 상기 단계S1305에서 송부된 수집 결과를 수신하고, 그 수집 결과의 카피를, 변환 테이블 관리부(1113)를 거쳐 상기 변환 테이블 격납부(1115)내의 등록된 어플리케이션 관리 테이블(1260)에 격납된다.
단계S1307에서, 프록시 어플리케이션(901)은, 등록된 어플리케이션 관리 테이블(1260)과 액션 변환 테이블(1240)을 사용하여 어플리케이션 정보 변환 테이블(1250)을, 변환 테이블 격납부(1115)내에 작성한다.
예를 들면, 어플리케이션 정보 변환 테이블(1250)의 "ID"가 "1"인 엔트리의 정보를 작성할 경우, 프록시 어플리케이션(901)은, 어플리케이션 정보 변환 테이블(1250)의 "App ID"에, 등록된 어플리케이션 관리 테이블(1260)의 "App ID"(본 예에서는 "1")를 격납한다.
프록시 어플리케이션(901)은, 어플리케이션 정보 변환 테이블(1250)의 "action"에, 등록된 어플리케이션 관리 테이블(1260)의 "action"의 값을, 액션 변환 테이블(1240)을 사용해서 변환한 값을 격납한다. 본 예에서는, 등록된 어플리케이션 관리 테이블(1260)의 "action"의 값이 "ACTION_SEND"다. "ACTION_SEND"를 액션 변환 테이블(1240)을 사용해서 변환하면, 어플리케이션 정보 변환 테이블(1250)의 "action"의 값은 "http://Web Intents.org/share"가 된다. 본 예시적 실시예에서는, 이 값을 "share"로서 생략한다.
또한, 프록시 어플리케이션(901)은, 어플리케이션 정보 변환 테이블(1250)의 "type"에, 등록된 어플리케이션 관리 테이블(1260)의 "mime type"의 값을 격납한다. 프록시 어플리케이션(901)은, 어플리케이션 정보 변환 테이블(1250)의 "href"에서, 프록시 어플리케이션(901)이 상대 접속처(URL)로서 식별가능한 접속처를 등록한다. 여기에서는, 프록시 어플리케이션(901)은, 등록된 어플리케이션 관리 테이블(1260)의 "action"의 값으로부터 생성한 문자열(ACTION_SEND.html)을 등록한다.
프록시 어플리케이션(901)은, 어플리케이션 정보 변환 테이블(1250)의 "title"에, 등록된 어플리케이션 관리 테이블(1260)의 "application name"의 값을 격납한다. 프록시 어플리케이션(901)은, 어플리케이션 정보 변환 테이블(1250)의 "base URI"에서, "http://localhost/proxy/"에, 어플리케이션 이름 "aaa App"을 부가한 "http://localhost/proxy/aaa_App"을 등록한다. 여기에서, "http://localhost/proxy/"은, 프록시 어플리케이션(901) 자신의 기준URL이다. 상기 "href"와 "base URI"를 조합함으로써 웹 인텐츠의 공개 웹 페이지를 생성하는 것이 가능해진다.
또한, 상기 예에서는, 어플리케이션 정보 변환 테이블(1250)의 "type"과 "title"에, "mime type", "application name"의 값을 그대로 격납하였지만, 별도로 변환 테이블을 사용하여도 좋다. 또한, 어플리케이션 정보 변환 테이블(1250)의 "href"와 "base URI"에 다른 생성 규칙으로 생성된 값을 등록해도 좋다. 이상과 같이, 프록시 어플리케이션(901)의 인텐트 변환부(1112)는, 정보 처리 단말(102)내의 어플리케이션의 정의 정보에 포함된 분류를, 웹 인텐츠의 기능 정보에 포함된 분류 정보의 형식에 맞춰서 변환한다.
단계S1308에서는, 프록시 어플리케이션(901)의 인텐트 처리부(1114)가 UA(106)를 기동하기 위한 로컬 인텐트의 처리 요구를 작성하여, 제어부(502)에 송부한다. 이때, 인텐트 처리부(1114)는, UA(106)가 액세스하는 URL로서, 프록시 어플리케이션(901)이 공개하는 웹 인텐츠 서비스를 등록하기 위한 웹 페이지의 URL을 지정한다. 여기에서, 그 지정된 URL은, "http://localhost/proxy/"이다.
단계S1309에서, 제어부(502)는, 통신부(1150)를 거쳐, 상기 단계S1308에서 송부된 로컬 인텐트 처리 요구를 수신한다. 단계S1310에서, 제어부(502)는, 상기 단계S1308에서 지정된 URL에 액세스하도록, UA(106)를 기동한다.
UA(106)는, 제어부(502)에 의해 기동된 후, 단계S1311에서, 상기 단계S1310에서 지정된 URL에 대하여, HTTP리퀘스트로서 HTML의 취득 요구를 송신한다. 달리 말하면, UA(106)는, 상기 단계S1308에서 지정된, 프록시 어플리케이션(901)이 공개하는 웹 페이지에 액세스한다. 이 경우에, 보다 구체적으로는, UA(106)로부터의 HTTP리퀘스트는, 통신부(1150)를 거쳐 프록시 어플리케이션(901)에 건넨다.
단계S1312에서, 프록시 어플리케이션(901)은, 공개된 웹 페이지에의 액세스를 검출한다. 그 후, 프록시 어플리케이션(901)의 프리젠테이션부(1111)는, 단계S1313에서, 웹 인텐츠 서비스의 등록용 마크업을 작성한다. 본 예에서 작성하는 웹 인텐츠 서비스의 등록용 마크업은, 상기 단계S1307에서 작성한 어플리케이션 정보 변환 테이블(1250)에 등록되어 있는, 웹 인텐츠 형식의 정보를 등록하는데 사용된다.
단계S1314에서, 프록시 어플리케이션(901)의 프리젠테이션부(1111)는, 상기 단계S1313에서 작성한 등록용 마크업을 포함하는 HTML문서를 HTTP응답으로서, UA(106)에 송부한다. 단계S1315에서, UA(106)가, 상기 단계S1314에서 송부한 HTTP응답을 수신한다. 그리고, 단계S1316에서, UA(106)의 해석부(1143)는, 상기 단계S1315에서 수신한 HTML문서에 포함된 등록용 마크업을 해석하고, 그 웹 인텐츠 서비스를 등록한다. 보다 구체적으로는, 해석부(1143)가 등록용 마크업을 해석하여 웹 인텐츠 서비스를 특정한다. 그 후에, UA(106)의 서비스 관리부(1144)가, 필요한 정보를 서비스 격납부(1145)의 등록된 웹 인텐츠 서비스 테이블(1230)에 등록한다.
상술한 바와 같이, 도 11에 나타낸 본 시퀀스를 실행하여서 등록된 웹 인텐츠 서비스는, 등록된 웹 인텐츠 서비스 테이블(1230)의 "ID"의 값이 "4", "5" 및 "6"의 항목이다.
이상으로 도 11에 나타낸 시퀀스 도를 설명하였다.
다음에, 도 12의 시퀀스 도를 참조하여, 클라이언트(101)와 연계처 어플리케이션(503)이 서로 연계할 때 행해진 동작에 관하여 설명한다.
도 12는, 클라이언트(101)와 연계처 어플리케이션(503)이 서로 연계할 때 행해진 동작에 관하여 설명하는 시퀀스 도다. 도 12에 나타낸 단계S1401∼S1409의 처리는, 도 2에 나타낸 단계S208∼단계S216의 처리와 같다. 이하, 도 13a 및 13b에 나타낸 유저 인터페이스(UI)의 예들을 사용하여, 상기 단계들에 대한 설명을 보충한다. 도 13a 및 13b는, 클라이언트(101)와 연계처 어플리케이션(503)이 서로 연계할 경우에 정보 처리 단말(102)의 표시장치(1007)에 표시된 UI화면을 예시하는 도다.
도 13a는, 단계S1404에서, UA(106)가 클라이언트(101)로부터 수신한 HTML문서를 표시한 UI예다. 도 13a에 나타낸 UI는, 클라이언트(101)가 화상 데이터 파일 "image125.jpg"(1502)을 다른 서비스에 송신하기 위한 UI에 대응한다. 단계S1405에서, 도 13a에 나타낸 UI에 있어서, UA(106)는, "송신한다" 버튼(1501)의 가압을 접수하고, 웹 인텐츠 기동용의 ECMAScript를 실행하여 클라이언트(101)에 대하여 화상 데이터 취득 요구를 발행한다.
여기에서, 도 3b에 나타낸 ECMAScript(400)가 실행되었다고 가정하면, "송신한다" 버튼(1501)의 가압에 따라, "action"이 "http://Web Intents.org/share"인 웹 인텐츠가 실행된다. 단계S1408 및S1409에서, UA(106)는, 클라이언트(101)로부터 화상 데이터 파일 "image125.jpg"을 수신하고, UA(106)자신에 등록되어 있는 웹 인텐츠 서비스의 제공 기능의 일람을 표시한다. 보다 구체적으로는, UA(106)는, 도 10c에 나타낸 등록된 웹 인텐츠 서비스 테이블(1230)에 등록되어 있는 웹 인텐츠 정보로부터, "action"이 "share"인 서비스를 추출하고, 그 추출된 서비스의 일람을 표시한다. 그 추출된 서비스의 일람이 표시된 UI의 일례가 도 13b에 나타내어 있다. 도 13b에 나타낸 예에서는, 선택사항으로서, 서비스 1511∼1514의 일람이 표시되어 있다.
이하, 다시 도 12에 되돌아가서 설명한다.
단계S1410에서는, 도 2의 단계S217과 마찬가지로, UA(106)는, 상기 UI화면에 대한 유저의 선택 지시에 따라, 선택된 제공 기능의 접속처로서 특정된 서비스에 HTTP요구를 송신한다. 이 때, 또한, UA(106)는, 송신 데이터에 도 3b에 나타낸 ECMAScript(400)가 작성한 인텐트 오브젝트의 내용을 포함시키는 점도, 도 2의 단계S217과 같다. 여기에서는, 유저에 의해 프록시 어플리케이션(901)이 제공하는 제공 기능("aaa App" 1513 또는 "bbb App" 1514)이 선택되었다고 가정한다. 이 경우, 프록시 어플리케이션(901)이, 상기 단계S1410에서 송신한 HTTP요구를 수신한다.
단계S1411에서는, 프록시 어플리케이션(901)은, 상기 단계S1410에서 수신한 HTTP요구로부터 웹 인텐트의 오브젝트를 추출하여, 로컬 인텐츠 형식으로 변환한다. 보다 구체적으로는, 프록시 어플리케이션(901)은, 도 10d에 나타낸 액션 변환 테이블(1240)을 사용하면서, 웹 인텐트 오브젝트의 "action"을 로컬 인텐츠의 "action"으로 변환한다. 또한, 프록시 어플리케이션(901)은, 프록시 어플리케이션(901)으로 정해진 규칙에 따라, "type"를 "mime type"으로 변환한다. 마찬가지로, 프록시 어플리케이션(901)은, UA(106)에 의해 호출된 URL로부터 연계처 어플리케이션의 정보를 잘라낸다.
단계S1412에서는, 프록시 어플리케이션(901)은, 상기 단계S1411에서 변환된 정보를 사용하여, 연계원 어플리케이션(501)으로서, 연계처 어플리케이션(503)을 명시적으로 지정하고, 로컬 인텐트 처리 요구를, 제어부(502)에 송부한다(도 5의 단계S603에 대응함). 제어부(502)는, 상기 로컬 인텐트 처리 요구에 근거해 연계처 어플리케이션(503)을 선택하고, 상기 연계처 어플리케이션(503)에 어플리케이션 처리 요구를 송부한다(도 5의 단계S604∼단계S606에 대응함). 연계처 어플리케이션(503)은, 요구된 처리를 실행하고, 처리 결과를, 제어부(502)를 거쳐, 연계원 어플리케이션(501)으로서의 프록시 어플리케이션(901)에 송부한다(도 5의 단계S607∼단계S613에 대응함). 단계S1412는, 도 5에 나타낸 단계S603∼단계S612와 같기 때문에, 그 설명은 생략된다.
다음에, 단계S1413에서, 프록시 어플리케이션(901)은, 연계처 어플리케이션(503)으로부터 수신한 로컬 인텐트 처리의 결과를, 웹 인텐츠 형식의 처리 결과로 변환한다. 보다 구체적으로는, 프록시 어플리케이션(901)의 인텐트 처리부(1114)는, 도 6b에 기재한 콜백 함수onActivityResult()에 의거해 연계처 어플리케이션(503)에서의 로컬 인텐트 처리의 결과(성공/실패)를 수신한다. 다음에, 프록시 어플리케이션(901)의 인텐트 변환부(1112)는, 상기 수신한 처리 결과에 의거하여, 클라이언트(101)에 송신되는 ECMAScript를 포함하는 응답을 작성한다.
다음에, 단계S1414에서, 프록시 어플리케이션(901)은, 서비스(103)로서, 상기 단계S1413에서 작성한 응답을, UA(106)에 회답한다. 단계S1415∼단계S1417은, 도 2에 나타낸 단계S220∼단계S222와 같기 때문에, 그 설명을 생략한다.
이상으로 도 12에 나타낸 시퀀스 도를 설명하였다.
이상으로, 제1 예시적 실시예를 설명하였다.
상술한 바와 같이, 제1 예시적 실시예에서는, 프록시 어플리케이션(901)이, 웹 어플리케이션으로부터 발행된 처리 실행 요구를 정보 처리 단말내의 어플리케이션이 처리가능한 처리 실행 요구로 변환하고, 중계동작을 행한다(또는 인텐트 해석이나 데이터 전송을 행한다). 이에 따라 인터넷상의 웹 어플리케이션(클라이언트(101))으로부터 발행된 처리 요구를, 정보 처리 단말내에 포함된 어플리케이션(연계처 어플리케이션503)으로 처리시킬 수 있다. 다시 말해, 네트워크상의 서비스(인터넷상의 웹 어플리케이션)와 정보 처리 단말내에 포함된 어플리케이션을 용이하게 서로 연계할 수 있다.
상기 제1 예시적 실시예에서는, 프록시 어플리케이션(901)이 인스톨될 때에, 이미 존재하고 있는 어플리케이션의 정보를 UA(106)에 등록하는 예를 설명했다. 제2 예시적 실시예에서는, 프록시 어플리케이션(901)이 인스톨된 후에, 정보 처리 단말(102)에 새롭게 인스톨된 어플리케이션의 정보를, UA(106)에 등록하는 예를 설명한다.
도 14a 및 14b는, 제2 예시적 실시예에 따른 매니페스트 파일 및 프록시 어플리케이션(901)의 소스 코드의 일부를 각각 예시하는 도다.
도 14a는, 제2 예시적 실시예에 따른 프록시 어플리케이션(901)이 갖는 매니페스트 파일(1600)의 일부를 예시한다.
도 14a에 나타나 있는 바와 같이, 프록시 어플리케이션(901)이 갖는 매니페스트 파일(1600)에는, <receiver>태그가 기록되어 있다. 그 <receiver>태그에는, 프록시 어플리케이션(901)이 수신하는 브로드캐스트 인텐트의 정보를 기재한다.
도 14a에 나타낸 예에서는, 프록시 어플리케이션(901)이 수신하는 브로드캐스트 인텐트로서, "PACKAGE_ADDED(새로운 어플리케이션이 정보 처리 단말에 인스톨되었다)"이 기록되어 있다. 브로드캐스트 인텐트는, 정보 처리 단말(102)의 상태에 어떠한 변화가 발생했을 때에, 제어부(502)가 브로드캐스트에 의해 송부하는 인텐트다.
도 14b는, 프록시 어플리케이션(901)의 소스 코드(1700)의 일부를 예시한다.
프록시 어플리케이션(901)의 소스 코드(1700)에는, onReceiver()함수가 기록되어 있다. onReceiver()함수는, 제어부(502)로부터 송부된 브로드캐스트 인텐트를, 프록시 어플리케이션(901)이 수신했을 때에 실행하는 함수다.
프록시 어플리케이션(901)이 인스톨된 후에, 정보 처리 단말(102)에, 다른 어플리케이션이 인스톨되면, 제어부(502)에 의해, 브로드캐스트 인텐트가 송부되어, 상기 onReceiver()함수가 호출된다. 프록시 어플리케이션(901)은, 상기 onReceiver()함수가 호출된 것을 검지하면, 도 11에 나타낸 단계S1303을 실행한다. 다시 말해, 프록시 어플리케이션(901)은, 제어부(502)에 대하여, 등록된 어플리케이션 정보의 취득 요구를 송부한다. 그 결과, UA(106)의 등록된 웹 인텐츠 서비스 테이블(1230)에 상기 어플리케이션의 정보가, 웹 인텐츠의 정보로 변환되고 나서 등록된다(도 11에 나타낸 단계S1304∼단계S1316). 이후의 클라이언트(101)와 연계처 어플리케이션(503)이 서로 연계하는 순서는, 상기 제1 예시적 실시예의 도 12와 같다.
이상으로, 제2 예시적 실시예를 설명하였다.
상술한 바와 같이, 제1 예시적 실시예에서 얻어진 이로운 효과에 더하여, 제2 예시적 실시예에 의해, 프록시 어플리케이션(901)이 인스톨된 후에, 정보 처리 단말(102)에 다른 어플리케이션이 인스톨되었을 경우에도, 클라이언트(101)와 연계처 어플리케이션(503)이 서로 연계하는 것이 가능해진다.
또한, 제1 예시적 실시예 및 제2 예시적 실시예에서는, 정보 처리 단말(102)에 어플리케이션이 인스톨된 시간에, 프록시 어플리케이션(901)이 제어부(502)를 거쳐, 어플리케이션이 제공하는 기능의 정보를 웹 인텐츠의 형식으로 변환하여, UA(106)에 등록하는 예를 설명하였다. 그러나, 제어부(502), 프록시 어플리케이션(901) 또는 UA(106)가 정기적으로 정보 처리 단말(102)안을 검색하고, 상기 정기적인 검색으로 새롭게 등록해야 할 어플리케이션이 제공하는 기능의 정보를 검출한 시간에, 상기 검출된 정보를 웹 인텐츠의 형식으로 변환하여 UA(106)에 등록하여도 좋다. 이와는 달리, 제어부(502), 프록시 어플리케이션(901) 또는 UA(106)는, UA(106)가 기동되었을 때에 새롭게 등록해야 할 어플리케이션이 제공하는 기능의 정보를 검색하고, 상기 검색으로 새롭게 등록해야 할 어플리케이션이 제공하는 기능의 정보를 검출했을 경우에, 상기 검출된 정보를 웹 인텐츠의 형식으로 변환하여 UA(106)에 등록하여도 좋다.
제3 예시적 실시예에서는, UA(106)에 등록하는 서비스의 정보는, 프록시 어플리케이션(901)의 제공 기능의 정보뿐이라고 가정한다. 그리고, 유저가 웹 인텐트의 처리 요구처로서, 프록시 어플리케이션(901)의 제공 기능을 선택했을 때에, 프록시 어플리케이션(901)의 공개 웹 페이지에 연계가능한 어플리케이션을 열거하는 예를 설명한다.
도 15a, 15b 및 15c는, 제3 예시적 실시예에 따른 테이블 구성을 예시하는 도다.
도 15a∼15c는, 도 10b∼10d에서 설명한 테이블에 제3 예시적 실시예에 적합한 데이터를 격납하여서 얻어진 테이블들의 예를 나타낸 것이다.
다음에, 도 16 및 도 17을 참조하여, 제3 예시적 실시예에 있어서의 클라이언트(101)와, 정보 처리 단말(102)이 갖는 연계처 어플리케이션(503)이 서로 연계할 때 행해진 동작에 관하여 설명한다.
우선, 도 16의 시퀀스 도를 참조하여, 정보 처리 단말(102)에 프록시 어플리케이션(901)이 인스톨되어, UA(106)에 프록시 어플리케이션(901)의 웹 인텐츠의 정보가 격납될 때까지 행해진 동작에 관하여 설명한다.
도 16은, 정보 처리 단말(102)에 프록시 어플리케이션(901)이 인스톨되어, UA(106)에 프록시 어플리케이션(901)의 웹 인텐츠의 정보가 격납될 때까지 행해진 동작을 나타내는 시퀀스 도다.
도 11에 나타낸 단계S1301 및 단계S1302와 같은 처리에 따라 프록시 어플리케이션(901)이 인스톨되어 기동되면, 프록시 어플리케이션(901)은, 단계S1901의 처리를 실행한다. 단계S1901에서는, 프록시 어플리케이션(901)은, 도 15c에 나타낸 액션 변환 테이블(1240)을 사용하여서 도 15c에 나타낸 어플리케이션 정보 변환 테이블(1250)을 작성한다.
이때, 프록시 어플리케이션(901)은, 제3 예시적 실시예에서 사용하지 않는 어플리케이션 정보 변환 테이블(1250)의 "App ID"의 열을 빈칸으로 둔다. "action"열에는, 액션 변환 테이블(1240)의 "Web Intents action"열에 격납된 값 중, 다른 값의 카테고리만이 격납된다. 본 예에서는, ID=4 및 ID=6의 "Web Intents action"의 값은, 각각 ID=3 및 ID=5와 동일하기 때문에, 어플리케이션 정보 변환 테이블(1250)의 "action"열에는 격납되지 않는다. 다시 말해, 프록시 어플리케이션(901)은, 연계처 어플리케이션이 제공할 수 있는 모든 기능의 카테고리에 대한 정보를 열거하도록 어플리케이션 정보 변환 테이블(1250)을 작성한다.
"type"열에는, 모든 타입을 의미하는 "*"이 격납된다. "href"의 값의 격납 방법은 단계S1307에서 설명한 방법과 같기 때문에, 그 설명을 생략한다. "title"열에는, 프록시 어플리케이션(901) 자신의 어플리케이션 이름인 "Proxy Application"이 격납되어 있다. "base URI"열에는, 프록시 어플리케이션(901)의 기준URL인 "http://localhost/proxy/"이 격납되어 있다. 상기 "href"와 "base URI"의 값을 조합함으로써, 프록시 어플리케이션(901)의 웹 인텐츠의 공개된 웹 페이지를 생성하는 것이 가능해진다.
단계S1902의 처리는, 도 11에 나타낸 단계S1308∼단계S1316의 처리와 같기 때문에, 그 설명을 생략한다. 또한, 단계S1901을 실행하기 전에, 프록시 어플리케이션(901)은 도 11의 단계S1303∼단계S1306에 나타낸 어플리케이션 정보 수집 처리를 실행하고, 사전에, 도 15c에 나타낸 상기 등록된 어플리케이션 관리 테이블(1260)을 생성해도 된다. 이 경우, 후술하는 도 17에 나타낸 단계S2003의 처리는, 등록된 어플리케이션 관리 테이블(1260)의 값을 갱신하도록 행해진다.
이상으로, 도 16의 시퀀스 도를 설명하였다.
다음에, 도 17의 시퀀스 도를 참조하여, 클라이언트(101)와 연계처 어플리케이션(503)이 서로 연계할 때 행해진 동작에 관하여 설명한다.
도 17은, 제3 예시적 실시예에 따른 클라이언트(101)와 연계처 어플리케이션(503)이 서로 연계할 때 행해진 동작을 예시하는 시퀀스 도다.
단계S2001의 처리는, 도 12에 나타낸 단계S1401∼단계S1409의 처리와 같기 때문에, 그 설명을 생략한다. 여기에서, 클라이언트(101)는, "action"이 "share"인 웹 인텐츠 요구를 발행한다. 이 경우에, UA(106)는, 도 18a에 나타낸 것과 같은 UI를 표시하여, 유저에 의한 웹 인텐츠의 처리처의 선택을 접수한다.
클라이언트(101)가 "action"이 "share"인 웹 인텐츠 요구를 발행했으므로, UA(106)는, 도 15b에 나타낸 상기 등록된 웹 인텐츠 서비스 테이블(1230)로부터 "action"이 "share"인 서비스를 추출하여, 선택사항 1801∼1803으로서 그 추출된 서비스의 일람을 표시한다.
단계S2002에서, UA(106)는, 상기 단계S2001의 표시된 상기 추출된 서비스의 일람에 근거하는 웹 인텐츠의 선택을 수신한다. 여기에서, 웹 인텐츠의 처리처로서, 선택사항 1803인 프록시 어플리케이션(901)이 선택되었다고 가정한다. UA(106)는, 프록시 어플리케이션(901)에 웹 인텐츠를 처리하기 위한 HTTP요구를 송신한다.
단계S2003에서, 프록시 어플리케이션(901)은, 어플리케이션 정보 수집 처리를 행하고, 그 수집된 값들을 도 15c에 나타낸 등록된 어플리케이션 관리 테이블(1260)에 격납한다. 단계S2003의 처리는, 도 11의 단계S1303∼단계S1306과 같기 때문에, 그 설명을 생략한다.
단계S2004에서, 프록시 어플리케이션(901)은, 클라이언트(101)에 의해 요구된 "action"(본 예에서는, "share")과 일치하는 기능을 제공가능한 어플리케이션을 추출하고, 그 추출된 어플리케이션의 일람을 표시한다. 상기 추출을 실현하기 위해서, 프록시 어플리케이션(901)은, 액션 변환 테이블(1240)과 상기 등록된 어플리케이션 관리 테이블(1260)을 사용한다.
보다 구체적으로는, 프록시 어플리케이션(901)은, 액션 변환 테이블(1240)을 사용하여서, 웹 인텐츠의 "action"(http://Web Intents.org/share)을 로컬 인텐츠의 "action"(ACTION_SEND)으로 변환한다. 다음에, 프록시 어플리케이션(901)은, "action"이 "ACTION_SEND"인 제공 기능의 어플리케이션("application name")을 추출한다.
도 18b는, 단계S2004의 실행후에 표시된 UI의 예를 나타낸다. 도 18b의 UI예에서는, 어플리케이션 "aaa App"(1811)과 "bbb App"(1812)이, 선택사항으로서 일람 표시된다.
또한, 일람 표시해야 할 항목의 수가 1개뿐이었을 경우, 프록시 어플리케이션(901)은, 도 18b에 나타나 있는 바와 같은 UI화면을 표시시키지 않고 그 1개의 항목이 선택된 것이라고 가정하고, 단계S2005를 실행하지 않고 단계S2006에 처리를 진행시켜도 좋다. 게다가, 표시할 항목이 없는 경우에, 프록시 어플리케이션(901)은, 도 12에 나타낸 단계S1414와 같은 방법으로, 처리의 실패를 나타내는 메시지를 송신한다.
단계S2005에서, 연계원 어플리케이션으로서의 프록시 어플리케이션(901)은, 유저에 의한 연계처 어플리케이션의 선택을 접수한다. 보다 구체적으로는, 도 18b에 나타낸 UI의 예에 있어서, 프록시 어플리케이션(901)은, 어플리케이션 "aaa App"(1811) 또는 "bbb App"(1812)의 선택을 접수한다. 그리고, 어플리케이션 "aaa App"(1811) 또는 "bbb App"(1812)의 선택을 검출하면, 연계원 어플리케이션으로서의 프록시 어플리케이션(901)은, 단계S2006에 처리를 진행시킨다.
단계S2006의 처리는, 도 12에 나타낸 단계S1412∼단계S1417의 처리와 같기 때문에, 그 설명을 생략한다. 이상으로 도 17의 시퀀스 도를 설명하였다. 또한, 이상으로 제3 예시적 실시예를 설명하였다.
상술한 바와 같이, 상기 제1 예시적 실시예에서 얻어진 이로운 효과에 더하여, 제3 예시적 실시예에 의해, 정보 처리 단말상에서 어플리케이션이 추가 또는 삭제되는 경우에도, 웹 인텐츠 요구가 수신될 때 어플리케이션의 정보를 갱신함에 의해, 상기 어플리케이션과 웹 어플리케이션간의 적절한 연계를 동적으로 확립할 수 있다.
제4 예시적 실시예에서는, UA(106)의 UI로부터 프록시 어플리케이션(901)에 대하여 연계처 어플리케이션 정보의 갱신 처리의 요구를 발행하는 예를 설명한다.
도 19는, 제4 예시적 실시예에 따른 프록시 어플리케이션(901)이 갖는 매니페스트 파일(2200)의 일부를 예시하는 도다.
도 19에 나타낸 매니페스트 파일 2200은, <intent-filter>태그내의 <action>태그에 UA(106)로부터의 갱신 처리를 접수하기 위한 "intent.action.SYNC"이라고 하는 "action"이 기록되어 있다는 점에서, 도 6a에 나타낸 매니페스트 파일 700과 다르다.
도 12에 나타낸 단계S1401∼단계S1409와 같은 처리가 행해지고, UA(106)에 의해, 유저가 웹 인텐츠의 처리처를 선택하기 위한 일람이 표시된다. 이 경우, 제4 예시적 실시예에 따른 UA(106)는, 도 20에 나타나 있는 바와 같은 UI를 표시하고, 유저에 의한 선택을 접수한다.
도 20은, 제4 예시적 실시예를 실현하는 UI를 예시하는 도다.
도 20을 참조하면, "갱신"버튼(2301)은, 연계처 어플리케이션의 정보를 갱신하는데 사용된다.
유저에 의한 도 20의 UI의 "갱신"버튼(2301)의 가압을 검지하면, UA(106)는, 프록시 어플리케이션(901)에 대하여, 연계처 어플리케이션의 정보를 갱신하기 위한 로컬 인텐츠 처리("action"이 "intent.action.SYNC")를 발행한다. 이에 따라 프록시 어플리케이션(901)은, "intent.action.SYNC"기능에 대응하는 처리를 실행한다. 이 경우, 프록시 어플리케이션(901), 제어부(502) 및 UA(106)는, 도 11에 나타낸 단계S1303∼단계S1316과 동등한 처리를 실행하여, 등록된 어플리케이션 관리 테이블(1220)을 갱신한다.
다시 말해, 제4 예시적 실시예에서는, 웹 인텐츠의 일람을 표시하는 화면에서의 "갱신"버튼의 가압에 의해 발행된 갱신 지시에 따라, 프록시 어플리케이션(901)이 제어부(502)를 통해서 새롭게 등록해야 할 어플리케이션이 제공하는 기능의 정보를 검색한다. 그리고, 상기 검색에 의해 새롭게 등록해야 할 어플리케이션이 제공하는 기능의 정보를 검출한 시간에, 프록시 어플리케이션(901)은 상기 정보를 웹 인텐츠의 형식으로 변환해서 UA(106)에 등록한다.
이상으로, 제4 예시적 실시예를 설명하였다.
상술한 바와 같이, 상기 제1 예시적 실시예에서 얻어진 이로운 효과에 더하여, 제4 예시적 실시예에 의해, 정보 처리 단말상에서 어플리케이션이 추가 또는 삭제되는 경우에도, 유저의 지시에 따라 그 어플리케이션의 정보를 갱신할 수 있고, 해당 어플리케이션과 웹 어플리케이션간에 적절한 연계를 동적으로 확립할 수 있다.
또한, 전술한 각종 데이터의 구성 및 그 내용은, 한정되지 않고, 원하는 용도나 목적에 따라 여러가지 방식으로 변경되는 것이 일반적일 수도 있다.
일부의 예시적 실시예에 대해서 설명하였지만, 시스템, 장치, 방법, 프로그램 혹은 기억매체의 형태로 실현될 수 있다. 게다가, 본 발명은, 복수의 기기로 이루어진 시스템에 적용될 수 있거나, 하나의 기기로 이루어진 장치에 적용될 수 있다.
또한, 상기 예시적 실시예를 조합한 여러 가지의 구성도 본 발명에 포함될 수 있다.
(기타의 실시예)
본 발명은, 상기 실시예의 1개 이상의 기능을 실현하는 프로그램을, 네트워크 또는 기억매체를 개입하여 시스템 혹은 장치에 공급하고, 그 시스템 혹은 장치의 컴퓨터에 있어서 1개 이상의 프로세서가 프로그램을 읽어 실행하는 처리에서도 실현 가능하다. 또한, 1개 이상의 기능을 실현하는 회로(예를 들어, ASIC)에 의해서도 실행 가능하다.
본 발명을 예시적 실시예들을 참조하여 기재하였지만, 본 발명은 상기 개시된 예시적 실시예들에 한정되지 않는다는 것을 알 것이다. 아래의 청구항의 범위는, 모든 변형예, 동등한 구조 및 기능을 포함하도록 폭 넓게 해석해야 한다.

Claims (12)

  1. 데이터를 관리하는 클라이언트와 상기 클라이언트에서 관리되는 데이터를 이용해서 기능을 제공하는 서비스를, 네트워크를 거쳐서 서로 연계시키는 중계 기능을 갖는 정보 처리 단말로서,
    네트워크상의 제1 서비스가 제공하는 기능을 호출하기 위한 기능 정보를 수신하는 수신 수단;
    상기 정보 처리 단말내의 제2 서비스가 제공하는 기능을 상기 중계 기능을 거쳐서 호출하기 위해서, 상기 제2 서비스의 정의(definition) 정보를, 상기 기능 정보의 형식으로 변환하는 변환 수단;
    상기 수신된 기능 정보와 상기 변환 수단에 의해 상기 정의 정보를 변환하여 얻어진 정보에 근거하여, 상기 제1 서비스 및 상기 제2 서비스가 제공하는 기능을 호출하기 위한, 상기 중계 기능을 사용하여 등록 처리를 행하는 등록 수단; 및
    상기 등록 처리에 따라, 유저에 대하여, 상기 제1 서비스 및 상기 제2 서비스가 제공하는 기능을 호출하는데 사용된 화면을 제공하기 위한 제공 수단을 구비하고,
    상기 화면에 대한 유저가 발행한 선택 지시에 따라, 상기 수신 수단에 의해 수신한 기능 정보 및 상기 변환 수단에 의해 상기 정의 정보를 변환하여 얻어진 정보 중의 하나를 사용하여 상기 기능의 호출이 행해지는, 정보 처리 단말.
  2. 제 1 항에 있어서,
    상기 변환 수단은, 상기 제2 서비스의 정의 정보에 포함된 분류를, 상기 기능 정보에 포함된 분류 정보의 형식에 맞춰서 변환하는, 정보 처리 단말.
  3. 제 1 항에 있어서,
    상기 변환 수단은, 상기 변환 수단에 의해 상기 정의 정보를 변환한 정보를 사용해서 호출된 상기 제2 서비스가 제공하는 기능에 의해 얻어진 처리 결과의 통지에 따라, 상기 처리 결과를 상기 제1 서비스가 제공하는 기능에 의해 얻어진 처리 결과의 형식으로 변환하는, 정보 처리 단말.
  4. 제 1 항에 있어서,
    상기 제공 수단은, 상기 제2 서비스가 제공하는 기능을 호출하기 위해서, 상기 변환 수단에 의해 상기 정의 정보를 변환한 상기 정보에 근거하는 기능 정보, 또는 상기 제2 서비스의 호출을 관리하는 별도의 서비스의 기능 정보를 표시하는 상기 화면을 제공하는, 정보 처리 단말.
  5. 제 1 항에 있어서,
    상기 등록 수단은, 상기 정보 처리 단말에 어플리케이션이 인스톨되는 시간, 정기적인 검색으로 새롭게 등록해야 할 정보를 검출하는 시간, 및 상기 중계 기능이 기동되었을 때에 새롭게 등록해야 할 정보를 검출하는 경우 중, 적어도 하나에서 등록 처리를 행하는, 정보 처리 단말.
  6. 제 1 항에 있어서,
    새롭게 등록해야 할 정보가 없는지를 검출하는 갱신 지시를 접수하는 갱신 지시 수단을 더 구비하고,
    상기 등록 수단은, 상기 갱신 지시에 의해 새롭게 등록해야 할 정보를 검출하는 시간, 상기 정보 처리 단말에 어플리케이션이 인스톨되는 시간, 정기적인 검색으로 새롭게 등록해야 할 정보를 검출하는 시간, 및 상기 중계 기능이 기동되었을 때에 새롭게 등록해야 할 정보를 검출하는 경우 중, 적어도 하나에서 등록 처리를 행하는, 정보 처리 단말.
  7. 제 1 항에 있어서,
    상기 네트워크는 인터넷을 포함하는, 정보 처리 단말.
  8. 제 1 항에 있어서,
    상기 클라이언트, 상기 서비스 및 상기 중계 기능 중 적어도 2개는, 같은 장치에서 동작하는 기능인, 정보 처리 단말.
  9. 제 1 항에 있어서,
    상기 기능 정보에는, 분류로서, 데이터를 공유하는 기능에 대응하는 분류 정보, 데이터를 편집하는 기능에 대응하는 분류 정보, 데이터를 열람하는 기능에 대응하는 분류 정보, 데이터를 취득하는 기능에 대응하는 분류 정보, 및 데이터를 보존하는 기능에 대응하는 분류 정보 중 적어도 하나가 기재되는, 정보 처리 단말.
  10. 제 1 항에 있어서,
    상기 제2 서비스가 제공하는 기능은, 상기 중계 기능을 사용하여 행해진 등록 처리를 위한 형식에 부합하지 않는, 정보 처리 단말.
  11. 데이터를 관리하는 클라이언트와 상기 클라이언트에서 관리되는 데이터를 이용해서 기능을 제공하는 서비스를, 네트워크를 거쳐서 서로 연계시키는 중계 기능을 갖는 정보 처리 단말의 제어 방법으로서,
    네트워크상의 제1 서비스가 제공하는 기능을 호출하기 위한 기능 정보를 수신하는 수신 단계;
    상기 정보 처리 단말내의 제2 서비스가 제공하는 기능을 상기 중계 기능을 거쳐서 호출하기 위해서, 상기 제2 서비스의 정의 정보를, 상기 기능 정보의 형식으로 변환하는 변환 단계;
    상기 수신된 기능 정보와 상기 변환 단계에서 상기 정의 정보를 변환하여 얻어진 정보에 근거하여, 상기 제1 서비스 및 상기 제2 서비스가 제공하는 기능을 호출하기 위한, 상기 중계 기능을 사용하여 등록 처리를 행하는 등록 단계; 및
    상기 등록 처리에 따라, 유저에 대하여, 상기 제1 서비스 및 상기 제2 서비스가 제공하는 기능을 호출하는데 사용된 화면을 제공하는 제공 단계를 포함하고,
    상기 화면에 대한 유저가 발행한 선택 지시에 따라, 상기 수신한 기능 정보 및 상기 정의 정보를 변환하여 얻어진 정보 중의 하나를 사용하여 상기 기능의 호출이 행해지는, 정보 처리 단말의 제어 방법.
  12. 컴퓨터에, 데이터를 관리하는 클라이언트와 상기 클라이언트에서 관리되는 데이터를 이용해서 기능을 제공하는 서비스를, 네트워크를 거쳐서 서로 연계시키는 중계 기능을 갖는 정보 처리 단말의 제어 방법을 실행시키는 컴퓨터 프로그램을 기억한 컴퓨터 판독 가능한 기억매체로서, 상기 방법은,
    네트워크상의 제1 서비스가 제공하는 기능을 호출하기 위한 기능 정보를 수신하는 수신 단계;
    상기 정보 처리 단말내의 제2 서비스가 제공하는 기능을 상기 중계 기능을 거쳐서 호출하기 위해서, 상기 제2 서비스의 정의 정보를, 상기 기능 정보의 형식으로 변환하는 변환 단계;
    상기 수신된 기능 정보와 상기 변환 단계에서 상기 정의 정보를 변환하여 얻어진 정보에 근거하여, 상기 제1 서비스 및 상기 제2 서비스가 제공하는 기능을 호출하기 위한, 상기 중계 기능을 사용하여 등록 처리를 행하는 등록 단계; 및
    상기 등록 처리에 따라, 유저에 대하여, 상기 제1 서비스 및 상기 제2 서비스가 제공하는 기능을 호출하는데 사용된 화면을 제공하는 제공 단계를 포함하고,
    상기 화면에 대한 유저가 발행한 선택 지시에 따라, 상기 수신한 기능 정보 및 상기 정의 정보를 변환하여 얻어진 정보 중의 하나를 사용하여 상기 기능의 호출이 행해지는, 기억매체.
KR1020150010331A 2014-01-22 2015-01-22 정보 처리 단말 및 제어 방법 KR101730339B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2014-009385 2014-01-22
JP2014009385A JP6355341B2 (ja) 2014-01-22 2014-01-22 情報処理端末、情報処理端末の制御方法およびプログラム

Publications (2)

Publication Number Publication Date
KR20150087815A KR20150087815A (ko) 2015-07-30
KR101730339B1 true KR101730339B1 (ko) 2017-04-27

Family

ID=52396500

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150010331A KR101730339B1 (ko) 2014-01-22 2015-01-22 정보 처리 단말 및 제어 방법

Country Status (5)

Country Link
US (1) US20150207867A1 (ko)
EP (1) EP2902904A1 (ko)
JP (1) JP6355341B2 (ko)
KR (1) KR101730339B1 (ko)
CN (1) CN104796453B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8825814B1 (en) * 2013-05-23 2014-09-02 Vonage Network Llc Method and apparatus for minimizing application delay by pushing application notifications
CN105825851B (zh) * 2016-05-17 2020-07-21 Tcl科技集团股份有限公司 一种基于Android系统的语音控制方法及系统
CN106648871B (zh) * 2016-12-28 2020-04-03 北京奇艺世纪科技有限公司 一种资源管理方法及系统
CN109151591A (zh) * 2018-11-20 2019-01-04 四川长虹电器股份有限公司 智能电视应用启动的方法
CN110309005B (zh) * 2019-06-28 2022-03-25 百度在线网络技术(北京)有限公司 一种功能调用方法、装置、终端设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013096969A (ja) 2011-11-07 2013-05-20 Zenrin Datacom Co Ltd 情報処理装置及び制御方法
US20140026067A1 (en) 2012-07-23 2014-01-23 Korea Advanced Institute Of Science And Technology Method and apparatus for processing movement of web object based on intent

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1211861A1 (en) * 2000-12-04 2002-06-05 Alcatel Browser environment for accessing local and remote services on a phone
JP2003303103A (ja) * 2002-04-08 2003-10-24 Kawasaki Steel Systems R & D Corp アプリケーション管理システム、アプリケーション連携プログラム及びファイル自動作成プログラム
US8693998B2 (en) * 2011-01-26 2014-04-08 Nice-Systems Ltd. System and method for managing a customer service session
JP5551141B2 (ja) * 2011-11-05 2014-07-16 京セラドキュメントソリューションズ株式会社 クライアントサイドWebサービスインターフェイス及びこれを備えたソフトウェア開発キット並びにこの開発キットを用いたソフトウェア開発方法
US9448700B2 (en) * 2012-02-03 2016-09-20 Apple Inc. Sharing services
US20130226688A1 (en) * 2012-02-23 2013-08-29 Annie Harvilicz Crowd funding system
KR102038962B1 (ko) * 2012-08-13 2019-10-31 삼성전자주식회사 클라우드 서버를 이용하여 단말 장치에서 웹 인텐트 메시지 및 이벤트를 처리하는 방법 및 장치
EP2744173B1 (en) * 2012-10-26 2018-08-15 Huawei Device (Dongguan) Co., Ltd. Multiple-service processing method and browser
US20140380142A1 (en) * 2013-06-20 2014-12-25 Microsoft Corporation Capturing website content through capture services
US20150156149A1 (en) * 2013-12-04 2015-06-04 At&T Mobility Ii Llc Method and apparatus for sharing content from third party websites via messaging

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013096969A (ja) 2011-11-07 2013-05-20 Zenrin Datacom Co Ltd 情報処理装置及び制御方法
US20140026067A1 (en) 2012-07-23 2014-01-23 Korea Advanced Institute Of Science And Technology Method and apparatus for processing movement of web object based on intent

Also Published As

Publication number Publication date
CN104796453B (zh) 2018-11-30
EP2902904A1 (en) 2015-08-05
CN104796453A (zh) 2015-07-22
KR20150087815A (ko) 2015-07-30
US20150207867A1 (en) 2015-07-23
JP6355341B2 (ja) 2018-07-11
JP2015138376A (ja) 2015-07-30

Similar Documents

Publication Publication Date Title
KR101730339B1 (ko) 정보 처리 단말 및 제어 방법
KR101219228B1 (ko) 이미지 코드를 이용하여 정보를 전달하는 시스템 및 방법
JP6414855B2 (ja) ページオペレーション処理方法および装置、ならびに端末
KR20140119240A (ko) 다중 오픈 api 처리장치 및 방법
EP2950559A1 (en) Communication apparatus, control method thereof, and program
KR101719593B1 (ko) 정보처리단말 및 그 제어 방법, 시스템 및 그 제어 방법, 및 컴퓨터 판독 가능한 기억매체
US9769246B2 (en) Information processing terminal and control method
JP2009211278A (ja) 携帯端末を利用した検索システムおよびその検索方法
KR101659147B1 (ko) 정보 처리 장치, 및 그의 제어 방법
US8321535B2 (en) Web services integration systems and methods
JP4825717B2 (ja) 文書収集方法、文書収集プログラム及び文書収集装置
US9485315B2 (en) System and method for generating a customized singular activity stream
JP6351275B2 (ja) 情報処理端末、情報処理端末の制御方法およびプログラム
US8082259B2 (en) Information processing apparatus for extracting objects
JP2017157023A (ja) 情報処理装置、及び、情報処理システム
JP2023039568A (ja) 帳票作成システムおよびプログラム
KR101414900B1 (ko) 인텐트에 기반하여 웹 객체를 이동시키는 방법 및 장치
KR101401236B1 (ko) 인텐트에 기반하여 이동된 웹 객체를 처리하는 방법 및 장치
KR20120055497A (ko) 이미지 코드를 이용하여 정보를 전달하는 시스템 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant