KR102079323B1 - 동적으로 할당된 가상 전화번호를 통해 음성 호와 관련된 데이터를 동기화하기 위한 시스템 및 방법 - Google Patents

동적으로 할당된 가상 전화번호를 통해 음성 호와 관련된 데이터를 동기화하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR102079323B1
KR102079323B1 KR1020177035794A KR20177035794A KR102079323B1 KR 102079323 B1 KR102079323 B1 KR 102079323B1 KR 1020177035794 A KR1020177035794 A KR 1020177035794A KR 20177035794 A KR20177035794 A KR 20177035794A KR 102079323 B1 KR102079323 B1 KR 102079323B1
Authority
KR
South Korea
Prior art keywords
processing system
data processing
voice call
entry
log
Prior art date
Application number
KR1020177035794A
Other languages
English (en)
Other versions
KR20180006954A (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 KR20180006954A publication Critical patent/KR20180006954A/ko
Application granted granted Critical
Publication of KR102079323B1 publication Critical patent/KR102079323B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/51Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
    • H04M3/5175Call or contact centers supervision arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0242Determining effectiveness of advertisements
    • G06Q30/0246Traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0242Determining effectiveness of advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • G06Q30/0256User search
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0277Online advertisement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/30Transportation; Communications
    • G06Q50/40
    • G06Q50/50
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/4872Non-interactive information services
    • H04M3/4878Advertisement messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/51Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
    • H04M3/5183Call or contact centers with computer-telephony arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/0024Services and arrangements where telephone services are combined with data services
    • H04M7/003Click to dial services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/01Details of billing arrangements
    • H04M2215/0192Sponsored, subsidised calls via advertising, e.g. calling cards with ads or connecting to special ads, free calling time by purchasing goods

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Telephonic Communication Services (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 동적으로 할당된 가상 전화 번호를 통해 음성 호와 관련된 데이터를 동기화하는 것에 관한 것이다. 시스템은 콘텐츠 제공자로부터 음성 호 엔트리를 수신한다. 상기 시스템은 많은 데이터 구조에 액세스하여 그 로그 데이터 구조를 파싱한다. 상기 시스템은 음성 호 엔트리의 디바이스 식별자를 상기 로그 엔트리의 디바이스 식별자와 매칭시킨다. 상기 시스템은 미리결정된 임계값이 상기 로그 엔트리의 시간 또는 지속시간에 의해 만족되는 것으로 결정한다. 상기 시스템은 상기 로그 엔트리에서 가상 전화 번호를 검색한다. 상기 시스템은 콘텐츠 아이템 노출 식별자를 결정하기 위해 록업을 수행한다. 상기 시스템은 상기 음성 호 엔트리를 통해 제공된 데이터를 저장한다.

Description

동적으로 할당된 가상 전화번호를 통해 음성 호와 관련된 데이터를 동기화하기 위한 시스템 및 방법
본 발명은 동적으로 할당된 가상 전화번호를 통해 음성 호와 관련된 데이터를 동기화하기 위한 시스템 및 방법에 관한 것이다.
인터넷과 같은 네트워크 환경에서, 사람 또는 회사와 같은 엔티티는 컴퓨팅 장치로 웹 페이지 또는 다른 인터페이스상에 디스플레이하기 위한 정보를 제공한다. 웹 페이지는 인터넷상에 디스플레이하기 위해 웹 페이지 서버를 통해 엔티티에 의해 제공된 텍스트, 비디오 또는 오디오 정보를 포함할 수 있다. 또한, 엔티티가 제공한 정보와 함께 웹 페이지에 표시하기 위해 추가 콘텐츠가 제3자에 의해 제공될 수도 있다. 따라서, 웹 페이지를 보는 사람은 웹 페이지의 주제(subject)인 정보뿐만 아니라 웹 페이지의 요지와 관련되거나 관련되지 않은 선택된 추가 콘텐츠에 액세스할 수 있다.
본 발명의 시스템 및 방법은 콘텐츠 제공자로부터 수신된 음성 호 엔트리(voice call entries)를 데이터 처리 시스템에 의해 유지되거나 검출된 로그 엔트리와 동기화 또는 매칭시키기 위한 데이터 처리 시스템에 관한 것이다. 콘텐츠 제공자로부터 수신된 음성 호 엔트리는 부정확하거나 손상되었을 수 있다. 데이터 처리 시스템은 부정확하거나 손상된 데이터를 해결하는 하나 이상의 데이터 처리 기술을 사용하여 수신된 음성 호 데이터를 데이터 처리 시스템의 내부 로그 엔트리와 매치시키도록 구성될 수 있다. 따라서, 본 발명은 음성 호 데이터를 내부 로그 엔트리와 매칭시키는 보다 정확한 방법을 제공한다.
적어도 하나의 양태는 네트워크를 통해 데이터를 동기화하는 방법에 관한 것이다. 데이터는 데이터 처리 시스템에 의해 동적으로 할당된 가상 전화 번호를 사용하여 이루어진 음성 호(voice calls)와 관련될 수 있다. 본 방법은 콘텐츠 제공자의 제공자 장치에 의해 수신된 음성 호에 대응하는 음성 호 엔트리를 수신하는 데이터 처리 시스템을 포함할 수 있다. 데이터 처리 시스템은 콘텐츠 계정 식별자를 사용하여 설정된 통신 채널을 통해 콘텐츠 제공자로부터 음성 호출 엔트리를 수신할 수 있다. 음성 호출 엔트리는 음성 호를 개시하는 장치의 디바이스 식별자를 식별하는 제1 필드, 음성 호의 시작 시간을 식별하는 제2 필드, 및 음성 호의 지속시간을 식별하는 제3 필드를 포함할 수 있다. 본 방법은 데이터 처리 시스템의 메모리에 유지되는 로그 데이터 구조에 액세스하는 데이터 처리 시스템을 포함할 수 있다. 로그 데이터 구조는 데이터 처리 시스템에 의해 수신된 음성 호에 대응하는 복수의 로그 엔트리를 저장 또는 포함할 수 있다. 본 방법은 로그 데이터 구조를 파싱하여 음성 호 엔트리에 대응하는 복수의 로그 엔트리의 로그 엔트리를 식별하는 데이터 처리 시스템이을 포함할 수 있다. 본 방법은 음성 호 엔트리에 포함된 디바이스 식별자를 로그 엔트리에 나타낸 디바이스 식별자와 매칭시키는 데이터 처리 시스템을 포함할 수 있다. 본 방법은 음성 호 엔트리의 시작 시간 또는 지속 시간 중 적어도 하나가 로그 엔트리의 각 시작 시간 또는 지속시간의 미리 결정된 임계값을 만족하는지를 결정하는 데이터 처리 시스템을 포함할 수 있다. 데이터 처리 시스템은 상기 디바이스 식별자를 매칭하는 것에 응답하여 상기 결정을 수행할 수 있다. 본 방법은 미리결정된 임계값이 만족된다는 결정에 응답하여 로그 엔트리로부터 가상 전화 번호를 검색하는 데이터 처리 시스템을 포함할 수 있다. 데이터 처리 시스템은 가상 전화 번호를 콘텐츠 제공자의 콘텐츠 아이템에 동적으로 할당하고, 콘텐츠 제공자의 콘텐츠 아이템과의 상호 작용에 응답하여 디바이스 식별자를 갖는 디바이스에 가상 전화 번호를 제공한다. 본 방법은 콘텐츠 아이템 노출 데이터 구조(content item impression data structure)에서 룩업을 수행하는 데이터 처리 시스템을 포함할 수 있다. 데이터 처리 시스템은 식별된 가상 전화 번호를 사용하여 룩(look)을 수행하고, 콘텐츠 아이템에 대한 가상 전화 번호의 제공을 초래한 콘텐츠 아이템의 노출을 식별하는 콘텐츠 아이템 노출 식별자(content item impression identifier)를 결정할 수 있다. 본 방법은 상기 콘텐츠 아이템 노출 식별자에 대응하는 데이터 구조에 상기 음성 호 엔트리를 통해 제공된 데이터를 저장하는 데이터 처리 시스템을 포함할 수 있다.
다른 양태는 네트워크를 통해 데이터를 동기화하는 시스템에 관한 것이다. 시스템은 하나 이상의 프로세서를 갖는 데이터 처리 시스템을 포함할 수 있다. 상기 시스템은 데이터 처리 시스템의 하나 이상의 프로세서에 의해 실행되는 매칭 엔진 및 제공자 인터페이스를 포함할 수 있다. 상기 제공자 인터페이스는 상기 콘텐츠 제공자의 제공자 디바이스에 의해 수신된 음성 호에 대응하는 음성 호 엔트리를 수신할 수 있다. 제공자 인터페이스는 콘텐츠 계정 식별자를 사용하여 설정된 통신 채널을 통해 콘텐츠 제공자로부터 음성 호 엔트리를 수신할 수 있다. 상기 음성 호 엔트리는 음성 호를 개시하는 디바이스의 디바이스 식별자를 식별하는 제1 필드, 음성 호의 시작 시간을 식별하는 제2 필드, 및 음성 호의 지속시간을 식별하는 제3 필드를 포함할 수 있다. 상기 매칭 엔진은 데이터 처리 시스템의 메모리에 유지되는 로그 데이터 구조에 액세스할 수 있다. 상기 로그 데이터 구조는 데이터 처리 시스템에 의해 수신된 음성 호에 대응하는 복수의 로그 엔트리를 저장 또는 포함할 수 있다. 상기 데이터 처리 시스템은 로그 데이터 구조를 파싱하여 음성 호 엔트리에 대응하는 복수의 로그 엔트리의 로그 엔트리를 식별할 수 있다. 상기 데이터 처리 시스템은 음성 호 엔트리에 포함된 디바이스 식별자를 로그 엔트리에 나타낸 디바이스 식별자와 매칭시킬 수 있다. 상기 데이터 처리 시스템은 음성 호 엔트리의 시작 시간 또는 지속시간 중 적어도 하나가 로그 엔트리의 각 시작 시간 또는 지속시간의 미리결정된 임계 값을 만족시키는지를 결정할 수 있다. 상기 데이터 처리 시스템은 디바이스 식별자를 매칭하는 것에 응답하여 상기 결정을 수행할 수 있다. 상기 데이터 처리 시스템은 미리결정된 임계값이 만족된다는 결정에 응답하여 상기 로그 엔트리로부터 가상 전화 번호를 검색할 수 있다. 상기 데이터 처리 시스템은 가상 전화 번호를 콘텐츠 제공자의 콘텐츠 아이템에 동적으로 할당하고, 콘텐츠 제공자의 콘텐츠 아이템과의 상호 작용에 응답하여 상기 디바이스 식별자를 갖는 디바이스에 가상 전화 번호를 제공한다. 상기 데이터 처리 시스템은 콘텐츠 아이템 노출 데이터 구조에서 룩업을 수행할 수 있다. 상기 데이터 처리 시스템은 상기 식별된 가상 전화 번호를 사용하여 룩(look)을 수행하고, 콘텐츠 아이템에 대한 가상 전화 번호의 제공을 초래한 콘텐츠 아이템의 노출(impression)을 식별하는 콘텐츠 아이템 노출 식별자를 결정할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 아이템 노출 식별자에 대응하는 데이터 구조에 음성 호 엔트리를 통해 제공된 데이터를 저장할 수 있다.
또 다른 양태는 본 명세서에서 설명된 바와 같이 본 발명의 방법에 따른 컴퓨터 네트워크를 통해 데이터를 동기화하도록 데이터 처리 시스템에 지시하는 명령들을 갖으며, 비일시적인 컴퓨터 판독 가능 매체일 수 있는 컴퓨터 판독 가능 매체에 관한 것이다. 상기 명령들은 콘텐츠 제공자의 제공자 디바이스에 의해 수신된 음성 호에 대응하는 음성 호 엔트리를 수신하기 위한 명령들을 포함할 수 있다. 상기 명령들은 콘텐츠 계정 식별자를 사용하여 설정된 통신 채널을 통해 콘텐츠 제공자로부터 음성 호 엔트리를 수신하기 위한 명령들을 포함할 수 있다. 상기 음성 호 엔트리는 음성 호를 개시하는 디바이스의 디바이스 식별자를 식별하는 제1 필드, 음성 호의 시작 시간을 식별하는 제2 필드, 및 음성 호의 지속시간을 식별하는 제3 필드를 포함할 수 있다. 상기 명령들은 데이터 처리 시스템의 메모리에 유지되는 로그 데이터 구조에 액세스하기 위한 명령들을 포함할 수 있다. 상기 로그 데이터 구조는 데이터 처리 시스템에 의해 수신된 음성 호에 대응하는 복수의 로그 엔트리를 저장 또는 포함할 수 있다. 상기 명령들은 로그 데이터 구조를 파싱하여 음성 호 엔트리에 대응하는 복수의 로그 엔트리의 로그 엔트리를 식별하는 명령을 포함할 수 있다. 상기 명령들은 음성 호 엔트리에 포함된 디바이스 식별자를 로그 엔트리에 나타낸 디바이스 식별자와 매칭시키는 명령을 포함할 수 있다. 상기 명령들은 음성 호 엔트리의 시작 시간 또는 지속시간 중 적어도 하나가 로그 엔트리의 각 시작 시간 또는 지속시간의 미리결정된 임계값을 만족시키는지를 결정하는 명령들을 포함할 수 있다. 상기 명령들은 디바이스 식별자를 매칭하는 것에 응답하여 상기 결정을 수행하는 명령들을 포함할 수 있다. 상기 명령들은 미리결정된 임계값이 만족된다는 결정에 응답하여 로그 엔트리로부터 가상 전화 번호를 검색하기 위한 명령들을 포함할 수 있다. 상기 가상 전화 번호는 콘텐츠 제공자의 콘텐츠 아이템에 동적으로 할당될 수 있고, 콘텐츠 제공자의 콘텐츠 아이템과의 상호 작용에 응답하여 디바이스 식별자를 갖는 디바이스에 가상 전화 번호를 제공할 수 있다. 상기 명령들은 콘텐츠 아이템 노출 데이터 구조에서 룩업을 수행하기 위한 명령들을 포함할 수 있다. 상기 명령들은 상기 식별된 가상 전화 번호를 사용하여 룩(look)을 수행하고, 콘텐츠 아이템에 대한 가상 전화 번호의 제공을 초래한 콘텐츠 아이템의 노출을 식별하는 콘텐츠 아이템 노출 식별자를 결정하는 명령들을 포함할 수 있다. 상기 명령들은 콘텐츠 아이템 노출 식별자에 대응하는 데이터 구조에 음성 호 엔트리를 통해 제공된 데이터를 저장하는 명령들을 포함할 수 있다.
본 명세서에서 설명된 요지의 하나 이상의 실시예들의 상세한 설명은 첨부된 도면 및 이하의 명세서에서 설명된다. 본 요지의 다른 특징, 양태 및 장점은 상세한 설명, 도면 및 청구 범위로부터 명백해질 것이다.
도 1은 실시예에 따라 동적으로 할당된 가상 전화 번호를 통해 음성 호와 관련된 데이터를 동기화하는 시스템의 예를 나타낸다.
도 2는 실시예에 따라 호 콘텐츠 아이템을 제공하기 위한 사용자 인터페이스의 예를 나타낸다.
도 3은 실시예에 따라 동적으로 할당된 가상 전화 번호를 통해 음성 호와 관련된 데이터를 동기화하는 방법의 예를 나타낸다.
도 4는 실시예에 따라 도 2에 도시된 사용자 인터페이스, 도 3에 도시한 방법, 도 1에 도시된 시스템의 다양한 구성들을 구현하기 위해 적용될 수 있는 컴퓨터 시스템에 대한 일반적인 아키텍처를 나타내는 블록도이다.
다양한 도면에서 동일한 참조 번호 및 명칭은 동일한 구성을 나타낸다.
본 발명의 시스템 및 방법은 콘텐츠 제공자로부터 수신된 음성 호 엔트리를 데이터 처리 시스템에 의해 유지되거나 검출된 로그 엔트리와 동기화 또는 매칭시키기 위한 데이터 처리 시스템에 관한 것이다. 콘텐츠 제공자로부터 수신한 음성 호 엔트리는 부정확하거나 손상될 수 있다. 상기 데이터 처리 시스템은 부정확하거나 손상된 데이터를 해결하는 하나 이상의 데이터 처리 기술을 사용하여 상기 수신된 음성 호 데이터를 데이터 처리 시스템의 내부 로그 엔트리와 매칭시키도록 구성될 수 있다.
콘텐츠 제공자는 잠재 고객으로부터 많은 수의 전화 통화(phone calls)를 받을 수 있다. 콘텐츠 제공자는 전화 통화로 이어진 콘텐츠 아이템을 식별하는 리포트를 활용할 수 있다. 그러나, 정보 콘텐츠 제공자가 전화 통화가 제한적이거나 불완전하다고 제공할 수 있기 때문에 데이터 처리 시스템이 특정 전화 통화로 이어진 콘텐츠 아이템을 정확하고 신뢰성 있게 식별하는 것은 어려울 수 있다. 예를 들어, 콘텐츠 제공자는 전화 통화를 개시한 디바이스(예를 들어, 발신자 ID)의 호 식별자, 호 시작 시간 및 호 지속시간에만 액세스할 수 있다. 상기 데이터 처리 시스템은 디바이스 식별자, 호 시간 및 호 지속시간과 같은 호에 대한 정보를 개별적으로 기록(log)할 수 있다. 그러나, 데이터 처리 시스템에 의해 검출된 호 시작 시간 및 지속시간은 상이한 타이밍 정책, 비동기화 타이머 또는 일광 절약 시간제(daylight savings time)로 인한 시간 왜곡으로 인해 콘텐츠 제공자에 의해 기록된 호 시작 시간 및 지속시간과 다를 수 있다.
따라서, 제한된 수의 신호 및 신호의 기록 또는 측정에서의 가변성으로 인해, 데이터 처리 시스템이 콘텐츠 제공자에 의해 개별적으로 제공되는 음성 호 엔트리에 대응하는 데이터 처리 시스템에 의해 검출된 로그 데이터로부터 특정 전화 통화(phone call)의 정확한 위치를 찾아내는 것은 어려울 수 있다.
이 해결을 위한 데이터 처리 시스템은 데이터 파일을 통해 콘텐츠 제공자로부터 수신된 음성 호 엔트리를 사용하여 리포트를 발생할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 제공자가 데이터 파일을 업로드할 수 있는 인터페이스를 발생하거나 제공할 수 있다. 일부 경우에, 데이터 처리 시스템은 콘텐츠 제공자가 음성 호 엔트리를 제공하는 스트리밍 인터페이스 또는 데이터 피드 인터페이스(data feed interface)를 포함할 수 있다. 상기 음성 호 엔트리는 음성 호를 개시하는데 사용되는 디바이스의 디바이스 식별자(예를 들어, 발신자 ID), 음성 호 시작 시간, 음성 호 지속시간, 및 콘텐츠 제공자에 의해 결정된 선택적인 임의의 추가 정보를 포함할 수 있다. 상기 데이터 처리 시스템은 완전히 신뢰할 수 없는 업로드된 음성 호 엔트리 데이터를 내부적으로 검출된 로그 엔트리와 상관시키거나 매칭시킬 수 있다. 상기 데이터 처리 시스템은 부정확한 시간 정보와 호를 매치시키는 데 사용될 수 있는 시간 윈도우(또는 시간 범위) 또는 지속시간 윈도우(또는 지속시간 범위) 중 하나 이상을 생성함으로써 호 시작 시간 및 호 지속시간의 왜곡(skews )을 포함하는 입력의 부정확성을 해결한다. 상기 데이터 처리 시스템이 로그 엔트리(또는 음성 호 엔트리와 매칭하는 다수의 로그 엔트리)와 매칭하는 다수의 음성 호 엔트리를 식별하는 경우, 데이터 처리 시스템은 음성 호 엔트리 중 하나를 로그 엔트리(또는 음성 호 엔트리에 대한 로그 엔트리 중 하나)에 부여 또는 할당하도록 타이 브레이킹(tie-breaking)을 시작할 수 있다.
일부 실시예에서, 데이터 처리 시스템은 디바이스(예를 들어, 모바일 디바이스와 같은 호 컴퓨팅 디바이스)를 통해 디스플레이하기 위한 호 콘텐츠 아이템을 잠재 고객에게 제공한다. 일부 실시예에서, 호 콘텐츠 아이템은 잠재 고객이 컴퓨팅 디바이스를 호출할 수 있게 하는 전화 번호를 제공하도록 구성될 수 있다. 상기 데이터 처리 시스템은 데이터 처리 시스템에 음성 호(voice calls)를 전달하는 호 콘텐츠 아이템에 대한 가상 전화 번호를 동적으로 발생, 할당 또는 배정할 수 있다. 잠재 고객은 호 콘텐츠 아이템을 통해 표시된 전화 번호를 선택하거나 전화를 걸 수 있다. 상기 데이터 처리 시스템은 음성 호를 수신하고, 그 음성 호를 콘텐츠 제공자의 제공자 디바이스(예를 들어, 지원 에이전트(support agent)의 호 컴퓨팅 디바이스)에 연결하거나 전달할 수 있다. 고객이 전화 통화를 시작하면, 데이터 처리 시스템은 고객의 발신자 ID를 식별하고, 암호화된 발신자 ID 데이터 포맷을 생성할 수 있다. 상기 데이터 처리 시스템은 암호화된 발신자 ID 데이터 포맷을 데이터 처리 시스템에 의해 유지되는 로그 또는 다른 데이터베이스에 저장할 수 있다. 일부 실시예에서, 데이터 처리 시스템은 발신자 ID의 암호화를 용이하게 하기 위해 해싱(hashing) 기술을 사용할 수 있다. 메모리에 저장된 암호화된 발신자 ID는 상기 디바이스의 디바이스 식별자에 해당할 수 있다. 상기 데이터 처리 시스템은 로그인 검색, 비로그인 검색, 콘텐츠 등과 같은 쿼리 출처(query origin)로 발신자 ID를 태그할 수 있다. 나중에, 데이터 처리 시스템은 발신자 ID, 시간대 정보를 갖는 호 시작 시간, 호 지속시간(예 : 초 단위), 또는 호가 수신되고 수행된 콘텐츠 제공자 장치의 전화 번호 중 하나 이상을 포함하는 콘텐츠 제공자에 의해 업로드된 음성 호 엔트리 데이터를 수신할 수 있다. 상기 시스템은 내부적으로 저장된 암호화된 발신자 ID를 광고주(advertiser)가 업로드한 호 데이터와 매칭시키는 룩업 키로 재발생된 암호화된 발신자 ID를 사용하여 룩업을 수행할 수 있다.
예시적인 예에서, 음성 호 엔트리는 "start_time: 2015-01-20 00:09:00", "time_zone: 미국/로스 앤젤레스", "call_duration: 30 초", "device_identifier: 1234"와 같은 값을 갖는 데이터 필드를 포함할 수 있다. 상기 데이터 처리 시스템은 호 시작 시간을 시간대 애그노스틱 타임스탬프(agnostic timestamp)(예컨대, 협정 세계시 "UTC" 또는 그리니치 표준시 "GMT")로 변환할 수 있다. 상기 데이터 처리 시스템은 호 시간 및 호 지속시간에 대한 각각의 범위를 갖는 쿼리(query)를 발생할 수 있다. 상기 데이터 처리 시스템은 음성 호 엔트리와 매칭하는 로그 엔트리를 식별하기 위해 상기 범위를 갖는 쿼리를 사용하여 로그 엔트리 데이터 구조에서 룩업을 수행할 수 있다. 일부 경우에, 상기 데이터 처리 시스템은 다중 타임 스탬프들을 포함하고 호 시작 시간 쿼리 범위를 확장하기 위해 로직을 사용함으로써 일광 절약 문제를 해결할 수 있다. 일부 경우에, 상기 데이터 처리 시스템은 다중 유효 클릭 식별자들 간의 연결을 식별한 다음 그 연결을 끊기 위해 로직을 사용할 수 있다.
일부 실시예에서, 상기 데이터 처리 시스템은 웹 페이지와 함께 디스플레이하기 위한 호 콘텐츠 아이템을 선택하여 제공한다. 상기 호 콘텐츠 아이템은 검색 결과(예를 들어, 메인 콘텐츠) 내에 또는 함께 검색 엔진(예를 들어, 콘텐츠 선택자를 통해)에 의해 포함된 링크(예를 들어, 이미지, 멀티미디어, 비디오, 텍스트) 형태의 추가 콘텐츠 아이템을 포함할 수 있다. 일부 경우에, 호 콘텐츠 아이템은 콘텐츠 발행자(예를 들어, 기사(article) 또는 멀티미디어 스트림)에 의해 제공된 메인 콘텐츠 내에 또는 그와 함께 링크 형태의 추가 콘텐츠 아이템을 포함할 수 있다. 상기 콘텐츠 아이템은 전화 번호에 대한 버튼 또는 링크를 포함할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 제공자에게 추적 데이터를 제공하는 것을 용이하게 하기 위해 전화 번호를 선택, 배분, 발생, 제공 또는 할당할 수 있다. 이 번호는 콘텐츠 아이템과의 상호 작용에 응답하여 콘텐츠 아이템에 대해 동적으로 할당, 제공, 배분 또는 발생되는 가상 전화 번호일 수 있다. 사용자는 상기 가상 전화 번호를 수신하기 위해 상기 호 콘텐츠 아이템의 호 버튼을 클릭 또는 선택함으로써 콘텐츠 아이템과 상호 작용할 수 있다. 상기 사용자는 제공된 번호로 전화를 걸 수 있다. 상기 데이터 처리 시스템은 상기 호를 수신하고 상기 호 및 콘텐츠 아이템과 관련된 추적 값을 식별한다. 예를 들어, 상기 데이터 처리 시스템은 가상의 전화 번호를 콘텐츠 아이템의 노출(impression)과 연결시키거나, 링크시키거나, 그렇지 않으면 연관시킬 수 있다. 그 후, 상기 데이터 처리 시스템은 콘텐츠 아이템의 키워드, 콘텐츠 아이템이 디스플레이된 웹 사이트, 시간(time of day), 콘텐츠 네트워크, 또는 콘텐츠 아이템이 매칭된 검색 쿼리를 포함할 수 있는 이 콘텐츠 아이템에 대한 노출 로그(impression log)에 액세스할 수 있다 .
다른 예시적인 실시예에서, 상기 데이터 처리 시스템은 검색 엔진에 입력된 검색 쿼리를 수신한다. 상기 데이터 처리 시스템은 상기 검색 쿼리에 응답하여, 검색 결과를 제공하고, 검색 쿼리와 매칭하는 검색 결과로 디스플레이하기 위한 추가 콘텐츠 아이템을 추가로 선택하여 제공한다. 상기 추가 콘텐츠 아이템은 추가 콘텐츠에 관심있는 사용자가 호출할 수 있는 가상 전화 번호를 디스플레이할 수 있다. 상기 추가 콘텐츠 아이템은 추가 콘텐츠 아이템(예를 들어, 클릭 또는 선택 또는 추가 콘텐츠 아이템과의 다른 상호 작용)에 관심의 인디케이션(indication)을 수신하는 것에 응답하여 가상 전화 번호를 디스플레이할 수 있다. 사용자는 추가 콘텐츠 아이템을 통해 제공된 번호를 사용하여 추가 콘텐츠 아이템과 연관된 당사자(party)에게 전화할 수 있다.
상기 데이터 처리 시스템은 가상 전화 번호를 사용하도록 구성될 수 있다. 가상 전화 번호는 직접 연결된 물리적인 전화선이 없는 전화 번호를 나타낼 수 있다. 가상 전화 번호는 전화 번호가 디바이스와 직접 연관되지 않을 수 있다는 점에서 정적(static)이 아닌 전화 번호를 나타낼 수 있다. 이러한 가상 전화 번호는 고정, 모바일 또는 VoIP 중 하나를 선택하여, 착신 전화(incoming calls)를 콘텐츠 제공자에 의해 선택된 미리설정된 전화 번호 중 하나로 전송하도록 프로그래밍될 수 있다. 가상 전화 번호는 기존 전화(PSTN)와 VoIP 사이의 게이트웨이처럼 동작할 수 있다. 가상 전화 번호를 사용하는 가입자는 추가 하드웨어를 구입할 필요없이 기존 전화기를 사용할 수 있다. 가상 전화 번호는 시간과 요일에 따라 다른 전화 번호로 통화를 착신 전환하도록 설정될 수 있다.
상기 데이터 처리 시스템은 콘텐츠 아이템과 함께 가상 전화 번호를 사용하여 콘텐츠 제공자에 대한 호(calls)를 추적하도록 더 구성될 수 있다. 예를 들어, 내선 콘텐츠 아이템 또는 통화 전용 콘텐츠 아이템을 사용하면 가상 전화 번호(또는 콘텐츠 전달 번호)를 통해 콘텐츠 아이템으로 인해 발생하는 전화 통화를 수신하고 추적하는 것을 용이하게 할 수 있다. 그렇게 하기 위해, 상기 데이터 처리 시스템은 콘텐츠 제공자의 콘텐츠 아이템과 함께 디스플레이될 가상 전화 번호를 할당, 선택 또는 제공할 수 있다. 잠재적인 고객이 상기 가상 전화 번호로 전화를 걸면, 상기 데이터 처리 시스템은 그 호를 수신하고, 그 호를 해당하는 콘텐츠 제공자에게 라우팅한다. 상기 콘텐츠 제공자는 콘텐츠 아이템에 의해 발생된 호에 관한 정보를 얻을 수 있다. 일부 경우에 따라, 상기 데이터 처리 시스템은 전달 번호를 고객 번호가 아닌 발신자 식별 번호로 제공하여 고객의 익명성을 유지할 수 있다.
일부 실시예에서, 상기 데이터 처리 시스템은 데이터 처리 시스템이 콘텐츠 아이템에 가상 전화 번호를 할당할 때 콘텐츠 아이템 정보 또는 콘텐츠 아이템에 대한 정보를 기록할 수 있다. 상기 데이터 처리 시스템이 호를 수신할 때, 상기 데이터 처리 시스템은 가상 번호 레코드로부터 기록된 정보를 검색하고, 호 정보와 함께 콘텐츠 아이템에 관한 정보를 로그할 수 있다. 따라서, 일부 실시예에서, 상기 데이터 처리 시스템은 로그를 검색하기 위해 가상 번호를 사용하지 않고 간접적으로 가상 번호에 의거하여 전화 통화를 발신 콘텐츠 아이템에 링크시킬 수 있다.
도 1은 네트워크를 통해 데이터를 동기화하기 위한 예시적인 시스템(100)을 나타낸다. 상기 시스템(100)은 콘텐츠 선택 인프라(infrastructure)를 포함할 수 있다. 상기 시스템(100)은 네트워크(105)를 통해 콘텐츠 제공자(125), 콘텐츠 발행자(115) 또는 컴퓨팅 디바이스(110) 중 하나 이상과 통신하는 데이터 처리 시스템(120)을 포함할 수 있다. 네트워크(105)는 인터넷, 로컬, 와이드, 메트로 또는 다른 영역 네트워크, 인트라넷, 위성 네트워크, 음성 또는 데이터 이동 전화 네트워크와 같은 다른 통신 네트워크와 같은 컴퓨터 네트워크를 포함할 수 있다. 상기 네트워크(105)는 랩탑, 데스크탑, 태블릿, 개인 휴대 정보 단말기, 스마트 폰, 또는 휴대용 컴퓨터와 같은 적어도 하나의 컴퓨팅 디바이스(110)에 디스플레이될 수 있는 URL(uniform resource locators), 웹 페이지, 웹 사이트 또는 도메인 이름과 같은 정보 리소스에 액세스하는데 사용될 수 있다. 예를 들어, 네트워크(105)를 통해 컴퓨팅 디바이스(110)의 사용자는 적어도 하나의 웹 사이트 운영자 또는 콘텐츠 발행자(115)에 의해 제공되는 웹 페이지에 액세스할 수 있다. 이 예에서, 컴퓨팅 디바이스(110)의 웹 브라우저는 콘텐츠 발행자(115) 또는 웹 사이트 운영자의 웹 서버에 액세스하여 컴퓨팅 디바이스(110)의 모니터상에 디스플레이하기 위한 웹 페이지를 검색할 수 있다. 상기 웹 사이트 운영자 또는 콘텐츠 발행자(115)는 일반적으로 웹 페이지를 운영하는 엔티티를 포함한다. 일 실시예에서, 상기 웹 사이트 운영자 또는 콘텐츠 발행자(115)는 웹 페이지를 컴퓨팅 디바이스(110)에서 이용가능 하게 하기 위해 네트워크(105)와 통신하는 적어도 하나의 웹 페이지 서버를 포함한다.
상기 네트워크(105)는 임의의 유형 또는 네트워크 형태일 수 있고, 포인트-투-포인트 네트워크(point-to-point network), 브로드캐스트 네트워크, 광역 네트워크, 근거리 통신망, 통신 네트워크, 데이터 통신 네트워크, 컴퓨터 네트워크, ATM(Asynchronous Transfer Mode) 네트워크, SONET(Synchronous Optical Network) 네트워크, SDH(Synchronous Digital Hierarchy) 네트워크, 무선 네트워크 및 유선 네트워크 중 적어도 하나를 포함할 수 있다. 상기 네트워크(105)는 적외선 채널 또는 위성 밴드와 같은 무선 링크를 포함할 수 있다. 상기 네트워크(105)의 토폴로지는 버스, 스타(star) 또는 링 네트워크 토폴로지(ring network topology)를 포함할 수 있다. 상기 네트워크는 AMPS(advanced mobile phone protocol), 시분할 다중 접속(TDMA), 코드 분할 다중 접속(CDMA), 글로벌 이동 통신 시스템(GSM), 일반 패킷 무선 서비스(GPRS) 또는 범용 이동 통신 시스템(UMTS)을 포함하는 이동 디바이스들 간의 통신에 사용되는 프로토콜 또는 프로토콜들을 사용하는 이동 전화 네트워크를 포함할 수 있다. 다른 유형의 데이터가 다른 프로토콜을 통해 전송되거나 동일 유형의 데이터가 다른 프로토콜을 통해 전송될 수 있다.
상기 시스템(100)은 적어도 하나의 데이터 처리 시스템(120)을 포함할 수 있다. 상기 데이터 처리 시스템(120)은 예를 들어 컴퓨팅 디바이스(110), 웹 사이트 운영자 또는 콘텐츠 발행자 컴퓨팅 디바이스(115)(또는 콘텐츠 발행자(115)), 적어도 하나의 콘텐츠 제공자 컴퓨팅 디바이스(125)(또는 제공자 디바이스(125) 또는 콘텐츠 제공자(125))와 네트워크(105)를 통해 통신하기 위한 프로세서를 갖는 컴퓨팅 디바이스와 같은 적어도 하나의 로직 디바이스를 포함할 수 있다. 상기 데이터 처리 시스템(120)은 적어도 하나의 서버를 포함할 수 있다. 예를 들어, 상기 데이터 처리 시스템(120)은 적어도 하나의 데이터 센터에 위치한 복수의 서버를 포함할 수 있다. 상기 데이터 처리 시스템(120)은 논리적으로 그룹화된 다수의 서버를 포함할 수 있고 분산 컴퓨팅 기술을 용이하게 한다. 논리적 그룹의 서버들은 서버 팜 또는 컴퓨터 팜으로 지칭할 수 있다. 상기 서버들은 지리적으로 분산되어 있을 수도 있다. 머신 팜(machine farm)은 단일 엔티티로 관리되거나 그 머신 팜은 복수의 머신 팜을 포함할 수 있다. 각 머신 팜 내의 서버들은 이기종일 수 있고, 하나 이상의 서버 또는 머신들은 하나 이상의 유형의 운영 체제 플랫폼에 따라 동작할 수 있다.
상기 머신 팜의 서버들은 관련 스토리지 시스템과 함께 고밀도 랙 시스템에 저장될 수 있으며 엔터프라이즈 데이터 센터에 위치될 수 있다. 예를 들어, 이러한 방식으로 서버를 통합하면 지역화된 고성능 네트워크에서 서버 및 고성능 스토리지 시스템을 찾음으로써 시스템 관리, 데이터 보안, 시스템의 물리적 보안 및 시스템 성능을 향상시킬 수 있다. 서버 및 스토리지 시스템을 중앙 집중화하고 이를 진보된 시스템 관리 툴과 결합하면 서버 자원을 보다 효율적으로 사용할 수 있다.
상기 데이터 처리 시스템(120)은 적어도 하나의 서버를 갖는 콘텐츠 배치 시스템(content placement system)을 포함할 수 있다. 상기 데이터 처리 시스템(120)은 적어도 하나의 콘텐츠 선택기(130), 적어도 하나의 가상 번호 엔진(135), 적어도 하나의 트랙커(tracker)(140), 적어도 하나의 제공자 인터페이스(145), 적어도 하나의 매칭 엔진(150) 및 적어도 하나의 데이터 저장소(155)를 포함할 수 있다. 상기 콘텐츠 선택기(130), 가상 번호 엔진(135), 트랙커(140), 제공자 인터페이스(145) 및 매칭 엔진(150)은 각각 적어도 하나의 프로세싱 유닛 또는 프로그래밍 가능한 로직 어레이 엔진과 같은 다른 로직 디바이스 또는 데이터베이스(155) 또는 데이터베이스 저장소와 통신하도록 구성된 모듈을 포함할 수 있다. 콘텐츠 선택기(130), 가상 번호 엔진(135), 트랙커(140), 제공자 인터페이스(145), 매칭 엔진(150) 및 데이터 저장소(155)는 개별 컴포넌트, 단일 컴포넌트 또는 데이터 처리 시스템(120)의 일부일 수 있다. 데이터 처리 시스템과 같은 시스템(100) 및 그 컴포넌트들은 하나 이상의 프로세서, 로직 디바이스 또는 회로와 같은 하드웨어 구성요소를 포함할 수 있다.
상기 데이터 처리 시스템(120)은 복수의 컴퓨팅 디바이스(110)와 관련된 익명의 컴퓨터 네트워크 활동 정보를 얻을 수 있다. 컴퓨팅 디바이스(110)의 사용자는 데이터 처리 시스템(120)에 허여 권한을 부여하여 사용자의 컴퓨팅 디바이스(110)에 대응하는 네트워크 활동 정보를 획득할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 컴퓨팅 디바이스(110)의 사용자에게 하나 이상의 유형의 네트워크 활동 정보를 얻기 위한 동의를 요구할 수 있다. 컴퓨팅 디바이스(110)의 사용자의 식별정보(identity)는 익명으로 유지될 수 있고, 컴퓨팅 디바이스(110)는 고유한 식별자(예를 들어, 데이터 처리 시스템 또는 컴퓨팅 디바이스의 사용자에 의해 제공된 컴퓨팅 디바이스 또는 사용자에 대한 고유 식별자)와 관련될 수 있다. 상기 데이터 처리 시스템은 각 감시(observation)를 해당 고유 식별자와 연관시킬 수 있다.
본 발명에서 설명한 시스템이 사용자에 관한 개인 정보를 수집하거나 개인 정보를 사용할 수 있는 경우, 사용자는 개인 정보(사용자의 소셜 네트워크, 소셜 액션 또는 활동, 사용자의 선호도 또는 사용자의 현재 위치에 대한 정보)를 수집할 수 있는 프로그램이나 기능을 제어할지 또는 사용자와 더 관련이 있을 수 있는 콘텐츠를 콘텐츠 서버로부터 수신할지 또는 어떻게 수신할지를 제어할 수 있는 기회를 제공받을 수 있다. 또한, 특정 데이터는 저장되거나 사용되기 전에 하나 이상의 방식으로 처리될 수 있으므로, 파라미터들(예를 들면, 데모그래픽 파라미터들(demographic parameters))를 발생할 때 사용자에 대한 특정 정보가 제거된다. 예를 들어, 사용자의 식별정보는 사용자에 대한 정보 식별이 결정될 수 없도록 처리되거나, 사용자의 지리적 위치가 위치 정보가 얻어진 곳(예를 들어, 도시, 우편 번호 또는 주 레벨(state level))으로 일반화될 수 있으므로 사용자의 특정 위치는 결정될 수 없다. 따라서, 사용자는 사용자에 관한 정보 수집 방법 및 콘텐츠 서버에 의한 사용 방법을 제어할 수 있다.
데이터 처리 시스템(120)은 콘텐츠에 대한 요청을 수신할 수 있다. 상기 요청은 상기 데이터 처리 시스템의 검색 엔진(130)에 입력된 검색 쿼리와 같은 쿼리를 포함할 수 있다. 상기 입력 쿼리는 예를 들면 텍스트, 문자 또는 기호를 포함할 수 있다. 데이터 처리 시스템(120)은 네트워크(105)를 통해 컴퓨팅 디바이스(110)로부터 입력 쿼리를 수신할 수 있다. 상기 입력 쿼리는 컴퓨팅 디바이스(110)의 사용자에 의해 발화되고 네트워크(105) 및 인터페이스를 통해 상기 데이터 처리 시스템의 검색 엔진에 입력되는 단어와 같은 오디오를 포함할 수 있다. 상기 요청은 그 요청에 응답하여 콘텐츠 선택을 용이하게 하는 정보와 관련되거나 포함할 수 있다. 상기 정보는 예를 들어, 전자 문서, 웹 페이지, 전자 애플리케이션 또는 선택된 콘텐츠가 디스플레이되는 링크에 관한 콘텍스트 정보(contextual information)를 포함할 수 있다. 데이터 처리 시스템(120)은 입력 텍스트 박스, 버튼, 드롭 다운 또는 다른 위젯(widget)을 디스플레이하는 인터페이스를 제공하여 클라이언트의 사용자가 검색을 위한 카테고리를 선택하거나 지시할 수 있게 한다.
상기 검색 쿼리 또는 콘텐츠(예를 들어, 추가 콘텐츠 아이템)에 대한 다른 요청에 응답하여, 데이터 처리 시스템(120)(예를 들어, 콘텐츠 선택기(130)를 통해)은 요청을 하는 컴퓨팅 디바이스(110) 또는 콘텐츠 요청에 관련된 다른 컴퓨팅 디바이스(110)를 통해 제공되거나 제시될 콘텐츠를 식별, 선택, 또는 획득할 수 있다. 일부 실시예에서, 데이터 처리 시스템(120)은 임의의 요청을 수신하는 것에 응답하지 않는 콘텐츠를 식별, 선택 또는 획득할 수 있다. 상기 콘텐츠는 예를 들어 텍스트, 문자, 기호(symbols), 이미지, 비디오, 오디오 또는 멀티미디어 콘텐츠를 포함할 수 있다. 상기 콘텐츠는 전화 번호, 가상 전화 번호 또는 추가 전화 번호(call extension)를 포함할 수 있다. 상기 콘텐츠 아이템은 콘텐츠 제공자에 의해 제공되고 검색 결과 페이지와 함께 디스플레이하기 위해 데이터 처리 시스템(예를 들어, 콘텐츠 선택자를 통해)에 의해 포함되는 링크 형태의 추가 콘텐츠 아이템을 포함할 수 있다. 상기 콘텐츠 아이템은 콘텐츠 제공자에 보고 데이터(reporting data)를 제공하는 것을 용이하게 하는 전화 번호에 대한 버튼 또는 링크를 포함할 수 있다. 상기 콘텐츠 아이템이 가상 전화 번호 또는 추가 전화 번호(call extension)를 포함하는 경우, 상기 콘텐츠 아이템은 호 콘텐츠 아이템으로 지칭될 수 있다. 상기 콘텐츠에 대한 요청은 예를 들어 온라인 기사(online article), 판촉, 쿠폰 또는 제품 설명에 대한 요청을 포함할 수 있다. 데이터 처리 시스템(120)은 예를 들어 컴퓨팅 디바이스(110)와 같은 컴퓨팅 디바이스로부터 요청을 수신 할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 모바일 디바이스(예를 들어, 스마트 폰 또는 태블릿)상에서 실행되는 모바일 애플리케이션과 같이 컴퓨팅 디바이스(110)상에서 실행되는 애플리케이션을 통해 요청을 수신할 수 있다. 일부 경우에, 데이터 처리 시스템(120)은 콘텐츠에 대한 별도의 요청을 수신하지 않고, 그 대신에 검색 쿼리 또는 검색 결과에 응답하여 콘텐츠(예를 들어, 추가 콘텐츠 아이템)를 선택하여 제공할 수 있다. 일부 경우에, 웹 페이지는 웹 페이지를 방문하는 모바일 디바이스(110)의 사용자에 응답하여(예를 들면, 모바일 디바이스(110)를 통해) 데이터 처리 시스템(120)에 콘텐츠를 요청할 수 있다.
콘텐츠 요청은 콘텐츠 선택을 용이하게 하는 정보를 포함할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 콘텐츠 또는 콘텐츠 선택의 식별을 용이하게 하기 위해 컴퓨팅 디바이스(110)에 정보를 요청할 수 있다. 데이터 처리 시스템(120)은 컴퓨팅 디바이스(110)로부터 콘텐츠에 대한 요청을 수신하는 것에 응답하여 정보를 요청하거나 획득할 수 있다. 상기 정보는 컴퓨팅 디바이스(110)(예를 들어, 콘텐츠 슬롯 크기 또는 위치)에 콘텐츠를 디스플레이하는 것에 관한 정보 또는 상기 콘텐츠를 디스플레이하거나 그렇지 않으면 조작하기 위한 컴퓨팅 디바이스(110)의 이용 가능한 리소스에 관한 정보를 포함할 수 있다.
데이터 처리 시스템(120)은 콘텐츠에 대한 요청에 응답하거나 그렇지 않으면 온라인 문서(예를 들면, 웹 페이지)상에 디스플레이하기 위한 후보들인 다수의 콘텐츠 아이템 (예를 들면, 제1 후보 콘텐츠 아이템 및 제2 후보 콘텐츠 아이템)을 식별할 수 있다. 상기 데이터 처리 시스템은 상기 온라인 문서를 디스플레이하기 위해 하나 이상의 다수의 콘텐츠 아이템을 선택하기 위해 온라인 프로세스를 시작하거나 이용할 수 있다.
데이터 처리 시스템(120)은 콘텐츠 선택기(130)를 포함할 수 있다. 콘텐츠 선택기(130)는 후보 콘텐츠 아이템들의 요지(subject matter)를 분석, 파싱 또는 달리 처리하여 상기 후보 콘텐츠 아이템들의 요지가 웹 페이지에 대응하는지를 결정한다. 콘텐츠 선택기(130)는 이미지 프로세싱 기술, 문자 인식 기술 또는 데이터베이스 룩업을 사용하여 상기 후보 콘텐츠 아이템의 이미지 또는 용어, 문자, 텍스트, 또는 기호를 식별, 분석 또는 인식할 수 있다. 상기 후보 콘텐츠 아이템은 후보 콘텐츠 아이템의 요지를 나타내는 메타 데이터를 포함할 수 있으며, 이 경우 콘텐츠 선택기(130)는 메타 데이터를 처리하여 상기 후보 콘텐츠 아이템의 요지가 웹 페이지 또는 검색 쿼리에 대응하는지 여부를 결정할 수 있다.
콘텐츠 제공자는 콘텐츠 아이템을 포함하는 콘텐츠 캠페인을 설정할 때 추가 인디케이터(indicators)를 제공할 수 있다. 상기 콘텐츠 제공자는 콘텐츠 선택기(130)가 후보 콘텐츠 아이템에 관한 정보를 사용하여 검색을 수행함으로써 식별할 수 있는 콘텐츠 그룹 레벨 또는 콘텐츠 캠페인에 정보를 제공할 수 있다. 예를 들어, 상기 후보 콘텐츠 아이템은 콘텐츠 그룹, 콘텐츠 캠페인 또는 콘텐츠 제공자에 맵핑될 수 있는 고유 식별자를 포함할 수 있다. 콘텐츠 선택기(130)는 콘텐츠 제공자에 대한 데이터 저장소(155)에 저장된 정보에 기초하여 결정할 수 있다.
데이터 처리 시스템(120)은 다양한 기술을 사용하여 콘텐츠를 선택할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 파트너 콘텐츠 선택 네트워크로부터의 리드(lead) 또는 리퍼럴(referral)로부터 콘텐츠를 선택할 수 있다. 일부 실시예에서, 상기 콘텐츠는 키워드 또는 매칭 기술을 사용하여 선택될 수 없지만, 리드(lead) 또는 리퍼럴(referral) 기반으로 선택될 수 있다.
데이터 처리 시스템(120)은 가상 번호 엔진(135)을 포함할 수 있다. 가상 번호 엔진(135)은 고유한 가상 전화 번호(예를 들면, 고유 발송 번호(unique forwarding number))를 식별하도록 설계 및 구성될 수 있다. 가상 번호 엔진(135)은 클라이언트 컴퓨팅 디바이스(110)에 웹 페이지와 함께 디스플레이되는 선택된 콘텐츠 아이템과 함께 디스플레이하기 위한 고유 가상 전화 번호를 제공할 수 있다. 상기 가상 번호는 콘텐츠 제공자의 디바이스 또는 호 에이전트와 고유하게 대응하기 때문에 고유(unique)할 수 있다. 상기 가상 번호는 콘텐츠 제공자의 디바이스 또는 호 엔진에 고유하게 매핑되므로 고유(unique)할 수 있다. 가상 번호 엔진(135)은 컴퓨팅 디바이스(110)의 사용자에 의해 선택될 때 컴퓨팅 디바이스(110)로 하여금 데이터 처리 시스템(120)과의 통신 채널을 개시하게 하는 고유 가상 전화 번호에 대한 링크를 제공할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)를 통해 가상 번호 엔진(135)에 의해 제공된 링크를 선택하는 것은 데이터 처리 시스템(120)에 대한 전화 통화(phone call)를 개시할 수 있다.
일부 실시예에서, 데이터 처리 시스템(120)은 콘텐츠 아이템에 대한 관심의 인디케이션(indication)을 수신하는 것에 응답하여 웹 페이지에 콘텐츠 아이템과 함께 디스플레이하기 위한 가상 전화 번호를 제공할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 버튼, 드롭 다운 메뉴, 아이콘, 롤오버 아이콘(roll-over icon), 또는 다른 사용자 인터페이스 위젯으로 웹 페이지 상에 콘텐츠 아이템을 디스플레이할 수 있다. 사용자가 사용자 인터페이스 위젯(예를 들면, 버튼 클릭 또는 선택)과 상호 작용할 때, 상기 데이터 처리 시스템은 사용자 선택의 인디케이션(indication)을 수신할 수 있다.
사용자 선택의 인디케이션(indication)을 수신하는 것에 응답하여, 데이터 처리 시스템(120)은 콘텐츠 아이템에 대해 가상 전화 번호를 식별, 선택, 발생 또는 할당할 수 있다. 데이터 처리 시스템(120)은 이용 가능한 가상 전화 번호들의 저장소 또는 풀(pool)에 액세스할 수 있다. 가상 전화 번호는 이미 콘텐츠 아이템과 연관된 콘텐츠 제공자에 할당될 수 있다. 가상 전화 번호는 콘텐츠 아이템을 포함하는 콘텐츠 그룹 또는 콘텐츠 캠페인에 할당될 수 있다. 가상 전화 번호는 무료 "800" 번호, "900" 번호와 같은 요금 번호, 지역 번호 또는 장거리 전화 번호일 수 있다.
상기 데이터 처리 시스템은 가상 전화 번호가 현재 다른 콘텐츠 아이템 또는 콘텐츠 제공자에 할당되지 않은 경우, 상기 가상 전화 번호를 이용 가능한 가상 전화 번호로 결정할 수 있다. 예를 들어, 제한된 수의 가상 전화 번호 및 전화 번호 구매와 관련된 비용 때문에, 가상 번호 엔진(135)은 가상 전화 번호의 재사용 또는 재활용을 용이하게 하는 하나 이상의 정책(policies)으로 구성될 수 있다. 가상 번호 엔진(135)은 상기 번호가 시간 간격 또는 지속시간((예를 들어, 2시간, 24시간, 72시간, 1주, 30일, 60일, 90일 등) 동안 디스플레이를 위해 제공되지 않은 경우에 가상 번호를 재사용할 수 있다. 상기 데이터 처리 시스템은 다른 제공자 디바이스에 대해 동일한 가상 번호를 사용할 수 있다. 상기 데이터 처리 시스템은 발신자의 발신자 ID 및 가상 전화 번호에 기초하여 호를 전달할 제공자 디바이스를 결정할 수 있다. 예를 들어, 상기 데이터 처리 시스템은 발신자 ID(또는 디바이스 식별자) 및 가상 전화 번호를 기반으로 튜플(tuple)을 형성할 수 있다. 상기 튜플은 콘텐츠 제공자의 제공자 디바이스의 고유한 정적 식별자(unique static identifier)에 매핑할 수 있다. 상기 데이터 처리 시스템은이 상기 튜플을 고유한 튜플로 유지할 수 있다. 따라서, 상기 데이터 처리 시스템은 제1 디바이스와 다른 제2 디바이스의 제2 디바이스 식별자로 상기 가상 전화 번호를 재사용할 수 있고, 제2 콘텐츠 제공자의 제2 제공자 디바이스에 매핑하는 가상 전화 번호 및 제2 식별자에 기초하여 제2 고유 튜플을 발생한다. 상기 튜플 매핑을 보존함으로써, 상기 데이터 처리 시스템은 가상 전화 번호를 재사용할 수 있고, 데이터 처리 시스템이 유지하는 가상 전화 번호의 양을 감소시킬 수 있다.
상기 가상 전화 번호는 사용자 인터페이스를 통해 콘텐츠 아이템과 함께 제공될 수 있다. 상기 데이터 처리 시스템에 의해 제공되는 사용자 인터페이스의 예가 도 2에 도시된다. 상기 사용자는 사용자 인터페이스를 통해 제공되거나 전달된 가상 전화 번호에 대응하는 전화 통화를 시작할 수 있다.
데이터 처리 시스템(120)은 트랙커(tracker)(140)를 포함할 수 있다. 트랙커(140)는 콘텐츠 아이템 노출 데이터 또는 로그 엔트리 데이터와 같은 트래킹 데이터를 수신, 획득, 결정 또는 식별하고, 콘텐츠 아이템 노출 데이터 구조 또는 로그 엔트리 데이터 구조와 같은 하나 이상의 데이터베이스 또는 데이터 구조로 데이터 저장소(155)에 데이터를 저장하도록 설계 및 구성될 수 있다. 콘텐츠 아이템 노출 데이터는 콘텐츠 아이템의 노출 또는 콘텐츠 아이템의 선택, 콘텐츠 아이템과 관련된 정보를 포함할 수 있다. 예를 들어, 트래킹 데이터는 웹 페이지 상에 또는 웹 페이지와 함께 디스플레이하기 위한 콘텐츠 아이템을 선택하는 데 사용된 콘텐츠 선택 기준을 포함할 수 있다. 콘텐츠 선택 기준은 키워드, 용어, 구문, 지리적 위치, 기기 유형 등을 포함할 수 있다. 트랙커(140)는 콘텐츠 선택기(130), 콘텐츠 제공자(125) 또는 사용자의 컴퓨팅 디바이스(110)를 통해 또는 이로부터 트래킹 데이터를 획득할 수 있다. 일부 경우, 콘텐츠 선택기(130)는 트래킹 데이터를 노출 로그 또는 데이터 구조에 저장할 수 있고, 트랙커(140)는 상기 트래킹 데이터를 상기 노출 데이터 구조로부터 획득할 수 있다.
트랙커(140)는 로그 엔트리 데이터를 검출, 식별, 결정 또는 획득할 수 있다. 로그 엔트리 데이터는 콘텐츠 아이템 노출과 연관된 음성 호 정보를 포함할 수 있다. 음성 호 정보는 예를 들어, 음성 호의 시작 시간, 음성 호(예를 들어, 호 콘텐츠 아이템에 의해 제공되는 가상 전화 번호를 호출하는 컴퓨팅 디바이스(110)의 발신자 ID)를 개시한 디바이스의 디바이스 식별자 및 음성 호 지속시간을 포함할 수 있다. 데이터 처리 시스템(120)은 호의 수신에 응답하여 음성 호의 시작 시간을 검출할 수 있다. 데이터 처리 시스템(120)은 호의 수신에 응답하여 타임 스탬프를 발생하도록 구성된 다른 타이밍 디바이스 또는 카운터, 타이머, 클럭을 포함할 수 있다. 일부 경우에서, 데이터 처리 시스템(120)은 시간대에서 타임 스탬프를 발생한다. 데이터 처리 시스템(120)은 UTC 또는 GMT와 같은 디폴트 시간대에서 타임 스탬프를 발생할 수 있다. 데이터 처리 시스템(120)은 예를 들어 날짜 및 시간을 포함하는 미리결정된 포맷으로 타임 스탬프를 발생할 수 있고, <YYYY-MM-DD> <HH: MM:SS>와 같은 초를 포함하며, 여기서, YYYY는 네 자릿수의 연도를 나타내며, MM은 두 자릿수의 월 숫자를 나타내며, HH는 두 자리 숫자로된 24 시간 형식의 시간을 나타내며, MM은 2 자리 숫자로 분을 나타내며, SS는 두 자리의 초를 나타낸다. 예를 들어, 상기 타임 스탬프는 2015-01-20 00:09:00일 수 있다. 일부 경우, 데이터 처리 시스템(120)은 전화 통화로 초래한 콘텐츠 아이템을 제공한 콘텐츠 제공자(125)의 위치 또는 컴퓨팅 디바이스(110)의 위치에 대응하는 시간대에서 타임 스탬프를 발생할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 콘텐츠 아이템의 콘텐츠 계정으로부터 콘텐츠 제공자(125)에 의해 설정된 위치 정보를 결정할 수 있다. 일부 경우에, 콘텐츠 아이템은 위치 정보(예를 들어, 식당 주소)를 포함할 수 있다. 데이터 처리 시스템(120)은 음성 호의 지속시간을 결정할 수 있다. 데이터 처리 시스템(120)은 컴퓨팅 디바이스와 콘텐츠 제공자의 제공자 디바이스 간의 호를 연결(bridging)한 후 그 호를 모니터링할 수 있다. 데이터 처리 시스템(120)은 호를 끊거나, 호를 종료하거나, 호의 연결을 끊거나, 음성 호 연결 해제 중 하나 이상의 상대방에 응답하여 호의 종료를 검출하기 위해 그 호를 모니터링할 수 있다. 데이터 처리 시스템(120)은 데이터 처리 시스템(120)의 타이머/카운터/클록을 통해 호의 종료에 대응하는 제2 타임 스탬프를 결정할 수 있다. 데이터 처리 시스템(120)은 종료 시간 스탬프와 시작 시간 스탬프 간의 차이를 결정함으로써 호의 지속시간을 결정할 수 있다. 일부 경우에, 데이터 처리 시스템(120)은 호의 개시에 응답하여 스톱 워치 또는 카운터를 개시 또는 시작할 수 있고, 호의 종료에 응답하여 카운터 또는 스톱 워치를 정지시킬 수 있다. 그 후, 데이터 처리 시스템(120)은 카운터의 값에 기초하여 호의 지속시간을 결정할 수 있다. 지속시간의 형식은 예를 들어 HH:MM:SS일 수 있다.
예를 들어, 데이터 저장소에 저장된 로그 엔트리 데이터 구조(165)는 표 1에 도시된 다음 정보를 포함할 수 있다. 로그 엔트리 데이터 구조(165)는 데이터 처리 시스템(120)에 의해 수신된 음성 호에 대한 로그 엔트리를 저장, 유지, 구성 또는 조작하기 위한 테이블 포맷 또는 다른 데이터 포맷을 포함할 수 있다.
디바이스 식별자 시작 시간 지속시간(Duration) 가상 전화 번호
1234ABC 2015-01-20 00:09:00 00:15:34 800-555-4567
1235DEF 2015-01-20 00:15:00 00:12:10 800-555-7890
1235GHI 2015-01-20 00:18:00 00:25:45 800-555-7890
1234ABC 2015-01-21 00:7:00 00:07:34 800-555-4567
표 1: 로그 엔트리 데이터 구조의 예
트랙커(140)는 컴퓨팅 디바이스(110)로부터의 전화 호 또는 사용자의 컴퓨팅 디바이스(110)로부터 콘텐츠 아이템의 선택을 수신하는 것에 응답하여 로그 엔트리를 획득하고 저장하도록 구성될 수 있다. 트랙커(140)는 콘텐츠 아이템을 제공하거나, 사용자 컴퓨팅 디바이스(110)로부터 콘텐츠 아이템의 선택을 수신하거나, 또는 컴퓨팅 디바이스(110)로부터 전화 호를 수신하는 것에 응답하여 콘텐츠 아이템 노출 레코드를 획득하고 저장하도록 구성될 수 있다. 상기 선택은 상기 콘텐츠 아이템의 클릭을 포함할 수 있다. 일부의 경우에, 상기 선택은 전화 번호 링크(예를 들어, 링크(220))의 선택을 나타낼 수 있다. 예를 들어, 트랙커(140)는 링크(230)의 선택에 응답하여 로그 엔트리 데이터를 저장할 수 없지만, 트랙커(140)는 전화 호 또는 전화 번호 링크(220)(또는 전화 번호에 대한 요청)의 선택에 응답하여 상기 로그 엔트리 데이터를 저장할 수 있다. 데이터 처리 시스템(120)은 전화 번호 링크(220)를 통한 전화 번호에 대한 요청 또는 선택에 비해 URL(230)의 선택을 구별하도록 구성될 수 있다.
콘텐츠 아이템 노출 데이터 구조(160)는 데이터 저장소(155)에 저장 될 수 있다. 상기 콘텐츠 아이템 노출 데이터 구조(160)는 노출 레코드를 저장, 유지, 구성 또는 조작하기 위한 테이블 포맷 또는 다른 데이터 포맷을 포함할 수 있다. 노출 리코드는 웹 페이지에 콘텐츠 아이템 또는 추가 콘텐츠 아이템을 디스플레이하는 인스턴스(instance)를 나타낼 수 있다. 상기 노출은 컨텐츠 아이템이 디스플레이되는 웹 페이지(예를 들어, 웹 페이지의 URL(uniform resource locator), 컨텐츠 슬롯의 위치/장소, 웹 페이지의 키워드)에 대한 정보, 콘텐츠 아이템이 선택되는 검색 엔진으로 사용자에 의해 입력된 검색 쿼리, 콘텐츠 아이템의 키워드 및/또는 웹의 키워드 또는 콘텐츠 아이템이 디스플레이되도록 선택된 검색 쿼리(예를 들어, 브로드(broad), 문구 또는 정확한 매칭, 또는 다른 관련성 또는 유사성 메트릭을 통해), 디바이스의 유형 또는 콘텐츠 아이템이 디스플레이되는 컴퓨팅 디바이스(110)의 지리적 위치, 상기 노출에 연관된 타임 스탬프를 포함할 수 있다.
데이터 처리 시스템(120)은 일시적으로 콘텐츠 아이템 노출 레코드를 콘텐츠 아이템 노출 데이터 구조에 저장할 수 있고, 일정 기간(예를 들면, 24시간, 48시간, 72시간, 30일, 60일, 90일 등) 후에 노출 레코드를 제거하거나 삭제할 수 있다. 데이터 처리 시스템(120)은 이벤트, 조건 또는 트리거에 응답하여 노출 레코드를 제거할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 노출과 연관된 호의 종료 후 시간 간격 또는 지속시간 후에 또는 노출 히스토리 정보를 삭제하기 위한 요청에 응답하여 상기 노출 레코드를 삭제할 수 있다.
데이터 처리 시스템(120)(예를 들어, 트랙커(140)를 통해)은 노출 데이터 구조에 저장된 트랙킹 데이터와 데이터베이스에 저장된 가상 전화 번호 간의 링크를 발생할 수 있다. 상기 링크는 상기 트랙킹 데이터와 상기 가상 전화 번호 간의 포인터 또는 다른 연관 메커니즘을 포함할 수 있다. 일부 경우에, 트랙커(140)는 상기 매핑된 가상 전화 번호로 상기 노출 데이터 구조 내의 노출 레코드를 업데이트할 수 있다. 일부 경우에, 상기 링크를 발생하는 것은 트래킹 데이터 및 가상 전화 번호를 포함하는 엔트리 또는 데이터 레코드 또는 제2 데이터 구조를 발생하는 데이터 처리 시스템(120)에 회부할 수 있다. 예를 들어, 트랙커(140)는 해당 가상 전화 번호와 관련된 트랙킹 데이터를 엔트리에 제공하는 트랙킹 링크 데이터 구조를 생성할 수 있다. 이 데이터 구조는 또한 노출 레코드 또는 컴퓨팅 디바이스(110)에 관한 정보를 포함할 수 있다.
콘텐츠 아이템 노출 데이터 구조(165)는 표 2에 나타낸 바와 같이 다음 필드들을 포함할 수 있다.
가상 전화 번호 콘텐츠 노출(Content Impression) ID 노출 타임 콘텐츠 아이템 ID 콘텐츠 캠페인/그룹 ID 콘텐츠 제공자
ID
키워드 비드(Bid)
800-555-4567 101202 2015-01-20 00:08:50 Item_1 Camp_A Provider_A Television 0.2
800-555-7890 101203 2015-01-20 00:14:30 Item_2 Camp_A Provider_A computer 0.1
800-555-7890 101204 2015-01-20 00:17:59 Item_3 Camp_B Provider_B Vacation 0.4
800-555-0123 101205 2015-01-22 00:12:59 Item_4 Camp_C Provider_B beach 0.3
표 2: 콘텐츠 아이템 노출 데이터 구조의 예
하나 이상의 값, 필드 또는 로그 엔트리 데이터 구조의 엔트리는 익명 해시 기술 또는 암호화 기술을 사용하여 저장될 수 있다. 일부 실시예에서, 데이터 처리 시스템(120)은 조건에 기초하여 트랙킹 데이터와 가상 전화 번호 간의 링크를 제거할 수 있다. 상기 조건은 예를 들어 상기 가상 전화 번호에 대한 요청을 수신하지만 상기 번호를 제공하는 지속시간(예를 들어, 2시간, 4시간, 48시간, 72시간, 1주일 등) 내에 상기 번호로의 호를 수신하지 않는 것; 또는 그 번호에 대한 특정 다수의 호(예를 들어, 2 calls, 3 calls, 5 calls, 등)를 수신하는 것을 포함할 수 있다.
데이터 처리 시스템(120)(예를 들어, 트랙커(140) 또는 가상 번호 엔진 (135)을 통해)은 웹 페이지를 통해 제1 가상 전화 번호를 제공할 수 있다. 컴퓨팅 디바이스(110)는 호 능력(call capabilities)을 포함할 수 있고, 전화 번호를 다이얼링하거나 디바이스(110)의 호 프로세스를 개시하는 상기 번호의 인터랙티브 링크(interactive link)를 선택함으로써 상기 가상 전화 번호로의 호(또는 다른 통신 채널)를 개시할 수 있다. 일부 실시예에서, 사용자는 웹 페이지 및 전화 번호가 디스플레이된 디바이스(110)와 다른 디바이스에서 상기 가상 전화 번호로의 호를 개시할 수 있다. 예를 들어, 사용자는 데스크톱 컴퓨터, 랩톱 컴퓨터 또는 태블릿에서 전화 번호 및 추가 콘텐츠 아이템으로 웹 페이지를 보고 유선 전화 또는 휴대 전화에서 상기 번호로 전화를 걸 수 있다. 데이터 처리 시스템(120)은 콘텐츠 아이템의 선택에 가상 전화 번호를 할당하고 콘텐츠 아이템에 대한 트래킹 데이터와 가상 전화 번호를 링크시킬 수 있기 때문에, 사용자는 다른 디바이스로부터 가상 전화 번호로 전화를 걸 수 있고, 데이터 처리 시스템 시스템(120)은 상기 해당 트랙킹 데이터에 여전히 액세스할 수 있다.
데이터 처리 시스템(120)(예를 들어, 가상 번호 엔진(135) 또는 트랙커(140)를 통해)은 클라이언트 디바이스로부터 호를 수신하여 제1 가상 전화 번호를 통해 제1 통신 채널을 개시할 수 있다. 예를 들어, 상기 클라이언트 디바이스는 제1 가상 전화 번호로 전화를 걸어서 상기 통신 채널을 개시할 수 있고, 데이터 처리 시스템(120)은 상기 통신(예를 들어, 링(ring))의 개시에 대한 인디케이션을 수신할 수 있다. 데이터 처리 시스템(120)은 상기 호(또는 그의 인디케이션)를 수신하면 하나 이상의 기능을 수행할 수 있다.
상기 호의 수신에 응답하여, 데이터 처리 시스템(120)은 제1 가상 전화 번호를 사용하여 데이터베이스에서 룩업을 수행하여 콘텐츠 제공자에 대응하는 제2 번호를 식별하고 콘텐츠 아이템 노출 데이터를 식별할 수 있다. 예를 들어, 제1 가상 전화 번호는 데이터 처리 시스템(120)을 호출하는데 사용될 수 있고, 상기 링크된 콘텐츠 아이템 노출 데이터에 액세스하고 제공자 디바이스의 제2 번호를 식별하는데 추가로 사용될 수 있다. 상기 제2 번호는 콘텐츠 제공자(또는 고객 서비스 담당자 또는 그의 에이전트 디바이스)를 호출하는데 사용될 수 있다. 일부 경우, 상기 콘텐츠 제공자는 콘텐츠 캠페인을 설정할 때 상기 제2 번호를 제공할 수 있고, 상기 제2 번호는 데이터 처리 시스템 120)의 데이터베이스에 저장될 수 있다.
데이터 처리 시스템(120)은 상기 제2 번호를 식별할 때 클라이언트 디바이스와 콘텐츠 제공자 디바이스 간의 제2 통신 채널을 설정하기 위해 상기 제2 번호를 사용할 수 있다. 데이터 처리 시스템(120)은 상기 제2 번호로 전화를 걸고, 상기 콘텐츠 제공자는 상기 호를 수신할 수 있다. 상기 콘텐츠 제공자(또는 고객 서비스 담당자)가 전화에 응답할 수 있다. 데이터 처리 시스템(120)은 상기 제1 호를 상기 제2 호와 연결 또는 병합하여 사용자를 콘텐츠 제공자의 고객 서비스 담당자와 연결시키는 제2 통신 채널을 생성할 수 있다. 일부 경우, 데이터 처리 시스템(120)은 호들을 연결하도록 구성된 브리지 모듈을 포함한다. 상기 브리지 모듈은 호들을 연결하도록 구성된 하드웨어 또는 소프트웨어를 포함할 수 있다. 상기 브리지 모듈은 데이터 패킷 라우팅 또는 중계 기술로 구성되어 호를 개시하는 컴퓨팅 디바이스와 호를 수신하는 제공자 디바이스 간의 통신을 용이하게 할 수 있다.
데이터 처리 시스템(120)은 콘텐츠 제공자(125)로부터 음성 호 엔트리를 수신하도록 설계 및 구성된 제공자 인터페이스(145)를 포함한다. 상기 음성 호 엔트리는 음성 호 엔트리 데이터 구조의 형태일 수 있다. 제공자 인터페이스(145)는 입력 텍스트 박스, 버튼, 파일 브라우저, 또는 음성 호 엔트리 정보를 포함하는 데이터 파일을 콘텐츠 제공자가 업로드, 피드(feed) 또는 전송할 수 있게 하는 다른 입력 메커니즘을 포함하는 그래픽 사용자 인터페이스를 제공할 수 있다. 일부 경우에, 제공자 인터페이스(145)는 실시간으로 데이터 피드 또는 스트리밍 데이터를 수신하도록 구성되거나, 또는 데이터를 기록 또는 검출하는 콘텐츠 제공자(125)에 응답하거나 데이터를 상기 데이터 처리 시스템(120)에 이용 가능하게 하는 애플리케이션 프로그래밍 인터페이스를 포함할 수 있다. 일부 경우, 제공자 인터페이스(145)는 음성 호 엔트리의 주기적 업로드, 음성 호 엔트리의 일괄 업로드 또는 음성 호 엔트리의 실시간 피드(real-time feeds)를 위해 구성될 수 있다. 제공자 인터페이스(145)는 보안 통신 프로토콜(예를 들어, 인증서(authentication credentials)을 요구할 수 있는 암호화된 통신 채널)과 같은 하나 이상의 네트워크 프로토콜을 사용하도록 구성될 수 있다.
콘텐츠 제공자(125)는 포맷으로 음성 호 엔트리를 발생, 기록, 저장 또는 유지할 수 있다. 일부 경우, 콘텐츠 제공자(125)는 하나 이상의 필드에 대한 하나 이상의 값을 해당 필드에 대해 데이터 처리 시스템(120)에 의해 사용된 포맷과 동일한 포맷으로 기록한다. 일부 경우에, 콘텐츠 제공자(125)에 의해 사용된 포맷은 데이터 처리 시스템(120)에 의해 사용된 포맷과 다를 수 있다. 이러한 경우, 데이터 처리 시스템(120)은 콘텐츠 제공자(125)에 의해 제공된 필드의 포맷을 데이터 처리 시스템(120)에 의해 유지되는 로그 엔트리 데이터와 일치하는 포맷으로 변환할 수 있다. 예를 들어, 음성 호 엔트리의 시작 시간은 데이터 처리 시스템의 로그 엔트리의 시간대와 다를 수 있는 시간대일 수 있다. 제공자 인터페이스(145)는 음성 호 엔트리에서 시작 시간에 대한 시간대를 결정하고 그 시간대를 로그 엔트리에 사용된 것과 동일한 시간대로 변환할 수 있다. 예를 들어, 음성 호 엔트리는 시간대 정보(time zone information)에 대한 필드를 포함할 수 있다. 상기 시간대 정보는 PST(Pacific Standard Time) 또는 PDT(Pacific Daylight Savings Time)과 같은 시간대 식별자(time zone identifier)를 사용하여 시간대 또는 지리적 위치를 나타낼 수 있다. 상기 데이터 처리 시스템은 시간대 변환 데이터 구조에 액세스하여 음성 호출 엔트리의 시작 시간을 로그 엔트리에서 사용된 동일한 시간대로 변환하는 데 사용할 시간 오프셋을 결정할 수 있다.
상기 디바이스 식별자에 대한 포맷은 데이터 처리 시스템(120)에 의해 미리 결정되거나 데이터 처리 시스템(120)에 의해 규정될 수 있다. 디바이스 식별자의 포멧은 앞에 '+'기호가 있는 E.164 포맷(예를 들어, +15555551234)일 수 있다. 데이터 처리 시스템(120)은 "5555551234", "(555) 555-1234", "555-555-1234", "(555) 555-1234"와 같은 디바이스 식별자에 대한 하나 이상의 포맷을 허용할 수 있다. 상기 데이터 처리 시스템은 전화 번호 라이브러리를 사용하여 상기 디바이스 식별자를 파싱할 수 있다. 데이터 처리 시스템(120) 번호를 파싱할 수 없는 경우, 데이터 처리 시스템(120)은 제공자 인터페이스(145)를 통해 콘텐츠 제공자에게 오류를 보고할 수 있다. 데이터 처리 시스템(120)은 오류 음성 호 엔트리를 추가 프로세싱에서 배제할 수 있다.
상기 시작 시간 포맷은 예를 들면 다음 중 하나 이상을 포함할 수 있다.
(1) 완료 날짜 +시와 분:
YYYY-MM-DDThh : mmTZD (예: 1997-07-16T19:20:30.45+01:00)
(2) 완료 날짜 +시, 분 및 초:
YYYY-MM-DDThh:mm:ssTZD (예: 1997-07-16T19:20:30+01:00)
(3) 완료 날짜 +시, 분, 초 및 십진법 소수
YYYY-MM-DDThh:mm:ss.sTZD (예: 1997-07-16T19:20:30.45+01:00)
여기서:
YYYY = 네 자리 연도
MM = 두 자릿수 월(01 = 1월 등)
DD = 두 자리 날짜 (01에서 31까지)
hh = 두 자리 시간 (00-23) (오전/오후는 허용되지 않음)
mm = 두 자리 분 (00에서 59)
ss = 두 자리 초(00 - 59)
s = 초의 십진수를 나타내는 하나 이상의 숫자
TZD = 시간대 지정자(time zone designator)(Z 또는 + hh:mm 또는 -hh:mm)
시간은 UTC(Coordinated Universal Time) 지정자(designator)("Z")를 사용하여 UTC(Coordinated Universal Time)로 나타낼 수 있다. 시간은 시간 및 분 단위의 시간대 오프셋과 함께 현지 시간(local time)으로 표현될 수 있다. "+ hh:mm"의 시간대 오프셋은 날짜/시간이 UTC보다 "hh"시간 및 "mm"분 앞선 현지 시간대를 사용함을 나타낸다. "-hh : mm"의 시간대 오프셋은 날짜/시간이 UTC 보다 "hh"시간 및 "mm"분 뒤진 현지 시간대를 사용함을 나타낸다.
상기 음성 호 엔트리는 음성 호를 개시하는 디바이스의 디바이스 식별자, 2) 시간대 정보로 호 시작 시간, 3) 호 지속시간, 4) 전환 라벨(conversion label)(예: 구매, 구독 또는 설문 조사) 5) 전환 시간, 6) 전환 값(conversion value)(예: 전환과 관련된 가격 또는 기타 기간), 또는 7) 전환 통화(예: 미국 달러) 중에서 하나 이상의 필드를 포함할 수 있다. 일부 경우, 음성 호 엔트리 데이터 구조는 표 3에 예시된 바와 같이 디바이스 식별자, 시작 시간 및 지속시간의 3 개의 필드를 포함할 수 있다. 표 3은 표 2에 나타낸 "provider_A"에 의해 제공되는 음성 호 엔트리 데이터 구조를 나타낸다.
디바이스 식별자 시작 시간 지속시간 시간대(Time Zone)
1234ABC 2015-01-20 00:08:57 00:14:34 Los Angeles, California
1235DEF 2015-01-20 00:15:30 00:13:10 Los Angeles, California
표 3: 콘텐츠 제공자에 의해 제공되는 음성 호 엔트리 데이터 구조의 예.
일부 경우, 음성 호 엔트리 데이터 구조는 표 4에 나타낸 바와 같이 전환 라벨을 나타내는 제4 필드, 또는 전환 금액(conversion amount) 또는 값을 나타내는 제5 필드와 같은 추가 필드를 포함할 수 있다.
디바이스 식별자 시작 시간 지속시간 전환 라벨(Conversion Label) 전환 값(Conversion Value)
1234ABC 2015-01-20 00:08:57 00:14:34 Purchase $800
1235DEF 2015-01-20 00:15:30 00:13:10 Purchase $200
표 4: 추가 필드를 갖는 음성 호 엔트리 데이터 구조의 예
콘텐츠 제공자(125)는 자신의 전환 라벨을 결정하거나 할당할 수 있으며, 예를 들어, 전환 라벨은 데이터 처리 시스템(120)에 의해 미리 설정되거나 미리 결정되지 않을 수 있다. 콘텐츠 제공자(125)는 전환 라벨 및 금액(conversion amount)을 기록 또는 결정할 수 있다. 상기 라벨은 문자열, 문자(character), 기호, 텍스트, 숫자, 레터(letters) 또는 영숫자 값을 포함할 수 있다.
예를 들어, 잠재 고객이 "가장 저렴한 텔레비전"이라는 검색 쿼리를 입력할 수 있다. 데이터 처리 시스템(120)은 검색 결과를 리턴(return)할 수 있고, 또한 콘텐츠 아이템 ID "Item_1"을 갖는 추가 콘텐츠 아이템과 같은 추가 콘텐츠 아이템을 선택하고, 그 정보를 표 2에 나타낸 데이터 구조와 같은 콘텐츠 아이템 노출 데이터 구조에 저장할 수 있다. 데이터 처리 시스템(120)은 콘텐츠 아이템에 대한 가상 전화 번호(800-555-4567)를 제공할 수 있다. 잠재 고객은 가상 전화 번호로 전화할 수 있고, 데이터 처리 시스템(120)은 호를 콘텐츠 제공자(125)(예를 들어, 온라인 전자 제품 소매점(online electronics retail store))의 제공자 디바이스에 연결시킬 수 있다. 데이터 처리 시스템(120)은 호 및 시작 시간을 개시하는 고객 디바이스의 디바이스 식별자와 같이 음성 호와 연관된 값 또는 파라미터를 검출하고, 이 정보를 표1에 나타낸 상기 데이터 구조와 같은 로그 엔트리에 저장할 수 있다 .
콘텐츠 제공자(125)는 상기 호를 수신하고, 그 호출이 1234ABC의 디바이스 식별자를 갖는 고객의 디바이스로부터 온 것인지를 결정할 수 있다. 콘텐츠 제공자(125)는 표 3에 나타낸 데이터 구조와 같은 음성 호 엔트리 데이터 구조에 디바이스 식별자 및 시작 시간을 기록할 수 있다. 일부 경우에, 콘텐츠 제공자(125)는 지속시간을 기록하지 않을 수도 있고, 또는 시작 시간 및 지속시간 중 하나만을 기록할 수도 있다. 콘텐츠 제공자(125)는 제품을 고객에게 판매하는 것과 같은 전환시에 "구매"와 같은 라벨로 전환 유형을 기록할 수 있고, 구매 가격 $800와 같은 전환 금액을 더 기록할 수 있다.
데이터 처리 시스템(120)은 콘텐츠 제공자(125)에 의해 제공된 음성 호 엔트리에 대응하는 로그 엔트리 데이터 구조(165)에 저장된 로그 엔트리를 매칭, 상관(correlate), 필터링 또는 식별하도록 설계 및 구성된 매칭 엔진(150)을 포함할 수 있다. 상기 매칭 엔진(150)은 데이터 처리 시스템의 로그 엔트리 내의 하나 이상의 필드들 중 하나 이상의 값들과, 콘텐츠 제공자에 의해 제공된 음성 호 엔트리 내의 하나 이상의 필드들 중 하나 이상의 값들 사이에 불일치가 있는지를 결정할 수 있다. 상기 불일치를 해결하기 위해, 매칭 엔진(150)은 임계값에 기초하여 범위(range)를 발생할 수 있다. 예를 들어, 매칭 엔진(150)은 음성 호 엔트리에 포함된 디바이스 식별자를 로그 엔트리에 나타낸 디바이스 식별자와 매칭시킴으로써 하나 이상의 음성 호 엔트리에 대응하는 하나 이상의 로그 엔트리를 식별할 수 있다. 표 1 및 표 2에 나타낸 바와 같이, 디바이스 식별자(1234ABC)는 각 데이터 구조 내의 2개의 엔트리에 대응하며, 디바이스 식별자(1235DEF 및 1235GHI) 각각은 각 데이터 구조 내의 하나의 엔트리에 대응한다.
그 후, 데이터 처리 시스템(120)은 음성 호 엔트리 및 로그 엔트리와 연관된 추가 필드를 사용하여 특정 음성 호를 식별할 수 있다. 예를 들어, 매칭 엔진(150)은 디바이스 식별자에 대한 음성 호 엔트리에 저장된 시작 시간이 디바이스 식별자에 대한 로그 엔트리에 저장된 시작 시간의 미리 결정된 임계값 내에 있는지를 결정할 수 있다. 매칭 엔진(150)은 데이터 저장소(155)로부터 상기 미리결정된 임계값을 검색할 수 있다. 상기 미리결정된 임계값은 예를 들어 10초, 30초, 1분, 2분, 10분, 30분, 1시간 또는 로그 엔트리들을 음성 호 엔트리들에 정확하게 매칭시키는 것을 용이하게 하는 다른 임계값일 수 있다. 일부 경우에, 데이터 처리 시스템(120)은 디바이스 식별자에 대한 음성 호 엔트리에 저장된 지속시간이 상기 디바이스 식별자에 대한 로그 엔트리에 저장된 지속시간의 미리결정된 임계값 내에 있는지를 결정할 수 있다. 매칭 엔진(150)은 지속시간 동안 미리결정된 임계값을 검색할 수 있고, 시작 시간에 대한 임계값 또는 다른 임계값과 동일할 수 있다. 예를 들어, 상기 미리결정된 지속시간 임계값은 예를 들어 10초, 30초, 1분, 2분, 10분, 30분, 1시간 또는 로그 엔트리들을 음성 호 엔트리들에 정확하게 매칭시키는 것을 용이하게 하는 다른 임계값일 수 있다.
데이터 처리 시스템(120)은 상기 미리결정된 임계값을 사용하여 음성 호 엔트리에 대한 쿼리를 발생할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 디바이스 식별자(1234ABC)를 포함하고, 시작 시간(2015-01-20 00:08:57(+/- 30초))을 갖는 모든 로그 엔트리를 쿼리하는 것과 같이 디바이스 식별자(1234ABC) 및 시작 시간(2015-01-20 00:08:57)을 포함하는 표 3의 제1 음성 호 엔트리에 대한 매칭 쿼리를 발생할 수 있다. 상기 데이터 처리 시스템은 동일한 디바이스 식별자를 가지며 2015-01-20 00:09:00의 시작 시간이 해당 음성 호 엔트리의 시작 시간보다 30초 이내이므로 표 1의 로그 엔트리 데이터 구조에 저장된 제1 로그 엔트리가 이 매칭 쿼리를 만족하는 것으로 식별할 수 있다. 일부 경우, 데이터 처리 시스템(120)은 디바이스 식별자(1234ABC)를 포함하고 시작 시간(2015-01-20 00:08:57(+/- 30초)) 및 지속시간(00:14:34(+/- 5분)을 갖는 모든 로그 엔트리를 쿼리하는 것과 같이 시작 시간 및 지속시간에 기초하여 매칭을 결정하는 매칭 쿼리를 발생할 수 있다. 상기 데이터 처리 시스템은 동일한 디바이스 식별자를 가지며, 시작 시간(2015-01-20 00:09:00 )이 해당 음성 호 엔트리의 시작 시간보다 30초 이내이며, 지속 시간(00:15:34)은 해당 음성 호 엔트리의 지속시간보다 5분 이내이므로, 표 1의 로그 엔트리 데이터 구조에 저장된 제1 로그 엔트리가 매칭 쿼리를 만족하는 것으로 식별할 수 있다.
일단 데이터 처리 시스템(120)이 매칭하는 로그 엔트리를 식별하면, 데이터 처리 시스템(120)은 로그 엔트리(예를 들어, 800-555-4567)에 대한 가상 전화 번호를 검색하고, 가상 전화 번호를 사용하여 콘텐츠 아이템 노출 데이터 구조에서 룩업을 수행하여 그 전화 통화(phone call)로 초래한 해당 콘텐츠 아이템 노출을 식별할 수 있다. 예를 들어, 표 2에 나타낸 제1 엔트리는 가상 전화 번호(800-555-4567)에 대한 콘텐츠 아이템 노출 레코드이다. 상기 데이터 처리 시스템은 콘텐츠 아이템 노출 레코드를 콘텐츠 제공자에 의해 제공된 추가 정보로 업데이트할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 음성 호 엔트리 데이터 구조를 통해 콘텐츠 제공자에 의해 제공된 전환 값(또는 임의의 다른 필드 또는 값) 또는 전환 라벨을 포함하도록 상기 콘텐츠 아이템 노출 레코드를 업데이트할 수 있다. 일부 경우, 매칭 엔진(150)은 콘텐츠 제공자에 대한 리포트를 발생하는데 사용될 수 있는 리포트 데이터 구조와 같은 다른 데이터 구조를 발생할 수 있다.
상기 데이터 처리 시스템은 데이터 처리 시스템(120)에 의해 유지되는 콘텐츠 아이템 노출 정보뿐만 아니라 음성 호 엔트리를 통해 콘텐츠 제공자에 의해 제공된 정보를 사용하여 리포트를 발생할 수 있다. 상기 리포트는 광고 노출, 클릭, 선택, 전화 통화(phone calls) 또는 전환 중 두 가지 이상을 연결(tie), 링크 또는 연관시킬 수 있다. 상기 데이터 처리 시스템은 데이터 파일을 통해 콘텐츠 제공자로부터 수신된 음성 호 엔트리를 사용하여 상기 연관을 수행할 수 있다. 상기 리포트는 데이터 처리 시스템(120)의 제공자 인터페이스(145)에 의해 제공되는 동적 또는 인터랙티브 리포트를 포함할 수 있다. 상기 리포트는 차트, 그래프, 원형 차트, 막대 그래프, 히스토그램, 테이블, 스프레드시트(spreadsheet), 콘텍스트 리포트(contextual report) 또는 이미지를 포함할 수 있다. 상기 리포트는 클릭률, 전환율, 클릭당 비용(cost-per-click) 또는 투자 수익(return on investment)과 같은 실적 정보(performance information)를 포함할 수 있다. 예를 들어, 콘텐츠 제공자는 디바이스 식별자(1234ABC)에 제공되는 콘텐츠 아이템(Item_1)으로 초래한 콘텐츠 아이템 경매에서 낙찰받기 위해 0.2 달러를 입찰할 수 있다. 데이터 처리 시스템(120)은 0.2 입찰가가 800달러의 전환을 초래한 것으로 결정할 수 있다. 데이터 처리 시스템(120)은 이 콘텐츠 아이템(Item_1)(또는 콘텐츠 캠페인 Camp_A)과 연관된 모든 입찰 및 비용을 추가로 식별하고 이 값들을 합하여 상기 호 콘텐츠 캠페인에 대한 투자 수익을 발생할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 로그 엔트리와 매칭하는 콘텐츠 제공자의 모든 음성 호 엔트리를 식별하고, 콘텐츠 아이템 ID 또는 캠페인 ID에 기초하여 상기 매칭하는 엔트리를 필터링하여 특정 콘텐츠 아이템 또는 캠페인에 대한 리포트를 발생할 수 있다. 일부 경우에, 상기 리포트는 콘텐츠 계정 또는 콘텐츠 그룹에 대한 리포트일 수 있다.
데이터 처리 시스템(120)(예를 들어, 매칭 엔진(150)을 통해)은 범위를 갖는 쿼리를 발생하는데 사용되는 임계값을 조절 또는 조정(tune)할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 데이터 처리 시스템이 임의의 매칭 쿼리를 식별하지 않거나 3개 미만의 매칭 쿼리를 식별하는 경우 임계값 또는 범위를 증가시킬 수 있다. 데이터 처리 시스템(120)은 데이터 처리 시스템(120)이 너무 많은 매칭 쿼리 (예를 들어, 2 이상, 3 이상, 4 이상 또는 5 이상)를 수신하면 임계값 또는 범위를 감소시킬 수 있다. 일부 경우, 데이터 처리 시스템(120)은 콘텐츠 제공자에 특정한 임계값을 조정할 수 있고, 콘텐츠 제공자에 대한 히스토릭 매칭 성능(historic matching performance)에 기초하여 조정할 수 있다. 예를 들어, 콘텐츠 제공자 A는 일반적으로 로그 엔트리에서 시작 시간보다 10초 내에 시작 시간 데이터를 제공할 수 있는 반면, 제공자 B는 시작 시간 데이터에 2 분 델타와 같은 큰 불일치(larger discrepancy)를 제공할 수 있다. 따라서, 데이터 처리 시스템(120)은 제공자 A에 비해 제공자 B에 대해 더 큰 임계값을 사용할 수 있다. 상기 데이터 처리 시스템은 상기 미리결정된 임계값을 데이터 저장소(155)에 저장할 수 있다. 상기 데이터 처리 시스템은 히스토리 매칭 성능을 계속 평가하여 임계값을 조절하거나 조정할 수 있다. 상기 데이터 처리 시스템은 데이터 저장소(155)에 저장된 상기 미리결정된 임계값을 업데이트할 수 있다. 예를 들어, 데이터 저장소(155)는 임계값 데이터 구조를 포함할 수 있다.
일부 경우에, 매칭 엔진(150)은 단일 음성 호 엔트리와 매칭하는 다수의 로그 엔트리를 식별할 수 있다. 데이터 처리 시스템(120)은 다수의 로그 엔트리가 음성 호 엔트리의 시작 시간의 범위 또는 미리결정된 임계값 내에 속하는 시작 시간을 가질 수 있기 때문에 상기 단일 음성 호 엔트리와 매칭하는 다수의 로그 엔트리를 식별할 수 있다. 다수의 매칭 엔트리를 식별하는 것에 응답하여, 매칭 엔진(150)은 음성 호 엔트리에 대한 시작 시간에서 종료하는 상기 매칭 로그 엔트리를 선택하기 위해 타이 브레이킹 메커니즘(tie breaking mechanism)을 개시할 수 있다. 예를 들어, 매칭 엔진(150)은 제1 매칭 로그 엔트리의 시작 시간과 음성 호 엔트리의 시작 시간 사이의 제1 시간차를 결정할 수 있다. 매칭 엔진(150)은 제2 매칭 로그 엔트리의 시작 시간과 음성 호 엔트리의 시작 시간 사이의 제2 시간차를 결정할 수 있다. 매칭 엔진(150)은 제1 시간차 및 제2 시간차에 대한 절대 값을 결정할 수 있다. 매칭 엔진(150)은 제1 시간차의 절대 값과 제2 시간차의 절대 값의 최소값을 결정할 수 있다. 데이터 처리 시스템(120)은 최소 시간차에 대응하는 로그 엔트리를 상기 매칭 로그 엔트리로서 선택하고, 이 로그 엔트리를 사용하여 콘텐츠 아이템 노출 데이터를 식별 또는 검색하고 리포트를 발생할 수 있다.
일부 경우에, 상기 매칭은 콘텐츠 아이템 노출 데이터 구조에 저장된 콘텐츠 아이템의 콘텐츠 아이템 노출 시간에 기초할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 가상 전화 번호를 식별하지 않을 수 있고, 콘텐츠 제공자 ID와 같이 콘텐츠 아이템 노출 레코드에 저장된 다른 정보 또는 시작 시간을 사용하여 상기 음성 호 엔트리를 상기 콘텐츠 아이템 노출 레코드와 직접 상관(correlate)시킬 수 있다.
예를 들어, 매칭 엔진(150)은 미국에서 일광 절약제(daylight savings) 변경을 계산(account)할 수 있다. 미국의 경우, 일광 절약제(fall daylight savings) 변경 기간동안 1시간이 두 번 반복된다. 콘텐츠 제공자가 일광 절약제 정보로 시간을 태깅(tagging)하지 않고 호 시작 시간과 함께 전환을 업로드하면, 상기 데이터 처리 시스템은 두 가지 가능한 시작 시간을 포함할 수 있는 임계값을 갖는 쿼리를 발생할 수 있다. 예를 들어, 이 쿼리에 대한 임계값은 그렇지 않은 임계값보다 몇시간씩 증가될 수 있다. 따라서, 매칭 엔진(150)은 상기 콘텐츠 제공자가 일광 절약제 정보로 상기 시작 시간을 태그하지 않더라도, 일광 절약제 변경 동안 발생할 수 있는 전환(conversion)을 자동으로 계산(account)할 수 있다.
도 2는 실시예에 따른 컴퓨터 네트워크를 통해 호 컨텍스트를 제공하는 것을 용이하게 하는 사용자 인터페이스(200)의 블록도이다. 사용자 인터페이스(200)는 웹 브라우저에 의해 렌더링된 웹 페이지와 같이 컴퓨팅 디바이스에서 실행되는 애플리케이션에 의해 디스플레이되는 페이지를 포함할 수 있다. 상기 웹 페이지는 검색 엔진(205)을 위한 인터페이스일 수 있고, 검색 쿼리 입력 박스(210)를 포함할 수 있다. 검색 쿼리(210)에 응답하여, 검색 엔진(205)은 검색 결과(225)를 제공한다. 상기 데이터 처리 시스템(예를 들어, 콘텐츠 선택기를 통한)은 추가 콘텐츠 아이템과 같은 콘텐츠 아이템(215)을 추가로 제공할 수 있다. 콘텐츠 아이템(215)은 검색 엔진(또는 콘텐츠 선택기)에 의해 검색 결과에 포함된 링크를 포함할 수 있다. 콘텐츠 아이템(215)은 타겟 또는 랜딩 웹 페이지에 대한 웹 어드레스뿐만 아니라 전화 번호(220)를 클릭하기 위한 버튼 또는 링크를 포함할 수 있다. 상기 사용자는 로그 엔트리 데이터 및 콘텐츠 아이템 노출 데이터를 제공하는 것을 용이하게 할 수 있는 전화 링크(220)를 클릭할 수 있고, 상기 데이터 처리 시스템은 상기 선택을 수신하는 것에 응답하여 상기 가상 전화 번호(230)를 제공할 수 있다. 가상 전화 번호(230)는 팝업 윈도우(pop up window)일 수 있고, 링크(220)를 대체하고, 콘텐츠 아이템에 인접하여 디스플레이될 수 있고, 통지, 경고, SMS 텍스트 메시지 또는 이메일을 통해 사용자 디바이스로 전송될 수 있다.
도 2를 참조하면, 일부 실시예들에 따라 예시적인 사용자 인터페이스(200)는 가상 번호(220)로 콘텐츠 아이템(215)을 제공한다. 상기 사용자 인터페이스는 검색 엔진 사용자 인터페이스(205) 또는 검색 엔진 결과 페이지(205)를 포함한다. 검색 엔진(205)은 사용자가 "택시"와 같은 검색 쿼리를 입력할 수 있는 입력 텍스트 박스(210)를 포함한다. 검색 엔진(205)은 검색 결과(225)(예를 들어, 검색 결과 1 등)를 제공할 수 있다. 상기 데이터 처리 시스템(예를 들어, 콘텐츠 선택기(130)를 통해)은 검색 쿼리에 응답하여 콘텐츠 아이템을 선택할 수 있고, 검색 쿼리(210)에 응답하여 검색 결과와 함께 디스플레이하기 위한 콘텐츠 아이템을 제공할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 아이템 노출에 대한 고유한 콘텐츠 노출 식별자를 설정, 발생 또는 식별할 수 있다. 콘텐츠 아이템 노출은 컴퓨팅 디바이스를 통한 콘텐츠 아이템의 표시(presentation)을 의미할 수 있다. 콘텐츠 아이템 노출은 콘텐츠 아이템 디스플레이, 콘텐츠 아이템 플레이, 콘텐츠 아이템을 컴퓨팅 디바이스에 전송, 또는 콘텐츠 아이템을 선택하여 컴퓨팅 디바이스에 제공하는 것을 의미할 수 있다. 일부 경우, 상기 데이터 처리 시스템은 콘텐츠 아이템의 선택 또는 클릭에 응답하는 것과 같이 콘텐츠 아이템과의 상호 작용에 응답하여 상기 콘텐츠 노출 식별자를 발생할 수 있다. 콘텐츠 아이템 노출 식별자는 콘텐츠 아이템 또는 콘텐츠 아이템 노출과 연관된 IP 어드레스 식별자 또는 프로세스 식별자와 같은 하나 이상의 파라미터 또는 필드에 기반하거나 이를 포함할 수 있다. 이 예에서, 추가 콘텐츠 아이템(215)은 택시 서비스 제공자에 관련될 수 있다. 상기 추가 콘텐츠 아이템은 택시 제공자의 웹 사이트에 대한 웹 링크(235)를 포함할 수 있다. 추가 콘텐츠 아이템(215)은 가상 번호에 액세스하기 위한 링크(220)를 더 포함할 수 있다. 사용자는 그 링크(220)를 선택할 수 있다. 상기 링크의 선택을 수신하는 것에 응답하여, 데이터 처리 시스템(예를 들어, 가상 번호 엔진(230)을 통해)은 가상 전화 번호(230)를 표시할 수 있다. 가상 전화 번호(230)는 사용자를 다른 웹 사이트로 안내하고, 텍스트(220)를 대체함으로써 팝업 윈도우를 통해 디스플레이될 수 있다. 일부 경우에, 링크(220)를 선택하면 사용자의 디바이스가 가상 전화 번호로 전화를 할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 상기 선택을 수신하고, 가상 전화 번호를 사용자의 디바이스에 제공하고, 사용자의 디바이스가 상기 가상 전화 번호로 전화하도록 지시할 수 있다.
데이터 처리 시스템(120)이 추가 콘텐츠 아이템(215), 링크(220) 또는 추가 콘텐츠 아이템(215)에 대응하는 전화 번호에 대한 다른 요청의 선택을 수신하면, 상기 데이터 처리 시스템은 상기 선택된 콘텐츠 아이템 또는 콘텐츠 아이템 노출 식별자를 제1 가상 전화 번호로 매핑하기 위해 가상 전화 번호에 대한 콘텐츠 아이템의 매핑을 저장하는 데이터베이스에 액세스할 수 있다. 상기 데이터베이스는 데이터 저장소(155)에 저장될 수 있고, 가상 전화 번호에 대한 콘텐츠 캠페인들, 콘텐츠 그룹들 또는 다수의 콘텐츠 아이템의 매핑을 포함할 수 있다. 상기 데이터베이스는 가상 전화 번호에 대한 콘텐츠 제공자의 매핑을 포함할 수 있다. 일부 실시예에서, 상기 데이터베이스는 가상 전화 번호를 동적으로 할당한 다음, 콘텐츠 제공자, 콘텐츠 캠페인, 콘텐츠 그룹 또는 콘텐츠 아이템에 대해 동적으로 발생/할당된 가상 전화 번호의 매핑을 데이터베이스에 저장할 수 있다.
데이터 처리 시스템(120)은 데이터베이스에서 룩업을 수행하여 상기 콘텐츠 아이템을 상기 가상 전화 번호에 매핑할 수 있다. 데이터 처리 시스템(120)은 콘텐츠 아이템(예를 들어, 콘텐츠 아이템 노출 식별자), 콘텐츠 캠페인, 콘텐츠 그룹 또는 콘텐츠 제공자의 고유 식별자를 사용하여 콘텐츠 아이템을 가상 전화 번호에 매핑하기 위해 룩업을 수행할 수 있다. 예를 들어, 데이터 처리 시스템(120)은 전화 번호 링크(230)의 선택을 수신한다. 전화 번호 링크(230)의 선택은 데이터 처리 시스템(120)에서 가상 전화 번호에 대한 요청을 개시한다. 가상 전화 번호(120)에 대한 요청은 콘텐츠 제공자 또는 콘텐츠 아이템의 고유 식별자와 같은 콘텐츠 아이템(215)에 관한 정보를 포함할 수 있다. 일부 경우에, 상기 요청은 콘텐츠 아이템이 디스플레이되는 웹 페이지의 URL 또는 타깃 페이지(target page)(230)에 대한 링크를 포함할 수 있으며, 이 경우 데이터 처리 시스템(120)은 식별된 웹 페이지에 액세스하여 콘텐츠 아이템과 상기 가상 전화 번호를 맵핑한다. 따라서, 데이터 처리 시스템(120)은 상기 식별자 또는 가상 전화 번호(링크(220)의 선택을 통해)에 대한 요청에 연관되거나 콘텐츠 아이템(215)과 연관된 다른 식별자를 사용하여 상기 콘텐츠 아이템을 상기 가상 전화 번호와 매핑하기 위해 데이터베이스에서 룩업을 수행할 수 있다.
도 3은 일 실시예에 따라 컴퓨터 네트워크를 통해 데이터를 동기화하는 방법을 도시한다. 방법(300)은 예를 들어, 데이터 처리 시스템, 가상 번호 엔진, 트랙커, 콘텐츠 선택기, 제공자 인터페이스, 매칭 엔진 또는 데이터 저장소를 포함하고, 도 1, 도 2 또는 도 4에 도시된 하나 이상의 시스템, 컴포넌트 또는 인터페이스를 통해 수행될 수 있다. 간략하게, 일부 실시예에서, 방법(300)은 310단계에서 음성 호 엔트리를 수신하는 데이터 처리 시스템을 포함한다. 315단계에서, 상기 데이터 처리 시스템은 복수의 로그 엔트리를 저장하는 로그 데이터 구조에 액세스한다. 320단계에서, 상기 데이터 처리 시스템은 로그 데이터 구조를 파싱하여 복수의 로그 엔트리의 로그 엔트리를 식별한다. 325 단계에서, 상기 데이터 처리 시스템은 음성 호 엔트리의 디바이스 식별자를 상기 로그 엔트리의 디바이스 식별자와 매칭시킨다. 330 단계에서, 상기 데이터 처리 시스템은 로그 엔트리의 각 시작 시간 또는 지속시간의 미리 결정된 임계값을 만족하는지를 결정한다. 335 단계에서, 상기 데이터 처리 시스템은 로그 엔트리로부터 가상 전화 번호를 검색한다. 340 단계에서, 상기 데이터 처리 시스템은 콘텐츠 아이템 노출 식별자를 결정하기 위해 룩업(look-up)을 수행한다. 345 단계에서, 상기 데이터 처리 시스템은 음성 호 엔트리를 통해 제공된 데이터를 콘텐트 아이템 노출 식별자에 대응하는 데이터 구조에 저장한다.
보다 상세하게, 방법(300)은 310 단계에서 음성 호 엔트리를 수신하는 데이터 처리 시스템을 포함한다. 상기 콘텐츠 제공자는 음성 호 엔트리를 생성하고, 그 음성 호 엔트리를 상기 데이터 처리 시스템에 제공할 수 있다. 상기 데이터 처리 시스템은 하나 이상의 음성 호 엔트리를 수신할 수 있다. 상기 데이터 처리 시스템은 하나 이상의 음성 호 엔트리를 포함하는 피드, 업로드 또는 데이터 파일을 수신할 수 있다. 일부 경우에, 음성 호 엔트리는 상기 데이터 처리 시스템에 푸시(push)될 수 있다. 일부의 경우에, 상기 데이터 처리 시스템은 콘텐츠 제공자에 의해 설정되고, 네트워크를 통해 액세스 가능한 메모리 또는 데이터베이스로부터 음성 호 엔트리를 풀링(pull)할 수 있다. 일부 경우, 상기 데이터 처리 시스템은 예를 들어, 음성 호 엔트리를 저장, 기록 또는 발생하는 콘텐츠 제공자에 응답하여, 음성 호 엔트리를 실시간으로 수신할 수 있다.
상기 데이터 처리 시스템은 콘텐츠 계정 식별자(content account identifier)를 사용하여 설정된 통신 채널을 통해 음성 호 엔트리를 수신할 수 있다. 예를 들어, 상기 통신 채널은 상기 데이터 처리 시스템에 의해 제공된 제공자 인터페이스에 로깅하는 콘텐츠 제공자에 의해 설정되는 보안 통신 채널일 수 있다.
제공자 인터페이스에 로그(log)하기 위해, 콘텐츠 제공자는 예를 들어 콘텐츠 계정 식별자, 사용자 명, 패스워드, 보안 코드, 지문, 생체인식 코드, 콘텐츠 제공자에 텍스트화된 코드 등을 포함할 수 있는 인증서(authentication credential)을 전송할 수 있다. 일부 경우에, 상기 데이터 처리 시스템은 다중 인증(multi-factor authentication)으로 구성될 수 있다.
상기 음성 호 엔트리는 하나 이상의 포맷으로 된 하나 이상의 값을 갖는 하나 이상의 필드를 포함할 수 있다. 예를 들어, 제1 필드는 음성 호를 개시하는 디바이스의 디바이스 식별자를 식별할 수 있다. 제2 필드는 음성 호의 시작 시간을 식별할 수 있다. 제3 필드는 음성 호의 지속시간을 식별할 수 있다. 제4 필드는 전환 라벨(conversion label)을 포함할 수 있다. 제5 필드는 전환 값(conversion value)을 포함할 수 있다. 상기 음성 호 엔트리는 표 3에 설명된 바와 같이 테이블 또는 데이터 구조 포맷을 포함할 수 있다. 상기 데이터 처리 시스템은 필드의 값들을 한 포맷에서 매칭하는 엔트리를 식별하거나 리포트를 발생하는 데보다 도움이 될 수 있는 다른 포맷으로 변환할 수 있다. 예를 들어, 음성 호 엔트리의 시작 시간은 제1 시간대에 있을 수 있는 반면, 데이터 처리 시스템의 로그 엔트리에 저장된 시작 시간은 제2 시간대에 있을 수 있다. 상기 음성 호 엔트리는 시간대(예를 들어, 제2 필드는 시작 시간 및 시간대를 식별할 수 있음)를 나타낼 수 있다. 상기 데이터 처리 시스템은 상기 시간대의 시작 시간을 그 시간대와 다른 디폴트 시간대로 변환할 수 있다. 상기 디폴트 시간대는 로그 엔트리에 대해 데이터 처리 시스템에 의해 사용되는 시간대일 수 있다. 상기 디폴트 시간대는 UTC 또는 GMT 또는 다른 디폴트 시간대일 수 있다.
315단계에서, 상기 데이터 처리 시스템은 복수의 로그 엔트리를 저장하는 로그 데이터 구조에 액세스한다. 상기 데이터 처리 시스템은 상기 데이터 처리 시스템의 메모리에서 로그 데이터 구조를 유지할 수 있다. 상기 로그 데이터 구조는 상기 데이터 처리 시스템에 의해 수신된 음성 호에 대응하는 복수의 로그 엔트리를 저장할 수 있다. 상기 데이터 처리 시스템은 데이터 저장소에 저장함으로써 로그 데이터 구조를 유지할 수 있고, 로그 엔트리를 식별하기 위해 로그 데이터 구조에 액세스하도록 구성될 수 있다. 상기 데이터 처리 시스템은 상기 데이터 처리 시스템에 의해 수신된 음성 호에 대한 새로운 로그 엔트리로 상기 로그 데이터 구조를 업데이트할 수 있다. 음성 호를 수신하는 것은 잠재적인 고객 컴퓨팅 디바이스로부터 음성 호를 수신하고, 그 호를 콘텐츠 제공자의 제공자 디바이스로 전달 또는 브리징(bridging)하는 데이터 처리 시스템을 나타낼 수 있다. 상기 데이터 처리 시스템은 매일; 매시간; 조건, 이벤트 또는 요청에 응답하여 배치 모드(batch mode)에서, 음성 호 수신에 응답하여 실시간과 같이 시간 간격에 기초하여 로그 데이터 구조를 업데이트할 수 있다;
일부 경우, 상기 로그 데이터 구조는 데이터 저장소에서 암호화될 수 있다. 상기 데이터 처리 시스템은 상기 로그 데이터 구조에 액세스하기 위해 상기 데이터 처리 시스템을 허가 또는 인증하는 보안 토큰 또는 인증서(authentication credentials)로 구성될 수 있다.
상기 로그 데이터 구조는 파일 구조 포맷을 사용하여 로그 엔트리를 유지할 수 있다. 예를 들어, 상기 로그 데이터 구조는 관련 데이터베이스 내의 로그 엔트리를 구성(organize)할 수 있다. 상기 데이터 처리 시스템은 검색 쿼리, 룩업을 수행하는 것을 용이하게 하는 방식으로 또는 로그 데이터 구조로부터 로그 엔트리를 파싱, 식별 및 검색을 용이하게 하는 방식으로 로그 데이터 구조 또는 로그 데이터 구조의 로그 엔트리를 구성할 수 있다. 예를 들어, 상기 로그 엔트리는 가상 전화 번호, 수신 날짜, 시작 시간 또는 지속시간에 근거하여 구성될 수 있다.
320단계에서, 상기 데이터 처리 시스템은 로그 데이터 구조를 파싱하여 복수의 로그 엔트리들의 로그 엔트리를 식별한다. 상기 데이터 처리 시스템은 로그 데이터 구조를 파싱하여 데이터 구조의 제1 로그 엔트리를 식별할 수 있다. 일부 경우에, 상기 데이터 처리 시스템은 하나 이상의 디바이스 식별자, 시작 시간 및 지속시간을 포함하거나 이에 근거한 쿼리로 데이터 구조를 파싱할 수 있다. 일부 경우, 상기 데이터 처리 시스템은 로그 데이터 구조를 파싱하여 임계값과의 비교 및 매칭과 같은 추가 프로세스를 수행함으로써 로그 엔트리를 식별할 수 있다. 예를 들어, 상기 로그 데이터 구조를 파싱하는 것은 음성 호 엔트리의 디바이스 식별자를 로그 엔트리의 디바이스 식별자와 매칭시키는 것을 포함할 수 있다. 또한, 상기 로그 데이터 구조를 파싱하는 것은 상기 로그 엔트리에 저장된 시작 시간 또는 지속시간이 음성 호 엔트리에 저장된 각 시작 시간 또는 지속시간의 미리결정된 임계값 내에 있는지를 결정하는 것을 포함할 수 있다.
일부 경우, 상기 데이터 처리 시스템은 로그 엔트리를 필터링하여 콘텐츠 제공자의 콘텐츠 계정 식별자에 대응하는 하나 이상의 로그 엔트리를 식별한다. 예를 들어, 상기 데이터 처리 시스템은 다수의 콘텐츠 제공자에 대한 로그 데이터 구조에 로그 엔트리를 포함하는 데이터 저장소를 유지할 수 있다. 상기 쿼리를 실행하기 전에 로그 엔트리를 사전 필터링함으로써, 상기 데이터 처리 시스템은 프로세서 클록 사이클, 메모리, 임시 메모리 또는 네트워크 대역폭과 같이 적은 연산 리소스를 사용함으로써 매칭하는 쿼리를 보다 효율적으로 식별할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 제공자 계정 식별자에 기초하여 로그 데이터 구조를 사전 필터링함으로써 검색 결과에 대한 대기 시간(latency time)을 감소시킬 수 있다. 따라서, 상기 데이터 처리 시스템은 콘텐츠 계정 식별자에 기초하여 필터링된 상기 로그 데이터 구조에 대한 쿼리를 실행함으로써 매칭하는 로그 엔트리를 보다 효율적으로 식별할 수 있다.
325 단계에서, 상기 데이터 처리 시스템은 음성 호 엔트리의 디바이스 식별자를 로그 엔트리의 디바이스 식별자와 매칭시킨다. 일부 경우, 상기 데이터 처리 시스템은 음성 호 엔트리의 디바이스 식별자와 로그 엔트리의 디바이스 식별자 간의 일대일(one-to-one) 맵핑을 수행하여 매칭이 있는지를 결정할 수 있다. 매칭은 정확한 매칭을 의미할 수 있다. 일부 경우, 상기 데이터 처리 시스템은 잘못된 용어나 포맷을 필터링하여 디바이스 식별자의 기능을 식별할 수 있다(예를 들어, 정렬된 영숫자 문자, 및 대시 "-", 슬래시 "/", 마침표 "."또는 대문자(capitalization)와 같은 포맷 또는 구두점(punctuation)을 필터링하거나 무시할 수 있음). 예를 들어, 상기 데이터 처리 시스템은 음성 호 엔트리의 디바이스 식별자의 포맷을 로그 엔트리에 저장된 디바이스 식별자의 포맷으로 변환할 수 있고, 동일한 포맷의 디바이스 식별자가 정확히 매칭하면 매칭을 결정할 수 있다.
일부 경우, 상기 디바이스 식별자는 암호화 프로토콜로 로그 엔트리에 저장될 수 있다. 상기 다비아스 식별자는 암호화된 발신자 ID 해시 데이터 포맷을 사용하여 상기 로그에 저장될 수 있다. 상기 암호화 프로토콜은 해시 암호화 기술을 포함할 수 있다. 상기 데이터 처리 시스템은 복호화 기술을 수행하여 상기 다바이스 식별자를 결정할 수 있다. 상기 복호화 기술은 상기 디바이스 식별자를 결정하는 리버스 해시 기술(reverse hash technique)을 포함할 수 있다. 상기 저장된 암호화된 발신자 ID를 복호화하면, 상기 데이터 처리 시스템은 로그 엔트리의 저장된 암호화된 디바이스 식별자에 의해 지시된 디바이스 식별자를 상기 음성 호 엔트리의 디바이스 식별자와 비교할 수 있다. 따라서, 상기 로그 엔트리의 디바이스 식별자는 하나 이상의 포맷으로 저장되거나 암호화될 수 있고, 상기 데이터 처리 시스템은 상기 매칭을 수행할 때 상기 저장된 디바이스 식별자를 복호화할 수 있거나 그렇지 않으면 매칭을 결정하기 위해 포맷 전환(format conversion)을 수행할 수 있다.
330단계에서, 상기 데이터 처리 시스템은 로그 엔트리의 각 시작 시간 또는 지속시간의 미리결정된 임계값이 만족되는 것으로 결정한다. 상기 데이터 처리 시스템은 디바이스 식별자 매칭에 응답하여, 음성 호 엔트리의 시작 시간 또는 지속시간 중 적어도 하나가 로그 엔트리의 각 시작 시간 또는 지속시간의 미리 결정된 임계값을 만족시키는지를 결정할 수 있다. 상기 로그 엔트리는 데이터 처리 시스템에 저장될 수 있으며, 콘텐츠 아이템 노출로 인해 데이터 처리 시스템에 의해 수신된 호에 관한 정보를 포함할 수 있다. 상기 데이터 처리 시스템은 로그 엔트리 데이터 구조에 액세스하여, 음성 호출 엔트리에 포함된 디바이스 식별자를 로그 엔트리에 나타낸 디바이스 식별자와 매칭시킴으로써 상기 음성 호 엔트리에 대응하는 하나 이상의 로그 엔트리를 식별할 수 있다.
상기 데이터 처리 시스템은 음성 호 엔트리의 시작 시간 또는 지속시간 중 적어도 하나가 로그 엔트리의 각 시작 시간 또는 지속시간의 미리결정된 임계값 내에 있음을 추가로 결정함으로써 상기 매칭 로그 엔트리를 결정할 수 있다. 예를 들어, 상기 데이터 처리 시스템은 시작 시간에 대한 범위 임계값 또는 지속시간에 대한 범위 임계값을 결정할 수 있고, 상기 범위 임계값을 갖는 쿼리를 발생할 수 있다. 상기 쿼리는 음성 호 엔트리에 제공된 동일한 디바이스 식별자 및 음성 호 엔트리의 시작 시간의 범위 내에 속하는 시작 시간을 포함하는 데이터 처리 시스템의 로그 엔트리를 식별할 수 있다. 상기 쿼리는 음성 호 엔트리에 제공된 동일한 디바이스 식별자, 음성 호 엔트리의 시작 시간의 범위 내에 속하는 시작 시간 및 음성 호 엔트리의 지속시의 범위 내에 속하는 지속시간을 포함하는 데이터 처리 시스템의 로그 엔트리를 식별할 수 있다.
예를 들어, 상기 데이터 처리 시스템은 미리결정된 시간 임계값에 기초하여 상기 음성 호 엔트리의 시작 시간에 대한 시작 시간 범위를 식별할 수 있다. 상기 데이터 처리 시스템은 상기 미리결정된 시간 임계값을 검색하고, "start_time_range = [voice_call_entry_start_time - predetermined_threshold, voice_call_entry_start_time + predetermined_threshold]"와 같이 음성 호 엔트리에 대한 시작 시간 범위를 발생할 수 있다. 상기 데이터 처리 시스템은 상기 미리 결정된 지속시간 임계값에 기초하여 상기 음성 호 엔트리의 지속시간에 대한 지속시간 범위를 식별할 수 있다. 상기 데이터 처리 시스템은 상기 미리결정된 지속시간 임계값을 검색하고, "duration_range=[voice_call_entry_duration - predetermined_duration_threshold, voice_call_entry_duration + predetermined_duration_threshold]"와 같이 음성 호 엔트리에 대한 지속시간 범위를 발생할 수 있다. 상기 데이터 처리 시스템은 상기 디바이스 식별자를 포함하는 제1 용어, 상기 시작 시간 범위를 포함하는 제2 용어 및 상기 지속시간 범위를 포함하는 제3 용어를 갖는 쿼리를 발생할 수 있다. 예를 들어, 상기 쿼리는 "{device_identifier; start_time_range; duration_range}"가 될 수 있다. 상기 데이터 처리 시스템은 상기 쿼리를 사용하여 로그 데이터 구조에서 룩업 또는 검색을 수행하여 상기 매칭 로그 엔트리를 식별할 수 있다.
상기 데이터 처리 시스템은 이력적 매칭 성능(historical matching performance)에 기초하여 상기 임계값을 조정할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 계정 식별자에 대한 이력적 매칭 성능에 기초하여 임계값을 조정할 수 있다. 예를 들어, 상기 데이터 처리 시스템에 의해 사용된 임계값이 음성 호 엔트리와 매칭하는 너무 많거나 너무 적은 로그 엔트리를 생성시킨다면, 상기 데이터 처리 시스템은 상기 임계값을 조정할 수 있다. 예를 들어, 상기 임계값이 5개 이상의 매칭하는 로그 엔트리를 생성시킨다면, 상기 데이터 처리 시스템은 상기 임계 값을 낮출 수 있다. 상기 임계값이 0개, 1개, 2개 또는 3개의 매칭하는 엔트리를 생성시킨다면, 상기 데이터 처리 시스템은 상기 임계값을 증가시킬 수 있다.
경우에 따라, 이력적 매칭 성능(historical matching performance)은 매칭 성공률을 나타낼 수 있다. 상기 데이터 처리 시스템은 매칭 로그 엔트리가 발견되면 매칭이 성공한 것으로 간주할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 제공자에 의해 수신된 다수의 음성 호 엔트리로 나눈 다수의 성공적인 매칭에 기초하여 매칭 성공률을 결정할 수 있다. 상기 데이터 처리 시스템은 상기 데이터 처리 시스템에 의해 실행된 다수의 검색 쿼리로 나눈 다수의 성공적인 매칭에 기초하여 매칭 성공률을 결정할 수 있다. 상기 데이터 처리 시스템은 상기 매칭 성공률을 매칭 임계값과 비교하여 미리결정된 범위 임계값을 증가시키거나 감소시킬지 여부를 결정할 수 있다. 상기 매칭 임계값은 예를 들어 10%, 20%, 30%, 40%, 50%, 60%, 75%, 90%, 95% 또는 99%, 100%가 되거나, 상기 미리결정된 범위 임계값을 조절하는 것을 용이하게 하는 다른 퍼센트가 될 수 있다. 상기 데이터 처리 시스템은 미리결정된 간격(예를 들어, 10초, 20초, 30초, 1분, 5분 등)인 범위 임계값을 증가 또는 감소시킬 수 있다.
예시적인 예에서, 상기 데이터 처리 시스템은 매칭 성공률이 9 %라고 결정한다. 상기 데이터 처리 시스템은 상기 매칭 성공률을 90%의 매칭 임계값과 비교할 수 있다. 90%의 매칭 임계값은 상기 데이터 처리 시스템이 상기 콘텐츠 제공자에 의해 제공된 음성 호 엔트리의 90%에 대해 매칭하는 로그 엔트리를 식별하도록 구성되었음을 나타낼 수 있다. 9%의 매칭 성공률이 90%의 매칭 임계값보다 작거나 동일(예를 들어, 만족시키지 못함)하다는 결정에 응답하여, 상기 데이터 처리 시스템은 추가 로그 엔트리를 식별하기 위해 쿼리에 사용된 지속시간 및 시작 시간 중 적어도 하나에 대한 범위 임계값을 증가시킬 수 있다. 상기 데이터 처리 시스템은 상기 새로운 범위를 갖는 상기 업데이트된 쿼리를 재동작 또는 재실행할 수 있다. 상기 데이터 처리 시스템은 계속해서 쿼리를 업데이트하고, 상기 매칭 임계값이 만족될 때(예를 들어, 상기 매칭 성공률이 상기 매칭 임계값과 동일하거나 초과할 때)까지 동일한 데이터 세트에서 쿼리를 재실행할 수 있다.
335단계에서, 상기 데이터 처리 시스템은 로그 엔트리로부터 가상 전화 번호를 검색한다. 상기 데이터 처리 시스템은 상기 미리결정된 임계값이 만족된다는 결정에 응답하여 로그 엔트리로부터 가상 전화 번호를 검색할 수 있다. 상기 데이터 처리 시스템은 상기 가상 전화 번호를 동적으로 콘텐츠 제공자의 콘텐츠 아이템에 동적으로 할당할 수 있다. 상기 데이터 처리 시스템은 상기 콘텐츠 제공자의 콘텐츠 아이템과의 상호 작용에 응답하여 상기 로그 엔트리의 디바이스 식별자를 갖는 디바이스에 상기 가상 전화 번호를 제공할 수 있다.
상기 데이터 처리 시스템은 콘텐츠 아이템의 가상 전화 번호를 상기 디바이스에 이전에 제공할 수 있다. 예를 들어, 상기 데이터 처리 시스템은 상기 디바이스 식별자를 갖는 디바이스를 통해 디스플레이하기 위해 콘텐츠에 대한 요청을 수신할 수 있다. 상기 데이터 처리 시스템은 상기 요청(예를 들어, 콘텐츠 선택 기준, 키워드, 검색 용어, 토픽 또는 위치 기반)에 응답하여 상기 콘텐츠 아이템을 선택할 수 있다. 상기 데이터 처리 시스템은 디바이스 식별자를 갖는 디바이스로 디스플레이하기 위해 상기 선택된 콘텐츠 아이템을 제공할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 아이템 노출 식별자를 생성하고 콘텐츠 아이템 노출에 상기 ID를 할당할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 아이템 노출 ID에 대한 콘텐츠 아이템 노출 레코드를 생성할 수 있다. 상기 데이터 처리 시스템은 상기 콘텐츠 아이템과의 상호 작용에 대한 인디케이션(indication)을 수신할 수 있다. 예를 들어, 상기 상호 작용은 콘텐츠 아이템의 링크 또는 버튼의 선택 또는 클릭의 형태일 수 있다. 상기 인디케이션(indication)의 수신에 응답하여, 상기 데이터 처리 시스템은 콘텐츠 아이템에 가상 전화 번호를 제공하고, 상기 디바이스 식별자를 갖는 디바이스에 가상 전화 번호를 제공할 수 있다.
상기 데이터 처리 시스템은 상기 제공된 가상 전화 번호로 걸려온 음성 호를 수신할 수 있다. 상기 음성 호는 상기 디바이스 식별자 및 상기 제공된 가상 전화 번호를 나타낼 수 있다. 예를 들어, 상기 데이터 처리 시스템은 발신자 ID를 통해 상기 디바이스 식별자를 결정할 수 있다. 상기 데이터 처리 시스템은 상기 제공된 가상 전화 번호가 상기 호를 수신한 데이터 처리 시스템에 의한 전화 번호이므로, 상기 제공된 가상 전화 번호를 결정할 수 있다. 상기 호의 수신에 응답하여, 상기 데이터 처리 시스템은 상기 음성 호의 시작 시간을 검출할 수 있다. 이 시작 시간은 상기 데이터 처리 시스템에 의해 검출되거나 결정된 시작 시간일 수 있다. 이 시작 시간은 디폴트 시간대일 수 있다. 상기 데이터 처리 시스템은 상기 음성 호의 시작 시간을 로그 엔트리에 저장할 수 있다. 상기 데이터 처리 시스템은 상기 음성 호가 끊어지거나 종료되었거나 또는 디바이스 식별자를 갖는 디바이스가 상기 호를 해제했음(예를 들어, 끊어진)을 추가로 검출 또는 결정할 수 있다. 상기 데이터 처리 시스템은 상기 호가 종료된 때를 기초로 상기 호의 지속시간을 로그 엔트리에 저장할 수 있다.
일부 실시예에서, 상기 데이터 처리 시스템은 콘텐츠 아이템 자체에 대한 기록된 정보를 사용하여 수신된 호를 원래의 콘텐츠 아이템과 매칭시킬 수 있다. 상기 데이터 처리 시스템은 상기 데이터 처리 시스템이 콘텐츠 아이템에 상기 가상 전화 번호를 할당할 때 상기 콘텐츠 아이템에 대한 정보를 기록할 수 있다. 상기 데이터 처리 시스템이 호를 수신할 때, 상기 데이터 처리 시스템은 가상 번호 레코드로부터 상기 기록된 정보를 룩업할 수 있고, 상기 호 정보와 함께 상기 콘텐츠 아이템에 대한 정보를 로그할 수 있다. 따라서, 일부 실시예에서, 상기 데이터 처리 시스템은 로그를 검색하기 위해 가상 번호를 사용하지 않고 간접적으로 가상 번호에 의존하여 전화 호(phone call)를 발신 콘텐츠 아이템(originating content item)에 링크시킬 수 있다. 예를 들어, 상기 데이터 처리 시스템은 상기 데이터 처리 시스템이 상기 제공된 가상 번호로 걸려온 상기 음성 호를 수신할 때 상기 콘텐츠 아이템 노출 식별자를 식별할 수 있다.
340 단계에서, 상기 데이터 처리 시스템은 콘텐츠 아이템 노출 식별자를 결정하기 위해 룩업(look-up)을 수행한다. 상기 데이터 처리 시스템은 상기 식별된 가상 전화 번호를 사용하여 콘텐츠 아이템 노출 데이터 구조에서 룩업을 수행하여 콘텐츠 아이템에 대한 가상 전화 번호의 제공에 의해 초래한 콘텐츠 아이템의 노출을 식별하는 콘텐츠 아이템 노출 식별자를 결정할 수 있다.
345단계에서, 상기 데이터 처리 시스템은 음성 호 엔트리를 통해 제공된 데이터를 콘텐츠 아이템 노출 식별자에 대응하는 데이터 구조에 저장한다. 일부 경우, 상기 데이터 처리 시스템은 음성 호 엔트리에 제공된 정보로 상기 콘텐츠 아이템 노출에 대응하는 데이터 구조를 업데이트한다. 상기 데이터 처리 시스템은 콘텐츠 아이템 노출 데이터 구조 또는 콘텐츠 아이템 노출에 대응하는 다른 데이터 구조를 업데이트하여 상기 음성 호를 상기 식별된 콘텐츠 아이템 노출로 속성화(attribute)할 수 있다. 상기 데이터 처리 시스템은 전환 유형, 전환 라벨 또는 전환 값과 같은 음성 호 엔트리에 관한 데이터 또는 정보를 콘텐츠 아이템 노출로 추가 속성화(attribute)시킬 수 있다.
예를 들어, 상기 데이터 처리 시스템은 상기 음성 호 엔트리의 하나 이상의 필드를 파싱하거나 식별할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 제공자에 의해 할당된 상기 음성 호에 대한 전환 라벨을 식별하는 상기 음성 호 엔트리의 제4 필드를 식별할 수 있다. 상기 전환 라벨은 예를 들어 구매, 구독 또는 설문 조사 등을 포함할 수 있다. 상기 데이터 처리 시스템은 음성 호 엔트리의 제5 필드를 식별하여 상기 콘텐츠 제공자에 의해 할당된 상기 음성 호에 대한 전환 값을 식별할 수 있다. 상기 전환 값은 숫자, 스트링(strings), 등급(grades)(예를 들어, A, B, C, D 또는 F), 카테고리(예를 들어, 높은 값, 중간 값, 낮은 값) 또는 스케일(scale)(예를 들어, 1에서 10, 1은 최소값이고, 10은 최대값, 또는 1은 최대값이고, 10은 최소값). 예를 들어, 상기 전환 값은 800 달러 또는 "하이"일 수 있다.
일부 경우, 상기 데이터 처리 시스템은 상기 임계값 범위를 갖는 상기 쿼리를 만족시키거나, 음성 호 엔트리와 매칭하는 다중 로그 엔트리를 식별할 수 있다. 예를 들어, 제2 로그 엔트리는 시작 시간 범위와 지속시간 범위를 만족시킬 수 있다. 단일 매칭 엔트리를 결정하기 위해, 상기 데이터 처리 시스템은 2 개의 매칭 로그 엔트리들의 시작 시간들을 비교하여, 상기 음성 호 엔트리의 시작 시간에 가장 가까운 시작 시간으로 상기 로그 엔트리를 식별할 수 있다. 일부 경우, 상기 데이터 프로세싱은 2개의 매칭 로그 엔트리의 지속시간들을 비교하여 상기 음성 호 엔트리의 지속시간과 가장 가까운 지속시간으로 로그 엔트리를 식별할 수 있다. 예를 들어, 상기 2개의 매칭 엔트리의 시작 시간이 동일하다면, 상기 데이터 처리 시스템은 음성 호 엔트리에 제공된 지속시간에 가장 가까운 지속시간으로 상기 로그 엔트리를 식별하기 위해 상기 지속시간에 기초하여 추가 비교를 수행할 수 있다.
일 실시예에서, 상기 데이터 처리 시스템은 상기 음성 호 엔트리에 포함된 디바이스 식별자를 제2 로그 엔트리에 나타낸 제2 디바이스 식별자와 매칭시키고, 상기 음성 호 엔트리의 시작 시간이 상기 제2 로그 엔트리의 각 제2 시작 시간의 미리결정된 임계값 내에 있는지를 결정함으로써 상기 음성 호 엔트리에 대응하는 데이터 처리 시스템의 메모리에 유지되는 제2 로그 엔트리를 결정한다. 상기 제2 디바이스 식별자는 상기 제1 디바이스 식별자와 동일할 수 있다. 예를 들어, 상기 데이터 처리 시스템은 로그 엔트리가 고유한 디바이스 식별자와 매칭하도록 상기 디바이스 식별자를 포함하는 쿼리를 사용할 수 있다. 그러나, 일부 경우, 상기 로그 엔트리의 디바이스 식별자가 고유하지 않을 수 있으며, 이 경우 상기 데이터 처리 시스템은 동일한 디바이스 식별자로 다중 로그 엔트리를 식별할 수 있다. 일부 경우, 상기 디바이스 식별자가 부분적으로 누락되거나 손상될 수 있으며, 이 경우 상기 데이터 처리 시스템은 음성 호 엔트리에 제공된 디바이스 식별자와 매칭하는 다중 로그 엔트리를 식별할 수 있다.
상기 데이터 처리 시스템은 상기 제1 로그 엔트리의 시작 시간과 상기 음성 호 엔트리의 상기 음성 호의 시작 시간 간의 제1 차이를 결정할 수 있다(또는 각각의 지속시간). 상기 데이터 처리 시스템은 상기 제2 로그 엔트리의 제2 시작 시간과 상기 음성 호 엔트리의 상기 음성 호의 제2 시작 시간 간의 제2 차이를 결정할 수 있다(또는 각각의 지속시간). 상기 데이터 처리 시스템은 상기 제1 차이 및 제2 차이(예를 들어, 더 작은 차이)의 비교에 기초하여 매칭 엔트리로서 상기 제1 로그 엔트리를 선택할 수 있다. 상기 데이터 처리 시스템은 상기 매칭 엔트리를 사용하여 상기 가상 전화 번호를 식별할 수 있다.
도 4는 예시적인 실시예에 따른 컴퓨터 시스템(400)의 블록도이다. 상기 컴퓨터 시스템 또는 컴퓨팅 디바이스(400)는 시스템(100), 시스템(800), 콘텐츠 제공자(125), 컴퓨팅 디바이스(110), 콘텐츠 발행자(115), 데이터 처리 시스템(120), 가상 번호 엔진(135), 트랙커(140), 콘텐츠 선택기(130), 제공자 인터페이스(145), 매칭 엔진(150) 및 데이터 저장소(155)를 구현하는데 사용될 수 있다.
컴퓨팅 시스템(400)은 버스(405) 또는 정보 통신을 위한 다른 통신 컴포넌트 및 정보를 처리하기 위해 버스 (405)에 결합된 프로세서(410) 또는 프로세싱 회로를 포함한다. 또한, 컴퓨팅 시스템(400)은 정보를 처리하기 위해 버스에 결합된 하나 이상의 프로세서(410) 또는 프로세싱 회로를 포함할 수 있다. 또한, 컴퓨팅 시스템(400)은 정보를 저장하기 위해 버스(405)에 결합된 RAM(random access memory) 또는 다른 동적 저장 디바이스와 같은 메인 메모리(415) 및 프로세서(410)에 의해 실행될 명령을 포함한다. 또한, 메인 메모리(415)는 프로세서(410)에 의한 명령들의 실행 동안 위치 정보, 임시 변수들(temporary variables), 또는 다른 중간 정보(intermediate information)를 저장하기 위해 사용될 수 있다. 컴퓨팅 시스템(400)은 정적 정보(static information) 및 프로세서(410)를 위한 명령을 저장하기 위해 버스(405)에 결합된 ROM(read only memory)(420) 또는 다른 정적 저장 디바이스(static storage device)를 더 포함할 수 있다. 고체 상태 디바이스, 자기 디스크 또는 광 디스크와 같은 저장 디바이스(425)는 정보 및 명령을 지속적으로 저장하기 위해 버스(405)에 연결된다.
컴퓨팅 시스템(400)은 버스(405)를 통해 정보를 사용자에게 디스플레이하기 위한 액정 디스플레이 또는 액티브 매트릭스 디스플레이와 같은 디스플레이(435)에 연결될 수 있다. 영숫자 및 다른 키들을 포함하는 키보드와 같은 입력 디바이스(430)는 프로세서(410)에 정보 및 명령 선택을 전달하기 위해 버스(405)에 연결될 수 있다. 상기 입력 디바이스(430)는 터치 스크린 디스플레이(435)를 포함할 수 있다. 또한, 입력 디바이스(430)는 방향 정보 및 명령 선택을 프로세서(410)에 전달하고 디스플레이(435)상에서 커서 이동을 제어하기 위한 마우스, 트랙볼 또는 커서 방향 키와 같은 커서 제어를 포함할 수 있다.
본 발명에서 설명된 프로세스, 시스템 및 방법은 프로세서(410)가 메인 메모리(415)에 포함된 명령들의 배열을 실행하는 것에 응답하여 컴퓨팅 시스템(400)에 의해 구현될 수 있다. 그러한 명령은 저장 디바이스(425)와 같은 다른 컴퓨터 판독 가능 매체에서 메인 메모리(415)로 판독될 수 있다. 메인 메모리(415)에 포함된 명령들의 배열(arrangement)의 실행은 컴퓨팅 시스템(400)이 본 발명에서 설명된 예시적인 프로세스들을 수행하게 한다. 다중 프로세싱 장치(multi-processing arrangement) 내의 하나 이상의 프로세서는 메인 메모리(415)에 포함된 명령을 실행하기 위해 사용될 수도 있다. 대안적인 실시예에서, 하드 와이어드 회로(hard-wired circuitry)는 예시적인 실시예를 수행하기 위해 소프트웨어 명령어 대신에 또는 소프트웨어 명령어와 함께 사용될 수 있다. 따라서, 실시예들은 하드웨어 회로 및 소프트웨어의 특정 조합으로 제한되지 않는다.
예시적인 컴퓨팅 시스템이 도 4에 설명되어 있지만, 본 명세서에서 설명된 요지 및 기능 동작의 실시예들은 다른 유형의 디지털 전자 회로로 구현될 수 있거나, 본 명세서에 설명된 구조들 및 구조적 균등물 또는 이들 중 하나 이상의 조합을 포함하는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어로 구현될 수 있다.
본 명세서에서 설명된 요지 및 동작의 실시예들은 디지털 전자 회로에서 구현되거나, 또는 본 명세서에서 설명된 구조들 및 구조적 균등물 또는 이들 중 하나 이상의 조합을 포함하는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어로 구현될 수 있다. 본 명세서에 기술된 요지는 하나 이상의 컴퓨터 프로그램, 예를 들어, 데이터 처리 장치에 의해 실행되거나 데이터 처리 장치의 동작을 제어하기 위해 하나 이상의 컴퓨터 저장 매체 상에 인코딩된 컴퓨터 프로그램 명령들에 대한 하나 이상의 회로들에 의해 구현될 수 있다. 선택적으로 또는 부가적으로, 프로그램 명령은 인위적으로 발생된 전파 신호(예를 들어, 데이터 처리 장치에 의한 실행을 위해 적절한 수신기 장치로의 전송을 위해 정보를 인코딩하기 위해 발생된 기계-발생 전기(machine-generated electrical), 광학 또는 전자기 신호) 상에 인코딩될 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 저장 디바이스, 컴퓨터 판독가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 어레이 또는 디바이스, 또는 이들 중 하나 이상의 조합일 수 있거나 이들에 포함될 수 있다. 또한, 컴퓨터 저장 매체는 전파 신호가 아니지만, 컴퓨터 저장 매체는 인위적으로 발생된 전파 신호로 인코딩된 컴퓨터 프로그램 명령의 대상 또는 소스일 수 있다. 컴퓨터 저장 매체는 하나 이상의 개별 컴포넌트 또는 매체(예를 들어, 다수의 CD, 디스크 또는 다른 저장 디바이스들)일 수 있거나 이들에 포함될 수 있다.
본 명세서에서 설명된 동작은 하나 이상의 컴퓨터 판독 가능 저장 디바이스에 저장되거나 다른 소스로부터 수신된 데이터로 데이터 처리 장치에 의해 수행될 수 있다.
"데이터 처리 장치" 또는 "컴퓨팅 디바이스"라는 용어는 예를 들어 프로그래밍가능 프로세서, 컴퓨터, 칩 상의 시스템 또는 다수의 시스템 또는 이들의 조합을 포함하고, 데이터를 처리하기 위한 다양한 장치, 디바이스 및 머신을 포함한다. 상기 장치는 특수 목적 논리 회로, 예를 들어 FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)을 포함할 수 있다. 또한, 상기 장치는 하드웨어 이외에 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 크로스-플랫폼 런타임(cross-platform runtime) 환경, 가상 머신 또는 이들 중 하나 이상의 조합을 구성하는 코드를 포함할 수 있다. 상기 장치 및 실행 환경은 웹 서비스, 분산 컴퓨팅 및 그리드 컴퓨팅 인프라와 같은 다양한 다른 컴퓨팅 모델 인프라를 실현할 수 있다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트 또는 코드라고도 함)은 컴파일된 또는 해석된 언어, 선언적 또는 절차적 언어(declarative or procedural languages)를 포함하는 모든 형태의 프로그래밍 언어로 작성될 수 있으며, 독립 실행형 프로그램이나 회로, 컴포넌트, 서브 루틴, 오브젝트 또는 컴퓨팅 환경에서 사용하기에 적합한 다른 유닛을 포함한 모든 형태로 배치될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 해당할 수 있지만 반드시 그런 것은 아니다. 프로그램은 다른 프로그램이나 데이터(예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트)를 보유하고 있는 파일의 일부분, 문제의 프로그램 전용 단일 파일 또는 다수 조정 파일(coordinated files)(예를 들어, 하나 이상의 회로, 서브프로그램 또는 코드 부분을 저장하는 파일들)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 또는 하나의 사이트에 위치되거나 다수의 사이트에 분산되고 통신 네트워크로 상호 연결된 다수의 컴퓨터에서 실행되도록 배치될 수 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서는 예를 들어 범용 및 특수 목적 마이크로 프로세서 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 ROM(read only memory) 또는 RAM(random access memory) 또는 이들 모두로부터 명령 및 데이터를 수신할 수 있다. 컴퓨터의 필수 구성요소는 명령 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스와 명령에 따라 액션을 수행하기 위한 프로세서이다. 일반적으로, 컴퓨터는 데이터를 수신하거나 전송하기 위해 데이터(예를 들어, 자기, 광 자기 디스크 또는 광 디스크)를 저장하기 위한 하나 이상의 대용량 저장 디바이스를 포함하거나, 이에 동작 가능하게 연결될 수 있다. 그러나 컴퓨터는 그러한 디바이스들이 반드시 있을 필요는 없다. 또한, 컴퓨터는 다른 디바이스, 예를 들어, 이동 전화기, 개인 휴대 정보 단말기(PDA), 이동 오디오 또는 비디오 플레이어, 게임 콘솔, GPS(Global Positioning System) 수신기 또는 휴대용 저장 디바이스(예를 들어, 범용 직렬 버스(USB) 플래시 드라이브)에 내장될 수 있다. 컴퓨터 프로그램 명령 및 데이터를 저장하기에 적합한 디바이스는 반도체 메모리 디바이스(예를 들어 EPROM, EEPROM 및 플래시 메모리 장치), 플래쉬 메모리 디바이스, 자기 디스크(예를 들어, 내부 하드 디스크 또는 이동식 디스크), 광 자기 디스크, 및 CD ROM 및 DVD-ROM 디스크를 포함하는 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스를 포함한다. 상기 프로세서 및 메모리는 특수 목적 논리 회로에 의해 보완되거나 이에 포함될 수 있다.
사용자와의 상호 작용을 제공하기 위해, 본 명세서에서 설명된 요지에 대한 실시예들은 예를 들어 사용자에게 정보를 디스플레이하기 위한 CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터와 같은 디스플레이 장치 및 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 장치(예를 들어, 마우스 또는 트랙볼)를 갖는 컴퓨터상에서 구현될 수 있다. 다른 종류의 디바이스가 사용자와의 상호 작용을 제공하는 데 사용될 수 있으며, 예를 들어, 사용자에게 제공되는 피드백은 시각 피드백, 청각 피드백 또는 촉각 피드백과 같은 임의의 형태의 감각 피드백일 수 있으며, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다.
본 발명의 실시예에서, 추가 콘텐츠 아이템은 임의의 편리한 형태를 취할 수 있고, 이미지, 텍스트 등을 포함하는 콘텐츠일 수 있다. 일부 실시예에서, 상기 콘텐츠는 광고 또는 다른 스폰서 콘텐츠일 수 있다.
언급한 바와 같이, 데이터 처리 시스템(120)은 콘텐츠에 대한 요청에 응답하거나 그렇지 않으면 온라인 문서(예를 들어, 웹 페이지)상에 표시하기 위한 후보가 되는 다수의 콘텐츠 아이템(예를 들어, 제1 후보 콘텐츠 아이템 및 제2 후보 콘텐츠 아이템)을 식별할 수 있다. 상기 데이터 처리 시스템은 온라인 옥션 프로세스(online auction process)를 개시 또는 이용하여 상기 온라인 문서상에 디스플레이하기 위해 다수의 콘텐츠 아이템 중 하나 이상을 선택할 수 있다. 옥션 시스템은 온라인 문서에 디스플레이될 콘텐츠 아이템에 대한 2개 이상의 입찰가(bids)를 결정할 수 있다. 옥션 시스템은 옥션 프로세스를 통해 입찰을 실행하여 하나 이상의 낙찰가(winning bids)를 결정할 수 있다. 상기 낙찰가에 해당하는 콘텐츠 아이템은 온라인 문서에 또는 온라인 문서와 함께 디스플레이하기 위해 선택될 수 있다.
일부 실시예에서, 상기 데이터 처리 시스템은 콘텐츠 제공자에 대한 호를 개시 한 다음 호의 두 부분을 브리징(예를 들어, 콘텐츠 제공자에 대한 데이터 처리 시스템의 호로 고객의 호를 데이터 처리 시스템에 브리징(bridge))할 수 있다. 일부 실시예에서, 상기 데이터 처리 시스템은 상기 호를 콘텐츠 제공자에 전달할 수 있다. 상기 콘텐츠 제공자는 상기 호 중에 또는 상기 호 이후에 상기 호를 통해 전환(conversion)이 발생했는지를 결정할 수 있다(예를 들어, 상품 또는 서비스의 구매가 이루어짐). 상기 콘텐츠 제공자는 상기 전환 정보를 상기 데이터 처리 시스템에 제공할 수 있다. 상기 데이터 처리 시스템은 상기 가상 전화 번호를 통해 이루어진 상기 호에 대응하는 트랙킹 데이터 또는 콘텐트 아이템 노출 데이터를 식별하고, 콘텐츠 아이템 노출 레코드 또는 데이터를 상기 전환 정보로 업데이트하여 성능 리포트(performance report)를 발생할 수 있다.
다른 예시적인 실시예에서, 상기 데이터 처리 시스템은 검색 엔진으로 검색 쿼리 입력을 수신한다. 상기 데이터 처리 시스템은 상기 검색 쿼리에 응답하여 검색 결과를 제공하고, 상기 검색 쿼리와 매칭하는 검색 결과로 디스플레이하기 위한 호 광고를 추가로 선택하여 제공한다. 상기 호 광고는 상기 광고주에 대한 가상 전화 번호를 디스플레이할 수 있다. 상기 호 광고는 호 광고(예를 들어, 클릭 또는 선택 또는 호 광고와의 다른 상호 작용)의 관심에 대한 인디케이션을 수신하는 것에 응답하여 가상 전화 번호를 디스플레이할 수 있다. 사용자는 상기 호 광고를 통해 제공된 번호를 사용하여 상기 호 광고와 연관된 광고주에게 전화할 수 있다. 상기 콘텐츠 제공자는 호(call) 도중 또는 그 호 후에 예를 들어, 상품 또는 서비스 구매와 같이 상기 호를 통해 전환이 발생했는지를 결정할 수 있다. 상기 콘텐츠 제공자는 상기 전환 정보를 데이터 처리 시스템에 제공할 수 있다. 상기 데이터 처리 시스템은 가상 전화 번호를 통해 이루어진 호에 대응하는 트랙킹 데이터 또는 콘텐츠 아이템 노출 데이터를 식별하고, 콘텐츠 아이템 노출 레코드 또는 데이터를 상기 전환 정보로 업데이트하여 성능 리포트를 발생할 수 있다.
메모리에 저장된 암호화된 발신자 ID가 나중에 상기 디바이스의 디바이스 식별자와 대응하는 실시예에서, 상기 데이터 처리 시스템은 1) 발신자 ID, 2) 시간대 정보를 갖는 호 시작 시간, 3) 호 지속시간(예를 들어, 초 단위), 4) 전환 라벨(예를 들어, 구매, 가입 또는 설문 조사)과 같은 라벨, 5) 전환 시간(conversion time), 6) 전환 값(conversion value)(예를 들어, 가격 또는 전환과 관련된 다른 용어)과 같은 라벨 값. 7) 전환 통화(예를 들어, 미국 달러), 또는 8) 호가 수신 및 수행된 콘텐츠 제공자 디;바이스의 전화 번호 중에서 하나 이상을 포함하는 콘텐츠 제공자에 의해 업로드된 전환 데이터(conversion data)를 포함하는 음성 호 엔트리를 수신할 수 있다. 상기 시스템은 내부적으로 저장된 암호화된 발신자 ID를 광고주가 업로드한 호 데이터와 매칭시키기 위해 재발생한 암호화된 발신자 ID를 록업 키로 사용하여 룩업을 수행할 수 있다.
상기 데이터 처리 시스템은 음성 호 엔트리의 제4 필드를 파싱하여 상기 음성 호에 대한 전환 라벨을 식별할 수 있다. 상기 전환 라벨은 콘텐츠 제공자에 의해 할당될 수 있다. 상기 데이터 처리 시스템은 콘텐츠 아이템 노출에 대응하는 데이터 구조를 업데이트하여 상기 전환 라벨을 상기 식별된 콘텐츠 아이템 노출로 속성화(attribute)할 수 있다. 상기 전환 라벨은 구매, 구독 또는 설문 조사 중 적어도 하나를 포함할 수 있다. 상기 데이터 처리 시스템은 음성 호 엔트리의 제5 필드를 파싱하여 음성 호에 대한 전환 값, 즉 콘텐츠 제공자에 의해 할당된 전환 값을 식별할 수 있다. 상기 데이터 처리 시스템은 콘텐츠 아이템 노출에 대응하는 데이터 구조를 업데이트하여 전환 값을 상기 식별된 컨텐트 아이템 노출로 속성화(attribute)할 수 있다.
본 명세서는 상세한 많은 특정 실시예들을 포함하고 있지만, 이들은 본 발명의 범위 또는 청구될 수 있는 범위로 제한적으로 해석되어서는 안 되며, 오히려 특정 발명의 특정 실시예에 대한 특정한 특징을 설명하기 위한 것이다. 또한, 별도의 실시예들의 맥락에서 본 명세서에 기술된 특정 특징은 단일 실시예로 조합하여 구현될 수 있다. 반대로, 단일 실시예의 맥락에서 기술된 다양한 특징은 다수의 실시예에서 개별적으로 또는 임의의 적절한 하위 조합으로 구현될 수 있다. 더욱이, 특징들은 소정의 조합으로 동작하고 상술한 바와 같이 초기에 청구된 것으로서 설명될 수 있지만, 청구된 조합의 하나 이상의 특징은 어떤 경우 조합으로부터 제거될 수 있고, 청구된 조합은 하위 조합의 하위 결합 또는 변형으로 유도될 수 있다.
유사하게, 동작들이 특정 순서로 도면들에 도시되어 있지만, 이는 바람직한 동작들을 달성하기 위해, 이러한 동작들이 도시된 순서 또는 순차적인 순서로 수행되거나, 도시된 모든 동작들이 수행될 것을 요구하는 것으로 이해되어서는 안된다. 특정 상황에서 멀티 태스킹 및 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시예들에서 다양한 시스템 컴포넌트의 분리는 모든 실시예들에서 그러한 분리가 필요한 것으로 이해되어서는 안되며, 상기 설명된 프로그램 컴포넌트 및 시스템은 일반적으로 단일 소프트웨어 제품에 통합되거나 다중 소프트웨어 제품으로 패키징될 수 있는 것으로 이해되어야 할 것이다.
"또는"에 대한 의미는 "또는"을 사용하여 기술된 용어가 설명된 용어 중 하나, 둘 이상 및 모두를 나타낼 수 있도록 포괄적인 것으로 해석될 수 있다.
따라서, 요지에 대한 특정 실시예가 설명된다. 다른 실시예들은 다음의 청구항들의 범위 내에 있다. 일부 경우, 청구 범위에 인용된 액션들은 다른 순서로 수행되어 바람직한 결과를 얻을 수 있다. 또한, 첨부된 도면에 도시된 프로세스는 바람직한 결과를 얻기 위해 도시된 특정 순서 또는 순차적 순서를 반드시 필요로 하지는 않는다. 특정 실시예에서, 멀티태스킹 및 병렬 프러세싱이 유리할 수 있다.

Claims (20)

  1. 네트워크를 통해 데이터를 동기화하는 방법에 있어서,
    데이터 처리 시스템의 하나 이상의 프로세서가, 콘텐츠 계정 식별자를 사용하여 설정된 통신 채널을 통해 콘텐츠 제공자로부터 상기 콘텐츠 제공자의 제공자 디바이스에 의해 수신된 음성 호에 대응하는 음성 호 엔트리를 수신하는 단계, 상기 음성 호 엔트리는 상기 음성 호를 개시하는 디바이스의 디바이스 식별자를 식별하는 제1 필드, 상기 음성 호의 시작 시간을 식별하는 제2 필드, 및 상기 음성 호의 지속시간을 식별하는 제3 필드를 포함하며;
    상기 데이터 처리 시스템을 통해 상기 데이터 처리 시스템의 메모리에 유지되는 로그 데이터 구조에 액세스하는 단계, 상기 로그 데이터 구조는 상기 데이터 처리 시스템에 의해 수신된 음성 호들에 대응하는 복수의 로그 엔트리를 저장하며;
    상기 데이터 처리 시스템을 통해 상기 음성 호 엔트리에 대응하는 상기 복수의 로그 엔트리들의 로그 엔트리를 식별하도록 상기 로그 데이터 구조를 파싱하되,
    상기 데이터 처리 시스템을 통해 상기 음성 호 엔트리 내에 포함된 상기 디바이스 식별자를 상기 복수의 로그 엔트리들의 로그 엔트리에 나타낸 디바이스 식별자와 매칭시키고,
    상기 데이터 처리 시스템을 통해 상기 디바이스 식별자를 매칭하는 것에 응답하여 상기 음성 호 엔트리의 지속시간 또는 시작 시간 중 적어도 하나가 상기 로그 엔트리의 각 지속시간 또는 시작 시간의 미리결정된 임계값을 만족하는지를 결정함으로써, 상기 로그 데이터 구조를 파싱하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 미리결정된 임계값이 만족되었다는 결정에 응답하여 상기 로그 엔트리로부터 가상 전화 번호를 검색하는 단계, 상기 가상 전화 번호는 상기 데이터 처리 시스템에 의해 상기 콘텐츠 제공자의 콘텐츠 아이템에 동적으로 할당되고, 상기 콘텐츠 제공자의 상기 콘텐츠 아이템과의 상호 작용에 응답하여 상기 로그 엔트리의 상기 디바이스 식별자를 갖는 상기 디바이스에 제공되며;
    상기 데이터 처리 시스템을 통해, 상기 콘텐츠 아이템에 상기 가상 전화 번호의 제공을 초래한 콘텐츠 아이템의 노출을 식별하는 콘텐츠 아이템 노출 식별자를 결정하도록 상기 식별된 가상 전화 번호를 사용하여 콘텐츠 아이템 노출(impression) 데이터 구조에서 룩업을 수행하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 콘텐츠 아이템 노출 식별자에 대응하는 데이터 구조에 상기 음성 호 엔트리를 통해 제공된 데이터를 저장하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  2. 제1항에 있어서,
    상기 데이터 처리 시스템을 통해, 미리결정된 시간 임계값에 기초하여 상기 음성 호 엔트리의 상기 시작 시간에 대한 시작 시간 범위를 식별하는 단계;
    상기 데이터 처리 시스템을 통해, 미리결정된 지속시간 임계값에 기초하여 상기 음성 호 엔트리의 상기 지속시간에 대한 지속시간 범위를 식별하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 시작 시간 범위를 포함하는 제1 기간 및 상기 지속시간 범위를 포함하는 제2 기간을 갖는 쿼리를 발생하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 쿼리를 사용하여 상기 데이터 처리 시스템의 메모리에 유지되는 상기 로그 엔트리를 결정하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  3. 제2항에 있어서,
    상기 데이터 처리 시스템을 통해, 상기 콘텐츠 계정 식별자에 대한 이력적 매칭 성능에 기초하여 상기 미리결정된 시간 임계값 또는 미리결정된 지속시간 임계 값 중 적어도 하나를 조정하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  4. 제1항에 있어서,
    상기 데이터 처리 시스템을 통해, 상기 콘텐츠 계정 식별자에 기초하여 상기 데이터 처리 시스템의 상기 로그 데이터 구조에 유지된 상기 복수의 로그 엔트리를 필터링하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 필터링된 복수의 로그 엔트리들로부터 상기 로그 엔트리를 결정하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  5. 제1항에 있어서,
    상기 제2 필드는 상기 시작 시간 및 시간대를 식별하고,
    상기 방법은 상기 데이터 처리 시스템을 통해 상기 시간대에서의 상기 시작 시간을 상기 시간대와는 다른 디폴트 시간대로 변환하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  6. 제1항에 있어서,
    상기 로그 엔트리는 제1 로그 엔트리를 포함하고, 상기 방법은,
    상기 데이터 처리 시스템을 통해, 상기 음성 호 엔트리에 포함된 상기 디바이스 식별자를 제2 로그 엔트리에 나타낸 제2 디바이스 식별자와 매칭시키고 그리고 상기 음성 호 엔트리의 상기 시작 시간이 상기 제2 로그 엔트리의 각 제2 시작 시간의 미리결정된 임계값 내에 있는지를 결정함으로써, 상기 음성 호 엔트리에 대응하는 데이터 처리 시스템의 메모리에 유지되는 제2 로그 엔트리를 결정하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 제1 로그 엔트리의 시작 시간과 상기 음성 호 엔트리에서의 상기 음성 호의 시작 시간 간의 제1 차이를 결정하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 제2 로그 엔트리의 상기 제2 시작 시간과 상기 음성 호 엔트리에서의 상기 음성 호의 상기 제2 시작 시간간의 제2 차이를 결정하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 제1 차이 및 상기 제2 차이의 비교에 기초하여 매칭 엔트리로서 상기 제1 로그 엔트리를 선택하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 가상 전화 번호를 식별하기 위한 상기 매칭 엔트리를 사용하는 단계를 더 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  7. 제1항에 있어서, 상기 로그 엔트리는 제1 로그 엔트리를 포함하고, 상기 방법은,
    상기 데이터 처리 시스템을 통해, 상기 음성 호 엔트리에 포함된 상기 디바이스 식별자를 제2 로그 엔트리에 나타낸 제2 디바이스 식별자와 매칭시키고 그리고 상기 음성 호 엔트리의 지속시간이 상기 제2 로그 엔트리의 각 제2 지속시간의 상기 미리결정된 임계값 내에 있는지를 결정함으로써, 상기 음성 호 엔트리에 대응하는 데이터 처리 시스템의 메모리에 유지되는 제2 로그 엔트리를 결정하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 제1 로그 엔트리의 지속시간과 상기 음성 호 엔트리에서의 상기 음성 호의 지속시간 간의 제1 차이를 결정하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 제2 로그 엔트리의 상기 제2 지속시간과 상기 음성 호 엔트리에서의 상기 음성 호의 지속시간 간의 제2 차이를 결정하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 제1 차이 및 상기 제2 차이의 비교에 기초하여 매칭 엔트리로서 상기 제1 로그 엔트리를 선택하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 가상 전화 번호를 식별하기 위해 상기 매칭 엔트리를 사용하는 단계를 더 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  8. 제1항에 있어서,
    상기 데이터 처리 시스템을 통해, 상기 음성 호에 대한 라벨을 식별하기 위해 상기 음성 호 엔트리 내의 제4 필드를 파싱하는 단계, 상기 라벨은 상기 콘텐츠 제공자에 의해 할당되며,
    상기 데이터 처리 시스템을 통해, 상기 식별된 콘텐츠 아이템 노출로 상기 라벨을 속성화하기 위해 상기 콘텐츠 아이템 노출에 대응하는 상기 로그 데이터 구조를 업데이트하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  9. 제8항에 있어서,
    상기 데이터 처리 시스템을 통해, 상기 음성 호에 대한 라벨 값을 식별하기 위해 상기 음성 호 엔트리의 제5 필드를 파싱하는 단계, 상기 라벨 값은 상기 콘텐츠 제공자에 의해 할당되며,
    상기 데이터 처리 시스템을 통해, 상기 식별된 콘텐츠 아이템 노출로 상기 라벨 값을 속성화하기 위해 상기 콘텐츠 아이템 노출에 대응하는 상기 로그 데이터 구조를 업데이트하는 단계를 더 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  10. 제1항에 있어서,
    상기 데이터 처리 시스템을 통해, 상기 디바이스 식별자를 갖는 상기 디바이스를 통해 디스플레이하기 위한 콘텐츠에 대한 요청을 수신하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 요청에 응답하여 상기 콘텐츠 아이템을 선택하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 디바이스 식별자를 갖는 디바이스로 디스플레이하기 위해 상기 선택된 콘텐츠 아이템을 제공하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 콘텐츠 아이템에 상기 가상 전화 번호를 제공하는 단계, 상기 콘텐츠 아이템은 콘텐츠 아이템 노출 식별자와 연관되며,
    상기 데이터 처리 시스템을 통해, 상기 제공된 가상 전화 번호를 상기 디바이스 식별자를 갖는 상기 디바이스에 제공하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  11. 제10항에 있어서,
    상기 데이터 처리 시스템을 통해, 상기 콘텐츠 아이템과의 상호 작용에 대한 인디케이션을 수신하는 것에 응답하여, 상기 콘텐츠 아이템에 상기 가상 전화 번호를 제공하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  12. 제10항에 있어서,
    상기 데이터 처리 시스템을 통해, 상기 제공된 가상 전화 번호로 이루어진 상기 음성 호를 수신하는 단계, 상기 음성 호는 상기 디바이스 식별자 및 상기 제공된 가상 전화 번호를 나타내며,
    상기 데이터 처리 시스템을 통해, 상기 음성 호의 수신에 응답하여 상기 음성 호의 시작 시간을 검출하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 음성 호의 시작 시간을 상기 로그 엔트리에 저장하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  13. 제10항에 있어서,
    상기 데이터 처리 시스템을 통해, 상기 제공된 가상 전화 번호로 이루어진 상기 음성 호를 수신하는 단계, 상기 음성 호는 상기 디바이스 식별자 및 상기 제공된 가상 전화 번호를 나타내며,
    상기 데이터 처리 시스템을 통해 상기 음성 호의 종료를 검출하는 단계;
    상기 데이터 처리 시스템을 통해, 상기 음성 호의 검출된 종료에 기초하여 상기 로그 엔트리에 상기 음성 호의 지속시간을 저장하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  14. 제10항에 있어서,
    상기 데이터 처리 시스템을 통해, 상기 제공된 가상 전화 번호로 이루어진 상기 음성 호를 수신하는 단계, 상기 음성 호는 상기 디바이스 식별자 및 상기 제공된 가상 전화 번호를 나타내며,
    상기 데이터 처리 시스템을 통해, 발신자 컴퓨팅 디바이스와 상기 콘텐츠 제공자의 상기 디바이스 간의 상기 음성 호를 위한 통신 채널을 설정하는 단계를 포함하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 방법.
  15. 네트워크를 통해 데이터를 동기화하는 시스템에 있어서,
    하나 이상의 프로세서를 포함하는 데이터 처리 시스템;
    상기 데이터 처리 시스템에 의해 실행되고, 콘텐츠 계정 식별자를 사용하여 설정된 통신 채널을 통해 콘텐츠 제공자로부터 상기 콘텐츠 제공자의 제공자 디바이스에 의해 수신된 음성 호에 대응하는 음성 호 엔트리를 수신하는 제공자 인터페이스와, 상기 음성 호 엔트리는 상기 음성 호를 개시하는 디바이스의 디바이스 식별자를 식별하는 제1 필드, 상기 음성 호의 시작 시간을 식별하는 제2 필드, 및 상기 음성 호의 지속시간을 식별하는 제3 필드를 포함하며,
    상기 데이터 처리 시스템에 의해 실행되는 매칭 엔진을 포함하며,
    상기 매칭 엔진은,
    상기 데이터 처리 시스템의 메모리에 유지되는 로그 데이터 구조에 액세스하고, 상기 로그 데이터 구조는 상기 데이터 처리 시스템에 의해 수신된 음성 호들에 대응하는 복수의 로그 엔트리를 저장하며,
    상기 음성 호 엔트리 내에 포함된 상기 디바이스 식별자를 상기 복수의 로그 엔트리들의 로그 엔트리에 나타낸 디바이스 식별자와 매칭시키고,
    상기 디바이스 식별자를 매칭하는 것에 응답하여 상기 음성 호 엔트리의 지속시간 또는 시작 시간 중 적어도 하나가 상기 로그 엔트리의 각 지속시간 또는 시작 시간의 미리결정된 임계값을 만족하는지를 결정함으로써, 상기 음성 호 엔트리에 대응하는 상기 복수의 로그 엔트리들의 로그 엔트리를 식별하도록 상기 로그 데이터 구조를 파싱하고,
    상기 미리결정된 임계값이 만족되었다는 결정에 응답하여 상기 로그 엔트리로부터 가상 전화 번호를 검색하고, 상기 가상 전화 번호는 상기 데이터 처리 시스템에 의해 상기 콘텐츠 제공자의 콘텐츠 아이템에 동적으로 할당되고, 상기 콘텐츠 제공자의 상기 콘텐츠 아이템과의 상호 작용에 응답하여 상기 로그 엔트리의 상기 디바이스 식별자를 갖는 상기 디바이스에 제공되며,
    상기 콘텐츠 아이템에 상기 가상 전화 번호의 제공을 초래한 콘텐츠 아이템의 노출을 식별하는 콘텐츠 아이템 노출 식별자를 결정하도록 상기 식별된 가상 전화 번호로 콘텐츠 아이템 노출 데이터 구조에서 룩업을 수행하고,
    상기 콘텐츠 아이템 노출 식별자에 대응하는 데이터 구조에 상기 음성 호 엔트리를 통해 제공된 데이터를 저장하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 시스템.
  16. 제15항에 있어서, 상기 매칭 엔진은,
    미리결정된 시간 임계값에 기초하여 상기 음성 호 엔트리의 상기 시작 시간에 대한 시작 시간 범위를 식별하고,
    미리결정된 지속시간 임계값에 기초하여 상기 음성 호 엔트리의 상기 지속시간에 대한 지속시간 범위를 식별하고,
    상기 시작 시간 범위를 포함하는 제1 기간 및 상기 지속시간 범위를 포함하는 제2 기간을 갖는 쿼리를 발생하고,
    상기 쿼리를 사용하여 상기 데이터 처리 시스템의 메모리에 유지되는 상기 로그 엔트리를 식별하도록 더 구성되는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 시스템.
  17. 제15항에 있어서, 상기 로그 엔트리는 제1 로그 엔트리를 포함하고, 상기 매칭 엔진은,
    상기 음성 호 엔트리에 포함된 상기 디바이스 식별자를 제2 로그 엔트리에 나타낸 제2 디바이스 식별자와 매칭시키고 그리고 상기 음성 호 엔트리의 상기 시작 시간이 상기 제2 로그 엔트리의 각 제2 시작 시간의 미리결정된 임계값 내에 있는지를 결정함으로써, 상기 음성 호 엔트리에 대응하는 데이터 처리 시스템의 메모리에 유지되는 제2 로그 엔트리를 결정하고,
    상기 제1 로그 엔트리의 시작 시간과 상기 음성 호 엔트리에서의 상기 음성 호의 시작 시간 간의 제1 차이를 결정하고,
    상기 제2 로그 엔트리의 상기 제2 시작 시간과 상기 음성 호 엔트리에서의 상기 음성 호의 상기 제2 시작 시간간의 제2 차이를 결정하고,
    상기 제1 차이 및 상기 제2 차이의 비교에 기초하여 매칭 엔트리로서 상기 제1 로그 엔트리를 선택하고,
    상기 가상 전화 번호를 식별하기 위한 상기 매칭 엔트리를 사용하도록 더 구성되는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 시스템.
  18. 제15항에 있어서, 상기 매칭 엔진은,
    상기 음성 호에 대한 라벨을 식별하기 위해 상기 음성 호 엔트리 내의 제4 필드를 파싱하고, 상기 라벨은 상기 콘텐츠 제공자에 의해 할당되며,
    상기 식별된 콘텐츠 아이템 노출로 상기 라벨을 속성화하기 위해 상기 콘텐츠 아이템 노출에 대응하는 상기 데이터 구조를 업데이트하도록 더 구성되는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 시스템.
  19. 제15항에 있어서,
    상기 데이터 처리 시스템에 의해 실행되는 콘텐츠 선택기와;
    상기 데이터 처리 시스템에 의해 실행되는 가상 번호 엔진을 더 포함하며,
    상기 콘텐츠 선택기는, 상기 디바이스 식별자를 갖는 상기 디바이스를 통해 디스플레이하기 위한 콘텐츠에 대한 요청을 수신하고, 상기 요청에 응답하여 상기 콘텐츠 아이템을 선택하고, 상기 디바이스 식별자를 갖는 디바이스로 디스플레이하기 위해 상기 선택된 콘텐츠 아이템을 제공하고,
    상기 가상 번호 엔진은,
    상기 콘텐츠 아이템에 상기 가상 전화 번호를 제공하고, 상기 콘텐츠 아이템은 콘텐츠 아이템 노출 식별자와 연관되며,
    상기 제공된 가상 전화 번호를 상기 디바이스 식별자를 갖는 상기 디바이스에 제공하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 시스템.
  20. 제19항에 있어서, 상기 데이터 처리 시스템에 의해 실행되는 트랙커를 더 포함하며,
    상기 트랙커는,
    상기 제공된 가상 전화 번호로 이루어진 상기 음성 호를 수신하고, 상기 음성 호는 상기 디바이스 식별자 및 상기 제공된 가상 전화 번호를 나타내며,
    상기 음성 호의 수신에 응답하여 상기 음성 호의 시작 시간을 검출하고,
    상기 데이터 처리 시스템을 통해 상기 음성 호의 시작 시간을 상기 로그 엔트리에 저장하는 것을 특징으로 하는 네트워크를 통해 데이터를 동기화하는 시스템.
KR1020177035794A 2015-10-07 2016-10-05 동적으로 할당된 가상 전화번호를 통해 음성 호와 관련된 데이터를 동기화하기 위한 시스템 및 방법 KR102079323B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562238645P 2015-10-07 2015-10-07
US62/238,645 2015-10-07
US14/971,751 2015-12-16
US14/971,751 US9781265B2 (en) 2015-10-07 2015-12-16 Systems and methods for syncing data related to voice calls via a dynamically assigned virtual phone number
PCT/US2016/055471 WO2017062438A1 (en) 2015-10-07 2016-10-05 Systems and methods for syncing data related to voice calls via a dynamically assigned virtual phone number

Publications (2)

Publication Number Publication Date
KR20180006954A KR20180006954A (ko) 2018-01-19
KR102079323B1 true KR102079323B1 (ko) 2020-02-19

Family

ID=57209851

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177035794A KR102079323B1 (ko) 2015-10-07 2016-10-05 동적으로 할당된 가상 전화번호를 통해 음성 호와 관련된 데이터를 동기화하기 위한 시스템 및 방법

Country Status (8)

Country Link
US (3) US9781265B2 (ko)
EP (2) EP3617980B1 (ko)
JP (1) JP6420507B2 (ko)
KR (1) KR102079323B1 (ko)
CN (2) CN107851267B (ko)
DE (1) DE112016002227T5 (ko)
GB (1) GB2555333A (ko)
WO (1) WO2017062438A1 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10356154B2 (en) * 2016-01-04 2019-07-16 Google Llc Systems and methods for allocating communication resources via information technology infrastructure
US9967230B2 (en) 2016-02-04 2018-05-08 Google Llc Systems and methods for allocating communication resources via information technology infrastructure
TWI694408B (zh) * 2017-06-15 2020-05-21 林淑貞 虛擬公務門號撥入系統及其方法
US10694040B1 (en) * 2018-02-26 2020-06-23 Wells Fargo Bank, N.A. Centralized event log generation and analysis for contact centers
US11265602B2 (en) * 2018-04-12 2022-03-01 Rovi Guides, Inc. Systems and methods for evaluating a promotional campaign
WO2019200408A2 (en) * 2018-04-13 2019-10-17 Travelpass Group, Llc Systems and methods for client relation management
EP3607700B1 (en) * 2018-05-07 2023-04-05 Google LLC Verifying operational statuses of agents interfacing with digital assistant applications
CN110545360B (zh) * 2018-05-28 2021-06-08 拉扎斯网络科技(上海)有限公司 通信隐私保护方法、装置、设备及计算机可读存储介质
US10313511B1 (en) 2018-06-05 2019-06-04 Wells Fargo Bank, N.A. Customer self-help control system for contact centers
CN109241014B (zh) * 2018-07-04 2022-04-15 创新先进技术有限公司 数据处理方法、装置和服务器
US10326876B1 (en) 2018-12-21 2019-06-18 Sprint Communications Company L.P. Mobile communication device self-service client
US11361764B1 (en) * 2019-01-03 2022-06-14 Amazon Technologies, Inc. Device naming-indicator generation
CN109814949B (zh) * 2019-01-07 2022-04-22 平安科技(深圳)有限公司 虚拟电话状态切换方法、装置、计算机设备和存储介质
WO2020178771A1 (en) * 2019-03-05 2020-09-10 Textnow, Inc. Systems and methods for suggesting contacts
US11301923B2 (en) * 2019-08-05 2022-04-12 Yahoo Assets Llc Automatic web browsing in electronic messaging interface method and apparatus
CN110880974B (zh) * 2019-12-04 2022-06-14 腾讯科技(深圳)有限公司 一种基于区块链网络的数据通信方法和装置
CN113010480B (zh) * 2020-03-26 2024-03-19 腾讯科技(深圳)有限公司 日志处理方法、装置、电子设备及计算机可读存储介质
CN113973508B (zh) * 2020-05-20 2023-12-22 谷歌有限责任公司 在电信网络测量中防止数据操纵和保护用户隐私
CN112422711B (zh) * 2020-11-06 2021-10-08 北京五八信息技术有限公司 一种资源分配方法、装置、电子设备及存储介质
CN116010350B (zh) * 2023-03-24 2023-06-06 深圳万物安全科技有限公司 二进制日志检索方法、系统、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070083408A1 (en) 2003-10-06 2007-04-12 Utbk, Inc. Systems and Methods to Provide a Communication Reference in a Representation of a Geographical Region
US20110231247A1 (en) 2010-03-22 2011-09-22 Thirunarayanan Srinivasan Pay-Per-Call ad system

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6856673B1 (en) 2002-03-13 2005-02-15 At&T Corp. Targeted advertising in a telephone dialing system
US9105032B2 (en) * 2007-05-03 2015-08-11 Yellowpages.Com Llc Systems and methods to provide advertisements for real time communications
US7120235B2 (en) * 2003-10-06 2006-10-10 Ingenio, Inc. Method and apparatus to provide pay-per-call performance based advertising
US7424442B2 (en) * 2004-05-04 2008-09-09 Utbk, Inc. Method and apparatus to allocate and recycle telephone numbers in a call-tracking system
US8175939B2 (en) * 2005-10-28 2012-05-08 Microsoft Corporation Merchant powered click-to-call method
US20070140446A1 (en) 2005-12-16 2007-06-21 Haldeman Randolph M Call-based advertising
WO2007113459A1 (en) * 2006-03-30 2007-10-11 British Telecommunications Public Limited Company Telecommunications calls with transfer of additional data
US8218741B2 (en) * 2007-11-26 2012-07-10 Google Inc. Telephone number-based advertising
US8874086B2 (en) * 2008-02-07 2014-10-28 Microsoft Corporation Providing relevant advertisements or other content based on a communications identifier
EA017014B1 (ru) * 2008-02-22 2012-09-28 Сейдж Коннекс, Ллк Персональный портал данных в коммутируемой телефонной сети общего пользования и онлайн-дом с виртуальными комнатами и объектами
EP2415241A2 (en) * 2009-03-31 2012-02-08 France Telecom Dynamic content linked to contact identifiers
US20110091027A1 (en) * 2009-10-21 2011-04-21 Microsoft Corporation Discovering and using phone number location information
US8863167B2 (en) * 2009-10-29 2014-10-14 Motorola Mobility Llc System providing sponsored content
US8392411B2 (en) * 2010-05-20 2013-03-05 Google Inc. Automatic routing of search results
US8259915B2 (en) * 2010-07-01 2012-09-04 Marchex, Inc. System and method to analyze calls to advertised telephone numbers
US8619952B2 (en) * 2011-01-06 2013-12-31 Google Inc. Displaying phone number on the landing page based on keywords
CN102724371B (zh) * 2011-03-29 2014-01-22 鸿富锦精密工业(深圳)有限公司 语音网关及通过该语音网关建立通话的方法
US9992149B2 (en) * 2012-05-31 2018-06-05 Microsoft Technology Licensing, Llc Two-way message service and voice communication
CN104823468B (zh) * 2012-08-26 2019-04-16 沃基应用有限公司 重定向通过数据网络的蜂窝电话通信
US20140074596A1 (en) * 2012-09-10 2014-03-13 Chitika, Inc. System and method for assigning and tracking temporary phone numbers for advertisement serving
US9462412B1 (en) * 2012-10-10 2016-10-04 Google Inc. Providing content based on previously determined device locations
US20150066633A1 (en) * 2013-08-30 2015-03-05 Google Inc. Dynamic telephone number assignment
US9406076B1 (en) * 2013-11-22 2016-08-02 Google Inc. Automatic virtual phone number pool management
US9699311B2 (en) * 2014-03-28 2017-07-04 Dialogtech Inc. Systems, method, and computer program product for cross-channel customer relationship management support with dynamically inserted voice call numbers

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070083408A1 (en) 2003-10-06 2007-04-12 Utbk, Inc. Systems and Methods to Provide a Communication Reference in a Representation of a Geographical Region
US20110231247A1 (en) 2010-03-22 2011-09-22 Thirunarayanan Srinivasan Pay-Per-Call ad system

Also Published As

Publication number Publication date
EP3617980A1 (en) 2020-03-04
KR20180006954A (ko) 2018-01-19
EP3295413A1 (en) 2018-03-21
US20170104874A1 (en) 2017-04-13
US20180020096A1 (en) 2018-01-18
CN107851267A (zh) 2018-03-27
DE112016002227T5 (de) 2018-05-24
CN113222665A (zh) 2021-08-06
US10284725B2 (en) 2019-05-07
US10110742B2 (en) 2018-10-23
EP3617980B1 (en) 2021-09-29
CN113222665B (zh) 2022-07-08
GB201720737D0 (en) 2018-01-24
WO2017062438A1 (en) 2017-04-13
US20180359360A1 (en) 2018-12-13
US9781265B2 (en) 2017-10-03
GB2555333A (en) 2018-04-25
JP6420507B2 (ja) 2018-11-07
JP2018529139A (ja) 2018-10-04
EP3295413B1 (en) 2019-12-04
CN107851267B (zh) 2021-05-18

Similar Documents

Publication Publication Date Title
KR102079323B1 (ko) 동적으로 할당된 가상 전화번호를 통해 음성 호와 관련된 데이터를 동기화하기 위한 시스템 및 방법
US10250556B2 (en) Systems and methods for allocating communication resources via information technology infrastructure
US20210125238A1 (en) Systems and methods for providing content items via a push marketing auction
US11330036B2 (en) Systems and methods for allocating communication resources via information technology infrastructure
US20200342041A1 (en) Audience on networked devices
US11445032B2 (en) Matching and attribution of user device events
CN107005616B (zh) 用于向内容提供者提供呼叫场境的系统和方法
US10051075B1 (en) Systems and methods for maintaining an asynchronous communication via an intermediary
US20240054030A1 (en) Local and Remote Event Handling

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