KR101845181B1 - 다수의 디바이스에 걸친 액티비티 디스플레이 - Google Patents

다수의 디바이스에 걸친 액티비티 디스플레이 Download PDF

Info

Publication number
KR101845181B1
KR101845181B1 KR1020167015806A KR20167015806A KR101845181B1 KR 101845181 B1 KR101845181 B1 KR 101845181B1 KR 1020167015806 A KR1020167015806 A KR 1020167015806A KR 20167015806 A KR20167015806 A KR 20167015806A KR 101845181 B1 KR101845181 B1 KR 101845181B1
Authority
KR
South Korea
Prior art keywords
user
session data
page
web page
visualization
Prior art date
Application number
KR1020167015806A
Other languages
English (en)
Other versions
KR20160085341A (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
Priority claimed from US14/506,021 external-priority patent/US20160098414A1/en
Application filed by 이베이 인크. filed Critical 이베이 인크.
Publication of KR20160085341A publication Critical patent/KR20160085341A/ko
Application granted granted Critical
Publication of KR101845181B1 publication Critical patent/KR101845181B1/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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • G06F17/30873
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/954Navigation, e.g. using categorised browsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F17/3089
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

다수의 디바이스에 걸친 액티비티를 표시하기 위한 시스템 및 방법이 본원에서 개시된다. 웹 페이지에 액세스하려는 요청이, 유저와 관련되는 제1 디바이스로부터 수신된다. 요청은 유저의 유저 계정에 대한 유저 인증서를 포함한다. 웹 페이지에 액세스하려는 제2 요청이, 유저와 관련되는 제2 디바이스로부터 수신된다. 제2 요청은 유저의 유저 계정에 대한 유저 인증서를 포함한다. 세션 데이터가 수신되는데, 세션 데이터는 제1 디바이스 및 제2 디바이스 상에 디스플레이되는 웹 페이지에 대하여 유저에 의해 수행된 유저 상호작용에 관련하는 데이터를 포함한다. 수신된 세션 데이터를 사용하여 시각화 페이지가 생성된다. 그리고, 시각화 페이지를 표시한다.

Description

다수의 디바이스에 걸친 액티비티 디스플레이{DISPLAYING ACTIVITY ACROSS MULTIPLE DEVICES}
본 국제 출원은 2014년 10월 3일자로 출원된 미국 특허 출원 제14/506,021호의 우선권 이익을 주장하며, 또한 2013년 11월 15일자로 출원된 미국 특허 가출원 제61/904,697호에 대한 우선권의 이익을 주장하는데, 상기 양 출원은 그 전체가 참조에 의해 본원에 통합된다.
본원에서 개시되는 주제는 일반적으로 데이터 표시(data presentation)에 관한 것이다. 구체적으로, 본 개시는 다수의 디바이스에 걸친 액티비티(activity)의 표시를 용이하게 하기 위한 시스템 및 방법을 다룬다.
유저는 다수의 디바이스로부터 웹 페이지에 액세스할 수도 있다. 예를 들면, 유저는 스마트폰 기능을 갖는 이동 전화(mobile phone)로부터 웹 페이지에 액세스할 수도 있다. 그 후, 유저는 데스크탑 컴퓨터로부터 웹 페이지에 액세스할 수도 있다.
몇몇 실시형태는 첨부의 도면에서 제한이 아닌 예로서 예시된다.
도 1은, 몇몇 예시적인 실시형태에 따른, 다수의 디바이스에 걸친 액티비티의 표시에 적합한 네트워크 환경을 예시하는 네트워크 도면이다.
도 2는, 몇몇 예시적인 실시형태에 따른, 다수의 디바이스에 걸쳐 액티비티를 표시하기에 적합한 서버 머신의 컴포넌트를 예시하는 블록도이다.
도 3 및 도 4는, 몇몇 예시적인 실시형태에 따른, 시각화 페이지(visualization page)를 각각 디스플레이하는 예시적인 유저 인터페이스이다.
도 5 내지 도 8은, 몇몇 예시적인 실시형태에 따른, 시각화 페이지 상에 세션 데이터를 표시하는 방법을 수행함에 있어서의 서버 머신의 동작을 예시하는 플로우차트이다.
도 9는, 머신 판독가능 매체로부터 명령어를 판독할 수 있는 그리고 본원에서 논의되는 방법론 중 임의의 하나 이상을 수행할 수 있는, 몇몇 예시적인 실시형태에 따른, 머신의 컴포넌트를 예시하는 블록도이다.
예시적인 방법 및 시스템은, 다수의 디바이스에 걸친 액티비티의 표시를 가능하게 하기 위해 유저에 의한 액티비티에 관한 데이터를 추적하는 것 및 저장하는 것을 대상으로 한다. 예는 가능한 변형예를 대표하는 것에 불과하다. 명시적으로 달리 언급되지 않는 한, 컴포넌트 및 기능은 옵션사항이며 결합 또는 세분될 수도 있고, 동작은 그 순서가 변할 수도 있고 결합 또는 세분될 수도 있다. 하기의 설명에서는, 설명의 목적을 위해, 예시적인 실시형태의 완전한 이해를 제공하도록 다양한 특정 상세가 개시된다. 그러나, 본 발명의 주제는 이들 특정 상세 없이도 실시될 수도 있다는 것이 기술분야의 숙련된 자에게는 명백할 것이다.
소비자는 다수의 디바이스를 사용하여 웹 페이지를 브라우징할 수도 있다. 예를 들면, 소비자는 아침에 스마트폰으로부터 어떤 아이템 페이지에 액세스할 수도 있다. 하루가 경과함에 따라, 유저는 다른 머신으로 전환하여 데스크탑 컴퓨터로부터 그 아이템 페이지를 다시 볼 수도 있다. 따라서, 웹 페이지 또는 아이템 페이지와의 유저의 상호작용은 다수의 디바이스에 걸쳐 확산될 수도 있다. 이 정보를 시각화하기 위해, 시스템은 서버로부터 각각의 디바이스로 전송되고 있는 정보를 수신하고 그 정보를 단일의 시각화 페이지 상에 디스플레이할 수도 있다. 시각화 페이지는, 각각의 디바이스로부터의 웹 페이지와의 유저의 상호작용을 요약하는 그래픽 이미지일 수도 있다. 정보는, 각각의 디바이스에 의해 수행된 액티비티를 전달하는 방식으로 시각화 페이지 내에서 편제될(organized) 수도 있다. 이렇게 하여, 웹 페이지와의 유저의 상호작용의 요약은 쉽게 액세스할 수 있는 포맷으로 표시된다. 게다가, 이 정보는 유저의 거동에 관련한 추후의 분석을 위해 사용될 수도 있다.
본 발명의 실시형태를 사용하는 것에 의해, 유저는 웹 페이지와의 그들의 상호작용에 관한 정보를 빠르고 쉽게 검색(retrieve)할 수 있다. 따라서, 본원에서 논의되는 방법론 중 하나 이상은, 검색 이력을 액세스하는 것 및 검색 이력을 통해 검색 또는 브라우징하는 것에 대한 필요성을 제거할 수도 있고, 이것은 시스템 내의 하나 이상의 디바이스에 의해 사용되는 컴퓨팅 리소스를 감소시키는 기술적 효과를 가질 수도 있다. 이러한 컴퓨팅 리소스의 예는, 제한 없이, 프로세서 싸이클, 네트워크 트래픽, 메모리 사용량, 저장 공간, 및 소비 전력을 포함한다.
도 1은, 몇몇 예시적인 실시형태에 따른, 다수의 디바이스에 걸친 액티비티의 표시에 적합한 네트워크 환경(100)을 예시하는 네트워크 도면이다. 네트워크 환경(100)은 서버 머신(110), 데이터베이스(115), 및 디바이스(130 및 150)를 포함하는데, 모두 네트워크(190)를 통해 서로 통신가능하게 커플링된다. 서버 머신(110)은 네트워크 기반 시스템(105)(예를 들면, 디바이스(130 및 150)로 하나 이상의 서비스를 제공하도록 구성되는 클라우드 기반 서버 시스템)의 전체 또는 일부를 형성한다. 서버 머신(110) 및 디바이스(130 및 150) 각각은, 도 9에 대하여 하기에서 설명되는 바와 같이, 컴퓨터 시스템에서 전체적으로 또는 부분적으로 구현될 수도 있다.
도 1에서는 유저(132)가 또한 도시된다. 유저(132)는 사람 유저(예를 들면, 사람), 머신 유저(예를 들면, 디바이스(130)와 상호작용하도록 소프트웨어 프로그램에 의해 구성되는 컴퓨터)일 수도 있고 이들의 임의의 적절한 조합(예를 들면, 머신의 보조를 받는 사람 또는 사람에 의해 감독되는 머신)일 수도 있다. 유저(132)는 네트워크 환경(100)의 일부는 아니지만, 디바이스(130)와 관련되며 디바이스(130)의 유저일 수도 있다. 예를 들면, 디바이스(130)는 데스크탑 컴퓨터, 차량용 컴퓨터(vehicle computer), 태블릿 컴퓨터, 내비게이션 디바이스, 휴대형 미디어 디바이스, 스마트폰, 또는 유저(132) 소유의 웨어러블 디바이스(wearable device)(예를 들면, 스마트워치, 또는 스마트 안경)일 수도 있다. 게다가, 유저(132)는 디바이스(150)와 관련될 수도 있다. 예로서, 디바이스(150)는 데스크탑 컴퓨터, 차량용 컴퓨터, 태블릿 컴퓨터, 내비게이션 디바이스, 휴대형 미디어 디바이스, 스마트폰, 또는 유저(132) 소유의 웨어러블 디바이스(예를 들면, 스마트워치, 또는 스마트 안경)일 수도 있다. 디바이스(130 및 150)의 각각은 웹 페이지에 액세스하도록 유저(132)에 의해 동작될 수도 있다. 구체적으로는, 서버 머신(110)은 디바이스(130 및 150)의 각각에 대한 유저 인터페이스 상에 웹 페이지를 디스플레이할 수도 있다. 유저(132)는, 각각의 디바이스(130 및 150)에 디스플레이되는 웹 페이지와 상호작용할 수도 있다. 게다가, 서버 머신(110)은 디바이스(130 및 150)의 각각으로부터 웹 페이지에 대한 유저(132)의 상호작용을 수신할 수도 있다. 그 다음, 웹 페이지에 대한 유저(132)의 상호작용은 서버 머신(110)에 의해 시각화 페이지 상에 디스플레이될 수도 있다.
도 1에서 도시되는 머신, 데이터베이스, 또는 디바이스 중 임의의 것은, 그 머신, 데이터베이스, 또는 디바이스에 대해 본원에서 설명된 기능 중 하나 이상을 수행하도록 소프트웨어(예를 들면, 하나 이상의 소프트웨어 모듈)에 의해 수정된(예를 들면, 구성된 또는 프로그래밍된) 범용 컴퓨터에서 구현될 수도 있다. 예를 들면, 본원에서 설명된 방법론 중 임의의 하나 이상을 구현할 수 있는 컴퓨터 시스템이 도 9에 대하여 하기에서 논의된다. 본원에서 사용되는 바와 같이, "데이터베이스"는 데이터 스토리지 리소스이며, 텍스트 파일, 테이블, 스프레드시트, 관계형 데이터베이스(예를 들면, 객체 관계형 데이터베이스(object-relational database)), 트리플 저장소(triple store), 계층적 데이터 저장소, 또는 이들의 임의의 적절한 조합으로서 구조화된 데이터를 저장할 수도 있다. 또한, 도 1에서 예시된 머신, 데이터베이스, 또는 디바이스 중 임의의 둘 이상은 단일의 머신으로 결합될 수도 있고, 임의의 단일의 머신, 데이터베이스, 또는 디바이스에 대해 본원에서 설명된 기능이 다수의 머신, 데이터베이스, 또는 디바이스 사이에서 세분될 수도 있다.
네트워크(190)는 머신, 데이터베이스, 및 디바이스(예를 들면, 서버 머신(110) 및 디바이스(130)) 간의 또는 사이의 통신을 가능하게 하는 임의의 네트워크일 수도 있다. 따라서, 네트워크(190)는 유선 네트워크, 무선 네트워크(예를 들면, 모바일 또는 셀룰러 네트워크), 또는 이들의 임의의 적절한 조합일 수도 있다. 네트워크(190)는, 사설 네트워크, 공공 네트워크(예를 들면, 인터넷), 또는 이들의 임의의 적절한 조합을 구성하는 하나 이상의 부분을 포함할 수도 있다. 따라서, 네트워크(190)는, 근거리 통신망(local area network; LAN), 광역 통신망(wide area network; WAN), 인터넷, 이동 전화 네트워크(예를 들면, 셀룰러 네트워크), 유선 전화 네트워크(예를 들면, 기존 전화 서비스(plain old telephone system; POTS) 네트워크), 무선 데이터 네트워크(예를 들면, 와이파이 네트워크 또는 와이맥스(WiMax) 네트워크), 또는 이들의 임의의 적절한 조합을 통합하는 하나 이상의 부분을 포함할 수도 있다. 네트워크(190) 중 임의의 하나 이상의 부분은 통신 매체를 통해 정보를 전달할 수도 있다. 본원에서 사용되는 바와 같이, "송신 매체"는, 머신에 의한(예를 들면, 이러한 머신의 하나 이상의 프로세서에 의한) 실행을 위한 명령어를 전달(송신)할 수 있는 임의의 비유형의(intangible)(예를 들면, 일시적) 매체를 가리키며, 디지털 또는 아날로그 통신 신호 또는 이러한 소프트웨어의 통신을 용이하게 하기 위한 다른 비유형의 매체를 포함한다.
도 2는, 몇몇 예시적인 실시형태에 따른, 서버 머신(110)의 컴포넌트를 예시하는 블록도이다. 서버 머신(110)은, 수신 모듈(210), 생성 모듈(220), 식별 모듈(230), 세션 모듈(240), 및 표시 모듈(250)을 포함하는 것으로 도시되는데, 모두 (예를 들면, 버스, 공유 메모리, 또는 스위치를 통해) 서로 통신하도록 구성된다. 본원에서 설명되는 모듈 중 임의의 하나 이상은, 하드웨어(예를 들면, 머신의 하나 이상의 프로세서) 또는 하드웨어와 소프트웨어의 조합을 사용하여 구현될 수도 있다. 예를 들면, 본원에서 설명되는 임의의 모듈은, 그 모듈에 대해 본원에서 설명되는 동작을 수행하도록 (머신의 하나 이상의 프로세서 중) 하나의 프로세서를 구성할 수도 있다. 또한, 이들 모듈 중 임의의 둘 이상은 단일의 모듈로 결합될 수도 있고, 단일의 모듈에 대해 본원에서 설명되는 기능이 다수의 모듈 사이에서 세분될 수도 있다. 또한, 다양한 예시적인 실시형태에 따르면, 단일의 머신, 데이터베이스, 또는 디바이스 내에서 구현되는 것으로 본원에서 설명되는 모듈이 다수의 머신, 데이터베이스, 또는 디바이스에 걸쳐 분산될 수도 있다.
다양한 예시적인 실시형태에서, 수신 모듈(210)은 유저와 관련되는 제1 디바이스(예를 들면, 디바이스(130))로부터 웹 페이지(예를 들면, 아이템 페이지)에 액세스하려는 요청을 수신하도록 구성된다. 그 요청은, 유저와 관련되는 임의의 수의 디바이스로부터 또한 수신될 수도 있다. 요청은 유저의 유저 계정에 대한 유저 인증서(user credential)를 포함할 수도 있다. 유저 계정의 유저 인증서는, 유저명, 패스워드, 유저 인증서와 관련되는 로그인 쿠키 등등을 포함할 수도 있다. 다양한 예시적인 실시형태에서, 수신 모듈(210)은 또한, 나중의 시간에 유저와 관련되는 제2 디바이스(예를 들면, 디바이스(150))로부터 동일한 아이템 페이지에 액세스하려는 요청을 수신하도록 구성된다.
예시적인 실시형태에서, 생성 모듈(220)은 유저의 유저 계정을 아이템 페이지와 관련시키는 레코드를 생성하도록 구성된다. 일 실시형태에서, 관련은, 아이템 페이지에 대한 식별자를 유저 계정에 대한 식별자 및 디바이스에 대한 식별자와 관련시키는 것 또는 링크시키는 것을 포함한다. 레코드는 아이템 페이지에 대한 유저 계정의 매핑일 수도 있다. 예를 들면, 유저 인증서는, 아이템 페이지의 식별자에 대응하는 것으로 나타내어질 수도 있다. 아이템 페이지의 식별자는, 아이템 페이지와 관련되는 브라우저 쿠키일 수도 있다. 예로서, 생성 모듈(220)은, 로그인 쿠키를, 아이템 페이지와 관련되는 브라우저 쿠키에 매핑시키는 레코드를 생성할 수도 있다. 또한, 디바이스에 대한 식별자는 IP 어드레스 또는 식별 번호일 수도 있다. 다른 예로서, 생성 모듈(220)은, 디바이스의 IP 어드레스를, 아이템 페이지와 관련되는 브라우저 쿠키에 매핑시키는 레코드를 생성할 수도 있다. 게다가, 생성된 레코드는 데이터베이스(예를 들면, 데이터베이스(115))에 저장될 수도 있다. 또한, 생성 모듈(220)은 또한, 제2 디바이스가 아이템 페이지에 액세스했다는 것을 나타내기 위해, 생성된 레코드를 업데이트하도록 구성될 수도 있다. 다시 말하면, 일단 수신 모듈(210)이 제2 디바이스로부터 요청을 수신하고 아이템 페이지가 제2 디바이스 상에 디스플레이되면, 생성 모듈(220)은 생성된 레코드를 업데이트한다.
예시적인 실시형태에서, 식별 모듈(230)은, 생성된 레코드에 기초하여 동일한 아이템 페이지에, 유저와 관련되는 제2 디바이스가 액세스했다는 것을 식별하도록 구성된다. 몇몇 실시형태에서, 식별 모듈(230)은, 제1 디바이스로부터의 웹 페이지(예를 들면, 아이템 페이지)에 액세스하려는 요청에 기초하여, 제1 디바이스를 식별한다. 상기에서 언급된 바와 같이, 요청은 유저의 유저 계정에 대한 유저 인증서를 포함할 수도 있다. 식별 모듈(230)은 또한, 제2 디바이스로부터의 아이템 페이지에 액세스하려는 요청에 기초하여, 제2 디바이스가 유저와 관련된다는 것을 식별할 수도 있다. 예를 들면, 식별 모듈(230)은, 제2 디바이스가, 제1 디바이스로부터 아이템 페이지에 또한 액세스했던 동일한 유저와 관련된다는 것을 (예를 들면, 유저 인증서로부터) 식별한다. 일단 동일한 유저가 동일한 아이템 페이지에 액세스를 시도하고 있다고 식별 모듈(230)이 판정하면, 유저 계정의 유저 인증서를 아이템 페이지에 매핑시키는 생성된 레코드를 검색하기 위해 그리고 상기에서 설명된 바와 같이 레코드를 업데이트하기 위해, 생성 모듈(220)은 데이터베이스에 액세스할 수도 있다.
예시적인 실시형태에서, 세션 모듈(240)은, 식별 모듈(230)에 의해 식별되는 바와 같은 제1 디바이스 상에 그리고 제2 디바이스 상에 디스플레이되는 아이템 페이지와의 유저에 의해 수행된 유저 상호작용에 관련하는 데이터를 포함하는 세션 데이터를 수신한다. 세션 데이터는, 예를 들면, 유저에 의한 아이템 페이지의 내비게이션, 제1 디바이스 또는 제2 디바이스 중 적어도 하나 상에서 유저가 보는 이미지, 제1 디바이스 또는 제2 디바이스 중 적어도 하나 상에서 유저에 의해 이루어지는 구매, 제1 디바이스 또는 제2 디바이스 중 적어도 하나 상에서 유저에 의해 동작되는 아이템 페이지 상에서 다루어지는 제어에 관련하는 임의의 데이터, 또는 제1 디바이스 또는 제2 디바이스 중 적어도 하나 상에서 유저에 의한 아이템의 입찰에 관련하는 임의의 데이터를 포함한다. 따라서, 세션 모듈(240)은 각각의 디바이스로부터 세션 데이터를 수신하고, 나중의 검색을 위해 서버 머신(110)에 의해 유지되는 데이터베이스에 수신된 세션 데이터를 저장할 수도 있다. 세션 데이터는, 각각의 디바이스에 대한 아이템 페이지와의 상호작용과 실질적으로 동시에, 각각의 디바이스에 대해 세션이 완료된 직후에, 또는 임의의 다른 시간 간격으로(예를 들면, 낮은 프로세싱 시간 간격 동안 배치(batch)로) 수신될 수도 있다. 따라서, 데이터의 복수의 세션이 수신될 수도 있다. 예시적인 실시형태에서, 세션 모듈(240)은 또한, 제2 디바이스가 아이템 페이지에 액세스했다는 것을 나타내는 업데이트된 레코드에 기초하여 세션 데이터를 수신하도록 구성된다. 다시 말하면, 업데이트된 레코드는, 제2 디바이스가 제1 디바이스와 동일한 아이템 페이지에 액세스했다는 것을 나타내고, 따라서, 세션 모듈(240)은 제1 및 제2 디바이스의 각각으로부터 세션 데이터를 수신한다.
다양한 예시적인 실시형태에서, 생성 모듈(220)은 또한, 수신된 세션 데이터를 사용하여 시각화 페이지를 생성하도록 구성된다. 생성 모듈(220)은, 아이템 페이지와의 유저 상호작용에 관련하는 세션 데이터를 저장하는 데이터베이스에 액세스할 수도 있다. 예시적인 실시형태에서, 생성 모듈(220)은, 수신된 세션 데이터로부터, 제1 디바이스로부터 수신되었던 제1 세션 데이터를 파싱한다. 제1 세션 데이터는, 제1 디바이스 상의 제1 유저 인터페이스 내에서 유저에 의해 수행된 유저 상호작용에 관련할 수도 있다. 추가적으로, 생성 모듈(220)은, 수신된 세션 데이터로부터, 제2 디바이스로부터 수신되었던 제2 세션 데이터를 파싱할 수도 있다. 수신된 세션 데이터를 사용하여, 생성 모듈(220)은, 제1 디바이스, 제2 디바이스, 또는 임의의 추가 디바이스 중 적어도 하나가 아이템 페이지에 액세스하는 각각의 세션 동안 수행된 복수의 상호작용을 식별하도록 구성된다. 이렇게 함에 있어서, 생성 모듈(220)은 복수의 세션을 식별할 수도 있는데, 복수의 세션 동안 제1 디바이스 및 제2 디바이스는 웹 페이지에 액세스한다. 복수의 세션으로부터의 각각의 세션은 특정 시간 영역에 대응할 수도 있다. 예를 들면, 복수의 세션은 아침 세션 및 두 개의 저녁 세션을 포함할 수도 있다. 아침 세션의 경우, 유저는 제1 디바이스를 사용하여 아이템 페이지에 액세스했을 수도 있다. 저녁 세션의 경우, 유저는 제1 디바이스 및 그 다음 나중에 제2 디바이스를 사용하여 아이템 페이지에 액세스했을 수도 있다. 세션의 각각은 생성 모듈(220)에 의해 파싱될 수도 있다. 하기에서 더 설명되는 바와 같이, 복수의 세션으로부터의 세션의 각각은 시각화 페이지 내에서 칼럼으로서 디스플레이될 수도 있다.
다양한 예시적인 실시형태에서, 생성 모듈(220)은, 제1 디바이스에 대응하는 시각화 페이지의 제1 칼럼에 제1 세션 데이터를 할당한다. 추가적으로, 생성 모듈(220)은, 제2 디바이스에 대응하는 시각화 페이지의 제2 칼럼에 제2 세션 데이터를 할당할 수도 있다.
예시적인 실시형태에서, 표시 모듈(250)은, 제1 디바이스 및 제2 디바이스 상에 디스플레이되는 아이템 페이지에 대한 유저에 의해 수행된 유저 상호작용에 관련하는 수신된 세션 데이터를 시각화 페이지 상에 표시하도록 구성된다. 따라서, 표시 모듈(250)은, 세션 데이터로부터 추출되는 유저 상호작용에 관련하는 데이터의 치수가 시각화 페이지의 치수를 초과하는지의 여부를 판정할 수도 있다. 이 판정에 응답하여, 표시 모듈(250)은, 유저 상호작용에 관련하는 데이터의 치수가 시각화 페이지의 치수 내에 있도록, 유저 상호작용에 관련하는 데이터를 리사이징할 수도 있다. 예를 들면, 표시 모듈(250)은, 데이터가 그 전체로 시각화 페이지 내에 디스플레이될 수 없다고 판정할 수도 있다. 따라서, 데이터 전체를 시각화 페이지에 맞추기 위해, 데이터가 적절히 리사이징될 수도 있다. 추가적으로, 표시 모듈(250)은, 데이터가 시각화 페이지 내에 그리고 시각화 페이지 상의 디스플레이에 대해 맞추어질 수도 있도록, 세션 데이터로부터 추출되는 유저 상호작용에 관련하는 데이터의 해상도를 조정할 수도 있다. 예시적인 실시형태에서, 표시 모듈은 생성 모듈(220)에 의해 식별되는 복수의 세션에 대응하는 복수의 칼럼을 시각화 페이지 상에 디스플레이한다. 또한, 표시 모듈(250)은, 리사이징된 세션 데이터를 시각화 페이지 상에 표시할 수도 있다.
예시적인 실시형태에서, 표시 모듈(250)은 또한, 제1 디바이스 상의 유저 인터페이스 내에 아이템 페이지를 디스플레이한다. 예를 들면, 표시 모듈(250)은, 디바이스에게 아이템 페이지를 디스플레이할 것을 명령하는 명령어를 생성하여 유저의 디바이스로 송신할 수도 있다. 아이템 페이지는 아이템을 설명할 수도 있고 아이템의 설명 및 아이템의 이미지를 포함할 수도 있다. 아이템 페이지는 또한, 유저가 아이템 페이지와 상호작용하도록 동작가능한 제어부(control)를 포함할 수도 있다. 예를 들면, 제어부는 아이템 페이지의 내비게이션에 관련될 수도 있다. 제어부는 또한, 유저가 아이템 페이지에 디스플레이되는 아이템의 구매를 행하는 것을 허용할 수도 있다. 몇몇 경우에서, 복수의 이미지가 아이템 페이지와 관련되며, 제어부는 아이템 페이지와 관련되는 복수의 이미지를 통해 브라우징하기 위해 사용된다. 아이템 페이지와의 유저의 상호작용은, 제1 디바이스에 의해 추적될 수도 있고 그 다음 세션 데이터의 일부로서 세션 모듈(240)로 전송될 수도 있다. 대안적인 실시형태에서, 서버 머신은 (예를 들면, 표시 모듈(250)을 통해) 아이템 페이지와의 유저의 상호작용을 검출할 수도 있다. 다른 예에서, 아이템 페이지는 정보의 공개(publication)일 수도 있고 제어부는 아이템 페이지 내에서 디스플레이되는 정보의 공개에 대한 추가적으로 관련된 정보에 유저가 액세스하는 것을 허용할 수도 있다.
또한, 표시 모듈(250)은, 제2 디바이스 상의 유저 인터페이스 내에, 아이템 페이지를 디스플레이하도록 구성될 수도 있다. 아이템 페이지와의 유저의 상호작용은 또한, 제2 디바이스에 의해 추적될 수도 있고 그 다음 세션 데이터의 일부로서 세션 모듈(240)로 전송될 수도 있다. 대안적으로, 서버 머신은 (예를 들면, 표시 모듈(250)을 통해) 제2 디바이스 상에서의 아이템 페이지와의 유저의 상호작용을 검출할 수도 있다. 단지 두 개의 디바이스가 논의되었지만, 아이템 페이지와의 유저 상호작용을 결정하기 위해, 임의의 수의 디바이스에 대한 세션 데이터가 추적될 수도 있다는 것을 유의한다. 추가적으로, 동일한 디바이스로부터의 복수의 세션으로부터의 세션 데이터도 또한 추적될 수도 있다.
도 3은, 몇몇 예시적인 실시형태에 따른, 시각화 페이지를 디스플레이하는 예시적인 유저 인터페이스(300)이다. 시각화 페이지는, 제1 칼럼(310), 제2 칼럼(330), 제3 칼럼(340), 제4 칼럼(350), 및 제5 칼럼(360)을 포함할 수도 있다. 칼럼(310, 330, 340, 350, 및 360)의 각각은, 디바이스 상에 디스플레이되는 동일한 웹 페이지를 갖는 별개의 세션에 대응한다. 예를 들면, 칼럼(310)은, 모바일 디바이스가 웹 페이지에 액세스하는 오전 5:30의 아침 세션에 대응할 수도 있다. 칼럼(330)은, 동일한 웹 페이지에 데스크탑이 액세스하는 오전 8:15의 아침 세션에 대응할 수도 있다.
대응하는 디바이스에 의해 웹 페이지 상에서 수행된 액티비티의 설명(예를 들면, 세션 데이터)은, 각각의 칼럼 내에 있다. 액티비티는 유저가 웹 페이지에서 보고 있는 컨텐츠를 설명할 수도 있다. 추가적으로, 액티비티는 웹 페이지에 대하여 유저에 의해 수행된 액션(예를 들면, 이미지를 보는 것, 입찰을 하는 것, 입찰을 검토하는 것, 및 감시(watch)하는 것)을 설명할 수도 있다. 예를 들면, 용어 "감시"는, 아이템에 관련하는 통지를 수신하기 위해, 유저가 시청 리스트 상에 아이템을 배치한 것을 설명할 수도 있다. 다른 예에서, 용어 "감시 삭제"는, 아이템에 관련하는 통지의 수신을 중지하기 위해, 유저가 감시 리스트에서 아이템을 삭제한 것을 기술할 수도 있다.
게다가, 칼럼의 길이는 세션 동안 수행된 액티비티의 양에 대응한다. 예를 들면, 제1 칼럼(310)의 길이는 경계 320에서 끝나는데, 제1 칼럼과 관련되는 액티비티가 웹 페이지 상에서 신발을 보는 것만을 포함하기 때문이다. 대조적으로, 칼럼(350)의 길이는 더 긴데, 유저가, 신발을 보는 것 외에, 세 개의 입찰을 하였고 그 입찰 중 두 개를 검토했기 때문이다.
시각화 페이지(300) 상에 디스플레이되는 칼럼은 이미지를 또한 포함할 수도 있다. 예를 들면, 웹 페이지에서 유저가 보고 있는 이미지에 대응하는 이미지(365)가, 칼럼(360) 내에 디스플레이된다. 따라서, 세션 데이터는, 웹 페이지에서 유저가 본 이미지를 포함한다. 도 3에서는 다섯 개의 칼럼이 도시되지만, 칼럼의 수는, 유저에 대응하는, 동일한 웹 페이지에 액세스하는 별개의 세션의 수에 대응할 것이다는 것을 유의한다. 몇몇 경우에, 각각의 칼럼 내의 설명은 또한, 아이템 자체에 관련할 수도 있다. 예를 들면, 칼럼(330) 내의 "사이즈 10의 남성 클래식화"의 설명은, 웹 페이지 상에서 유저가 보고 있는 신발을 설명할 수도 있다.
도 4는, 표시 모듈(250)에 의해 리사이징된 시각화 페이지를 디스플레이하는 예시적인 유저 인터페이스(400)이다. 리사이징은, 웹페이지에 대한 세션 데이터의 모두를 단일의 시각화 페이지에 맞추기 위해 표시 모듈(250)에 의해 수행된다. 본 예시적인 유저 인터페이스(400)에서는, 두 개의 추가적인 칼럼(두 개의 추가적인 세션을 나타냄)이 도 3의 시각화 페이지로부터 추가된다. 세션 데이터의 리사이징은, 유저 인터페이스(400) 상에 디스플레이되는 데이터의 해상도를 조정하는 것을 포함할 수도 있다. 예를 들면, 도 3의 이미지(365)는, 데이터의 모두가 시각화 페이지에 맞추어지도록, 이미지(420) 안으로 (예를 들면, 더 작게) 리사이징될 수도 있다. 다른 예에서, 도 4의 칼럼(410)은 도 3의 제1 칼럼(310)의 리사이징된 버전일 수도 있다.
도 5 내지 도 8은, 몇몇 예시적인 실시형태에 따른, 시각화 페이지 상에 세션 데이터를 표시하는 방법(500)을 수행함에 있어서의 서버 머신(110)의 동작을 예시하는 플로우차트이다. 방법(500)에서의 동작은, 도 2에 대하여 상기에서 설명된 모듈을 사용하여, 서버 머신(110)에 의해 수행될 수도 있다. 도 5에서 도시되는 바와 같이, 방법(500)은 동작(510, 520, 530, 540, 및 550)을 포함한다.
동작 510에서, 수신 모듈(210)은 유저와 관련되는 제1 디바이스로부터 아이템 페이지에 액세스하려는 요청을 수신한다. 상기에서 언급된 바와 같이, 아이템 페이지는 아이템의 설명 및 아이템의 이미지를 포함할 수도 있다. 아이템 페이지는 또한, 유저가 아이템 페이지와 상호작용하도록 동작가능한 제어부를 포함할 수도 있다. 예를 들면, 제어부는 아이템 페이지의 내비게이션에 관련될 수도 있다. 제어부는 또한, 유저가, 예를 들면, 추가 정보를 보는 것, 아이템을 감시 리스트 또는 소망 리스트에 아이템을 추가하는 것, 아이템에 대해 입찰하는 것, 아이템 페이지에 디스플레이되는 아이템을 구매하는 것을 허용할 수도 있다. 몇몇 경우에서, 복수의 이미지가 아이템 페이지와 관련되며, 제어부는 아이템 페이지와 관련되는 복수의 이미지를 통해 브라우징하기 위해 사용된다. 또한, 요청은 유저의 유저 계정에 대한 유저 인증서를 포함할 수도 있다.
동작 520에서, 수신 모듈(210)은 유저와 관련되는 제2 디바이스로부터 웹 페이지에 액세스하려는 요청을 수신한다. 제2 요청은 유저의 유저 계정에 대한 유저 인증서를 포함할 수도 있다.
동작 530에서 세션 모듈(240)은, 동작 530에서 식별된 제1 디바이스 상에 그리고 제2 디바이스 상에 디스플레이되는 아이템 페이지와의 유저에 의해 수행된 유저 상호작용에 관련하는 세션 데이터를 수신한다. 세션 데이터는, 예를 들면, 제1 디바이스 또는 제2 디바이스 중 적어도 하나 상에서의 유저에 의한 아이템 페이지의 내비게이션에 관련하는 임의의 데이터를 포함할 수도 있다. 세션 데이터는, 유저가 보는 아이템 페이지로부터의 이미지를 포함할 수도 있다. 예를 들면, 유저는 제1 디바이스를 사용하여 아이템 페이지로부터의 이미지를 브라우징할 수도 있다. 그 후, 유저는 제2 디바이스를 사용하여 아이템 페이지부터 그 아이템을 구매할 수도 있다. 복수의 세션이 완료된 이후 세션 데이터가 수신되는 것으로 도시되지만, 몇몇 실시형태에서, 세션 데이터는 각각의 세션 동안 또는 각각의 세션이 완료된 이후 수신될 수도 있다.
동작 540에서, 생성 모듈(220)은 수신된 세션 데이터를 사용하여 시각화 페이지를 생성한다.
동작 550에서, 표시 모듈(250)은 시각화 페이지를 표시한다. 하기에서 더 설명되는 바와 같이, 시각화 페이지는 칼럼 안으로 편제될 수도 있다. 각각의 칼럼은, 제1 디바이스 또는 제2 디바이스 중 적어도 하나가 아이템 페이지에 액세스하는 세션을 나타낼 수도 있다.
도 6에서 도시되는 바와 같이, 방법(500)은 동작(610, 620, 및 630) 중 하나 이상을 포함할 수도 있다.
동작 610에서, 생성 모듈(220)은, 유저의 유저 계정을 아이템 페이지와 관련시키는 레코드를 생성한다.
동작 620에서, 생성 모듈(220)은 제2 디바이스가 아이템 페이지에 액세스했다는 것을 나타내기 위해 레코드를 업데이트한다. 업데이트된 레코드는, 제1 및 제2 디바이스 둘 다가 동일한 아이템 페이지에 액세스했고 이들 둘 다가 동일한 유저와 관련된다는 것을 더 나타내기 위해 사용될 수도 있다. 게다가, 동작 530에서의 세션 데이터의 수신은 업데이트된 레코드에 기초할 수도 있다.
동작 630에서, 생성 모듈(220)은 세션 데이터를 저장하는 데이터베이스에 액세스한다. 아이템 페이지와의 유저에 의해 수행된 유저 상호작용에 관련하는 세션 데이터는 데이터베이스(예를 들면, 데이터베이스(115))에 저장될 수도 있거나 그 데이터베이스로부터 검색될 수도 있다.
도 7에서 도시되는 바와 같이, 방법(500)은 동작(710, 720, 730, 및 740) 중 하나 이상을 포함할 수도 있다.
동작 710에서, 생성 모듈(220)은, 제1 디바이스 상에 디스플레이되는 웹 페이지에 대하여 수행된 유저 상호작용에 관련하는 제1 세션 데이터를 파싱한다. 세션 데이터는, 세션 데이터가 수신되는 제1 디바이스의 식별자로 라벨링될 수도 있다.
동작 720에서, 생성 모듈(220)은, 제2 디바이스 상에 디스플레이되는 웹 페이지에 대하여 수행된 유저 상호작용에 관련하는 제2 세션 데이터를 파싱한다. 따라서, 세션 데이터는, 세션 데이터가 수신되는 제2 디바이스의 식별자로 라벨링될 수도 있다. 생성 모듈(220)은, 유저 상호작용에 관련하는 모든 데이터가 프로세싱될 때까지, 동일한 아이템 페이지에 대한 유저 상호작용에 관련되는 데이터를 계속 파싱(예를 들면, 추출)한다.
동작 730에서, 생성 모듈(220)은, 제1 디바이스에 대응하는 제1 칼럼에, 제1 세션 데이터를 할당한다. 그 후, 표시 모듈(250)은, 제1 디바이스에 대응하는 칼럼 내의 제1 세션 데이터를 시각화 페이지 상에 표시할 수도 있다.
동작 740에서, 생성 모듈(220)은, 제1 디바이스에 대응하는 제2 칼럼에, 제2 세션 데이터를 할당한다. 그 후, 표시 모듈(250)은, 제2 디바이스에 대응하는 칼럼 내의 제2 세션 데이터를 시각화 페이지 상에 표시할 수도 있다. 생성 모듈(220)은, 동일한 아이템에 대한 유저 상호작용에 대한 모든 데이터가 위치결정될 때까지, 유저 상호작용에 관련하는 데이터를 칼럼에 계속 할당한다.
도 8에서 도시되는 바와 같이, 방법(500)은 동작(810, 820, 830, 840, 및 850) 중 하나 이상을 포함할 수도 있다. 도 8의 동작은 동작(550)의 일부로서 발생할 수도 있다.
동작 810에서, 생성 모듈(220)은 복수의 세션을 식별하는데, 그 복수의 세션 동안, 복수의 디바이스(예를 들면, 제1 디바이스 및 제2 디바이스)가 아이템 페이지에 액세스한다. 예를 들면, 복수의 세션은 복수의 시간 범위에 대응할 수도 있다.
동작 820에서, 표시 모듈(250)은, 복수의 세션에 대응하는 복수의 칼럼을 시각화 페이지 상에 디스플레이한다. 게다가, 각각의 칼럼은 특정 디바이스에 대한 특정 시간 범위에 대응할 수도 있다.
동작 830에서, 표시 모듈(250)은, 세션 데이터로부터 추출되는 유저 상호작용에 관련하는 데이터를 디스플레이하기 위해 필요한 치수가 시각화 페이지의 치수를 초과하는지의 여부를 판정할 수도 있다. 예를 들면, 표시될 유저 상호작용에 관련하는 데이터의 양으로 인해, 세션 데이터의 양은 표준 시각화 페이지에 맞추기에 너무 클 수도 있다.
동작 840에서, 표시 모듈(250)은, 유저 상호작용에 관련하는 데이터의 치수가 시각화 페이지의 치수 내에 있도록, 유저 상호작용에 관련하는 데이터를 리사이징할 수도 있다. 예를 들면, 표시 모듈(250)은, 디스플레이될 세션 데이터가 시각화 페이지 내에 맞추어질 수도 있도록, 유저 상호작용에 관련하는 데이터의 해상도를 조정할 수도 있다.
동작 850에서, 표시 모듈(250)은, 유저 상호작용에 관련하는 리사이징된 데이터를 갖는 시각화 페이지를 표시한다. 예를 들면, 표시 모듈(250)은, 시각화 페이지를 디스플레이하기 위한 명령어를 유저의 클라이언트 디바이스로 전송한다.
도 9는, 머신 판독가능 매체(922)(예를 들면, 비일시적 머신 판독가능 매체, 머신 판독가능 저장 매체, 컴퓨터 판독가능 저장 매체, 또는 이들의 임의의 적절한 조합)로부터 명령어(924)를 판독할 수 있는 그리고 본원에서 논의되는 방법론 중 임의의 하나 이상을 전체적으로 또는 부분적으로 수행할 수 있는, 몇몇 예시적인 실시형태에 따른, 머신(900)의 컴포넌트를 예시하는 블록도이다. 구체적으로는, 도 9는 머신(900)을 컴퓨터 시스템(예를 들면, 컴퓨터)의 예시적인 형태로 예시하는데, 컴퓨터 시스템 내에서는, 머신(900)으로 하여금 본원에서 논의되는 방법론 중 임의의 하나 이상을 수행하게 하기 위한 명령어(924)(예를 들면, 소프트웨어, 프로그램, 애플리케이션, 애플릿, 앱, 또는 다른 실행가능 코드)가 전체적으로 또는 부분적으로 실행될 수도 있다.
대안적 실시형태에서, 머신(900)은 독립형 디바이스로서 동작하거나 다른 머신에 연결(예를 들면, 네트워크화)될 수도 있다. 네트워크화된 배치에서, 머신(900)은 서버-클라이언트 네트워크 환경에서 서버 머신 또는 클라이언트 머신의 자격으로 동작하거나, 또는 분산형(예를 들면, 피어투피어(peer-to-peer)) 네트워크 환경에서 피어 머신으로서 동작할 수도 있다. 머신(900)은, 서버 컴퓨터, 클라이언트 컴퓨터, 퍼스널 컴퓨터(personal computer; PC), 태블릿 컴퓨터, 랩탑 컴퓨터, 넷북, 셀룰러 전화, 스마트폰, 셋탑 박스(set-top box; STB), 개인 휴대형 정보 단말(personal digital assistant; PDA), 웹 애플리케이션, 네트워크 라우터, 네트워크 스위치, 네트워크 브리지, 또는 그 머신에 의해 취해질 액션을 규정하는 명령어(924)를 순차적으로 또는 다르게 실행할 수 있는 임의의 머신일 수도 있다. 게다가, 단일의 머신이 예시되지만, 용어 "머신"은, 본원에서 논의되는 방법론 중 임의의 하나 이상을 수행하기 위해, 명령어(924)를 개별적으로 또는 조인트하여 실행하는 머신의 임의의 집합체를 포함하는 것으로 또한 이해될 수도 있을 것이다.
머신(900)은, 프로세서(902)(예를 들면, 중앙 프로세싱 유닛(central processing unit; CPU), 그래픽 프로세싱 유닛(graphics processing unit; GPU), 디지털 신호 프로세서(digital signal processor; DSP), 주문형 반도체(application specific integrated circuit; ASIC), 무선 주파수 집적 회로(radio-frequency integrated circuit; RFIC), 또는 이들의 임의의 적절한 조합), 메인 메모리(904), 및 정적 메모리(906)를 포함하는데, 이들은 버스(908)를 통해 서로 통신하도록 구성된다. 프로세서(902)는, 프로세서(902)가 본원에서 설명되는 방법론 중 임의의 하나 이상을 전체적으로 또는 부분적으로 수행하게끔 구성가능하도록, 명령어(924) 중 일부 또는 전체에 의해, 일시적으로 또는 영구적으로, 구성가능한 마이크로회로를 포함할 수도 있다. 예를 들면, 프로세서(902)의 하나 이상의 마이크로회로의 세트는, 본원에서 설명되는 하나 이상의 모듈(예를 들면, 소프트웨어 모듈)을 실행하도록 구성가능할 수도 있다.
머신(900)은 그래픽 디스플레이(910)(예를 들면, 플라즈마 디스플레이 패널(plasma display panel; PDP), 발광 다이오드(light emitting diode; LED) 디스플레이, 액정 디스플레이(liquid crystal display; LCD), 음극선관(cathode ray tube; CRT), 또는 그래픽 또는 비디오를 디스플레이할 수 있는 임의의 다른 디스플레이)를 더 포함할 수도 있다. 머신(900)은 또한, 영숫자 입력 디바이스(912)(예를 들면, 키보드 또는 키패드), 커서 제어 디바이스(914)(예를 들면, 마우스, 터치패드, 트랙볼, 조이스틱, 모션 센서, 눈 추적용 디바이스, 또는 다른 포인팅 기기), 저장 유닛(916), 오디오 발생 디바이스(918)(예를 들면, 사운드 카드, 증폭기, 스피커, 헤드폰 잭, 또는 이들의 임의의 적절한 조합), 및 네트워크 인터페이스 디바이스(920)를 포함할 수도 있다.
저장 유닛(916)은, 본원에서 설명되는 방법론 또는 기능 중 임의의 하나 이상을 구체화하는 명령어(924)가 저장되는 머신 판독가능 매체(922)(예를 들면, 유형의 그리고 비일시적 머신 판독가능 저장 매체)를 포함한다. 명령어(924)는 또한, 머신(900)에 의한 그 실행 이전에 또는 동안에, 메인 메모리(904) 내에, 프로세서(902) 내에(예를 들면, 프로세서의 캐시 메모리 내에), 또는, 둘 다에, 완전히 또는 적어도 부분적으로, 상주할 수도 있다. 따라서, 메인 메모리(904) 및 프로세서(902)는 머신 판독가능 매체(예를 들면, 유형의 그리고 비일시적 머신 판독가능 매체)로서 간주될 수도 있다. 명령어(924)는, 네트워크 인터페이스 디바이스(920)를 경유하여 네트워크(190)를 통해 송신되거나 또는 수신될 수도 있다. 예를 들면, 네트워크 인터페이스 디바이스(920)는, 임의의 하나 이상의 전송 프로토콜(예를 들면, 하이퍼텍스트 전송 프로토콜(hypertext transfer protocol; HTTP))을 사용하여 명령어(924)를 전달할 수도 있다.
몇몇 예시적인 실시형태에서, 머신(900)은 휴대형 컴퓨팅 디바이스, 예컨대 스마트폰 또는 태블릿 컴퓨터일 수도 있고, 하나 이상의 추가적인 입력 컴포넌트(930)(예를 들면, 센서 또는 게이지)를 구비할 수도 있다. 이러한 입력 컴포넌트(930)의 예는, 이미지 입력 컴포넌트(예를 들면, 하나 이상의 카메라), 오디오 입력 컴포넌트(예를 들면, 마이크), 방향 입력 컴포넌트(예를 들면, 콤파스), 위치 입력 컴포넌트(예를 들면, 글로벌 포지셔닝 시스템(global positioning system; GPS) 수신기), 방위 컴포넌트(예를 들면, 자이로스코프), 모션 검출 컴포넌트(예를 들면, 하나 이상의 가속도계), 고도 검출 컴포넌트(예를 들면, 고도계), 및 가스 검출 컴포넌트(예를 들면, 가스 센서)를 포함한다. 이들 입력 컴포넌트 중 임의의 하나 이상에 의해 수집되는 입력은, 본원에서 설명되는 모듈 중 임의의 것에 의해 액세스될 수도 있거나 또는 그 임의의 것에 의한 사용에 이용가능할 수도 있다.
본원에서 사용되는 바와 같이, 용어 "메모리"는, 데이터를 일시적으로 또는 영구적으로 저장할 수 있는 머신 판독가능 매체를 가리키며, 랜덤 액세스 메모리(random-access memory; RAM), 리드 온리 메모리(read-only memory; ROM), 버퍼 메모리, 플래시 메모리, 및 캐시 메모리를 포함하는 것으로 간주될 수도 있지만, 그러나 이들로 제한되지는 않는다. 머신 판독가능 매체(922)가 예시적인 구체예에서 단일의 매체인 것으로 도시되지만, "머신 판독가능 매체"는 명령어를 저장할 수 있는 단일의 매체 또는 다수의 매체(예를 들면, 중앙집중형 또는 분산형 데이터베이스, 또는 관련 캐시 및 서버)를 포함하는 것으로 이해되어야만 한다. 용어 "머신 판독가능 매체"는 또한, 명령어(924)가, 머신(900)의 하나 이상의 프로세서(예를 들면, 프로세서(902))에 의해 실행될 때, 머신(900)으로 하여금 본원에서 설명되는 방법론 중 임의의 하나 이상을 전체적으로 또는 부분적으로 수행하게 하도록, 머신(900)에 의한 실행을 위한 명령어(924)를 저장할 수 있는 임의의 매체, 또는 다수의 매체의 조합을 포함하는 것으로 이해되어야 할 것이다. 따라서, "머신 판독가능 매체"는 단일의 저장 장치 또는 디바이스 뿐만 아니라, 다수의 저장 장치 또는 디바이스를 포함하는 클라우드 기반 저장 시스템 또는 저장 네트워크를 가리킨다. 용어 "머신 판독가능 매체"는, 솔리드 스테이트 메모리, 광학 매체, 자기 매체, 또는 이들의 임의의 적절한 조합의 형태의 하나 이상의 유형의(예를 들면, 비일시적) 데이터 저장소를 포함하는 것으로 이해되어야 할 것이지만, 그러나 이들로 제한되지는 않는다.
또한, 유형의 머신 판독가능 매체(1522)는, 그것이 전파 신호를 구체화하지 않는다는 점에서 비일시적이다. 그러나, 유형의 머신 판독가능 매체(1522)를 "비일시적"으로 이름 붙이는 것은, 매체가 이동할 수 없다는 것을 의미하는 것으로 간주되어선 안되며 - 매체는 하나의 물리적인 장소에서 다른 곳으로 이송가능한 것으로 간주되어야 한다. 추가적으로, 머신 판독가능 매체(1522)가 유형의 것이기 때문에, 매체는 머신 판독가능 디바이스인 것으로 간주될 수도 있다.
본 명세서 전체에 걸쳐, 단일 인스턴스로 설명된 컴포넌트, 동작, 또는 구조를 복수의 인스턴스가 구현할 수도 있다. 하나 이상의 방법들의 개개의 동작이 개별적인 동작으로서 예시되고 설명되었지만, 개개의 동작 중 하나 이상은 동시에 수행될 수도 있고, 동작이 예시된 순서대로 수행되어야 할 필요는 없다. 예시적인 구성에서 별개의 컴포넌트로서 제시된 기능 및 구조는 결합된 구조 또는 컴포넌트로서 구현될 수도 있다. 마찬가지로, 단일 컴포넌트로서 제시된 기능 및 구조는 별개의 컴포넌트로서 구현될 수도 있다. 이들 및 다른 변형예, 수정예, 추가예, 및 개선예는 본원의 주제의 범위 내에 있다.
소정의 실시형태가 로직 또는 다수의 컴포넌트, 모듈, 또는 메커니즘을 포함하는 것으로서 본원에서 설명된다. 모듈은 소프트웨어 모듈(예를 들면, 머신 판독가능 매체 상에서 또는 송신 매체에서 저장되거나 또는 다르게는 구체화되는 코드), 하드웨어 모듈, 또는 이들의 임의의 적절한 조합을 구성할 수도 있다. "하드웨어 모듈"은, 소정의 동작을 수행할 수 있는 유형의(예를 들면, 비일시적) 유닛이며 소정의 물리적인 방식으로 구성되거나 또는 정렬될 수도 있다. 다양한 예시적인 실시형태에서, 하나 이상의 컴퓨터 시스템(예를 들면, 독립형 컴퓨터 시스템, 클라이언트 컴퓨터 시스템, 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템의 하나 이상의 하드웨어 모듈(예를 들면, 프로세서 또는 프로세서의 그룹)은 본원에서 설명되는 바와 같은 소정 동작을 수행하도록 동작하는 하드웨어 모듈로서 소프트웨어(예를 들면, 애플리케이션 또는 애플리케이션 부분)에 의해 구성될 수도 있다.
몇몇 실시형태에서, 하드웨어 모듈은 기계적으로, 전자적으로, 또는 이들의 임의의 적절한 조합으로 구현될 수도 있다. 예를 들면, 하드웨어 모듈은, 소정의 동작을 수행하도록 영구적으로 구성되는 전용 회로부 또는 로직을 포함할 수도 있다. 예를 들면, 하드웨어 모듈은 특수 목적의 프로세서, 예컨대 필드 프로그래머블 게이트 어레이(field programmable gate array; FPGA) 또는 ASIC일 수도 있다. 하드웨어 모듈은 또한, 소정의 동작을 수행하도록 소프트웨어에 의해 일시적으로 구성되는 프로그래머블 로직 또는 회로부를 포함할 수도 있다. 예를 들면, 하드웨어 모듈은, 범용 프로세서 또는 다른 프로그래머블 프로세서 내에 포괄되는 소프트웨어를 포함할 수도 있다. 전용의 그리고 영구적으로 구성되는 회로부에서 또는 일시적으로 구성되는 회로부(예를 들면, 소프트웨어에 의해 구성됨)에서 하드웨어 모듈을 기계적으로 구현하기 위한 결정은 비용 및 시간의 고려사항에 의해 추진될 수도 있다는 것을 알 수 있을 것이다.
따라서, 어구 "프로세싱 모듈"은 유형의 엔티티를 포괄하는 것으로 이해되어야 하며, 이러한 유형의 엔티티는, 본원에서 설명되는 소정의 동작을 수행하도록 또는 소정의 방식으로 동작시키도록 물리적으로 구성되거나, 영구적으로 구성되거나(예를 들면, 하드웨어에 내장되거나(hardwired)), 또는 일시적으로 구성될(예를 들면, 프로그래밍될) 수도 있다. 본원에서 사용되는 바와 같이, "하드웨어 구현 모듈"은 하드웨어 모듈을 가리킨다. 하드웨어 모듈이 일시적으로 구성되는(예를 들면, 프로그래밍되는) 실시형태를 고려하면, 하드웨어 모듈의 각각은 시간의 임의의 한 인스턴스에서 구성되거나 예시화될 필요는 없다. 예를 들면, 특수 목적의 프로세서가 되도록 소프트웨어에 의해 구성되는 범용 프로세서를 하드웨어 모듈이 포함하는 경우, 범용 프로세서는 상이한 시간에 각각 상이한 특수 목적의 프로세서(예를 들면, 상이한 하드웨어 모듈을 포함함)를 포함하는 것으로 구성될 수도 있다. 따라서, 소프트웨어(예를 들면, 소프트웨어 모듈)는, 예를 들면, 시간의 한 인스턴스에서 특정한 하드웨어 모듈을 구성하도록 그리고 시간의 상이한 인스턴스에서 상이한 하드웨어 모듈을 구성하도록, 하나 이상의 프로세서를 구성할 수도 있다.
하드웨어 모듈은 다른 하드웨어 모듈로 정보를 제공하고, 그리고 다른 하드웨어 모듈로부터 정보를 수신할 수 있다. 따라서, 설명된 하드웨어 모듈은 통신가능하게 커플링된 것으로 간주될 수도 있다. 다수의 하드웨어 모듈이 동시적으로 존재하는 경우, 통신은 하드웨어 모듈 중 둘 이상 간의 또는 사이의 (예를 들면, 적절한 회로 및 버스를 통한) 신호 송신을 통해 달성될 수도 있다. 다수의 하드웨어 모듈이 상이한 시간에 구성되거나 예시화되는 실시형태에서, 이러한 하드웨어 모듈 사이의 통신은, 예를 들면, 다수의 하드웨어 모듈이 액세스할 수 있는 메모리 구조체에서의 정보의 저장 및 검색을 통해 달성될 수도 있다. 예를 들면, 하나의 하드웨어 모듈은 한 동작을 수행하고, 자신이 통신가능하게 커플링되어 있는 메모리 디바이스에 그 동작의 출력을 저장한다. 그 다음, 나중의 시간에, 다른 하드웨어 모듈이 메모리 디바이스에 액세스하여 저장된 출력을 검색하여 프로세싱할 수도 있다. 하드웨어 모듈은 또한, 입력 또는 출력 디바이스와의 통신을 개시할 수도 있고 리소스(예를 들면 정보의 집합(collection))에 대해 동작할 수도 있다.
본원에서 설명되는 예시적인 방법의 다양한 동작은, 관련 동작을 수행하도록 (예를 들면, 소프트웨어에 의해) 일시적으로 구성되거나 또는 영구적으로 구성되는 하나 이상의 프로세서에 의해, 적어도 부분적으로, 수행될 수도 있다. 일시적으로 구성되든 또는 영구적으로 구성되든지간에, 이러한 프로세서는 본원에서 설명되는 하나 이상의 동작 또는 기능을 수행하도록 동작하는 프로세서 구현 모듈(processor-implemented module)을 구성할 수도 있다. 본원에서 사용되는 바와 같이, "프로세서 구현 모듈"은 하나 이상의 프로세서를 사용하여 구현되는 하드웨어 모듈을 가리킨다.
마찬가지로, 본원에서 설명되는 방법은, 적어도 부분적으로 프로세서 구현될 수도 있는데, 프로세서는 하드웨어의 예이다. 예를 들면, 한 방법의 동작 중 적어도 몇몇은 하나 이상의 프로세서 또는 프로세서 구현 모듈에 의해 수행될 수도 있다. 본원에서 사용되는 바와 같이, "프로세서 구현 모듈"은, 하드웨어가 하나 이상의 프로세서를 포함하는 하드웨어 모듈을 가리킨다. 또한, 하나 이상의 프로세서는 또한, "서비스로서의 소프트웨어(software as a service; SaaS)"로서 또는 "클라우드 컴퓨팅" 환경에서 관련 동작의 수행을 지원하도록 동작할 수도 있다. 예를 들면, 동작 중 적어도 몇몇은 (프로세서를 포함하는 머신의 예로서의) 컴퓨터의 그룹에 의해 수행될 수도 있는데, 이들 동작은 네트워크(예를 들면, 인터넷)를 통해 그리고 하나 이상의 적절한 인터페이스(예를 들면, 애플리케이션 프로그램 인터페이스(application program interface; API))를 통해 액세스될 수 있다.
소정의 동작의 수행은, 단일 머신 내에 존재할 뿐만 아니라 다수의 머신에 걸쳐 배치되는 하나 이상의 프로세서 사이에서 분산될 수도 있다. 몇몇 예시적인 실시형태에서, 하나 이상의 프로세서 또는 프로세서 구현 모듈은 단일의 지리적 위치에(예를 들면, 홈 환경, 오피스 환경, 또는 서버 팜 내에) 위치될 수도 있다. 다른 예시적인 실시형태에서, 하나 이상의 프로세서 또는 프로세서 구현 모듈은 다수의 지리적 위치에 걸쳐 분산될 수도 있다.
본원에서 논의되는 주제 중 몇몇 부분은, 머신 메모리(예를 들면, 컴퓨터 메모리) 내에서 비트 또는 이진 디지털 신호로서 저장되는 데이터에 대한 동작의 알고리즘 또는 심볼 표현의 항으로 표시될 수도 있다. 이러한 알고리즘 또는 심볼적 표현은, 데이터 프로세싱 분야의 통상의 지식을 가진 자가 그들의 연구(work)의 내용을 기술 분야의 다른 당업자에게 전달하기 위해 사용되는 기술의 예이다. 본원에서 사용되는 바와 같이, "알고리즘"은, 소망의 결과로 이어지는 자기 모순이 없는 동작의 시퀀스(self-consistent sequence) 또는 유사한 프로세싱이다. 이 맥락에서, 알고리즘 및 동작은 물리적 양의 물리적 조작을 수반한다. 필수적이지는 않지만 통상적으로, 이러한 양은, 저장, 액세스, 전송, 결합, 비교, 또는 머신에 의해 다르게 조작될 수 있는 전기적, 자기적, 또는 광학적 신호의 형태를 취할 수도 있다. 주로 공동 사용의 이유로 인해, 이러한 신호를 "데이터, "컨텐츠", "비트", "값", "엘리먼트", "심볼", "문자", "용어", "숫자", "수치" 등등과 같은 단어를 사용하여 가리키는 것이 가끔은 편리하다. 그러나, 이들 단어는 단지 편리한 라벨에 불과하며 적절한 물리적 양과 관련될 것이다.
구체적으로 다르게 언급되지 않는 한, "프로세싱", "컴퓨팅", "계산하는", "결정하는", "표시하는", "디스플레이하는" 등과 같은 단어를 사용하는 본원에서의 논의는, 하나 이상의 메모리(예를 들면, 휘발성 메모리, 불휘발성 메모리, 또는 이들의 임의의 적절한 조합), 레지스터, 또는 정보를 수신, 저장, 송신, 또는 디스플레이하는 다른 머신 컴포넌트 내에서 물리적(예를 들면, 전자적, 자기적, 또는 광학적) 양으로서 표현되는 데이터를 조작 또는 변환하는 머신(예를 들면, 컴퓨터)의 액션 또는 프로세스를 참조할 수도 있다. 또한, 구체적으로 그렇지 않다고 언급되지 않는 한, 단수형 용어는 하나 또는 하나보다 많은 인스턴스를 포함하도록 본원에서 사용되는데, 이러한 것은 특허 문헌에서는 일반적인 것이다. 마지막으로, 본원에서 사용되는 바와 같이, 접속사 "또는"은, 구체적으로 그렇지 않다고 언급되지 않는 한, 비배타적인 "또는"을 가리킨다.
본 발명의 주제의 개관이 특정한 예시적인 실시형태를 참조로 설명되었지만, 본 발명의 실시형태의 광의적인 범위를 벗어나지 않으면서, 다양한 수정예 및 변경예가 이들 실시형태에 대해 이루어질 수도 있다. 본 발명의 주제의 이러한 실시형태는, 편의상 그리고 하나보다 많은 것이 실제 개시되면 본 출원의 범위를 임의의 단일의 발명 또는 발명적 개념으로 자발적으로 제한하려는 의도 없이, 개별적으로 및/또는 총칭하여, 본원에서 단지 용어 "발명"에 의해 언급될 수도 있다.
본원에서 예시되는 실시형태는, 기술분야의 숙련된 자가 개시되는 교시를 실시하는 것을 가능하게 하기 위해 충분히 상세히 설명되어 있다. 본 교시로부터 다른 실시형태가 사용되고 유도될 수도 있으며, 그 결과, 본 개시의 범위를 벗어나지 않으면서 구조적인 그리고 논리적인 대체예 및 변경예가 이루어질 수도 있다. 따라서, 상세한 설명은, 제한적인 의미로 간주되어선 안되며, 다양한 실시형태의 범위는, 청구범위의 타이틀이 붙여지는 등가물의 모든 범위와 함께, 첨부의 청구범위에 의해서만 정의된다.
본원에서 사용되는 바와 같이, 용어 "또는"은 포괄적인 의미나 또는 배타적인 의미 중 어느 하나로 간주될 수도 있다. 또한, 단일의 인스턴스로서 본원에서 설명된 리소스, 동작, 또는 구조에 대해, 복수의 인스턴스가 제공될 수도 있다. 추가적으로, 다양한 리소스, 동작, 모듈, 엔진, 및 데이터 저장소 사이의 경계는 다소 임의의 적이며, 특정 동작은 특정한 예시적인 구성의 맥락에서 예시된다. 기능성의 다른 할당이 구상되며 본 발명의 다양한 실시형태의 범위 내에 있을 수도 있다. 일반적으로, 예시적인 구성에서 별개의 리소스로서 제공되는 구조 및 기능성은 결합된 구조 또는 리소스로서 구현될 수도 있다. 마찬가지로, 단일의 리소스로서 제공되는 구조 및 기능성은 별개의 리소스로서 구현될 수도 있다. 이들 및 다른 변형예, 수정예, 추가예, 및 개선예는, 첨부의 청구범위에 의해 나타내어지는 바와 같은 본 발명의 실시형태의 범위 내에 있다. 따라서, 명세서 및 도면은 제한적인 의미보다는 예시적인 의미로서 간주되어야 한다.

Claims (21)

  1. 복수의 디바이스에 걸친 액티비티를 표시하는 방법으로서,
    유저와 관련되는 제1 디바이스로부터 웹 페이지에 액세스하려는 요청 - 상기 요청은 상기 유저의 유저 계정에 대한 유저 인증서(user credentials)를 포함함 - 을 수신하는 단계와,
    상기 유저와 관련되는 제2 디바이스로부터 상기 웹 페이지에 액세스하려는 제2 요청 - 상기 제2 요청은 상기 유저의 상기 유저 계정에 대한 상기 유저 인증서를 포함함 - 을 수신하는 단계와,
    상기 제1 디바이스 및 상기 제2 디바이스 상에 디스플레이되는 상기 웹 페이지에 대하여 상기 유저에 의해 수행된 유저 상호작용에 관련하는 데이터를 포함하는 세션 데이터를 수신하는 단계와,
    프로세서에 의해, 상기 제1 디바이스 및 상기 제2 디바이스의 각각을 통해 상기 웹 페이지에 대하여 상기 유저에 의해 수행되는 상기 상호작용을 묘사(depict)하는 시각화 페이지(visualization page)를 생성하는 단계 - 상기 생성하는 단계는 상기 수신된 세션 데이터를 사용하여 수행됨 - 와,
    상기 시각화 페이지를 표시하는 단계를 포함하는
    방법.
  2. 제 1 항에 있어서,
    상기 유저의 상기 유저 계정을 상기 웹 페이지와 관련시키는 레코드를 생성하는 단계를 더 포함하는
    방법.
  3. 제 2 항에 있어서,
    상기 제2 디바이스가 상기 웹 페이지에 액세스했다는 것을 나타내기 위해 상기 레코드를 업데이트하는 단계를 더 포함하는
    방법.
  4. 제 3 항에 있어서,
    상기 세션 데이터를 수신하는 단계는 또한, 상기 제2 디바이스가 상기 웹 페이지에 액세스했다는 것을 나타내는 상기 업데이트된 레코드에 기초하는
    방법.
  5. 제 1 항에 있어서,
    상기 시각화 페이지를 생성하는 단계는, 상기 웹 페이지와의 유저 상호작용에 관련하는 상기 세션 데이터를 저장하는 데이터베이스에 액세스하는 단계를 포함하는
    방법.
  6. 제 1 항에 있어서,
    상기 시각화 페이지를 생성하는 단계는,
    상기 수신된 세션 데이터로부터, 상기 제1 디바이스 상에 디스플레이되는 웹 페이지에 대하여 수행된 유저 상호작용에 관련하는 제1 세션 데이터를 파싱하는 단계와,
    상기 수신된 세션 데이터로부터, 상기 제2 디바이스 상에 디스플레이되는 웹 페이지에 대하여 수행된 유저 상호작용에 관련하는 제2 세션 데이터를 파싱하는 단계를 포함하는
    방법.
  7. 제 6 항에 있어서,
    상기 시각화 페이지를 생성하는 단계는,
    상기 제1 세션 데이터를, 상기 제1 디바이스에 대응하는 상기 시각화 페이지 상의 제1 칼럼에 할당하는 단계와,
    상기 제2 세션 데이터를, 상기 제2 디바이스에 대응하는 상기 시각화 페이지 상의 제2 칼럼에 할당하는 단계를 포함하는
    방법.
  8. 제 1 항에 있어서,
    상기 시각화 페이지를 생성하는 단계는, 상기 수신된 세션 데이터로부터, 상기 제1 디바이스 및 상기 제2 디바이스가 상기 웹 페이지에 액세스하는 복수의 세션을 식별하는 단계를 포함하고,
    상기 표시하는 단계는, 상기 수신된 세션 데이터가 상기 복수의 세션에 대응하는 복수의 칼럼을 상기 시각화 페이지 상에 디스플레이하는 것을 포함하는
    방법.
  9. 제 1 항에 있어서,
    상기 시각화 페이지를 표시하는 단계는,
    상기 세션 데이터로부터 추출되는 유저 상호작용에 관련하는 데이터의 치수가 상기 시각화 페이지의 치수를 초과함을 판정하는 단계와,
    상기 유저 상호작용에 관련하는 데이터의 상기 치수가 상기 시각화 페이지의 상기 치수 내에 있도록, 상기 유저 상호작용에 관련하는 데이터를 리사이징(resize)하는 단계와,
    상기 유저 상호작용에 관련하는 리사이징된 데이터를 갖는 상기 시각화 페이지를 표시하는 단계를 포함하는
    방법.
  10. 제 1 항에 있어서,
    상기 시각화 페이지를 표시하는 단계는, 상기 시각화 페이지 상에서의 디스플레이를 위해 상기 세션 데이터로부터 추출된 유저 상호작용에 관련하는 데이터의 해상도를 조정하는 단계를 포함하는
    방법.
  11. 복수의 디바이스에 걸친 액티비티를 표시하는 시스템으로서,
    유저와 관련되는 제1 디바이스로부터 웹 페이지에 액세스하려는 요청 - 상기 요청은 상기 유저의 유저 계정에 대한 유저 인증서를 포함함 - 을 수신하고,
    상기 유저와 관련되는 제2 디바이스로부터 상기 웹 페이지에 액세스하려는 제2 요청 - 상기 제2 요청은 상기 유저의 상기 유저 계정에 대한 상기 유저 인증서를 포함함 - 을 수신하도록
    구성된 수신 모듈과,
    상기 제1 디바이스 및 상기 제2 디바이스 상에 디스플레이되는 상기 웹 페이지에 대하여 상기 유저에 의해 수행된 유저 상호작용에 관련하는 데이터를 포함하는 세션 데이터를 수신하도록 구성된 세션 모듈과,
    상기 제1 디바이스 및 상기 제2 디바이스의 각각을 통해 상기 웹 페이지에 대하여 상기 유저에 의해 수행되는 상기 상호작용을 묘사하는 시각화 페이지를 생성하도록 구성된 생성 모듈 - 상기 생성하는 것은 상기 수신된 세션 데이터를 사용하여 수행됨 - 과,
    상기 시각화 페이지를 표시하도록 구성된 표시 모듈을 포함하는
    시스템.
  12. 제 11 항에 있어서,
    상기 생성 모듈은 또한, 상기 유저의 상기 유저 계정을 상기 웹 페이지와 관련시키는 레코드를 생성하도록 구성되는
    시스템.
  13. 제 12 항에 있어서,
    상기 생성 모듈은 또한, 상기 제2 디바이스가 상기 웹 페이지에 액세스했다는 것을 나타내기 위해 상기 레코드를 업데이트하도록 구성되는
    시스템.
  14. 제 13 항에 있어서,
    상기 세션 모듈은 또한, 상기 제2 디바이스가 상기 웹 페이지에 액세스했다는 것을 나타내는 상기 업데이트된 레코드에 기초하여 상기 세션 데이터를 수신하도록 구성되는
    시스템.
  15. 제 11 항에 있어서,
    상기 생성 모듈은 또한, 상기 웹 페이지와의 유저 상호작용에 관련하는 상기 세션 데이터를 저장하는 데이터베이스에 액세스하도록 구성되는
    시스템.
  16. 제 11 항에 있어서,
    상기 생성 모듈은 또한,
    상기 수신된 세션 데이터로부터, 상기 제1 디바이스 상에 디스플레이되는 웹 페이지에 대하여 수행된 유저 상호작용에 관련하는 제1 세션 데이터를 파싱하고,
    상기 수신된 세션 데이터로부터, 상기 제2 디바이스 상에 디스플레이되는 웹 페이지에 대하여 수행된 유저 상호작용에 관련하는 제2 세션 데이터를 파싱하도록 구성되는
    시스템.
  17. 제 16 항에 있어서,
    상기 생성 모듈은 또한,
    상기 제1 세션 데이터를, 상기 제1 디바이스에 대응하는 상기 시각화 페이지 상의 제1 칼럼에 할당하고,
    상기 제2 세션 데이터를, 상기 제2 디바이스에 대응하는 상기 시각화 페이지 상의 제2 칼럼에 할당하도록 구성되는
    시스템.
  18. 제 11 항에 있어서,
    상기 생성 모듈은 또한, 상기 수신된 세션 데이터로부터, 상기 제1 디바이스 및 상기 제2 디바이스가 상기 웹 페이지에 액세스하는 복수의 세션을 식별하도록 구성되고,
    상기 표시 모듈은 또한, 상기 복수의 세션에 대응하는 복수의 칼럼을 상기 시각화 페이지 상에 디스플레이하도록 구성되는
    시스템.
  19. 제 11 항에 있어서,
    상기 표시 모듈은 또한,
    상기 세션 데이터로부터 추출되는 유저 상호작용에 관련하는 데이터의 치수가 상기 시각화 페이지의 치수를 초과함을 판정하고.
    상기 유저 상호작용에 관련하는 데이터의 상기 치수가 상기 시각화 페이지의 상기 치수 내에 있도록, 상기 유저 상호작용에 관련하는 데이터를 리사이징하고,
    상기 유저 상호작용에 관련하는 리사이징된 데이터를 갖는 상기 시각화 페이지를 표시하도록 구성되는
    시스템.
  20. 명령어를 저장하는 머신 판독가능 매체로서,
    상기 명령어는, 머신의 하나 이상의 프로세서에 의한 실행시, 상기 머신으로 하여금, 제 1 항 내지 제 10 항 중 어느 한 항의 방법을 수행하게 하는
    머신 판독가능 매체.
  21. 삭제
KR1020167015806A 2013-11-15 2014-11-13 다수의 디바이스에 걸친 액티비티 디스플레이 KR101845181B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361904697P 2013-11-15 2013-11-15
US61/904,697 2013-11-15
US14/506,021 US20160098414A1 (en) 2014-10-03 2014-10-03 Systems and methods to present activity across multiple devices
US14/506,021 2014-10-03
PCT/US2014/065446 WO2015073666A1 (en) 2013-11-15 2014-11-13 Displaying activity across multiple devices

Publications (2)

Publication Number Publication Date
KR20160085341A KR20160085341A (ko) 2016-07-15
KR101845181B1 true KR101845181B1 (ko) 2018-04-03

Family

ID=53058007

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167015806A KR101845181B1 (ko) 2013-11-15 2014-11-13 다수의 디바이스에 걸친 액티비티 디스플레이

Country Status (5)

Country Link
KR (1) KR101845181B1 (ko)
CN (1) CN105830051A (ko)
AU (1) AU2014348589A1 (ko)
CA (1) CA2929829C (ko)
WO (1) WO2015073666A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11582266B2 (en) * 2020-02-03 2023-02-14 Citrix Systems, Inc. Method and system for protecting privacy of users in session recordings
WO2022041163A1 (en) 2020-08-29 2022-03-03 Citrix Systems, Inc. Identity leak prevention

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010079549A (ja) * 2008-09-25 2010-04-08 Hitachi Ltd 管理装置及び計算機システム
US20130042312A1 (en) * 2011-08-09 2013-02-14 Mobileframe Llc Authentication in a smart thin client server

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020070953A1 (en) * 2000-05-04 2002-06-13 Barg Timothy A. Systems and methods for visualizing and analyzing conditioned data
KR20050039880A (ko) * 2002-09-16 2005-04-29 코닌클리케 필립스 일렉트로닉스 엔.브이. 제 1 컴퓨터 네트워크로부터 제 2 컴퓨터 네트워크로의통신 세션들 개시
US8443382B2 (en) * 2010-03-25 2013-05-14 Verizon Patent And Licensing Inc. Access controls for multimedia systems
NO332222B1 (no) * 2010-07-26 2012-07-30 Cisco Tech Inc Fremgangsmate og samhandlingsserver for a overfore en samhandlingssesjon, samt et multimedieendepunkt
US8473577B2 (en) * 2010-10-13 2013-06-25 Google Inc. Continuous application execution between multiple devices
WO2012074643A1 (en) * 2010-12-03 2012-06-07 Siemens Enterprise Communications, Inc. Method and apparatus for controlling sessions from one or more devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010079549A (ja) * 2008-09-25 2010-04-08 Hitachi Ltd 管理装置及び計算機システム
US20130042312A1 (en) * 2011-08-09 2013-02-14 Mobileframe Llc Authentication in a smart thin client server

Also Published As

Publication number Publication date
CA2929829C (en) 2018-07-24
CA2929829A1 (en) 2015-05-21
AU2014348589A1 (en) 2016-06-02
WO2015073666A1 (en) 2015-05-21
KR20160085341A (ko) 2016-07-15
CN105830051A (zh) 2016-08-03

Similar Documents

Publication Publication Date Title
US11362923B2 (en) Techniques for infrastructure analysis of internet-based activity
US20140365307A1 (en) Transmitting listings based on detected location
US20160098414A1 (en) Systems and methods to present activity across multiple devices
US20150310388A1 (en) Local couriers network in the context of an on-line trading platform
US20140337408A1 (en) Systems, methods and media for minimizing data downloads
US20160124614A1 (en) Content delivery based on real-time browsing activity
KR20210035348A (ko) 유사 그룹 요소 추출
US11914667B2 (en) Managing multi-dimensional array of data definitions
US9684904B2 (en) Issue response and prediction
US20160048857A1 (en) Systems and methods of collecting data to determine interest
US10147126B2 (en) Machine to generate a self-updating message
KR101845181B1 (ko) 다수의 디바이스에 걸친 액티비티 디스플레이
AU2014348888B2 (en) Presentation of digital content listings
US20140324626A1 (en) Systems and methods to present item recommendations
AU2014365804B2 (en) Presenting images representative of searched items
US10325306B2 (en) Recommending an item page
US9588988B2 (en) Visual indicators for temporal context on maps
US10652363B2 (en) Handling data processing units deployed on cloud computing systems for mobile applications
US20140325390A1 (en) Systems and methods to communicate a selected message
US20160147422A1 (en) Systems and methods to display contextual information
US20150339751A1 (en) Dynamic pricing model
US20180131763A1 (en) Framework for data geocoding
US9280353B1 (en) Cloud-based automatic mapping for cross-platform display

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