KR20210030354A - 온라인 멀티플레이어 세션 참가를 향상시키는 시스템 및 방법 - Google Patents

온라인 멀티플레이어 세션 참가를 향상시키는 시스템 및 방법 Download PDF

Info

Publication number
KR20210030354A
KR20210030354A KR1020217000972A KR20217000972A KR20210030354A KR 20210030354 A KR20210030354 A KR 20210030354A KR 1020217000972 A KR1020217000972 A KR 1020217000972A KR 20217000972 A KR20217000972 A KR 20217000972A KR 20210030354 A KR20210030354 A KR 20210030354A
Authority
KR
South Korea
Prior art keywords
session
user
queuing
host
guest
Prior art date
Application number
KR1020217000972A
Other languages
English (en)
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 KR20210030354A publication Critical patent/KR20210030354A/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/48Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • A63F13/795Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for finding other players; for building a team; for providing a buddy list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • H04L65/4069
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • 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/131Protocols for games, networked simulations or virtual reality
    • H04L67/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

호스트/스트리머 클라이언트 장치와 게스트 플레이어 클라이언트 장치 사이의 중앙 시스템을 통해 플레이어의 세션 추적 및 자동 큐잉 관리를 통해 온라인 콘텐츠 스트림 또는 멀티플레이어 게임과 같은 활동에 대한 세션 참가가 향상된다. 콘텐츠 스트림을 시청하거나 또는 네트워크를 통한 게임 스트리밍 서비스를 통해 멀티플레이어 활동에 참가하려고 대기하고 있는 관객은 호스트/스트리밍 사용자와 함께 게스트 플레이어로서 콘텐츠 스트림 또는 활동의 세션에 참가하기 위해 큐잉에 배치되도록 요청할 수 있다. 시작 및 종료 이벤트를 결정하기 위해 세션이 추적된다. 세션이 종료되면 이전 게스트 플레이어 세트가 세션에서 제거되며, 큐잉된 관객 세트가 게스트 플레이어로서 콘텐츠 스트림 또는 활동의 새로운 세션의 시작에 자동으로 추가된다. 큐잉은 사용자 특성(user characteristic)에 기초하여 사용자에 대해 자동으로 우선순위가 지정될 수 있고, 세션의 종료 시에 제거된 게스트 플레이어는 자동으로 다시 큐잉될 수 있다.

Description

온라인 멀티플레이어 세션 참가를 향상시키는 시스템 및 방법
비디오 게임 스트리머, 콘텐츠 제작자, 게임 플레이어, 및 게임 인플루언서는 자신의 팔로워와 상호작용하여 자신의 팔로워 기반의 몫을 획득한다. 상호작용의 한 유형은 (예컨대, 미디어 스트림을 보거나 멀티 플레이어 게임에 참가함으로써) 상호작용을 원하는 팔로워와 게임을 하거나 활동에 참가하는 것이다. 일반적으로, 호스트나 스트리머는 플랫폼의 다수의 다른 플레이어 및/또는 시청자에게 그들이 게임을 하고 싶다거나 또는 다른 방식으로 함께 상호작용하고 싶다는 메시지를 보낸 다음, 메시지에 대한 각 개별 응답을 일일이 살펴보고, 응답한 시청자/플레이어에게 게임 또는 파티에 대한 게스트 플레이어 초대를 보내어 그룹을 구성할 수 있다. 모든 사람이 초대를 수락한다고 가정하면, 호스트/스트리머는 게임을 시작할 것이다(즉, 게임 "매치 메이크(match-make)").
일부 경우에, 게임은 참가에 개방적일 수 있으며, 이 경우 플레이어들은 플랫폼의 호스트/스트리머를 팔로우하고 자신들의 개방형 게임 로비에 참가할 수 있다. 호스트/스트리머를 위한 또 다른 옵션은 플랫폼에 LFG(looking for group)를 만드는 것일 수 있다. 시청자가 LFG를 신청하면, 스트리머는 한 세트(set)의 사용자를 확인하고 이들을 플랫폼 파티에 모은 다음, 게임을 시작할 수 있다. 게임 후에, 사용자는 게임 로비를 떠났다가나 다시 시작할 수도 있고, 또는 파티 멤버들을 내보내어 LFG의 슬롯을 확보해서 호스트가 가서 파티에서 다시 시작할 더 많은 구성원을 일일이 확인하도록 할 수 있다.
본 요약부는 아래의 상세한 설명에서 추가로 기술되는 개념들의 선택을 단순화된 형식으로 소개하도록 제공된다. 본 요약부는 청구 대상의 중요 특성 또는 기본 특성을 밝히기 위한 것이 아니며, 청구 대상의 범주를 제한하는데 사용하기 위한 것도 아니다.
온라인 스트림/활동에서 세션 참가를 향상시키는 방법은 시스템 및 장치에 의해 수행된다. 사용자는 타이틀을 실행하는 클라이언트 장치에서 타이틀(예컨대, 비디오 게임 또는 다른 온라인 콘텐츠)을 플레이할 수 있다. 다수의 사용자 또는 관객은 멀티플레이어 게임에 참가하거나 스트리머 클라이언트 장치로부터 관객 자신의 클라이언트 장치로 스트리밍되는 이들 타이틀의 라이브 비디오 콘텐츠 스트림을 보고싶어할 수 있다. 스트리머와 관객 사용자는 큐잉(queuing) 및 그 관리를 통해 세션 참가를 용이하게 할 수 있다. 따라서, 사용자 큐잉 및 세션 참가의 관리가 여기에서 수행된다. 예를 들어, 스트리머 클라이언트 장치와 게스트 플레이어 클라이언트 장치 사이의 중앙 시스템을 통한 플레이어의 세션 추적 및 자동 큐잉 관리를 통해 온라인 콘텐츠 스트림/활동에 대한 세션 참가가 향상된다. 관객은 네트워크를 통한 스트리밍 서비스를 통해 콘텐츠 스트림/게임(즉, 일반적으로 활동)을 볼 수 있고, 스트리밍 사용자와의 게스트 플레이어로서 활동의 세션에 참가하기 위해 큐잉에 배치되도록 요청할 수 있다. 시작 및 종료 이벤트를 판단하기 위해 세션이 추적될 수도 있다. 세션이 종료되면 이전 게스트 플레이어 세트가 세션에서 제거되거나 추방되며, 대기중인 관객 세트가 게스트 플레이어로 콘텐츠 활동의 새로운 세션 시작에 자동으로 추가된다. 큐잉은 사용자 특성(user characteristic) 및/또는 크리덴셜(credential)에 기초하여 사용자에 대해 자동으로 우선순위가 지정될 수 있다. 세션 종료시 제거된 게스트 플레이어는 향후 세션에 참가하도록 자동으로 다시 큐잉될 수 있다.
다양한 예의 구조 및 동작뿐만 아니라 추가 특징 및 이점이 첨부된 도면을 참조하여 아래에서 상세히 설명된다. 아이디어 및 기술은 본 명세서에 기술된 본 명세서에 기술된 특정 예에 제한되지 않는다는 점에 유의하라. 이들 예는 단지 예시를 위해 본 명세서에 제시된다. 추가적인 예들은 본 명세서에 포함된 개시내용에 기초하여 당업자에게 명백할 것이다.
본 명세서에 통합되어 명세서의 일부를 형성하는 첨부 도면은, 본 출원의 실시예를 예시하고, 또한 설명과 함께, 실시예의 원리를 설명하고 당업자가 실시예를 실시하고 사용할 수 있게 하는 역할을 한다.
도 1은 일 실시예에 따른, 큐 관리를 통해 세션 참가를 향상시키기 위한 네트워크화된 시스템의 블록도를 도시한 것이다.
도 2는 일 실시예에 따른, 큐 관리를 통해 세션 참가를 향상시키기 위한 세션 큐잉 호스트 시스템의 블록도를 도시한 것이다.
도 3은 일 실시예에 따른, 큐 관리를 통해 세션 참가를 향상시키기 위한 순서도를 도시한 것이다.
도 4는 일 실시예에 따른, 큐 관리를 통해 세션 참가를 향상시키기 위한 순서도를 도시한 것이다.
도 5는 일 실시예에 따른, 큐 관리를 통해 세션 참가를 향상시키기 위한 흐름도를 도시한 것이다.
도 6은 일 실시예에 따른, 큐 관리를 통해 세션 참가를 향상시키기 위한 흐름도를 도시한 것이다.
도 7은 일 실시예에 따른, 큐 관리를 통해 세션 참가를 향상시키기 위한 흐름도를 도시한 것이다.
도 8a는 일 실시예에 따른, 큐 관리를 통해 세션 참가를 향상시키기 위한 클라이언트 사용자 인터페이스의 블록도를 도시한 것이다.
도 8b는 일 실시예에 따른, 큐 관리를 통해 세션 참가를 향상시키기 위한 클라이언트 사용자 인터페이스의 블록도를 도시한 것이다.
도 9는 다양한 실시예를 구현하는 데 사용될 수 있는 예시적인 모바일 장치의 블록도를 도시한 것이다.
도 10은 실시예들을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 장치의 블록도를 도시한 것이다.
실시예들의 특징 및 이점은 도면과 관련하여 아래에 설명하는 상세한 설명으로부터 더욱 명백해질 것이며, 도면 전체에 걸쳐 유사한 참조 문자는 대응하는 요소를 나타낸다. 도면에서, 유사한 참조 번호는 일반적으로 동일하거나, 기능적으로 유사하거나, 구조적으로 유사한 요소를 나타낸다. 요소가 처음으로 나타나는 도면은 해당 참조 번호의 맨 왼쪽 숫자로 표시된다.
I. 개요
다음의 상세한 설명은 다수의 실시예를 개시한다. 본 특허 출원의 범위는 개시된 실시예들에 제한되지 않고, 개시된 실시예들의 수정들뿐만 아니라 개시된 실시예들의 조합도 포함한다.
명세서에서 "일 실시예", "실시예", "예시적인 실시예" 등에 대한 언급은 설명하는 실시예가 특정한 특징, 구조 또는 특성을 포함할 수 있지만 모든 실시예가 그러한 특정한 특징, 구조 또는 특성을 반드시 포함하는 것은 아니라는 것을 나타낸다. 또한, 이러한 문구는 반드시 동일한 실시예를 지칭하는 것은 아니다. 또한, 특정한 특징, 구조 또는 특성이 실시예와 관련하여 설명될 때, 다른 실시예와 관련하여 그러한 특징, 구조 또는 특성을 달성하는 것은, 명시적으로 기술하였는지에 관계없이 당업자가 알고 있는 범위 내에 있다고 할 수 있다.
논의에서, 달리 명시하지 않는 한, 본 개시의 실시예의 특징 또는 특징들의 조건 또는 관계 특성을 수식하는 "실질적으로", "대략" 및 "약"과 같은 용어는 조건이나 특성이 원하는 적용을 위해 실시예의 동작에 대해 허용되는 허용 오차 내에 있는 것으로 정의됨을 의미하는 것으로 이해된다.
또한, 본 명세서에 사용되는 공간에 대한 설명(예컨대, "위", "아래", "상", "하", "좌", "우", "상부", "하부", "수직", "수평" 등)은 설명을 위해서만 사용되며, 본 명세서에 기술된 구조 및 도면의 실제 구현은 임의의 방향 또는 방식으로 공간적으로 배열될 수 있다. 추가로, 도면은 축척으로 제공되지 않을 수 있으며, 도면의 요소들의 방향 또는 구성은 실시예에서 달라질 수 있다.
이하에서 다수의 실시예를 설명한다. 본 명세서에서 제공되는 모든 섹션/서브섹션의 표제는 제한적인 것이 아님에 유의하라. 실시예들이 본 문서에 걸쳐 설명되며, 임의의 유형의 실시예는 임의의 섹션/서브섹션 아래에 포함될 수 있다. 또한, 임의의 섹션/서브섹션에 개시된 실시예는 동일한 섹션/서브섹션 및/또는 상이한 섹션/서브섹션에서 설명된 임의의 다른 실시예와 임의의 방식으로 결합될 수 있다.
아래의 섹션 II는 큐 관리를 통해 세션 참가를 향상시키기 위한 예시적인 실시예를 설명한다. 구체적으로, 섹션 II.A는 큐 관리를 통한 세션 참가를 위한 예시적인 시스템을 설명하고 섹션 II.B는 예시적인 사용자 인터페이스 실시예를 제공한다. 아래의 섹션 III은 본 명세서에 개시된 실시예의 특징을 구현하는 데 사용될 수 있는 예시적인 모바일 장치 및 컴퓨팅 장치 실시예를 설명한다. 아래 섹션 IV에서는 추가 예들 및 장점을 설명하고, 섹션 V에서는 몇 가지 결론을 제공한다.
II. 큐 관리를 통해 세션 참가를 향상시키기 위한 실시예
큐 관리를 통해 세션 참가를 향상시키기 위한 방법, 시스템, 장치, 디바이스 및 컴퓨터 프로그램 제품이 본 명세서에서 제공된다. 사용자 또는 사용자 그룹은, 다른 사용자 또는 사용자 그룹과 함께, 예컨대 비디오 스트림 또는 게임을 위한 온라인 활동 세션을 플레이하거나 참가하기를 원할 수 있는데, 이러한 온라인 활동 세션에서 어떤 활동에 대해서는 세션 용량이 부족하다. 즉, 플레이하거나 참가하기를 원하는 사용자의 수가 임의의 주어진 시간에 참가할 수 있는 최대 사용자 수를 초과할 수 있다. 따라서, 멀티플레이어 경험은 일반적으로 제한된 플레이어 스팟 세트를 갖기 때문에, 멀티플레이어 경험은 그 경험에 허용된 것보다 플레이하기를 원하는 사람들이 더 많은 경우에 부딪히게 된다. 그것이 친구, 낯선 사람, 게임 스트리밍 관객과 함께 플레이하고 있든, 아니면 대중들과 플레이하고자 하는 매우 중요한 사람/플레이어(VIP)이든, 이 문제는 발생할 수 있다. 스트리머가 게스트 플레이어로 플레이 세션에서 관객과 소통하기를 원하거나 또는 멀티플레이어 게임 개시자가 친구와 게임을 하고 싶어하는 경우에도, 참가자들의 이 오버플로를 다루기 위해 현재 이용가능한 옵션은 거의 없다. 게임이 끝났을 때, 호스트/스트리머가 자신의 그룹 또는 관객으로부터 새로운 게스트 플레이어 세트를 꾸리고자 하는 경우, 호스트/스트리머는 현재 게임의 모든 게스트 플레이어를 제거하거나(가능한 경우 그 게임에서), 또는 게임 "로비"를 완전히 떠나 프로세스를 다시 시작해야 한다. 이것은 어떤 종류의 우선순위도 시청자/플레이어에게 적용되는 것을 허용하지 않는데, 누구든지 먼저 게임에 참가하면 된다.
세션 참가에 관심을 표명한 플레이어를 자동으로 큐잉하고(queuing), 일정 기간 및 일정 횟수의 세션에 걸쳐 이들 사용자를 자동으로 순환시킴으로써, 개시된 실시예들은 세션 참가에 대한 가능한 많은 요청을 효율적이고 자동으로 만족시킨다. 또한, 큐에서 큐잉된 사용자는 비동기 상태이므로 기다리는 동안 다른 작업을 수행할 수 있다. 따라서, 개시된 실시예는 플레이어의 자동 큐잉을 통해 효율적인 세션 설정 및 참가를 가능하게 한다.
예를 들어, 세션 큐잉 서비스는 세션 호스트/스트리머 클라이언트 장치(예컨대, 콘텐츠 스트리머, 콘텐츠 제작자, VIP 또는 서비스 플랫폼 담당자와 같은 게임 플레이어, 게임 인플루언서 등)와 게스트 플레이어로서 게임 또는 스트림 세션에 참가하고자 하는 다른 사용자의 클라이언트 장치 사이의 네트워크에 상주하는 세션 큐잉 시스템 호스트(예컨대, 처리 시스템 또는 서버)에서 실행될 수 있다. 세션 큐잉 서비스는 다른 사용자를 자동으로 큐잉하고, 다른 사용자를 게스트 플레이어로서 추가하며, 게임/콘텐츠 스트림 세션에 대해 게스트 플레이어를 제거하도록 구성된다. 호스트/스트리머와 사용자/참가자 클라이언트 장치 사이에 위치한 세션 큐잉 서비스는, 다른 사용자로부터 스트리머 클라이언트 장치에 의해 스트리밍된 활동(예컨대, 게임) 세션에 참가하려는 요청을 수신하고, 클라이언트 장치의 사용자를 자동으로 큐잉하고 게스트 플레이어로서 세션에 삽입할 수 있다. 이러한 방식으로 세션 큐잉 서비스는 스트리밍된 콘텐츠의 각 인스턴스에 고유한 방식으로 상이한 개발자의 임의의 수의 타이틀에 대한 다른 사용자의 임의의 수의 세션 참가를 중앙에서 관리할 수 있다.
예를 들어, 클라이언트 장치(예컨대, 스트리머/호스트 클라이언트 장치)에서 타이틀을 플레이하는 사용자는 자신의 타이틀 플레이를 스트리밍하여, 네트워크를 통해 한 명 이상의 다른 사용자가 제각기의 클라이언트 장치(예컨대, 게스트 클라이언트 장치)에서 이 콘텐츠 스트림을 볼 수 있도록 할 수 있다. 다른 사용자는 단순히 콘텐츠 스트림을 볼 수 있는 반면에, 다른 경우에는, 다른 사용자가, 예컨대 스트림의 사전 정의된 또는 스트리머가 정의한 부분일 수 있는 세션 동안, 스트리밍되는 타이틀 세션을 보고 상호작용할 수도 있다. 즉, 다른 사용자가 스트리머 클라이언트 장치에서 타이틀을 플레이하는 사용자의 타이틀 세션에 참가할 수도 있다. 마찬가지로, 호스트가 생성한 멀티플레이어 게임 인스턴스의 로비에 있는 사용자가 이러한 사용자에 의해 합류될 수 있다.
개시된 실시예는 임의의 수의 상이한 타이틀 스트림 또는 게임(예컨대, "활동")에 대해 작동할 수 있는 플랫폼 레벨 특징을 제공하고, 참가자를 세션에 자동으로 모을 수 있게 함으로써, 사용자 경험을 개선하고, 클라이언트에 대한 시스템 부담을 감소시키며, 네트워크 트래픽 부하를 감소시키는 등의 이점이 제공된다. 즉, 스트리머/호스트 사용자는 호스트가 참가 신청자를 확인할 것을 요구하지 않는 그룹 찾기(LFG) 메시지를 포스팅하여, 이들을 파티에 합류시키고, 이들을 게임에 초대한 다음 세션마다, 게임마다 프로세스 세션을 반복하려고 시도할 수 있다. 따라서, LFG 포스트는, 실시예에 따라, 스트리머와의 활동의 세션에 참가하기를 원하는 플레이어들의 선입 선출 큐로 작동하도록 활용될 수 있다. LFG 포스트는 또한, 타이틀 개발자가 본 명세서에서 자세히 설명하는 플랫폼으로부터 자신의 타이틀에 개시된 실시예들을 통합하고자 하는 경우, 타이틀 개발자에게 액세스 가능할 수 있다. 즉, 스트리머/호스트는 이러한 유형의 활동인 게임별 LFG를 생성할 수 있다. 예를 들어, 스트리머/호스트가 게임에 입장할 때, LFG를 게임 로비에 모을 수 있는 옵션이 제공될 수 있다. 처음에, 사용자는, 활동에 대한 스트림을 보거나 스트리머/호스트 사용자에 의해 플레이되거나 시작되는 게임과 같은 멀티플레이어 활동을 하기 위해 그룹에 참가하도록 요청할 수 있다. 세션 큐잉 서비스, 또는 워싱턴주 레드몬드에 있는 마이크로소프트사(Microsoft Corporation)의 Xbox Live®와 같은 게임/스트리밍 서비스는, 사용자를, 예컨대, 게스트 플레이어, 스트림의 관객 등으로서 활동 그룹에 포함시킴으로써 사용자를 멀티플레이어 게임, 비디오 스트림 또는 다른 활동과 연관시키도록 구성될 수 있다. 사용자는 세션 참가를 요청하고 자동으로 큐잉될 수 있다. 따라서, 타이틀 개발자는 큐의 맨 위의 사용자를 게스트 플레이어로서 세션에 자동으로 참가하게 할 수 있다. 큐의 사용자가 로그오프하였거나 부재중(unavailable)이면, 개시된 실시예는 부재중인 사용자를 큐에서 자동으로 제거하도록 구성된다. 세션 완료 후에, 로비/LFG로부터 게스트 플레이어가 자동으로 제거될 수 있으며, 큐 맨 위의 다음 사용자 세트가 게스트 플레이어로서 새 세션에 들어올 수 있다. 세션 큐잉 서비스 또는 스트리밍 서비스는, 멀티플레이어 세션이 시작, 종료 또는 도중에 변경되는 시기를 추적하도록 구성될 수 있으며, 따라서 특정 시점에 플레이어의 추가 및/또는 제거가 발생해야 하는 시기를 자동으로 결정할 수 있는 기능을 제공한다.
따라서, 상술한 플랫폼 특징은 세션 참가에 대해 플레이어의 큐잉 및 순환(cycling)을 효율적으로 그리고 원활하게(seamless) 하여, 스트리머와 참가자에게서 프로세스 관리와 관련된 부담을 덜어준다. 개시된 실시예는 임의의 유형의 스트리밍/세션 참가 시나리오뿐만 아니라, 호스트 플레이어가 능동적으로 스트리밍하지 않으면서 게임 세션 또는 활동을 생성하는 멀티플레이어 상호작용 시나리오에 적용될 수 있는데, 이 멀티플레이어 상호작용 시나리오는, 스트리머가 관객 멤버와 함께 플레이하고 싶어하는 시나리오, VIP 게이머가 소셜 컨텍스트에서 게임 세션을 광고하고 참가 사용자를 큐잉할 필요가 있는 시나리오, 게임 플레이어가 친구들과 플레이하고 싶어 하지만 친구들의 규모가 그 활동의 플레이 크기를 초과하는 시나리오(즉, 그래서 일부 플레이어는 줄을 서서 자신의 차례를 기다려야 한다), 멤버 기반이 큰 게임 클럽이 다수 세션을 갖는 플레이 세션을 구성하여 플레이하고 싶어하는 시나리오 등을 포함한다.
실시예는 또한 통합되지 않은 타이틀의 큐잉 및 세션 관리가 향상될 수 있게 한다. 예를 들어, 통합되지 않은 타이틀의 스트리머/호스트는, 개시된 플랫폼을 가상 회의 장소로 사용하여 스트리머/호스트가 큐의 맨 위에서부터 사용자를 파티에 받아들이는 프로세스를 시작하는 파티를 형성함으로써, 여전히 향상된 게임/스트림 플로에 대한 액세스를 제공받는다. 선택된 사용자는 자동으로 파티에 포함될 수 있는데, 여기서 스트리머/호스트는 세션 참가를 위해 전체 파티를 게임 또는 활동에 삽입할 수 있다. 세션이 종료된 후, 타이틀이 통합되지 않았기 때문에, 스트리머/호스트는 게임 로비를 떠났다가 다시 시작하는 추가 단계를 수행할 수 있으며, 따라서 전술한 파티 프로세스를 반복하기 전에, 스트리머/호스트 사용자 인터페이스의 단일 버튼 클릭으로 세션으로부터 기존 게스트 플레이어를 추방하고 새로운 세션의 게스트 플레이어로서 큐에서 새로운 사용자 세트를 선택하는 동작이 수행될 수 있다.
큐 관리를 통해 세션 참가를 향상시키는 실시예에 의한 타이틀들의 통합은 사실상 원활하고, 세션 큐잉 서비스는 사용자가 큐잉되는 방법에 대해 최소의 편향적인 서비스로 작동한다. 세션 큐잉 호스트는 다양한 게임 또는 콘텐츠 스트림에 대해 매우 많은 수의 사용자와 세션 참가자를 다룰 수 있도록 확장 가능하다. 큐잉은, 스트리머/호스트 설정(preferences)에 따라, 예컨대, 큐잉된 사용자가 팔로워인지, 친구인지, 사용자의 인타이틀 퍼포먼스와 관련된 임의의 유형의 통계 또는 정보를 비롯한 소정의 인타이틀 속성을 갖는지, 구독을 갖는지, 스트리머/호스트의 스트림을 시청하는데 상대적으로 많은 시간을 소비하는지, 유료 프로그램에 등록되어 있는지, 소정 량의 시청/관전 보상을 받는지 등에 기초하여, 우선순위가 지정될 수 있다.
즉, 본 명세서에 개시된 실시예는 큐 관리를 통해 향상된 세션 참가를 제공한다. 이들 및 다른 실시예는 이하에 더 상세히 설명한다.
A. 큐 관리를 통한 세션 참가를 위한 예시적인 시스템
실시예에서, 시스템 및 장치는 큐 관리를 통해 세션 참가를 향상시키는 다양한 방식으로 구성될 수 있다. 예를 들어, 도 1은 실시예들에 따른 큐잉 시스템(100)의 블록도이다. 큐잉 시스템(100)은 실시예들에 따른, 큐 관리를 통해 향상된 세션 참가를 가능하게 하도록 구성된다. 도 1에 도시된 바와 같이, 큐잉 시스템(100)은 네트워크(110)를 통해 서로 통신할 수 있는 스트리머/호스트 클라이언트 장치(102a), 게스트 클라이언트 장치(102b), 세션 큐잉 호스트(104) 및 타이틀 개발자 서버(114)를 포함한다. 다양한 실시예에서, 임의의 수의 스트리머 클라이언트 장치, 게스트 클라이언트 장치, 세션 큐잉 호스트, 및/또는 타이틀 개발자 서버가 존재할 수 있다는 점에 유의하라. 추가적으로, 실시예들에 따라 도 1에 예시된 구성요소들의 임의의 조합이 큐잉 시스템(100)에 존재할 수 있다.
전술한 바와 같이, 스트리머/호스트 클라이언트 장치(102a), 게스트 클라이언트 장치(102b), 세션 큐잉 호스트(104), 및 타이틀 개발자 서버(114)는 네트워크(110)를 통해 통신가능하게 결합된다. 네트워크(110)는, 인터넷, 유선 또는 무선 네트워크 및 그 일부, 포인트투포인트 접속, 근거리 통신망, 기업 네트워크 등(이에 제한되지 않음)과 같은 서버와 컴퓨팅 장치를 연결하는 임의의 유형의 통신 링크를 포함할 수 있다.
타이틀 개발자 서버(114)는 하나 이상의 분산 또는 "클라우드 기반" 서버를 포함할 수 있는 하나 이상의 서버 컴퓨터 또는 컴퓨팅 장치를 포함할 수 있다. 타이틀 개발자 서버는 개발자가 비디오 게임, 대화형 애플리케이션 등과 같은 타이틀을 개발 및/또는 게시할 수 있게 하도록 구성될 수 있다. 따라서, 타이틀 개발자 서버(114) 또는 이와 관련된 저장부는 하나 이상의 타이틀(116)을 포함할 수 있다. 타이틀(들)(116)은 개발자가 개발한 타이틀을 실행 및/또는 실행 지원하기 위한 코드 또는 애플리케이션을 포함할 수 있다. 타이틀(들)(116)은 본 명세서에 설명된 바와 같이 네트워크를 통해 전자적으로 클라이언트 장치에 다운로드할 수 있도록 제공될 수도 있고/있거나, 타이틀을 실행하기 위해 클라이언트 장치에 의해 판독/액세스되는 컴퓨터 판독 가능 저장 매체 상에 인코딩될 수도 있다.
세션 큐잉 호스트(104)는 하나 이상의 분산 또는 "클라우드 기반" 서버를 포함할 수 있는 하나 이상의 서버 컴퓨터 또는 컴퓨팅 장치를 포함할 수 있다. 실시예들에서, 세션 큐잉 호스트(104)는 Xbox Live®와 같은 게임 또는 스트리밍 서비스 시스템 또는 플랫폼과 연관되거나 그 일부일 수 있다. 클라이언트 장치의 사용자는 스트리머/호스트 클라이언트 장치(102a)의 사용자 인터페이스(UI)(112a) 및/또는 게스트 클라이언트 장치(102b)의 UI(112b)를 이용하여 네트워크(110)를 통해 게임/스트리밍 서비스 또는 플랫폼에 대해 인증될 수 있고, 인증이 되면, 스트리머/호스트 클라이언트 장치(102a)는 콘텐츠를 스트리밍하거나 멀티플레이어 게임 인스턴스를 생성할 수 있고, 게스트 클라이언트 장치(102a)는 스트리밍된 콘텐츠를 볼 수 있으며, 스트리머/호스트 클라이언트 장치(102a) 및 게스트 클라이언트 장치(102b)는 게임과 같은 멀티-유저 활동에 참가할 수 있다. 세션 큐잉 호스트(104)는 네트워크(110)를 통해, 예컨대 스트리머/호스트 클라이언트 장치(102a)의 사용자 인터페이스(UI)(112a) 및/또는 게스트 클라이언트 장치(102b)의 UI(112b)를 통한 클라이언트 장치로부터 활동 및 세션 참가를 위해 사용자를 그룹 및/또는 큐에 추가하라는 요청을 수신하도록 구성된다. 예를 들어, 스트리머/호스트 사용자는 스트리머/호스트 클라이언트 장치(102a)를 통해 타이틀을 플레이하고 타이틀의 라이브 콘텐츠를 스트리밍할 수 있는 반면, 다른 사용자는 게스트 클라이언트 장치(102b)에서 타이틀에 대해 가상 로비에서 스트리밍 라이브 콘텐츠를 시청하는 관객일 수 있다. 다른 예에서, 스트리머/호스트 사용자는 스트리머/호스트 클라이언트 장치(102a)를 통해 타이틀에 멀티플레이어 게임/활동을 생성할 수 있는 반면, 다른 사용자는 게스트 클라이언트 장치(102b)에서 그 타이틀에 대해 가상 로비에서 스트리밍 라이브 콘텐츠를 보는 관객일 수 있다.
도시된 바와 같이, 세션 큐잉 호스트(104)는 세션 추적기(106) 및 세션 큐잉 서비스(108)를 포함한다. 세션 추적기(106)는 실시예들에서 세션 큐잉 호스트(104)로부터 원격으로 위치할 수 있는데, 예를 들면, 네트워크(110)를 통해 통신가능하게 연결된 게임 또는 스트리밍 서비스 시스템 또는 플랫폼(간결하고 명확하게 나타내기 위해 도시되지 않음)에 대한 원격 및/또는 관련 시스템에 위치할 수 있다는 점에 유의하다. 간결성 및 도면의 명확성을 위해 세션 추적기(106) 및 세션 큐잉 서비스(108)의 단일 인스턴스만 도 1에 도시하였지만, 실시예들에서는 이들 컴포넌트의 복수의 인스턴스가 존재할 수도 있다.
세션 큐잉 호스트(104)는 세션 큐잉 서비스(108)에서, 타이틀의 관전/시청 사용자로부터, 예컨대 게스트 클라이언트 장치(102b)의 UI(112b)로부터, 멀티플레이어 게임 또는 타이틀 스트림 참가 요청을 수신하도록 구성된다. 세션 큐잉 서비스(108)는 또한 게임/스트림의 세션에 삽입할 요청 사용자/클라이언트 장치를 큐잉하고 큐잉된 사용자 세트를 게임/스트림의 세션에 삽입하도록 구성된다. 따라서, 세션 큐잉 서비스(108)는 그룹 형성 및 그에 대한 세션 참가를 용이하게 하기 위한 서비스(예컨대, LFG 서비스)로서 동작하도록 구성된다. 관전/시청 사용자로부터의 게임/타이틀 스트림 참가 요청은 스트리머/호스트 클라이언트 장치(102a)의 스트리머/호스트 사용자가 큐잉을 활성화 또는 인에이블하기 전 또는 후에 세션 큐잉 서비스(108)에 의해 수신될 수 있다. 예를 들어, 타이틀을 스트리밍하는 동안, 스트리머/호스트 사용자는, 예를 들어 UI(112a)를 통해 스트림의 세션에 대한 관객 사용자의 참가에 대한 많은 요청이 수신되고 있으며, 게임/스트림의 세션에 삽입할 관객의 큐잉이 호스트/스트리머 사용자에 의해 활성화될 수 있음을 알 수 있다. 그러한 경우에, 세션 큐잉 서비스(108)는, 스트리머/호스트가 큐잉 가능하게 될 때 FIFO 순서가 유지되도록, 큐잉되기 전에 요청 관객 및 이들 각각의 요청의 순서를 추적하도록 구성될 수 있다. 일 예에서, 요청 사용자는 스트리머/호스트에 의해 큐잉이 활성화되기 전에 큐에 배치되어 활성화가 발생할 때 또는 활성화가 발생하는 경우에 순서를 유지하는 반면, 큐는 스트리머/호스트에 의해 또는 스트림/게임이 종료될 때 소거될 수 있다. 일부 실시예에서, 스트리머/호스트 사용자에 의해 타이틀이 시작될 때 관객의 큐잉이 가능해질 수 있다. 또한, 참가를 위한 큐잉 요청 옵션은 예를 들어 UI(112a)를 통해 스트리머/호스트에 의한 큐잉 활성화 이후에, 예를 들어 UI(112b)를 통해 관객에게만 제공될 수 있는 것도 고려된다. 이러한 시나리오에서, 예를 들어 세션 참가 요청에 대한 선택 가능한 옵션을 강조 표시 또는 활성화하거나, 메시지를 이용하거나 하여 UI(112b)를 통해 통지가 관객 사용자에게 제공될 수 있다.
세션 추적기(106)는 게임 및 콘텐츠 스트림의 세션을 추적하도록 구성된다. 즉, 세션 추적기(106)는 세션을 모니터링하여 세션의 시작, 종료 또는 상태 변경 시기를 판단하도록 구성된다. 세션 추적기(106)는 세션 상태 및 그 변경의 표시를 세션 큐잉 서비스(108)에 제공할 수 있다. 따라서, 세션 큐잉 서비스(108)는 새로운 세션이 시작될 시기를 결정하고, 임박한 세션의 알림을 제공하며, 사용자 세트를 스트리밍 세션의 시작에 게스트 플레이어로서 삽입하고, 세션이 완료되면 게스트 플레이어를 세션에서 제거 또는 추방하거나 하도록 구성된다.
세션 추적기(106) 및/또는 세션 큐잉 서비스(108)는 각각 하드웨어 또는 소프트웨어 및/또는 펌웨어 중 하나 또는 둘 모두와 결합된 하드웨어로 구현될 수 있으며, 세션 추적 및 자동화된 큐잉 관리를 통해 온라인 게임, 콘텐츠 스트림 및/또는 활동 참가를 향상시키기 위한 본 명세서에 기술된 임의의 기능/동작을 수행하도록 구성될 수 있다.
스트리머/호스트 클라이언트 장치(102a) 및/또는 게스트 클라이언트 장치(102b)는 사용자가 타이틀 개발자의 타이틀을 플레이, 스트리밍 및/또는 관전하는 데 사용될 수 있는 게임 콘솔(예컨대, 워싱턴 레드몬드 소재의 마이크로소프트사(Microsoft Corporation)의 임의의 유형의 XboxTM 또는 Xbox OneTM 콘솔, 소니사(Sony Corporation)의 임의의 유형의 PlayStation® 콘솔 등), 단말기, 개인용 컴퓨터, 랩톱 컴퓨터, 태블릿 장치, 스마트 폰 등을 포함하는 임의의 유형의 컴퓨팅 장치 또는 컴퓨팅 시스템일 수 있다. 타이틀은 개발자에 의해 전자적으로 배포되거나 또는 타이틀의 실행을 위해 상술한 클라이언트 장치에 삽입되거나 업로드될 수 있는 컴퓨터 판독 가능 저장 매체를 통해 배포될 수 있다. 본 명세서에 기술된 바와 같이, 스트리밍 및 관전 사용자는 세션 큐잉 호스트(104)를 이용할 수 있다. 스트리머/호스트 클라이언트 장치(102a) 및/또는 게스트 클라이언트 장치(102b)는, 예컨대, UI(112a)/UI(112b)를 통해 네트워크(110)를 경유하여 게임/스트리밍 서비스 시스템 또는 플랫폼에 사용자 인증/크리덴셜 정보를 제공하도록 구성된다. 추가적으로, 사용자는 본 명세서에 설명된 바와 같이 스트리밍, 관전, 세션 큐잉 및 참가 등을 위해 UI(112a) 또는 UI(112b)를 이용할 수 있다. 실시예들에서, 스트리머/호스트 클라이언트 장치(102a) 및/또는 게스트 클라이언트 장치(102b)는 세션 큐잉 호스트(104) 및/또는 게임/스트리밍 서비스 시스템 또는 플랫폼으로부터, 또는 스트리머/호스트 클라이언트 장치(102a) 및/또는 게스트 클라이언트 장치(102b)의 컴포넌트로서 수신된, 이러한 UI의 저장된 인스턴스를 포함할 수 있다. 실시예들에서, UI(112a) 및/또는 UI(112b)는 임의의 유형의 서비스/애플리케이션 UI, 브라우저, 클라이언트 또는 전자 통신 애플리케이션, 메시징 애플리케이션, 포털 등일 수 있다. 일부 예들에서, UI(112a) 및/또는 UI(112b)는 타이틀 개발자의 타이틀의 컴포넌트일 수 있다.
스트리머/호스트 클라이언트 장치(102a)는 게스트 클라이언트 장치(102b)와 같이 게스트 클라이언트 장치로 작동하도록 구성될 수 있으며, 게스트 클라이언트 장치(102b)는 스트리머/호스트 클라이언트 장치(102a)와 같이 스트리머 클라이언트 장치로 작동하도록 구성될 수 있다는 것에 유의하라. 즉, 본 명세서에 설명된 상이한 클라이언트 장치는 이들의 명칭에 의해 이들의 기능 및 동작이 제한되지 않고, 이들의 명칭은 본 명세서에서 예시 및 설명을 위해 붙인 것일 뿐이다. 추가적으로, 스트리머/호스트 클라이언트 장치(102a) 및/또는 게스트 클라이언트 장치(102b)는 각각 스트리밍 또는 관객 시청 없이 타이틀을 재생하도록 구성될 수 있으며, 이는 본 개시를 이용할 수 있는 당업자라면 이해할 수 있을 것이다.
본 명세서에 설명된 바와 같이, 세션 추적 및 자동 큐잉의 관리를 통해 온라인 활동 참가를 향상시키기 위한 실시예는 게임/스트리밍 서비스 시스템 또는 플랫폼이 네트워크를 통해 클라이언트 장치와 통신하는 모든 유형의 시스템에 적용 가능하다는 점에 유의하라. 하나의 예는 세션 큐잉 호스트(104) 및/또는 세션 큐잉 서비스(108)가 네트워크 아키텍처/플랫폼의 "클라우드" 구현, 애플리케이션 또는 서비스인 경우이다. 클라우드 플랫폼은 구성 가능하고 공유 가능하며 데이터 보안을 제공하고 인터넷과 같은 네트워크를 통해 액세스할 수 있는 서버, 라우터 등을 포함한 네트워크화된 컴퓨팅 리소스 세트를 포함한다. 클라우드 애플리케이션은 네트워크를 통해 애플리케이션에 액세스하는 엔티티를 위해, 이들 컴퓨팅 리소스에서 실행되며, 흔히 리소스에서 실행되는 최상단 운영 체제에서 실행된다. 클라우드 플랫폼은 멀티테넌시를 지원할 수 있는데, 여기서 클라우드 플랫폼 기반 소프트웨어가 다수의 테넌트를 서비스하며, 각 테넌트는 클라우드 플랫폼의 소프트웨어 서비스에 대한 공통 액세스를 공유하는 한 명 이상의 사용자를 포함한다. 또한 클라우드 플랫폼은 테넌트를 위해 가상 머신(운영 체제를 포함하는 에뮬레이션된 컴퓨터 시스템)을 실행하는 하드웨어, 소프트웨어 및/또는 펌웨어로 구현된 하이퍼바이저를 지원할 수 있다. 하이퍼바이저는 테넌트를 위한 가상 운영 플랫폼을 제공한다.
따라서, 세션 큐잉 호스트(104)와 같은 세션 큐잉 호스트 시스템은, 스트리머 클라이언트 장치 및/또는 게스트 클라이언트 장치의 사용자에 대한 세션 추적 및 자동화된 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 개선하고 향상시키는 다양한 방식으로 구성될 수 있다. 예를 들어, 도 2는 세션 추적 및 자동화된 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 개선하고 향상시키도록 구성된 세션 큐잉 서비스 호스트 시스템(200)(여기서 "시스템 200")의 블록도이다. 시스템(200)은 도 1의 큐잉 시스템(100)의 일 실시예이다. 시스템(200)은 다음과 같이 설명된다.
시스템(200)은 도 1의 세션 큐잉 호스트(104)의 일 실시예일 수 있는 세션 큐잉 호스트(202)를 포함하며, 본 명세서의 다른 곳에서 언급된 바와 같이 또는 달리 알려진 바와 같이, 클라우드 기반 서버 구현을 포함하는 임의의 유형의 서버 컴퓨터 또는 컴퓨팅 장치일 수 있다. 도 2에 도시된 바와 같이, 시스템(200) 및 세션 큐잉 호스트(202)는 하나 이상의 프로세서("프로세서")(204), 하나 이상의 메모리 및/또는 다른 물리적 저장 장치("메모리")(206), 하나 이상의 네트워크 인터페이스("네트워크 인터페이스")(226), 및 도 1의 세션 큐잉 서비스(108)의 일 실시예일 수 있는 세션 큐잉 서비스(208)를 포함한다. 시스템(200)은 또한 전술한 도 1의 세션 추적기(106)의 일 실시예일 수 있는 세션 추적기(222)와 사용자 정보(224)를 포함할 수 있다. 시스템(200)은 또한, 제한적인 것은 아니지만 UI(112a) 및/또는 UI(112b) 등과 같이 본 명세서의 다른 시스템의 컴포넌트 및 서브컴포넌트와, 운영 체제와 같이 도 9 및 10과 관련하여 후술하는 것들을 포함하는 추가적인 컴포넌트들(간결성 및 도시의 명확성을 위해 도시되어 있지 않음)을 포함할 수 있다.
프로세서(204) 및 메모리(206)는 각각 본 명세서에 기술된 임의의 유형의 프로세서 회로 또는 메모리일 수 있고/있거나 본 개시의 혜택을 보는 당업자에 의해 이해될 수 있을 것이다. 프로세서(204) 및 메모리(206)는 각각 하나 이상의 프로세서 또는 메모리, 상이한 유형의 프로세서 또는 메모리, 원격 프로세서 또는 메모리, 및/또는 분산 프로세서 또는 메모리를 포함할 수 있다. 프로세서(204)는, 본 명세서에 기술된 세션 추적 및 자동화된 큐잉 등의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 향상시키기 위한 컴퓨터 프로그램 명령어로서 구현될 수 있는, 세션 큐잉 서비스(208)의 실시예(이에 제한되지 않음)와 같은 컴퓨터 프로그램 명령을 실행하도록 구성된 회로를 포함한다. 메모리(206)는 이러한 컴퓨터 프로그램 명령어/코드를 저장하고, 타이틀 정보, 사용자 정보, 추적 정보 등을 포함하지만 이에 제한되지 않는 본 명세서에 설명된 다른 정보 및 데이터를 저장하도록 구성된다.
네트워크 인터페이스(226)는, 도 1과 관련하여 위에서 설명한 네트워크(110)와 같은 네트워크를 통해 시스템(200)과 본 명세서에 기술된 네트워크에서 이용되는 다른 장치들(예컨대, 스트리머/호스트 클라이언트 장치(102a), 게스트 클라이언트 장치(102b), 및/또는 타이틀 개발자 서버(114)) 사이의 통신과 같이, 시스템(200)이 네트워크를 통해 다른 장치들과 통신할 수 있게 하도록 구성된, 임의의 유형의 유선 및/또는 무선 네트워크 어댑터, 모뎀 등일 수 있다.
사용자 정보(224)는, 사용자에 관한 정보, 사용자의 계정(예컨대, 로그인 크리덴셜, 사용자 별칭 또는 핸들 등), 사용자의 클라이언트 장치, 사용자의 네트워크, 사용자가 관객으로서 플레이하였거나 시청한 타이틀, 사용자가 획득한 보상, 및 사용자가 시스템(200) 또는 게임/스트리밍 서비스 시스템 또는 플랫폼에 로그인하였다는 표시를 포함할 수 있다. 사용자 정보(224)는 또한 콘텐츠 스트림을 시청한 추적된 시간, 관객 참가, 콘텐츠 스트림 동안 시청된 타이틀 이벤트, 사용자의 팔로워 세트, 사용자가 팔로우하고 있는 다른 사용자 세트, 구독, 사용자의 친구 세트, 멤버십(예컨대, 클럽 또는 커뮤니티 멤버십), 사용자의 인 타이틀 속성/데이터 또는 사용자의 인 타이틀 특성 및/또는 기타 유형의 기준 데이터에 관한 정보와 같은 기준 데이터를 포함할 수 있다. 실시예들에서, 이러한 기준 데이터는 사용자가 큐 우선순위를 매길 자격이 있는지를 결정하는 데 사용될 수 있다.
세션 큐잉(208)은, 예를 들어 LFG 서비스로서 큐 관리를 통한 세션 참가의 향상을 위해 본 명세서에 기술된 기법들을 수행하기 위한 복수의 컴포넌트를 포함한다. 도시된 바와 같이, 세션 큐잉 서비스(208)는 커뮤니케이터(210), 관객 관리자(212), 큐 관리자(214), 세션 관리자(216), 애플리케이션 프로그래밍 인터페이스(API)(218) 및 UI 제공자(220)를 포함한다. 도시의 명확성을 위해 별도로 도시되었지만, 실시예들에서, 커뮤니케이터(210), 관객 관리자(212), 큐 관리자(214), 세션 관리자(216), API(218) 및/또는 UI 제공자(220) 중 하나 이상은 함께 결합될 수 있고/있거나 시스템(200)의 다른 컴포넌트의 일부로서 결합될 수 있다. 일부 실시예에서, 도 2에 도시된 세션 큐잉 서비스(208)의 모든 컴포넌트보다 적은 컴포넌트가 포함될 수 있다. 소프트웨어 구현에서, 세션 큐잉 서비스(208) 및/또는 세션 큐잉 호스트(202)의 하나 이상의 컴포넌트는 메모리(206)에 저장될 수 있고 프로세서(204)에 의해 실행될 수 있다.
커뮤니케이터(210)는 시스템(200)의 세션 큐잉 서비스(208)에 대한 전자 통신을 수신 및/또는 전송하도록 구성된다. 예를 들어, 커뮤니케이터(210)는, 본 명세서에 설명된 바와 같이, 세션 참가에 관한 클라이언트 장치 사용자로부터의 요청, 큐잉 활성화 명령, 사용자 관전 표시, 세션 상태 정보, UI에 대한 요청 등을 네트워크 인터페이스(226)를 통해 수신하도록 구성된다. 유사하게, 시스템(200)의 세션 큐잉 서비스(208)는 후술하는 바와 같이 커뮤니케이터(210)를 통해 사용자, UI 등에 통지를 발행, 전송 및/또는 제공하도록 구성된다.
관객 관리자(212)는 타이틀의 로비에서 스트림을 보고 있거나 게임 참가 또는 스트림 보기 등을 위해 그룹에 참가하는 사용자를 추적하도록 구성될 수 있다. 예를 들어, 관전하는 사용자는 세션 큐잉 서비스(208) 및 시스템(200)과 연관된 게임/스트리밍 서비스 시스템 또는 플랫폼에 로그인하거나 온라인 인증될 수 있다. 서비스 시스템 또는 플랫폼은 사용자가 활성 스트림을 시청하고, 특정 게임 또는 타이틀을 위해 로비에 모이고, 그룹 룸에 참가할 수 있게 하는 등의 메커니즘을 제공할 수 있다. 관객 관리자(212)는 스트림을 능동적으로 보고 있거나 그렇지 않으면 타이틀과 관련하여 존재하는 사용자들만 세션 참가를 위해 큐잉될 수 있고/있거나 큐잉에 남아 있게 관리하도록 구성될 수 있다.
큐 관리자(214)는 게임/스트림 세션에 참가할 사용자를 큐에 넣도록 구성될 수 있다. 큐 관리자(214)는 위에서 언급한 바와 같이 관객 관리자로부터의 정보에 기초하여 사용자를 큐에 삽입하고 큐에서 사용자를 제거하도록 구성될 수 있다. 큐 관리자(214)는 FIFO 큐잉 구조 또는 임의의 다른 유형의 큐잉 구조를 관리하도록 구성될 수 있고, 다수의 타이틀 및 임의의 수의 사용자에 대한 큐잉을 관리하도록 구성될 수 있다. 큐에 있는 사용자가 세션에 삽입될 때, 큐 관리자(214)는 큐에서 사용자를 제거하도록 구성된다. 실시예들에서, 큐 관리자(214)는 사용자 정보(224)와 관련하여 위에서 설명된 바와 같이 기준 정보에 기초하여 큐에서 사용자의 우선순위를 지정하도록 구성된다. 큐 관리자(214)는 또한 스트리머/호스트 사용자가 스트림 세션에 참가하기 위해 명시적으로 큐잉을 활성화하기 전에 세션 참가 요청에 기초하여 사용자를 잠정적으로 큐잉할 수 있다. 일부 실시예에서, 아래에 설명되는 세션 관리자(216)에 의해 추방되거나 제거되는 완료된 세션의 게스트 플레이어는 큐 관리자(214)에 의해 자동으로 다시 큐잉될 수 있다.
세션 관리자(216)는 큐잉된 사용자를 게스트 플레이어로서 세션에 삽입하고 완료된 세션에서 게스트 플레이어를 제거하도록 구성될 수 있다. 세션 관리자(216)는, 예를 들어, 세션이 시작될 때 큐잉된 사용자 세트를 세션에 추가하도록 구성될 수 있으며, 여기서 세션에 삽입될 사용자 세트는 스트리머/호스트를 제외한 세션에 대한 동시 참가자의 최대 한도에 기초하거나 또는, 최대치 이하의 세트 내 사용자 수를 지정하는 스트리머/호스트 사용자의 설정에 기초한다. 최대 한도 및/또는 스트리머/호스트 사용자의 설정보다 큐잉된 사용자가 적은 시나리오에서는, 큐잉된 사용자 수가 세션에 삽입될 수 있다. 세션 관리자(216)는 세션 추적기(222)로부터의 세션 정보에 기초하여 각각 시작 및 완료된 세션으로부터 사용자/게스트 플레이어를 추가 및/또는 제거하도록 구성될 수 있다. 실시예들에서, 세션 추적기(222) 및 세션 관리자(216)는 개념적으로 또는 단일 구성 요소로 함께 포함될 수 있다. 세션 관리자(216)는 추가적인 입력 또는 제공되는 어떠한 입력 없이, 큐잉된 사용자 및/또는 게스트 플레이어를 자동으로 추가 및/또는 제거하도록 구성된다.
API(218)는 본 명세서에 기술된 추적 및 통신과 관련된 특정 기능을 수행하기 위한 하나 이상의 API를 포함할 수 있다. 실시예들에서, API(218)의 하나 이상의 API는, 제한적인 것은 아니지만 세션 큐잉 서비스(208) 및 그 서브컴포넌트와 같은, 세션 큐잉 호스트(202)의 컴포넌트(들)에 포함되거나 이(들)에 의해 사용될 수 있다. 예를 들어, API(218)의 API는 게임 및 콘텐츠 스트림의 세션 상태를 전달하기 위해 세션 추적기(222)와 함께 이용될 수 있다. 유사하게, 다른 네트워크 통신 및 통지를 용이하게 하기 위해 다른 API가 사용될 수 있다. 실시예들에서, 통지 또는 알림은 단일 API 호출, 즉 단일 메시지 통신으로서 관전/시청 사용자에게 제공될 수 있다. 실시예들에서, 그러한 API는 다수의 관객 사용자, 예컨대 최대 100,000명 이상의 관객에게 통신을 동시에 발행하도록 구성될 수 있다.
UI 제공자(220)는 클라이언트 장치에 UI를 제공하도록 구성된다. 예를 들면, UI 제공자(220)는 스트리머/호스트 클라이언트 장치(102a)에 UI(112a)(또는 그 일부 또는 그에 대한 콘텐츠/정보)를 제공하고/하거나 게스트 클라이언트 장치(102b)에 UI(112b)(또는 그 일부 또는 그에 대한 콘텐츠/정보)를 제공하도록 구성될 수 있다. UI(112a) 및 UI 1l2b의 다른 실시예는 아래에서 추가로 상세히 설명된다.
세션 큐잉 서비스(208)는 세션 추적 및 자동화된 큐잉의 관리를 통해 멀티플레이어 게임과 같은 활동이나 온라인 콘텐츠 스트림에 대한 참가를 향상시킬 수 있는 다양한 방식으로 동작할 수 있다. 예를 들어, 도 3은 일 실시예에 따른, 세션 추적 및 자동화된 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 향상시키기 위한 순서도(300)를 도시한 것이다. 일 실시예에서, 세션 큐잉 서비스(208)는 순서도(300)에 따라 동작할 수 있다. 다른 구조 및 작동 예는 다음의 설명에 기초하여 당업자(들)에게 명백할 것이다. 흐름도(300)는 도 1의 큐잉 시스템(100) 및 도 2의 시스템(200)과 관련하여 다음과 같이 설명된다.
흐름도(300)는 단계 302에서 시작한다. 단계 302에서, 사용자를 활동 그룹에 포함시킴으로써 사용자가 호스트 플레이어의 활동과 연관된다. 예를 들어, 도 2의 세션 큐잉 서비스(208)의 관객 관리자(212)는 사용자를 활동 그룹에 속하는 것으로 표시함으로써 사용자를 호스트 플레이어의 게임 또는 비디오 스트림과 연관시키도록 구성된다. 그룹화될 사용자는 인증된 사용자, 즉, Xbox Live®처럼 온라인 서비스와 같은 게임/스트리밍 서비스 또는 플랫폼에 로그인된 사용자를 포함할 수 있다. 그룹화된 사용자는 관객으로서 비디오 스트림을 보고 있을 수도 있고, 스트리밍되고 있는 타이틀의 로비에 있을 수도 있으며, 멀티플레이어 게임에 참가하기 위해 그룹 로비에 있을 수 있거나 할 수 있다. 실시예들에서, 관객 관리자(212)는 이러한 방식으로 그룹화되는 사용자의 표시를 메모리(206)에 저장할 수 있다. 따라서, 사용자가 게임 또는 콘텐츠 스트림과 연관되어 있도록 요구하기 위해, 게임 또는 콘텐츠 스트림의 세션에 참가하기 위해 큐잉되는 사용자 적격성이 관리될 수 있다.
단계 304에서, 활동 그룹 내의 적어도 사용자 서브세트로부터 게임/비디오 스트림의 세션에 게스트 플레이어로서 참가하려는 요청이 수신되는데, 이 세션은 호스트 플레이어와의 활동에 참가하는 것을 포함한다. 예를 들어, 도 2의 큐 관리자(214)가 단계 302에서 설명한 인증된 사용자로부터 게임/비디오 스트림의 세션에 참가하기 위한 요청을 수신하도록 구성될 수 있다. 이들 사용자는 UI(112b)와 같은 UI에서 사용자가 세션에 참가하고 싶어한다는 것을 나타내는 통신 메시지를 큐 관리자(214)에 제공하는 옵션을 선택하여 세션에 참가하도록 요청할 수 있다. 일부 실시예에서, 모든 인증된 사용자보다 적은 수의 사용자가 요청을 제공할 수 있다. 활동은 게임 플레이, 데모, 가상 현실 체험 등을 포함할 수 있다.
단계 306에서, 세션 참가 요청을 제출한 사용자가 큐에 추가된다. 예를 들어, 큐 관리자(214)는 요청하는 사용자를 큐에 배치하도록 구성될 수 있다. 큐는 큐 관리자(214)에 의해 메모리(206)와 같은 저장부에 저장될 수 있는 FIFO 큐와 같은 큐잉 구조를 포함할 수 있다. FIFO 큐 예에서, 처음 수신된 요청에 대응하는 사용자는 큐의 맨 위 또는 헤드부에 위치하는데, 즉, 수신된 요청의 순서는 큐 내 사용자의 위치에 해당한다. 실시예들에서, 요청하는 사용자를 큐잉하기 전에, 큐 관리자(214)는, 예를 들어, 관객 관리자(212)로부터의 그룹화된 사용자의 저장된 표시를 이용하여, 요청하는 사용자가 비디오 스트림에 대해 여전히 존재하는지 확인하도록 구성된다.
단계 308에서, 세션의 시작이 결정된다. 예를 들어, 세션 관리자(216)는 세션이 시작될 준비가 되었을 때 및/또는 세션이 시작될 때를 판단하도록 구성된다. 전술한 바와 같이, 세션 관리자(216)는 세션 추적기(222)로부터 정보를 수신할 수 있다. 세션 관리자(216)가 세션이 시작할 준비가 되었다고 판단하면, 세션 관리자(216)는 시작할 다음 세션에 삽입될 큐잉된 사용자 또는 모든 큐잉된 사용자에게 표시를 제공하도록 구성될 수 있다.
단계 310에서, 미리 결정된 수의 대기 사용자가 세션에 자동으로 삽입되어 액티브(active) 세션을 시작한다. 예를 들어, 세션 관리자(216)는 큐잉된 사용자 세트를 세션에 자동으로 삽입하도록 구성된다. 세션에 삽입된 큐잉된 사용자의 수는 세션에서 동시에 허용되는 최대 수 또는 스트리머/호스트의 설정에 해당하는 수로 미리 결정될 수 있으며, 일부 실시예에서는 큐 내의 사용자 수가 다른 수들보다 적을 경우 큐 내의 사용자들 중 한 명 이상일 수 있다. 세션 관리자(216)는 지정된/최대 수에 도달할 때까지(예컨대, 미리 결정된 순서 또는 본 명세서에 설명된 바와 같이 사용자로부터의 참가 수락에 대한 표시에 대응하는 순서로) 큐잉된 사용자 세트를 한 번에 하나씩 자동으로 세션에 삽입하도록 구성될 수도 있고, 또는 그 세트의 큐잉된 사용자가 동시에 또는 거의 동시에 삽입될 수도 있다. 사용자가 게스트 플레이어로 삽입되면, 세션이 자동으로 활성화될 수 있다. 실시예들에서, 큐잉된 플레이어의 삽입 후, 스트리머/호스트는 호스트 UI, 예컨대 UI(112a)를 통해 세션을 활성화할 수 있다.
큐잉된 사용자를 세션에 자동으로 삽입함으로써, 네트워크 트래픽이 크게 감소한다. 예를 들어, 새로운 게임/스트림/그룹/로비에 다시 참가하거나, 다음 세션에 삽입할 다른 사용자를 선택하는 등의 작업을 위한 클라이언트 장치(102a/102b)와 세션 큐잉 호스트(202) 사이의 추가 통신없이 반복 또는 연속 세션이 원활하게 발생할 수 있다. 또한, 개시된 실시예에 의해 가능해진 활동의 연속성은 활동의 설정에 보다 적은 다운 타임(down time)을 제공하며, 이는 클라이언트 장치의 전력 소비를 감소시킨다.
게다가, 전술한 바와 같이, 세션 큐잉 서비스는 스트리머와 게스트 클라이언트 장치 사이의 중앙에 위치하며, 게임/스트리밍 서비스 시스템 또는 플랫폼에서 지원하는 사용 가능한 각 타이틀에 대하여 사용자 각각에 대해, 스트리머/호스트 사용자의 특정한 설정에 기초하여 큐잉 및 세션 참가를 동적으로 관리할 수 있다. 이러한 방식으로 세션 큐잉 서비스는 세션 참가를 효율적으로 관리할 수 있게 되고, 사용자 수에 관계없이 컨텐츠 스트리밍 시스템 및 사용자 경험을 향상시킬 수 있다. 따라서, 큐잉 관리 및 세션 참가에 대한 사용자 정의(customization)가 중앙 집중식 서비스에서 타이틀별로 그리고 스트리머/호스트별로 가능해지다.
또한, 도 2의 API(218)의 API는 또한 사용자, 큐잉된 사용자 및/또는 게스트 플레이어에게 알림/통지를 포함하는 일대 다 통신을 실시간으로 발행하도록 구성될 수 있다. 전술한 바와 같이, 중앙에 위치한 세션 큐잉 서비스는 네트워크 활용뿐만 아니라 큐 관리 및 세션 참가와 관련하여 시스템 성능에 맞게 구성된다. 설명된 세션 큐잉 서비스가 큐잉 및 세션 참가와 관련된 단일 통지를 인증된 사용자들의 모든 클라이언트 장치에 발행하도록 구성되기 때문에, 개시된 실시예에 의해 네트워크 트래픽 및 로드가 더욱 현저하게 감소된다. 즉, 알림 및 통지는 서비스, 타이틀 또는 스트리머/호스트로부터 관전 사용자에게 개별 통지를 요구하지 않는 방식으로, 예를 들어 위에서 언급한 API(218)를 통해 배포된다. 설명된 타이틀 큐잉 서비스 및 시스템에 따라 감소된 네트워크 트래픽은 게임에 참가하거나 타이틀 스트리밍 보기, 큐잉 및 세션 참가를 지원하는 사용자 수가 수천에서 수십만에 이를 수 있기 때문에 중요하다.
세션에 삽입된 후, 게스트 플레이어는 세션이 완료될 때까지 스트리머/호스트 사용자와 함께 활동에 참가할 수 있다. 세션이 완료되면, 도 2의 세션 큐잉 서비스(208)는 세션 개시 및 큐잉된 사용자 삽입을 자동으로 원활하게 반복하도록 구성된다.
예를 들어, 도 4는 일 실시예에 따른, 세션 추적 및 자동화된 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 향상시키기 위한 순서도(400)를 도시한 것이다. 세션 큐잉 서비스(208)는 순서도(400)에 따라 동작할 수 있다. 흐름도(400)는 도 3의 순서도(300)의 추가 실시예일 수 있다. 다른 구조 및 작동 예는 다음의 설명에 기초하여 당업자(들)에게 명백할 것이다. 흐름도(400)는 도 1의 큐잉 시스템(100) 및 도 2의 시스템(200)과 관련하여 다음과 같이 설명된다.
흐름도(400)는 단계(402)에서 시작한다. 단계(402)에서, 액티브 세션 이전에 발생하는 이전 액티브 세션이 추적된다. 예를 들어, 전술한 바와 같이 도 2의 세션 관리자(216)가 세션 추적기(222)를 통해 세션을 추적하도록 구성될 수 있다. 실시예들에서, 세션 관리자(216)는 게임/스트리밍 서비스 시스템 또는 플랫폼으로부터 발생하는 세션 추적기(222)로부터 세션 정보를 수신하여, 추적 정보를 얻기 위해 스트림 및 세션이 직접 또는 간접적으로 모니터링되도록 할 수 있다.
단계 404에서, 이전 액티브 세션의 완료가 판단된다. 예를 들어, 세션 관리자(216)는 단계 402에 대해 위에서 설명한 바와 같이 추적 정보를 획득하도록 구성된다. 세션 관리자(216)는 추적 정보에 기초하여 세션의 완료를 판단할 수 있다. 따라서, 세션 관리자(216)는 이전 세션이 완료되었다고 판단될 때까지 세션으로부터 게스트 플레이어의 제거를 수행하는 것을 대기하도록 구성된다.
단계(406)에서, 완료에 기초하여 그리고 미리 결정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하기 전에, 이전 액티브 세션의 모든 게스트 플레이어가 자동으로 제거된다. 예를 들어, 세션 관리자(216)는 세션이 완료될 때 세션에서 게스트 플레이어를 자동으로 제거하도록 구성될 수 있다. 따라서, 세션 관리자(216)는 이전 세션으로부터 게스트 플레이어를 제거할 때까지, 게스트 플레이어로서 새로운 세션에 큐잉된 사용자의 삽입을 수행하는 것을 대기하도록 구성된다.
단계 408에서, 이전 액티브 세션의 완료에 기초하여 시작이 결정된다. 예를 들어, 전술한 바와 같이, 새 세션이 활성화되기 전에 이전의 활동의 세션이 완료된다. 이전 세션이 완료되면, 세션 추적기(222)는 세션 관리자(216)에게 통지하도록 구성된다. 실시예들에서, 세션 관리자(216)는 이전 액티브 세션의 완료에 응답하여, 예를 들어 큐잉된 사용자를 게스트 플레이어로 삽입함으로써, 새로운 액티브 세션을 시작하는 때를 판단하도록 구성될 수 있다.
실시예에서, 순서도(400)의 단계들은 세션 참가 및 흐름을 원활하고 효율적으로 관리하기 위해, 예를 들어 사용자로부터의 입력없이 자동으로 수행될 수 있다.
따라서, 순서도(300) 및 순서도(400)(및 시스템(200)의 세션 큐잉 서비스(208))는, 사용자의 수에 관계없이 상이한 개발자들의 타이틀의 임의의 수의 세션 및 게임/스트림에 대해 자동 큐 관리자 및 세션 관리자로서 작동하도록 구성된 세션 큐잉 서비스(208)를 가짐으로써, 세션 추적 및 자동 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 개선하고 향상시킬 수 있다. 실시예들은 효율적인 네트워크 트래픽/부하 감소 통지 및 활동 세션으로의 사용자 통합을 제공한다.
도 5, 도 6 및 도 7은 개시된 실시예에 따른 흐름도를 도시한 것이다. 도 5는 흐름도(500)를 나타내고, 도 6은 흐름도(600)를 나타내며, 도 7은 흐름도(700)를 나타내고, 이들 각각은 실시예들에 따른, 각각 세션 추적 및 자동 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 향상시키기 위한 것이다. 예시를 위해, 개시된 흐름도는 전술한 실시예와 연관된다. 세션 큐잉 서비스(208)는 흐름도(500), 흐름도(600) 및/또는 흐름도(700)에 따라 동작할 수 있다. 순서도(500), 순서도(600) 및/또는 흐름도(700)는 도 3의 흐름도(300) 및/또는 도 4의 흐름도(400)의 추가 실시예일 수 있다. 다른 구조 및 작동 예는 다음의 설명에 기초하여 당업자(들)에게 명백할 것이다.
도 5의 흐름도(500)는 도 1의 큐잉 시스템(100)과 도 2의 시스템(200) 및 도 1의 스트리머/호스트 클라이언트 장치(102a)와 같은 스트리머 클라이언트 장치와 관련하여 설명한다.
단계 502에서, 호스트가 예를 들어 스트리머/호스트 클라이언트 장치(102a)를 통해 멀티플레이어 타이틀을 시작하며, 호스트는 다른 사용자와 플레이하기를 원한다. 흐름도(500)에 도시된 예의 맥락에서, 호스트가 게스트 클라이언트 장치(102b)의 사용자와 같은 사용자의 관객에게 자신의 플레이를 스트리밍하는 호스트/관객 모델과 관련하여, 호스트가 설명된다. 단계 502에 응답하여, 예를 들어, 타이틀을 스트리밍하거나 멀티플레이어 게임 세션을 호스트하도록 구성된 게임/스트리밍 서비스 시스템 또는 플랫폼에 의해, 멀티플레이어(MP) 서비스 스트림(또는 게임 세션)이 단계 504에서 생성된다. 동시에 또는 대략적으로 동시에, 세션 추적기(222)에 대한 지속된 접속(506), 예컨대 도시된 웹소켓(WebSocket) 접속이 생성되며(이 상황에서 실시간 활동(real time activity: RTA) 서비스 인스턴스로 동작하며) 이는 세션의 상태 변경 시에 최신 상태로 유지된다. RTA 서비스 인스턴스로서 동작하는 세션 추적기(222)는 구독자가 실시간/거의 실시간으로 아이템에 대해 푸시된 업데이트를 수신하는 발행/구독 모델 서비스로 동작할 수 있다.
그 후, 단계 508에서 호스트가 예를 들어, 플랫폼을 통해 스트리머/호스트 클라이언트 장치(102a)로부터 브로드캐스팅을 시작한다. 호스트(또는 이 경우에는 스트리머)는 그 후 단계 510에서 자동 플레이 LFG 프로세스를 생성하기로 결정할 수 있는데, 이는 본 명세서의 실시예에 대해 설명된 바와 같이, 각각의 스트리밍 세션 후에 플레이하기를 원하는 새로운 관객 멤버를 계속 끌어들일 것이다. LFG 프로세스에 대한 세부사항(512)은, 세션(즉, 사용자 슬롯)에 추가할 사용자 수, 세션 기간, 구독자, 팔로워, 채팅에서 활성인 관객 멤버의 우선순위 지정 등을 제한없이 포함하도록 자동으로 채워지거나 사용자 정의될 수 있다. 세부 사항(512)은 기본 옵션일 수 있고/있거나 UI(112a)와 같은 UI를 통해 사용자 정의될 수 있다(아래에 더 설명된다). 단계 512에서 자동 플레이 LFG의 생성은 세션 큐잉 서비스로 하여금 UI(112b)와 같은 UI를 통해 사용자에게 제공될 수 있는 LFG 프로세스를 생성하게 한다(아래에 더 설명된다). 추가적으로, 가시성(visibility) 옵션은 실시예들에서 관객의 사용자가 LFG 프로세스를 볼 수 있는 유일한 사용자가 되도록 할 수 있다.
이제 도 6 및 흐름도(600)로 돌아가면, 이 실시예는 도 1의 게스트 클라이언트 장치(102b)와 같은 게스트 클라이언트 장치에 대해 설명한다. 흐름도(600)는 또한 도 5의 흐름도(500)와 관련하여, 예를 들면, 흐름도(500)와 일치하는 클라이언트 측 예시로서 설명된다.
스트림 뷰어(또는 일반적으로 사용자)는 게스트 클라이언트 장치(102b)와 같은 클라이언트 장치를 통해 단계(602)에서 타이틀의 스트리머/호스트의 브로드캐스팅 또는 콘텐츠 스트림을 볼 수 있다(또는 멀티플레이어 게임 세션에 참가할 수 있다). 예를 들어, 흐름도(500)의 단계(508)에서 브로드캐스팅되는 스트림이 보여질 수 있다. 사용자는 스트림을 브로드캐스팅하는 게임/스트리밍 서비스 시스템 또는 플랫폼(아래 그림 7 참조)이 제공하는 로비 또는 기타 온라인 위치에서 스트림을 볼 수 있다. 스트리머/호스트는 흐름도(500)의 단계 510에서와 같이 관객을 위한 자동 플레이 LFG 프로세스를 활성화할 수 있다. 예를 들어, 도 1의 UI(112a)와 같은 대화형 UI에서, 스트리머/호스트는, 관객 사용자가 스트리머/호스트와 함께 스트림의 활동 또는 세션에 참가하기 위해 예를 들어 UI(112b)를 활성화하게 하는 선택 가능한 옵션을 활성화한다. 뷰어는 단계 604에서 세션 큐에 있을 것을 요청한다.
사용자로부터 요청을 수신하면, 단계 606에서 플랫폼은 수행될 임의의 큐 우선순위를 위해 세션 큐잉 서비스에 사용자 메타데이터를 제공할 수 있다. 이 메타데이터는 도 2의 사용자 정보(224)와 함께 저장될 수 있는 본 명세서에 설명된 기준 데이터를 포함할 수 있다. 단계 608에서, 사용자가, 예를 들어, 전술한 세션 큐잉 서비스(208)에 의해 세션 큐에 성공적으로 추가될 경우, 큐잉된 사용자는 큐잉된 사용자를 큐 내의 자신의 위치에서 최신 상태로 유지하고 LFG 프로세스에 대한 다른 업데이트를 유지하기 위해 단계 610에서 수립된 세션 추적기(222)에 대한 지속적인 접속, 예를 들어, 도시된 WebSocket 접속을 가질 수 있다.
도 7 및 흐름도(700)와 관련하여, 이 실시예는 도 1의 큐잉 시스템(100) 및/또는 시스템(200)과 같은 세션 큐잉 시스템과 관련하여 설명된다. 흐름도(700)는 또한 도 5의 흐름도(500) 및 도 6의 흐름도(600)에 대해, 예를 들어, 이들 흐름도와 일치하는 시스템 레벨 예시로서 설명된다.
스트리머/호스트 클라이언트 장치(102a)의 스트리머/호스트가 자동 플레이 LFG에 충분한 관심을 가지고 있거나 또는 한 명 이상의 다른 사용자가 큐잉될 경우, 예를 들어, 단계(702)에서 스트리머/호스트는 하나 이상의 게스트 클라이언트 장치(102b)에서, 자신의 UI, 예컨대 도 1의 UI(112a)에서 시작할 객체를 활성화함으로써 세션에 삽입할 큐잉된 사용자를 선택하는 프로세스를 시작할 수 있다. 이 활성화는 대응하는 통지가 세션 큐잉 서비스(208)에 제공되도록 하여, 예를 들어, 큐 관리자(214)를 통해, 단계 704에서 큐 내의 최상위 사용자를 선택하고 게임 세션을 채우려고 시도하기 시작한다. 일부 실시예에서, 세션 큐잉 서비스(208)는 미리 결정된 수의 사용자가 큐잉되어 있으면(또는 한 명 이상의 사용자가 큐잉된 때로부터 일정 시간 후에) 자동으로 그 큐에서 사용자를 선택하는 것을 시작할 수 있다.
세션 큐잉 서비스(208)는 예를 들어, 세션 관리자(216)를 통해 단계(706)에서 선택된 사용자의 게스트 클라이언트 장치(102b)에 WNS 통지과 같은 통지를 자동으로 제공하도록 구성된다. 선택된 사용자는 통지에 대해 자신의 UI, 예컨대 도 1의 UI(112b) 내 선택가능한 객체를 통해 세션 초대를 수락한다고 응답할 수 있으며, 또는 다른 실시예에서는, 큐 내의 선택된 사용자가 추가적인 사용자 입력 없이 자신이 세션에 추가되고 있다는 알림 정보를 제공받을 수 있다. 큐 내의 선택된 각 사용자가 수락함에 따라, 단계 708에서 이들은 예를 들어 세션 큐잉 서비스(208)의 세션 관리자(216)에 의해 게임 세션에 자동으로 추가된다. 선택된 사용자가 미리 결정된 기간 동안 초대 통지를 거부하거나 수락하지 않으면, 세션 큐잉 서비스(208)는 큐에서 그 사용자를 제거하거나, 또는 그 사용자를 큐의 끝에 배치하고 큐의 상단에 있는 다음 사용자를 선택하도록 구성된다.
위에서 설명된 바와 같이 지정된 수의 참가자에 따라 세션이 채워지면, 스트리머/호스트가 세션을 활성으로 시작할 수 있는 반면, 일부 다른 실시예에서는 세션이 자동으로 활성화될 수 있다. 두 경우 모두, 세션이 완료될 때까지 진행된다. 세션 추적기(222)에 의해 추적된 세션 상태에 기초하여, 세션 완료시, 단계 710에서 게임/스트림이 끝났는지가 결정된다. 게임/스트림이 끝나면, 타이틀 또는 세션 큐잉 서비스(208)가 세션으로부터 게스트 플레이어를 제거하고, 단계 712에서, 예를 들어, 세션 관리자(216)에 의해, 큐잉된 사용자를 접속해제할 것이다. 게임/스트림이 끝나지 않았으면, 단계 714에서 세션 큐잉 서비스(208)는, 스트리머/호스트만 남겨두고 새로운 게스트 플레이어를 위해 세션 내에 이용가능한 슬롯을 비우기 위해, 예를 들어 세션 관리자(216)에 의해, 세션에서 게스트 플레이어를 제거하거나 추방할 것이다. 세션 추적기(222)는 세션 큐잉 서비스(208)와 게임/스트림 내 이용 가능한 세션 슬롯 및 큐 내의 이용 가능한 다음 사용자의 게임/스트리밍 서비스 시스템 또는 플랫폼(716)에서의 MP 서비스 스트림(또는 게임 세션) 사이에서 정보를 중계하도록 구성된다. 설명된 프로세스는, 예를 들어 단계(704)에서 큐 내의 이용 가능한 다음 사용자 선택을 시작하는 것과 단계(706)에서 선택된 사용자에게 WNS 게임 초대를 보내는 것을 자동으로 반복할 수 있다.
실시예들에서, 세션이 진행되는 것을 기다리는 동안, 게임/스트림을 떠난 게스트 플레이어는, 예를 들어 큐 관리자(214)에 의해 자동으로 큐에서 제거될 수 있다. 프로세스가 재시작되면 개시된 실시예들의 자동 특성으로 인해, 스트리머/호스트가 게임/스트림 및 세션을 취소하거나 종료할 때까지는, 다음 큐잉된 사용자를 새로운 게스트 플레이어로서 선택하기 위해 스트리머/호스트에 의한 어떠한 조치도 취할 필요가 없다. 또한, 스트림 뷰어이거나 활동 참가자가 되고자 하는 사용자는 큐에 남아서, 기다리는 동안 각각의 UI를 통해 큐에서 자신의 위치를 볼 수 있다.
따라서, 설명된 세션 참가 및 큐 관리 시스템 및 프로세스는, 세션 설정에 필요한 통신을 줄임으로써 네트워크(110)에 대한 네트워크 트래픽 및 부하를 크게 감소시킬 수 있으며, 현재 솔루션에 대해 보다 효율적인 구현을 가능하게 하는 세션의 원활한 반복을 통해 본 명세서에서의 시스템 및 장치의 전력 소비 또한 감소한다. 더욱이, 현재의 기술 수준은 이러한 효율적인 방식으로 작동하도록 구성 및/또는 프로그래밍된 세션 참가 및 큐잉 관리 시스템이 부족하다.
B. 예시적인 사용자 인터페이스 실시예
본 명세서에 설명된 클라이언트 장치, 예컨대, 도 1에 도시된 스트리머/호스트 클라이언트 장치(102a) 및/또는 게스트 클라이언트 장치(102b)는 서로 그리고 도 1의 세션 큐잉 호스트(104) 및 또는 도 2의 시스템(200)의 세션 큐잉 호스트(202) 및 세션 큐잉 서비스(208)와 상호작용하도록 구성된다. 스트리머/호스트 클라이언트 장치(102a) 및/또는 게스트 클라이언트 장치(102b)는, 사용자가 타이틀 개발자의 타이틀을 플레이, 스트리밍 및/또는 관전(즉, 스트림 보기)하는데 사용할 수 있는 게임 콘솔, 터미널, 개인용 컴퓨터, 랩톱 컴퓨터, 태블릿 장치, 스마트폰 등를 포함하는 임의의 유형의 컴퓨팅 장치 또는 컴퓨팅 시스템일 수 있다. 전술한 바와 같이, 이러한 장치는 도 1의 UI(112a) 및 UI(112b)와 같은 UI를 포함할 수 있다. 본 명세서에 기술된 UI 및 이에 대한 정보/콘텐츠는 클라이언트 장치 또는 다른 시스템/호스트에 의해 실행되는 타이틀에 의해 전체 또는 일부가 제공될 수도 있고, 클라이언트 장치에 내장될 수도 있고, 또는 이들의 임의의 조합으로 될 수 있다.
이제 도 8a 및 8b를 참고하여, 제각기 UI(112a) 및 UI(112b)인 UI들을 설명한다.
도 8a에는, 호스트 UI(800A)의 블록도가 도시되어 있다. 도시된 호스트 UI(800A)는 UI(112a)의 추가적인 실시예이다. 호스트 UI(800A)는 도 2의 UI 제공자(들)(220)로부터 스트리머/호스트에게 제공되는 UI일 수 있다. 호스트 UI(800A)는 다음과 같이 설명된다.
호스트 UI(800A)는 타이틀의 스트림 또는 게임 플레이 동안 발생하는 스트리머/호스트의 활동을 표시하도록 구성된 게임/스트림 플레이 창(802)을 포함할 수 있다. 호스트 UI(800A)는 또한 크리덴셜을 구성하기 위해 스트리머/호스트에 의해 선택되거나 상호작용할 수 있는 구성 가능한 객체를 포함할 수 있다. 예를 들어, 세션 크리덴셜 객체(804) 및 우선순위 크리덴셜 객체(806)가 도시되어 있다. 세션 크리덴셜 객체(804) 및/또는 우선순위 크리덴셜 객체(806)는 스트리머/호스트가 본 명세서에 기술된 세션 참가 및 큐 관리 실시예에서의 구현을 위한 크리덴셜을 지정 및/또는 선택할 수 있게 하는 풀다운 메뉴 또는 다른 유형의 확장 가능한 인터페이스를 포함할 수 있다. 세션 크리덴셜 객체(804)는 게임/스트림의 세션에 참가할 수 있도록 사용자 크리덴셜과 관련된 옵션을 구성하기 위해 제공된다. 예를 들어, 스트리머/호스트는 자신의 팔로워와 친구 또는 특정 커뮤니티나 그룹의 멤버만 게임/스트림 세션에 참가할 수 있도록 허용되고 참가하도록 요구하고 싶어할 수 있다. 그러나, 세션 크리덴셜 객체(804)와 관련하여 사용자의 다른 특성/크리덴셜이 지정될 수 있는 경우를 고려할 수 있다. 우선순위 크리덴셜 객체(806)는 세션에 합류하고 참가하도록 요청할 때 우선순위 큐 배치를 갖기 위한 사용자 크리덴셜과 관련된 옵션을 구성하기 위해 제공된다. 예를 들어, 스트리머/호스트는 메시징 객체(816)를 통해 스트리머/호스트가 제공한 패스코드를 가진 사용자 또는 자신의 스트리밍 채널의 구독자가 큐의 맨 위에 배치되도록 하되, 이미 큐잉된 그러한 특성/기준을 갖는 다른 사람들 뒤에(즉, 이러한 특징/기준이 없는 큐잉된 사용자 앞에) 배치되도록 하고 싶어할 수 있다. 그러나, 사용자의 다른 특성/크리덴셜이 우선순위 크리덴셜 객체(806)에 대해 지정될 수 있음이 고려된다.
호스트 UI(800A)는 또한 선택될 때, 다른 사용자와의 활동을 위한 세션에 참가를 시작하기 위해, LFG 프로세스를 시작하도록, 즉 스트림에 대한 세션 모드를 활성화하도록 구성되는 선택 가능한 객체(808)를 포함할 수 있다. 실시예들에서, 객체(808)를 선택하면 게스트 UI(800B)는 후술하는 바와 같이 하나 이상의 부분을 사용자에게 표시하거나 활성화시킨다. 호스트 UI(800A)는 또한 개시된 실시예들에 따라 사용자들이 큐잉되는 큐, 예를 들어 큐 객체(810)의 표현을 포함할 수 있다. 큐 객체(810)는 큐잉된 사용자 및 큐 내의 이들의 위치를 나타낼 수 있다. 큐 객체(810)는 또한 다음 세션에 추가될 큐잉된 사용자(예컨대, 도시된 바와 같이 큐 위치 1 및 2의 사용자) 또는 큐잉된 사용자의 수를 나타내는 표시(812)를 제공할 수 있다. 즉, 도시된 실시예에서는, 스트리머/호스트를 포함하는 총 3명의 참가자를 위한 각 세션에 추가될 큐잉된 사용자의 서브세트로서 2 명의 큐잉된 사용자가 허용되지만, 사용자 서브세트의 수는 달라질 수도 있다. 큐 객체(810)는 큐 내의 사용자와 관련된 다른 정보/특성, 예컨대 아바타 이미지, 배지, 구독 표시 등을 나타낼 수도 있다. 일부 실시예에서, 스트리머/호스트는 호스트 UI(800A)를 통해, 우선순위화된 큐 객체(810)에서 특정 사용자를 선택하게 할 수 있다.
호스트 UI(800A)는 또한 도면의 명확성과 간결성을 위해, 명시적으로 도시되지 않은 다른 동작을 위한 선택 가능한 객체(814)를 포함할 수 있다. 객체(814)의 선택시 수행되는 다른 동작들은 제한없이, 큐 객체(810)에서 사용자 제거, 세션 종료, 스트림 종료, 세션 시작, 세션 참가자에 대한 제한 설정, 세션 기간 설정, 남은 시간 또는 게스트 UI에 대한 세션 목표 진행률 등과 같은 세션 정보 표시를 포함할 수 있다. 실시예들에서, 객체(808) 또는 객체(814)의 선택은 스트리머/호스트에 의해 이전에 구현된 세션 옵션을 보여주는 목록 또는 히스토리를 제공할 수 있다.
도 8b에는, 게스트 UI(800B)의 블록도가 도시되어 있다. 도시된 게스트 UI(800B)는 UI(112b)의 추가적인 실시예이다. 게스트 UI(800B)는 도 2의 UI 제공자(들)(220)로부터 스트리머/호스트에게 제공되는 UI일 수 있다. 게스트 UI(800B)는 사용자가 타이틀 로비, 그룹 등에 입장할 때 제공될 수 있다. 게스트 UI(800B)는 다음과 같이 설명된다.
게스트 UI(800B)는 타이틀의 스트림 또는 게임 플레이 동안 발생하는 스트리머/호스트의 활동을 표시하도록 구성된 게임/스트림 뷰어 창(818)을 포함할 수 있다. 게임/스트림 뷰어 창(818)은 남은 시간 또는 세션 목표 진행률과 같은 세션 정보를 표시하도록 구성될 수 있다. 게임/스트림 뷰어 창(818)은 본 명세서에 기술된 바와 같이, 게임/스트림의 세션에 추가된 후의 게임/스트림의 세션에 대한 사용자의 참가를 보여주도록 구성될 수 있다.
게스트 UI(800B)는 크리덴셜 객체(820), 객체 참가 요청(822), 큐 객체(824) 및 알림 표시 객체(828)를 포함할 수 있다. 이들 객체 중 하나 이상은 스트리머/호스트가 (예컨대, 호스트 UI(800A)의 객체(808)를 통해) LFG 프로세스 또는 세션을 활성화하기 전에 표시되지 않거나 비활성화되도록 구성될 수 있다.
크리덴셜 객체(820)는 사용자의 권한 검증을 위해 스트리머/호스트에 제공할 크리덴셜을 사용자가 입력하거나 일부 실시예에서 선택할 수 있게 하도록 구성될 수 있다. 예를 들어, 크리덴셜 객체(820)는 사용자가 메시징 객체(830)를 통해 스트리머/호스트에 의해 제공된 패스코드를 입력할 수 있는 텍스트 필드일 수 있다. 본 명세서에 기술된 바와 같이, 참가 객체(822)에 대한 요청은 세션 참가 요청이 송신되도록 사용자에 의해 선택가능할 수 있다.
큐 객체(824)는 개시된 실시예들에 따라 사용자들이 큐잉되는 큐의 표현을 디스플레이할 수 있다. 큐 객체(824)는 게스트 UI(800B)를 보는 사용자를 비롯하여 큐잉된 사용자들 및 이들의 큐 내의 위치를 나타낼 수 있다. 큐 객체(824)는 또한 다음 세션에 추가될 큐잉된 사용자(예컨대, 도시된 바와 같이 큐 위치 1 및 2의 사용자) 또는 큐잉된 사용자의 수를 나타내는 표시(826)를 제공할 수 있다. 즉, 도시된 실시예에서는, 스트리머/호스트를 포함하는 총 3명의 참가자를 위한 각 세션에 추가될 큐잉된 사용자의 서브세트로서 2명의 큐잉된 사용자가 허용되지만, 사용자 서브세트의 수는 달라질 수도 있다.
알림 표시 객체(828)는 사용자가 게스트 플레이어로서 참가할 액티브 세션의 초기화에 대한 알림 표시를 제공하도록 구성된다. 알림 표시 객체(828)에 의해 제공되는 알림 통지는 임의의 유형의 시각적 및/또는 청각적 통지를 포함할 수 있다. 실시예들에서, 알림 표시 객체(828)는 전술한 바와 같이 세션에 참가하기 위한 초대를 수락하기 위해 사용자에 의해 활성화되는 선택 가능한 객체로서 구성될 수 있다. 예를 들어, 큐잉된 사용자가 세션에 포함되도록 자동으로 선택되고 통지가 전술한 도 7의 흐름도(700)의 단계 704 및 706에서와 같이 사용자에게 자동으로 제공될 때, 사용자는 이 통지에 응답하여 알림 표시 객체(828)를 선택함으로써 세션으로의 삽입을 수락할 수 있다.
본 개시의 혜택을 받는 당업자는 이해할 수 있는 바와 같이, 호스트 UI(800A) 및 게스트 UI(800B)의 이들 및 다른 기능은, 설명된 시스템 및 장치의 임의의 다른 실시예 및 특징과 결합될 수 있다.
III. 예시적인 모바일 장치 및 컴퓨팅 장치 실시예
본 명세서에 개시된 실시예는 하드웨어, 또는 소프트웨어 및/또는 펌웨어와 결합된 하드웨어로 구현될 수 있다. 예를 들어, 본 명세서에 기술된 실시예는 하나 이상의 프로세서에서 실행되고 컴퓨터 판독 가능 저장 매체에 저장되도록 구성된 컴퓨터 프로그램 코드/명령어로서 구현될 수 있다. 또는, 본 명세서에 기술된 실시예는 하드웨어 로직/전기 회로로 구현될 수 있다.
본 명세서에 언급된 바와 같이, 임의의 컴포넌트 및/또는 그 서브컴포넌트와 함께, 도 1의 큐잉 시스템(100), 도 2의 시스템(200), 도 8a의 호스트 UI(800A), 및 도 8b의 게스트 UI(800B)를 포함하는 개시된 실시예 및 본 명세서에 기술된 순서도/흐름도 및/또는 본 명세서에 기술된 추가 예는, 하나 이상의 프로세서에서 실행되고 컴퓨터 판독 가능 저장 매체에 저장되도록 구성된 컴퓨터 프로그램 코드로서 구현되는 것 또는 SoC(system-on-chip), FPGA(Field Programmable Gate Array) 또는 ASIC(application specific integrated circuit)에서 함께 구현되는 것과 같이 하드웨어 로직/전기 회로로 구현되는 것을 포함하여, 하드웨어 또는 소프트웨어 및/또는 펌웨어의 임의의 조합과 함께 하드웨어로 구현될 수 있다. SoC는 프로세서(예컨대, 마이크로컨트롤러, 마이크로프로세서, 디지털 신호 프로세서(DSP) 등), 메모리, 하나 이상의 통신 인터페이스 및/또는 추가 회로 및/또는 기능을 수행하기 위한 내장 펌웨어 중 하나 이상을 포함하는 집적 회로 칩을 포함할 수 있다.
본 명세서에 개시된 실시예는, 본 명세서에 설명된 모바일 시스템 및/또는 컴퓨팅 장치의 하나 이상의 특징 및 다른 특징을 포함하는, 고정 또는 모바일 컴퓨터 실시예의 모바일 시스템 및/또는 컴퓨팅 장치와 유사한 하나 이상의 컴퓨팅 장치에서 구현될 수 있다. 본 명세서에서 제공되는 모바일 시스템 및 컴퓨팅 장치에 대한 설명은 예시의 목적으로 제공되며 제한하려는 것은 아니다. 실시예들은 당업자에게 알려진 바와 같이 다른 유형의 컴퓨터 시스템에서 구현될 수 있다.
도 9는 본 명세서에 기술된 실시예들을 구현할 수 있는 모바일 장치(902)를 포함하는 예시적인 모바일 시스템(900)의 블록도이다. 예를 들어, 모바일 장치(902)는 이전 섹션에서 임의의 시스템, 클라이언트 또는 장치 또는 컴포넌트/그 서브컴포넌트를 구현하는 데 사용될 수 있다. 도 9에 도시된 바와 같이, 모바일 장치(902)는 다양한 선택적 하드웨어 및 소프트웨어 컴포넌트를 포함한다. 모바일 장치(902)의 임의의 컴포넌트는 임의의 다른 컴포넌트와 통신할 수 있지만, 설명의 편의를 위해 모든 연결이 도시되어 있지는 않다. 모바일 장치(902)는 다양한 컴퓨팅 장치(예컨대, 휴대폰, 스마트폰, 핸드헬드 컴퓨터, PDA(Personal Digital Assistant) 등) 중 임의의 것일 수 있고, 셀룰러 또는 위성 네트워크, 또는 근거리 또는 광역 네트워크와 같은 하나 이상의 모바일 통신 네트워크(904)와 무선 양방향 통신을 허용할 수 있다.
모바일 장치(902)는 신호 코딩, 데이터 처리, 입력/출력 처리, 전력 제어, 전력 제어 및/또는 기타 기능과 같은 작업을 수행하기 위한 컨트롤러 또는 프로세서(910)(예컨대, 신호 처리기, 마이크로프로세서, ASIC 또는 기타 제어 및 처리 로직 회로)를 포함할 수 있다. 운영 체제(912)는 모바일 장치(902)의 컴포넌트들의 할당 및 사용을 제어하고, 하나 이상의 애플리케이션 프로그램(914)("애플리케이션" 또는 "앱"이라고도 함)에 대한 지원을 제공할 수 있다. 애플리케이션 프로그램(914)은 일반적인 모바일 컴퓨팅 애플리케이션(예컨대, 이메일 애플리케이션, 캘린더, 연락처 관리자, 웹 브라우저, 메시징 애플리케이션) 및 임의의 다른 컴퓨팅 애플리케이션(예컨대, 워드 프로세싱 애플리케이션, 매핑 애플리케이션, 미디어 플레이어 애플리케이션)을 포함할 수 있다.
모바일 장치(902)는 메모리(920)를 포함할 수 있다. 메모리(920)는 비 이동식 메모리(922) 및/또는 이동식 메모리(924)를 포함할 수 있다. 비 이동식 메모리(922)는 RAM, ROM, 플래시 메모리, 하드 디스크, 또는 다른 잘 알려진 메모리 장치 또는 기술을 포함할 수 있다. 이동식 메모리(924)는 GSM 통신 시스템에서 잘 알려진 SIM(Subscriber Identity Module) 카드 또는 플래시 메모리, 또는 "스마트 카드"와 같이 다른 잘 알려진 메모리 장치 또는 기술을 포함할 수 있다. 메모리(920)는 운영 체제(912) 및 애플리케이션 프로그램(914)을 실행하기 위한 데이터 및/또는 코드를 저장하는 데 사용될 수 있다. 예시적인 데이터는 웹 페이지, 텍스트, 이미지, 사운드 파일, 비디오 데이터, 또는 하나 이상의 유선 또는 무선 네트워크를 통해 하나 이상의 네트워크 서버 또는 다른 장치에 대해 송신 및/또는 수신되는 기타 데이터를 포함할 수 있다. 메모리(920)는 IMSI(International Mobile Subscriber Identity)와 같은 가입자 식별자 및 IMEI(International Mobile Equipment Identifier)와 같은 장비 식별자를 저장하는 데 사용될 수 있다. 이러한 식별자는 사용자 및 장비 식별을 위해 네트워크 서버로 전송될 수 있다.
다수의 프로그램이 메모리(920)에 저장될 수 있다. 이러한 프로그램은 운영 체제(912), 하나 이상의 애플리케이션 프로그램(914), 및 다른 프로그램 모듈 및 프로그램 데이터를 포함한다. 이러한 애플리케이션 프로그램 또는 프로그램 모듈의 예는, 예를 들어, 도 1의 큐잉 시스템(100), 도 2의 시스템(200), 도 8a의 호스트 EGI(800A) 및 도 8b의 게스트 EP(800B) 중 하나 이상을 구현하기 위한 컴퓨터 프로그램 로직(예컨대, 컴퓨터 프로그램 코드 또는 명령어) 및 이들의 임의의 컴포넌트 및/또는 서브컴포넌트 및 본 명세서에 기술된 플롯 및 순서도/흐름도 및/또는 추가 예를 함께 포함할 수 있다.
모바일 장치(902)는 터치 스크린(932), 마이크로폰(934), 카메라(936), 물리적 키보드(938) 및/또는 트랙볼(940)과 같은 하나 이상의 입력 장치(930)와, 스피커(952) 및 디스플레이(954)와 같은 하나 이상의 출력 장치(950)를 지원할 수 있다. 다른 가능한 출력 장치(도시되지 않음)는 압전 또는 다른 햅틱 출력 장치를 포함할 수 있다. 일부 장치는 하나 초과의 입력/출력 기능을 제공할 수 있다. 예를 들어, 터치 스크린(932) 및 디스플레이(954)는 단일 입력/출력 장치로 결합될 수 있다. 입력 장치(930)는 NUI(Natural User Interface)를 포함할 수 있다.
당 업계에서 잘 알려져 있는 바와 같이, 하나 이상의 무선 모뎀(960)은 안테나(들)(도시되어 있지 않음)에 결합될 수 있고 프로세서(910)와 외부 장치 사이의 양방향 통신을 지원할 수 있다. 모뎀(960)은 일반적으로 도시되며 이동 통신 네트워크(904) 및/또는 다른 무선 기반 모뎀(예컨대, 블루투스(964) 및/또는 Wi-Fi(962))과 통신하기 위한 셀룰러 모뎀(966)을 포함할 수 있다. 적어도 하나의 무선 모뎀(960)은 일반적으로 단일 셀룰러 네트워크 내에서, 셀룰러 네트워크 사이에서, 또는 모바일 장치와 공중 전화 교환망(PSTN) 사이에서 데이터 및 음성 통신을 위한 GSM 네트워크와 같은 하나 이상의 셀룰러 네트워크와 통신하도록 구성된다.
모바일 장치(902)는 적어도 하나의 입력/출력 포트(980), 전원 공급 장치(982), GPS(Global Positioning System) 수신기와 같은 위성 내비게이션 시스템 수신기(984), 가속도계(986) 및/또는 ETSB 포트, IEEE 1394(FireWire) 포트 및/또는 RS-232 포트일 수 있는 물리적 커넥터(990)를 더 포함할 수 있다. 모바일 장치(902)의 예시된 컴포넌트들이 필수적이거나 일괄적인 것은 아니며, 당업자라면 알 수 있듯이 임의의 컴포넌트가 생략되고 다른 컴포넌트들이 추가될 수 있다.
일 실시예에서, 모바일 장치(902)는 본 명세서의 순서도의 전술한 특징들 중 임의의 것을 구현하도록 구성된다. 본 명세서에 설명된 동작, 단계 및/또는 기능 중 임의의 것을 수행하기 위한 컴퓨터 프로그램 로직은 메모리(920)에 저장되고 프로세서(910)에 의해 실행될 수 있다.
도 10은 실시예가 구현될 수 있는 컴퓨팅 장치(1000)의 예시적인 구현을 도시한다. 예를 들어, 본 명세서에 기술된 실시예는 컴퓨팅 장치(1000)의 하나 이상의 특징 및/또는 다른 특징을 포함하는 고정식 또는 모바일 컴퓨터 실시예의 컴퓨팅 장치(1000)와 유사한 하나 이상의 컴퓨팅 장치에서 구현될 수 있다. 여기에 제공된 컴퓨팅 장치(1000)의 설명은 예시의 목적으로 제공되며 제한하려는 것은 아니다. 실시예는 당업자에게 공지되어 있는 다른 유형의 컴퓨터 시스템 및/또는 게임 콘솔 등에서 구현될 수도 있다.
도 10에 도시된 바와 같이, 컴퓨팅 장치(1000)는 프로세서 회로(1002)로 지칭되는 하나 이상의 프로세서, 시스템 메모리(1004), 및 시스템 메모리(1004)를 포함하는 다양한 시스템 컴포넌트를 프로세서 회로(1002)에 연결하는 버스(1006)를 포함한다. 프로세서 회로(1002)는 중앙 처리 장치(CPU), 마이크로 컨트롤러, 마이크로 프로세서 및/또는 기타 물리적 하드웨어 프로세서 회로로서 하나 이상의 물리적 하드웨어 전기 회로 장치 요소 및/또는 집적 회로 장치(반도체 재료 칩 또는 다이)에서 구현된 전기 및/또는 광학 회로이다. 프로세서 회로(1002)는 운영 체제(1030)의 프로그램 코드, 애플리케이션 프로그램(1032), 기타 프로그램(1034) 등과 같은 컴퓨터 판독 가능 매체에 저장된 프로그램 코드를 실행할 수 있다. 버스(1006)는, 다양한 버스 아키텍처 중 임의의 것을 사용하는, 메모리 버스 또는 메모리 제어기, 주변 버스, 가속 그래픽 포트, 및 프로세서 또는 로컬 버스를 포함하는 여러 유형의 버스 구조 중 하나 이상을 나타낸다. 시스템 메모리(1004)는 판독 전용 메모리(ROM)(1008) 및 랜덤 액세스 메모리(RAM)(1010)를 포함한다. 기본 입/출력 시스템(1012)(BIOS)은 ROM(1008)에 저장된다.
컴퓨팅 장치(1000)는 또한 하드 디스크로부터 판독하고 그에 기록하기 위한 하드 디스크 드라이브(1014), 이동식 자기 디스크(1018)로부터 판독하거나 그에 기록하기 위한 자기 디스크 드라이브(1016), CD ROM, DVD ROM, 또는 다른 광학 매체와 같은 이동식 광학 디스크(1022)로부터 판독하거나 그에 기록하기 위한 광학 디스크 드라이브(1020) 중 하나 이상을 갖는다. 하드 디스크 드라이브(1014), 자기 디스크 드라이브(1016) 및 광 디스크 드라이브(1020)는, 하드 디스크 드라이브 인터페이스(1024), 자기 디스크 드라이브 인터페이스(1026) 및 광 드라이브 인터페이스(1028)에 의해 버스(1006)에 각각 접속된다. 드라이브 및 관련 컴퓨터 판독 가능 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 컴퓨터 데이터의 비 휘발성 저장소를 제공한다. 하드 디스크, 이동식 자기 디스크 및 이동식 광 디스크가 설명되었만 플래시 메모리 카드, 디지털 비디오 디스크, RAM, ROM 및 다른 하드웨어 저장 매체와 같은 다른 유형의 하드웨어 기반 컴퓨터 판독 가능 저장 매체가 데이터를 저장하는데 사용될 수 있다.
다수의 프로그램 모듈은 하드 디스크, 자기 디스크, 광 디스크, ROM 또는 RAM에 저장될 수 있다. 이러한 프로그램은 운영 체제(1030), 하나 이상의 애플리케이션 프로그램(1032), 다른 프로그램(1034) 및 프로그램 데이터(1036)를 포함한다. 애플리케이션 프로그램(1032) 또는 다른 프로그램(1034)은 예를 들어, 도 1의 큐잉 시스템(100), 도 2의 시스템(200), 도 8a의 호스트 UI(800A), 및 도 8b의 게스트 UI(800B), 이들의 임의의 컴포넌트 및/또는 서브컴포넌트 및 본 명세서에 기술된 플롯 및 순서도/흐름도 및/또는 본 명세서에 기술된 추가 예와 같이 본 명세서에 기술된 실시예를 구현하기 위한 컴퓨터 프로그램 로직(예컨대, 컴퓨터 프로그램 코드 또는 명령어)을 포함할 수 있다.
사용자는 키보드(1038) 및 포인팅 장치(1040)와 같은 입력 장치를 통해 컴퓨팅 장치(1000)에 커맨드 및 정보를 입력할 수 있다. 다른 입력 장치(도시되지 않음)는 마이크로폰, 조이스틱, 게임 패드, 위성 접시, 스캐너, 터치 스크린 및/또는 터치 패드, 음성 입력을 수신하는 음성 인식 시스템, 제스처 입력을 수신하는 제스처 인식 시스템 등을 포함할 수 있다. 이들 및 다른 입력 장치는 종종 버스(1006)에 결합되는 직렬 포트 인터페이스(1042)를 통해 프로세서 회로(1002)에 접속되지만, 병렬 포트, 게임 포트 또는 USB(universal serial bus)와 같은 다른 인터페이스에 의해 접속될 수도 있다.
디스플레이 스크린(1044)은 또한 비디오 어댑터(1046)와 같은 인터페이스를 통해 버스(1006)에 연결된다. 디스플레이 스크린(1044)은 컴퓨팅 장치(1000)의 외부에 있을 수도 있고 또는 그에 통합될 수도 있다. 디스플레이 스크린(1044)은, (예컨대, 터치, 손가락 제스처, 가상 키보드 등에 의해) 사용자 커맨드 및/또는 다른 정보를 수신하기 위한 사용자 인터페이스일 뿐만 아니라, 정보를 디스플레이할 수 있다. 디스플레이 스크린(1044)은 정보를 디스플레이할 수 있을 뿐만 아니라 사용자 명령 및/또는 기타 정보를 수신하기 위한 사용자 인터페이스(예컨대, 터치, 손가락 제스처, 가상 키보드 등). 디스플레이 스크린(1044) 이외에, 컴퓨팅 장치(1000)는 스피커 및 프린터와 같은 다른 주변 출력 장치(도시되어 있지 않음)를 포함할 수 있다.
컴퓨팅 장치(1000)는 어댑터 또는 네트워크 인터페이스(1050), 모뎀(1052), 또는 네트워크를 통한 통신을 설정하기 위한 다른 수단을 통해 네트워크(1048)(예컨대, 인터넷)에 연결된다. 내부 또는 외부에 있을 수 있는 모뎀(1052)은, 도 10에 도시된 바와 같이 직렬 포트 인터페이스(1042)를 통해 버스(1006)에 접속될 수도 있고, 또는 병렬 인터페이스를 포함하는 다른 인터페이스 유형을 사용하여 버스(1006)에 접속될 수도 있다.
본 명세서에서 사용될 때, "컴퓨터 프로그램 매체", "컴퓨터 판독가능 매체"및 "컴퓨터 판독가능 저장 매체"라는 용어는, 하드 디스크 드라이브(1014)와 연관된 하드 디스크, 이동식 자기 디스크(1018), 이동식 광 디스크(1022)와 같은 물리적 하드웨어 매체, RAM, ROM, 플래시 메모리 카드, 디지털 비디오 디스크, 집(zip) 디스크, MEM, 나노 기술 기반 저장 장치와 같은 다른 물리적 하드웨어 매체, 및 다른 유형의 물리적/실재적(tangible) 하드웨어 저장 매체(도 10의 메모리(1020)를 포함함)를 지칭하는 데 사용될 수 있다. 그러한 컴퓨터 판독가능 매체 및/또는 저장 매체는 통신 매체 및 전파 신호와 구별되고 중첩되지 않는다(통신 매체 및 전파 신호를 포함하지 않는다). 통신 매체는, 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터를 반송파와 같은 변조된 데이터 신호로 구현한다. "변조된 데이터 신호"라는 용어는, 정보를 신호로 인코딩하는 방식으로 설정되거나 변경된 하나 이상의 특성을 갖는 신호를 의미한다. 제한이 아닌 예로서, 통신 매체는 유선 매체뿐만 아니라 음향, RF, 적외선 및 기타 무선 매체와 같은 무선 매체를 포함한다. 또한, 실시예는 컴퓨터 판독가능 저장 매체에 관한 실시예와 분리되고 중첩되지 않는 통신 매체에 관한 것이다.
전술한 바와 같이, 컴퓨터 프로그램 및 모듈(애플리케이션 프로그램(1032) 및 다른 프로그램(1034)을 포함함)은 하드 디스크, 자기 디스크, 광 디스크, ROM, RAM 또는 다른 하드웨어 저장 매체에 저장될 수 있다. 이러한 컴퓨터 프로그램은 또한 네트워크 인터페이스(1050), 직렬 포트 인터페이스(1042), 또는 임의의 다른 인터페이스 유형을 통해 수신될 수 있다. 이러한 컴퓨터 프로그램은 애플리케이션에 의해 실행되거나 로딩될 때 컴퓨팅 장치(1000)로 하여금 본 명세서에서 개시된 실시예의 특징을 구현할 수 있게 한다. 따라서, 이러한 컴퓨터 프로그램은 컴퓨팅 장치(1000)의 제어기를 나타낸다.
실시예는 또한 임의의 컴퓨터 판독 가능 매체 또는 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 코드 또는 명령어를 포함하는 컴퓨터 프로그램 제품에 관한 것이다. 이러한 컴퓨터 프로그램 제품은 하드 디스크 드라이브, 광 디스크 드라이브, 메모리 장치 패키지, 휴대용 메모리 스틱, 메모리 카드 및 기타 유형의 물리적 저장 하드웨어를 포함한다.
IV. 추가 예 및 장점
설명된 바와 같이, 본 명세서의 기술을 실시하는 시스템 및 장치는 다양한 방식으로 각각의 기능을 수행할 수 있도록 구성될 수 있다. 실시예들에서, 본 명세서에 설명된 임의의 순서도 및/또는 흐름도의 단계 또는 동작 중 하나 이상이 수행되지 않을 수도 있다. 또한, 본 명세서에 기술된 임의의 순서도 및/또는 흐름도에 더하여 또는 그 대신에 단계들 또는 동작들이 수행될 수도 있다. 또한, 예들에서, 본 명세서에 설명된 임의의 순서도 및/또는 흐름도의 하나 이상의 동작은 비순차적으로, 다른 순서로, 또는 서로 또는 다른 동작들과 부분적으로(또는 완전히) 동시에 수행될 수 있다.
위 섹션에서 개시된 실시예는, 예컨대 타이틀과 연관된 가상 또는 온라인 로비에서 다른 사용자가 시청하는 타이틀을 스트리밍하고 있는 스트리머/호스트 사용자의 맥락에서 설명될 수 있지만, 실시예들은 또한, 스트리밍되지 않는 게임을 플레이하는 가상 또는 온라인 위치에서 "만나는" 사용자 그룹(예컨대, 친구 그룹)에 적용될 수도 있다. 예를 들어, 4명 또는 8명의 플레이어가 동시에 참가하도록 할 수 있는 멀티플레이어 게임 세션이 친구 그룹과 함께 플레이하고자 하는 사용자에 의해 생성 및 호스팅될 수 있다. 호스트 사용자를 포함하는 친구 그룹이 게임에 대한 허용된 참가자 수를 초과할 경우, 세션 추적 및 자동 큐잉 관리를 위한 본 명세서에 기술된 실시예는 이러한 시나리오에 동일하게 적용될 수 있다.
개시된 실시예는 사용자의 경험 및 클라이언트 장치의 성능(예컨대, 중앙 시스템에 의한 기능의 보다 효율적인 처리에 의한 전력 소비 및 처리 주기의 감소)뿐만 아니라 게임/스트리밍 서비스 시스템/플랫폼의 성능을 향상시킨다. 또한, 본 명세서에 기술된 타이틀의 원활한 통합을 통해 타이틀 개발자의 컴퓨팅 리소스 활용이 감소한다(예컨대, 개발 시간 및 개발 처리 주기 감소). 추가적으로, 본 명세서의 중앙에 위치한 세션 큐잉 시스템 및 장치는, 각 특정 스트리머 호스트의 설정 및 이들이 스트리밍하는 타이틀에 따라, 이들에게 맞춤화된 게임/스트림 세션 참가에 대해 동적으로 구성 가능한 큐 관리를 제공한다. "중앙에 위치한" 시스템은 상이한 지리적 영역에서 개시된 실시예를 효율적으로 용이하게 하도록 구성된 지리적으로 다양한 컴포넌트(예컨대, 서버, 데이터 센터 등)를 포함할 수 있는데, 즉, "중앙에 위치한"은 개시된 실시예의 기능 및 구현 및/또는 시스템의 물리적 위치를 표현할 수 있다는 점에 유의해야 한다. 실시간 큐 상태 업데이트는 설명된 지속적인 접속에 의해 가능해지며, 스트리머/호스트 감독없이 큐를 자동으로 관리할 수 있는 기능도 제공한다(예컨대, 응답이 없거나 또는 스트림/로비를 나가는 경우 큐에서 사용자 제거). 따라서, 호스트/스트리머 및 클라이언트 장치 및 서비스 플랫폼 자체에서 처리 요구 사항을 줄이고, 네트워크 트래픽을 더욱 감소시키는 세션 참가에 대한 자동 큐의 효율적 관리 처리에 의해 세션 참가 대기 시간뿐만 아니라 세션 참가를 위한 사용자 상호작용의 복잡성이 크게 감소한다. 즉, 세션 참가 요청을 제출한 사용자를 큐잉하고, 세션의 시작을 결정한 다음, 액티브 세션을 시작하기 위해 미리 지정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하는 관리 기능은, 클라이언트 장치 및 관련 서비스 플랫폼의 처리를 줄이고 이들 사이에 훨씬 적은 네트워크 통신을 요구한다. 추가적으로, 이전 액티브 세션의 완료를 판단하고, 완료에 기초하여 미리 정해진 수의 큐잉된 사용자를 세션에 자동으로 삽입하기 전에 이전 액티브 세션의 모든 게스트 플레이어를 자동으로 제거하면, 본 명세서에 기술된 큐 관리를 위한 처리 효율을 더욱 높일 수 있고 네트워크 통신을 더욱 감소시킬 수 있다. 마찬가지로, 제거에 응답하여, 종료된 세션의 한 명 이상의 제거된 게스트 플레이어를 자동으로 다시 큐잉하고, 활동 그룹을 떠나는 사용자를 자동으로 큐에서 제외시키는 것과 같은 관리를 통해, 큐잉 효율을 더욱 높이고, 이는 세션 참가에 긍정적인 영향을 미친다.
또한, 개시된 실시예는, 세션 추적 및 자동화된 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 개선하기 위한 소프트웨어 구현, 예를 들어 클라우드 기반 구현으로 존재하지 않는다.
또한, 스트리밍 동안 스트리머/호스트에게 그리고 게스트 UI를 통해 콘텐츠 스트림을 보고 있는 동안 및/또는 세션 참가를 기다리는 동안 추가 입력없이 큐잉된 사용자에게 실시간 큐 상태 정보가 자동으로 제공되고, 사용자는 적절한 시간에, 예컨대 세션 시작이 결정될 때, 큐로부터 세션으로 자동으로 삽입되며, 따라서 UI 기능 및 경험이 향상된다. 또한, 스트리머/호스트 사용자는 호스트 UI를 통해 세션이 자동으로 반복될 때 큐잉 상태를 볼 수 있어, 스트리머/호스트가 세션 참가 및 스트리밍을 지속적으로 모니터링할 수 있다.
또한 본 명세서에서는, 세션 참가 및/또는 성능이 스트리밍된 타이틀 및/또는 사용된 게임/스트리밍 서비스 또는 플랫폼과 관련된 보상 서비스에 연결될 수 있는 것으로 여겨진다. 보상은 배지, 스킨, 인게임 아이템, 경험치, 인게임 잠금 해제 등을 제한없이 포함할 수 있다.
이 섹션에 설명된 추가 예 및 실시예는 본 개시의 임의의 다른 섹션 또는 하위 섹션에 개시된 예에 적용될 수 있다.
세션 큐잉 시스템이 여기서 설명된다. 세션 큐잉 시스템은 본 명세서에 설명된 바와 같이 세션 추적 및 자동화 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 향상시키기 위해 다양한 방식으로 구성되고 활성화될 수 있다. 세션 큐잉 시스템은 하나 이상의 프로세서 및 상기 프로세서에 의해 실행될 프로그램 코드를 저장하는 하나 이상의 메모리를 포함한다. 프로그램 코드는 관객 관리자, 큐 관리자 및 세션 관리자를 포함한다. 관객 관리자는 활동 그룹에 사용자를 포함시켜 사용자를 호스트 플레이어의 활동(예컨대, 게임 또는 비디오 스트림)과 연결시키도록 구성된다. 큐 관리자는, 적어도 활동 그룹 내의 사용자의 서브세트로부터 활동의 세션(세션은 호스트 플레이어와의 활동에 참가하는 것을 포함함)에 게스트 플레이어로서 참가하려는 요청을 수신하고, 세션 참가 요청을 제출한 사용자를 큐잉하도록 구성된다. 세션 관리자는 세션의 시작을 결정하고, 미리 정해진 수의 큐잉된 사용자를 세션에 자동으로 삽입하여 액티브 세션을 개시하도록 구성된다.
세션 큐잉 시스템의 일 실시예에서, 세션 관리자는 액티브 세션 이전에 발생하는 이전 액티브 세션을 추적하고, 이전 액티브 세션의 완료에 기초하여 시작을 결정하도록 구성된다.
세션 큐잉 시스템의 일 실시예에서, 세션 관리자는 이전 액티브 세션의 완료를 판단하고, 완료에 기초하여, 미리 결정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하기 전에 이전 액티브 세션의 모든 게스트 플레이어를 자동으로 제거하도록 구성된다.
세션 큐잉 시스템의 일 실시예에서, 상기 세션 관리자는, 미리 결정된 수의 큐잉된 사용자에게 세션에 대한 이들의 삽입을 통지하며, 통지에 대한 상응하는 응답을 수신하고, 상응하는 응답에 기초하여, 미리 결정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하도록 구성된다.
세션 큐잉 시스템의 일 실시예에서, 큐 관리자는, 상기 제거에 응답하여, 종료된 세션의 하나 이상의 제거된 게스트 플레이어를 자동으로 큐잉하는 것과, 상기 활동 그룹을 떠난 사용자를 자동으로 큐에서 제거하는 것과, 상기 사용자의 특성에 기초하여 사용자의 큐잉의 우선순위를 정하는 것 중 하나 이상을 수행하도록 구성된다.
세션 큐잉 시스템의 일 실시예에서, 프로그램 코드는, 상기 액티브 그룹 내의 사용자에게 게스트 사용자 인터페이스(UI)를 제공하도록 구성된 게스트 UI 제공자를 더 포함하되, 상기 게스트 UI는, 활성화될 때 상기 비디오 스트림의 세션에 대한 참가 요청을 제공하는 선택가능한 객체와, 상기 사용자의 권한을 검증하도록 구성된 크리덴셜부와, 상기 사용자의 큐 위치의 표시와, 상기 사용자가 게스트 플레이어로서 참가할 상기 액티브 세션의 초기화에 대한 알림 표시 중 적어도 하나를 포함한다.
세션 큐잉 시스템의 일 실시예에서, 프로그램 코드는, 호스트 플레이어에게 호스트 사용자 인터페이스(UI)를 제공하도록 구성된 호스트 UI 제공자를 더 포함하되, 호스트 UI는, 활성화될 때 상기 활동 그룹 내의 사용자에게 게스트 UI가 제공되게 하는 세션 모드를 개시하는 선택가능한 객체와, 상기 비디오 스트림의 세션에 참가할 상기 활동 그룹 내의 유자격 사용자에 대한 크리덴셜(credential)을 지정하는 제1 구성가능 객체와, 비디오 스트림의 상기 세션 참가를 위해 상기 활동 그룹 내의 사용자의 큐잉에서의 우선순위를 정하는데 이용되는 크리덴셜을 지정하는 제2 구성가능 객체 중 적어도 하나를 포함한다.
프로세싱 시스템에서 수행되는 세션 큐잉 방법이 또한 기술된다. 이 방법은, 본 명세서에 기술된 세션 추적 및 자동화된 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 향상시킨다. 이 방법은, 적어도 활동 그룹 내의 사용자들의 서브세트로부터 활동의 세션에 게스트 플레이어로서 참가하려는 요청을 수신하는 단계 - 세션은 호스트 플레이어와 함께 활동에 참가하는 것을 포함함 - 와, 세션에 참가하려는 요청을 제출한 사용자를 큐잉하는 단계를 포함한다. 이 방법은 또한, 세션의 시작을 결정하는 단계와, 미리 결정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하여 액티브 세션을 개시하는 단계를 포함한다.
일 실시예에서, 방법은 액티브 세션 이전에 발생하는 이전 액티브 세션을 추적하는 단계와, 이전 액티브 세션의 완료에 기초하여 시작을 결정하는 단계를 더 포함한다.
일 실시예에서, 방법은 이전 액티브 세션의 완료를 판단하는 단계와, 상기 완료에 기초하여, 미리 결정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하기 전에, 이전 액티브 세션의 모든 게스트 플레이어를 자동으로 제거하는 단계를 더 포함한다.
일 실시예에서, 방법은 미리 결정된 수의 큐잉된 사용자에게 세션에 대한 삽입을 통지하는 단계와, 통지에 대한 상응하는 응답을 수신하는 단계와, 상응하는 응답에 기초하여, 미리 결정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하는 단계를 더 포함한다.
일 실시예에서, 방법은 제거에 응답하여, 종료된 세션의 하나 이상의 제거된 게스트 플레이어를 자동으로 큐잉하는 단계와, 활동 그룹을 떠난 사용자를 자동으로 큐에서 제거하는 단계와, 사용자의 특성에 기초하여 사용자의 큐잉의 우선순위를 정하는 단계 중 적어도 하나를 더 포함한다.
일 실시예에서, 방법은 상기 액티브 그룹 내의 사용자들 각각에게 게스트 사용자 인터페이스(UI)를 제공하는 단계를 더 포함하되, 게스트 UI는, 활성화될 때 비디오 스트림의 상기 세션에 대한 참가 요청을 제공하는 선택가능한 객체와, 사용자의 권한을 검증하도록 구성된 크리덴셜부와, 사용자의 큐 위치의 표시와, 사용자가 게스트 플레이어로서 참가할 액티브 세션의 초기화에 대한 알림 표시 중 적어도 하나를 포함한다.
일 실시예에서, 방법은 호스트 플레이어에게 호스트 사용자 인터페이스(UI)를 제공하는 단계를 더 포함하되, 호스트 UI는, 활성화될 때 활동 그룹 내의 사용자에게 게스트 UI가 제공되게 하는 세션 모드를 개시하는 선택가능한 객체와, 비디오 스트림의 세션에 참가할 유자격 사용자에 대한 크리덴셜(credential)을 지정하는 제1 구성가능 객체와, 비디오 스트림의 세션 참가를 위해 큐잉에서 사용자의 우선순위를 정하는데 이용되는 크리덴셜을 지정하는 제2 구성가능 객체 중 적어도 하나를 포함한다.
또한 본 명세서에는 프로세싱 장치에 의해 실행될 경우에 세션 큐잉 방법을 수행하는 프로그램 명령어가 기록되어 있는 컴퓨터 판독가능 매체가 제공된다. 이 방법은, 본 명세서에 기술된 세션 추적 및 자동화된 큐잉의 관리를 통해 온라인 콘텐츠 스트림 또는 활동에 대한 참가를 향상시킨다. 이 방법은, 사용자를 활동 그룹에 포함시킴으로써 사용자를 호스트 플레이어의 활동에 연관시키는 단계와, 적어도 활동 그룹 내의 사용자들의 서브세트로부터 활동의 세션에 게스트 플레이어로서 참가하려는 요청을 수신하는 단계를 포함하며, 세션은 호스트 플레이어와 함께 활동에 참가하는 것을 포함한다. 이 방법은 또한, 세션에 참가하려는 요청을 제출한 사용자를 큐잉하는 단계와, 세션의 시작을 결정하는 단계와, 미리 결정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하여 액티브 세션을 개시하는 단계를 포함한다.
컴퓨터 판독가능 매체의 일 실시예에서, 방법은 액티브 세션 이전에 발생하는 이전 액티브 세션을 추적하는 단계와, 이전 액티브 세션의 완료에 기초하여 시작을 결정하는 단계를 더 포함한다.
컴퓨터 판독가능 매체의 일 실시예에서, 방법은 이전 액티브 세션의 완료를 판단하는 단계와, 상기 완료에 기초하여, 미리 결정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하기 전에, 이전 액티브 세션의 모든 게스트 플레이어를 자동으로 제거하는 단계를 더 포함한다.
컴퓨터 판독가능 매체의 일 실시예에서, 방법은 미리 결정된 수의 큐잉된 사용자에게 세션에 대한 삽입을 통지하는 단계와, 통지에 대한 상응하는 응답을 수신하는 단계와, 상응하는 응답에 기초하여, 미리 결정된 수의 큐잉된 사용자를 세션에 자동으로 삽입하는 단계를 더 포함한다.
컴퓨터 판독가능 매체의 일 실시예에서, 방법은 제거에 응답하여, 종료된 세션의 하나 이상의 제거된 게스트 플레이어를 자동으로 큐잉하는 단계와, 활동 그룹을 떠난 사용자를 자동으로 큐에서 제거하는 단계와, 사용자의 특성에 기초하여 사용자의 큐잉의 우선순위를 정하는 단계 중 적어도 하나를 더 포함한다.
컴퓨터 판독가능 매체의 일 실시예에서, 방법은 액티브 그룹 내의 사용자에게 게스트 사용자 인터페이스(UI)를 제공하는 단계를 더 포함하되, 게스트 UI는, 활성화될 때 비디오 스트림의 상기 세션에 대한 참가 요청을 제공하는 선택가능한 객체와, 사용자의 권한을 검증하도록 구성된 크리덴셜부와, 사용자의 큐 위치의 표시와, 사용자가 게스트 플레이어로서 참가할 액티브 세션의 초기화에 대한 알림 표시 중 적어도 하나를 포함한다. 일 실시예에서, 이 방법은 또한 호스트 플레이어에게 호스트 사용자 인터페이스(UI)를 제공하는 단계를 포함하되, 호스트 UI는, 활성화될 때 활동 그룹 내의 각각의 사용자에게 호스트 UI가 제공되는 세션 모드를 개시하는 선택가능한 객체와, 비디오 스트림의 세션에 참가할 활동 그룹 내의 유자격 사용자에 대한 크리덴셜(credential)을 지정하는 제1 구성가능 객체와, 비디오 스트림의 세션 참가를 위해 큐잉에서 활동 그룹 내의 한 명 이상의 사용자의 우선순위를 정하는데 이용되는 크리덴셜을 지정하는 제2 구성가능 객체 중 적어도 하나를 포함한다.
V. 결론
개시된 발명 대상의 다양한 실시예를 위에서 설명하였지만, 이들은 제한이 아닌 예로서만 제시된 것임을 이해해야 한다. 당업자는 첨부된 청구 범위에 정의된 실시예의 사상 및 범주를 벗어나지 않으면서 형식 및 세부사항에 다양한 변경이 이루어질 수 있음을 이해할 것이다. 따라서, 개시된 발명 대상의 폭과 범위는 전술한 실시예들 중 어느 것에 의해 제한되어서는 안 되며, 다음의 청구범위 및 그 균등물에 따라서만 정의되어야 한다.

Claims (15)

  1. 세션 큐잉 시스템으로서,
    프로세서와,
    상기 프로세서에 의해 실행되는 프로그램 코드를 저장하도록 구성된 메모리를 포함하되,
    상기 프로그램 코드는,
    활동 그룹(activity group)에 사용자를 포함시킴으로써 상기 사용자를 호스트 플레이어의 활동과 연관시키도록 구성된 관객 관리자와,
    적어도 상기 활동 그룹 내의 상기 사용자들의 서브세트로부터 상기 활동의 세션 - 상기 세션은 호스트 플레이어와 함께 상기 활동에 참가하는 것을 포함함 - 에 게스트 플레이어로서 참가하려는 요청을 수신하고, 상기 세션에 참가하려는 상기 요청을 제출한 사용자를 큐잉하도록 구성된 큐 관리자와,
    상기 세션의 시작을 결정하고, 액티브 세션을 시작하기 위해 미리 정해진 수의 큐잉된 상기 사용자를 상기 세션에 자동으로 삽입하도록 구성된 세션 관리자를 포함하는,
    세션 큐잉 시스템.
  2. 제1항에 있어서,
    상기 세션 관리자는,
    상기 액티브 세션 이전에 발생하는 이전 액티브 세션을 추적하고,
    상기 이전 액티브 세션의 완료에 기초하여 상기 시작을 결정하도록 구성되는,
    세션 큐잉 시스템.
  3. 제2항에 있어서,
    상기 세션 관리자는,
    상기 이전 액티브 세션의 완료를 판단하고,
    상기 완료에 기초하여 그리고 상기 미리 결정된 수의 큐잉된 사용자를 상기 세션에 자동으로 삽입하기 전에, 상기 이전 액티브 세션의 모든 게스트 플레이어를 자동으로 제거하도록 구성되는,
    세션 큐잉 시스템.
  4. 제1항에 있어서,
    상기 세션 관리자는,
    상기 미리 결정된 수의 상기 큐잉된 사용자에게 상기 세션에 대한 이들의 삽입을 통지하며,
    상기 통지에 대한 상응하는 응답을 수신하고,
    상기 상응하는 응답에 기초하여, 상기 미리 결정된 수의 상기 큐잉된 사용자를 상기 세션에 자동으로 삽입하도록 구성되는,
    세션 큐잉 시스템.
  5. 제1항에 있어서,
    상기 큐 관리자는,
    상기 제거에 응답하여, 종료된 세션의 하나 이상의 제거된 게스트 플레이어를 자동으로 큐잉하는 것과,
    상기 활동 그룹을 떠난 사용자를 자동으로 큐에서 제거하는 것과,
    상기 사용자의 특성에 기초하여 사용자의 큐잉의 우선순위를 정하는 것 중 하나 이상을 수행하도록 구성되는,
    세션 큐잉 시스템.
  6. 제1항에 있어서,
    상기 프로그램 코드는,
    상기 액티브 그룹 내의 사용자에게 게스트 사용자 인터페이스(UI)를 제공하도록 구성된 게스트 UI 제공자를 더 포함하되,
    상기 게스트 UI 는,
    활성화될 때 상기 비디오 스트림의 세션에 대한 참가 요청을 제공하는 선택가능한 객체와,
    상기 사용자의 권한을 검증하도록 구성된 크리덴셜부(credential portion)와,
    상기 사용자의 큐 위치의 표시와,
    상기 사용자가 게스트 플레이어로서 참가할 상기 액티브 세션의 초기화에 대한 알림 표시
    중 적어도 하나를 포함하는,
    세션 큐잉 방법.
  7. 제1항에 있어서,
    상기 프로그램 코드는,
    상기 호스트 플레이어에게 호스트 사용자 인터페이스(UI)를 제공하도록 구성된 호스트 UI 제공자를 더 포함하되,
    상기 호스트 UI는,
    활성화될 때 상기 활동 그룹 내의 사용자에게 게스트 UI가 제공되게 하는 세션 모드를 개시하는 선택가능한 객체와,
    상기 비디오 스트림의 세션에 참가할 상기 활동 그룹 내의 유자격 사용자에 대한 크리덴셜을 지정하는 제1 구성가능 객체와,
    상기 비디오 스트림의 세션 참가를 위해 상기 활동 그룹 내의 사용자의 큐잉에서의 우선순위를 정하는데 이용되는 크리덴셜을 지정하는 제2 구성가능 객체
    중 적어도 하나를 포함하는,
    세션 큐잉 시스템.
  8. 프로세싱 시스템에서 수행되는 세션 큐잉 방법으로서,
    적어도 활동 그룹 내의 사용자들의 서브세트로부터 활동의 세션에 게스트 플레이어로서 참가하려는 요청을 수신하는 단계 - 상기 세션은 호스트 플레이어와 함께 상기 활동에 참가하는 것을 포함함 - 와,
    상기 세션에 참가하려는 상기 요청을 제출한 사용자를 큐잉하는 단계와,
    상기 세션의 시작을 결정하는 단계와,
    미리 결정된 수의 상기 큐잉된 사용자를 상기 세션에 자동으로 삽입하여 액티브 세션을 개시하는 단계를 포함하는,
    세션 큐잉 방법.
  9. 제8항에 있어서,
    상기 액티브 세션 이전에 발생하는 이전 액티브 세션을 추적하는 단계와,
    상기 이전 액티브 세션의 완료에 기초하여 상기 시작을 결정하는 단계를 더 포함하는,
    세션 큐잉 방법.
  10. 제9항에 있어서,
    상기 이전 액티브 세션의 완료를 판단하는 단계와,
    상기 완료에 기초하여, 상기 미리 결정된 수의 큐잉된 사용자를 상기 세션에 자동으로 삽입하기 전에, 상기 이전 액티브 세션의 모든 게스트 플레이어를 자동으로 제거하는 단계를 더 포함하는,
    세션 큐잉 방법.
  11. 제8항에 있어서,
    상기 미리 결정된 수의 상기 큐잉된 사용자에게 상기 세션에 대한 삽입을 통지하는 단계와,
    상기 통지에 대한 상응하는 응답을 수신하는 단계와,
    상기 상응하는 응답에 기초하여, 상기 미리 결정된 수의 상기 큐잉된 사용자를 상기 세션에 자동으로 삽입하는 단계를 더 포함하는,
    세션 큐잉 방법.
  12. 제8항에 있어서,
    상기 제거에 응답하여, 종료된 세션의 하나 이상의 제거된 게스트 플레이어를 자동으로 큐잉하는 단계와,
    상기 활동 그룹을 떠난 사용자를 자동으로 큐에서 제거하는 단계와,
    상기 사용자의 특성에 기초하여 사용자의 큐잉의 우선순위를 정하는 단계
    중 적어도 하나를 더 포함하는,
    세션 큐잉 방법.
  13. 제8항에 있어서,
    상기 액티브 그룹 내의 사용자들 각각에게 게스트 사용자 인터페이스(UI)를 제공하는 단계를 더 포함하되,
    상기 게스트 UI는,
    활성화될 때 상기 비디오 스트림의 세션에 대한 참가 요청을 제공하는 선택가능한 객체와,
    상기 사용자의 권한을 검증하도록 구성된 크리덴셜부와,
    사용자의 큐 위치의 표시와,
    상기 사용자가 게스트 플레이어로서 참가할 상기 액티브 세션의 초기화에 대한 알림 표시
    중 적어도 하나를 포함하는,
    세션 큐잉 방법.
  14. 제8항에 있어서,
    상기 호스트 플레이어에게 호스트 사용자 인터페이스(UI)를 제공하는 단계를 더 포함하되,
    상기 호스트 UI는,
    활성화될 때 상기 활동 그룹 내의 사용자에게 게스트 UI가 제공되게 하는 세션 모드를 개시하는 선택가능한 객체와,
    상기 비디오 스트림의 세션에 참가할 유자격 사용자에 대한 크리덴셜을 지정하는 제1 구성가능 객체와,
    상기 비디오 스트림의 세션 참가를 위해 큐잉에서 사용자의 우선순위를 정하는데 이용되는 크리덴셜을 지정하는 제2 구성가능 객체
    중 적어도 하나를 포함하는,
    세션 큐잉 방법.
  15. 컴퓨터 프로그램 로직이 기록되어 있는 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품으로서,
    프로세서로 하여금 제8항 내지 제14항 중 어느 한 항의 세션 큐잉 방법을 수행하게 하는 컴퓨터 프로그램 로직을 포함하는,
    컴퓨터 프로그램 제품.
KR1020217000972A 2018-07-12 2019-06-19 온라인 멀티플레이어 세션 참가를 향상시키는 시스템 및 방법 KR20210030354A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/034,023 US11020671B2 (en) 2018-07-12 2018-07-12 System and method for enhancing participation in online multiplayer sessions
US16/034,023 2018-07-12
PCT/US2019/037838 WO2020013963A1 (en) 2018-07-12 2019-06-19 System and method for enhancing participation in online multiplayer sessions

Publications (1)

Publication Number Publication Date
KR20210030354A true KR20210030354A (ko) 2021-03-17

Family

ID=67211885

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217000972A KR20210030354A (ko) 2018-07-12 2019-06-19 온라인 멀티플레이어 세션 참가를 향상시키는 시스템 및 방법

Country Status (6)

Country Link
US (2) US11020671B2 (ko)
EP (1) EP3820582B1 (ko)
JP (1) JP7369176B2 (ko)
KR (1) KR20210030354A (ko)
CN (1) CN112399878A (ko)
WO (1) WO2020013963A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102383371B1 (ko) 2021-07-22 2022-04-08 주식회사 에이치엠씨네트웍스 하드웨어 리소스 프로비저닝 최적화 방법 및 그 방법이 적용된 온라인 서비스 제공 방법
KR20230033277A (ko) 2021-09-01 2023-03-08 주식회사 에이치엠씨네트웍스 프로세스 차등화 결과에 따른 하드웨어 리소스 할당 방법 및 그 방법이 적용된 온라인 서비스 제공 방법
KR20230168320A (ko) 2022-06-07 2023-12-14 (주)소셜인프라테크 이종 메타버스 상호 간 캐릭터 브릿지 시스템

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016073035A1 (en) 2014-11-05 2016-05-12 Super League Gaming, Inc. Game system
CN108769823B (zh) * 2018-05-28 2019-05-28 广州虎牙信息科技有限公司 直播间显示方法、装置、设备
WO2019240811A1 (en) * 2018-06-15 2019-12-19 Google Llc Methods, systems, and media for coordinating multiplayer game sessions
US11020671B2 (en) * 2018-07-12 2021-06-01 Microsoft Technology Licensing, Llc System and method for enhancing participation in online multiplayer sessions
US11260295B2 (en) * 2018-07-24 2022-03-01 Super League Gaming, Inc. Cloud-based game streaming
US11032329B2 (en) * 2019-01-29 2021-06-08 Fanmio, Inc. Managing engagements in interactive multimedia sessions
GB2579603A (en) * 2018-12-05 2020-07-01 Sony Interactive Entertainment Inc Method and system for generating a recording of video game gameplay
WO2020153232A1 (ja) * 2019-01-24 2020-07-30 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理装置の制御方法、及びプログラム
US11159595B2 (en) * 2019-02-20 2021-10-26 Sony Interactive Entertainment LLC Contextual layer for digital content
US11405347B1 (en) * 2019-05-31 2022-08-02 Meta Platforms, Inc. Systems and methods for providing game-related content
US10979481B2 (en) * 2019-08-05 2021-04-13 Surya Jayaweera System and method for dynamically expanding conferencing capabilities and facilitating on demand transactions within social network environments
CN111818348B (zh) * 2019-12-25 2021-08-24 厦门雅基软件有限公司 直播互动方法、装置、电子设备和计算机可读存储介质
US11621962B2 (en) * 2020-07-14 2023-04-04 Microsoft Technology Licensing, Llc Video signaling for user validation in online join scenarios
US11614795B2 (en) * 2020-12-11 2023-03-28 International Business Machines Corporation Co-evolved user experience orchestrator
CN114764362A (zh) * 2021-01-15 2022-07-19 北京达佳互联信息技术有限公司 一种虚拟资源获取方法、装置、电子设备及存储介质
EP4298785A1 (en) * 2021-02-25 2024-01-03 9337-0286 Quebec Inc. (Auger Groupe Conseil) Systems and methods for virtual interaction
US11228436B1 (en) * 2021-05-26 2022-01-18 Gregory Edward Foley Pixel streamed NFT-based living artwork and queue-based live event viewing
CN113573146B (zh) * 2021-07-22 2024-03-12 北京百度网讯科技有限公司 主播互动方法、装置、设备、存储介质和程序产品
US20230071358A1 (en) * 2021-09-07 2023-03-09 Nvidia Corporation Event information extraction from game logs using natural language processing
CN114710684B (zh) * 2022-03-02 2023-11-17 百果园技术(新加坡)有限公司 一种直播间连麦方法、装置、设备及存储介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6842761B2 (en) 2000-11-21 2005-01-11 America Online, Inc. Full-text relevancy ranking
US9108107B2 (en) 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
WO2006124922A2 (en) 2005-05-17 2006-11-23 Super Computer International Collaborative online gaming system and method
JP2011092623A (ja) 2009-11-02 2011-05-12 Copcom Co Ltd コンピュータプログラム、記録媒体、及びゲーム装置
US20120254764A1 (en) 2011-04-01 2012-10-04 Yahoo! Inc. System to suggest and automatically organize events for social activities
US20130268592A1 (en) 2012-04-06 2013-10-10 Gface Gmbh Content-aware persistent user room
US10051051B2 (en) 2012-06-29 2018-08-14 Verizon Patent And Licensing Inc. Online community based peer-to-peer media streaming systems and methods
SG196699A1 (en) 2012-07-30 2014-02-13 Playfiks Softwares Private Ltd Sports networking platform
JP6194191B2 (ja) 2013-06-07 2017-09-06 ソニー株式会社 情報処理システム
JP2015127900A (ja) 2013-12-27 2015-07-09 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、サーバシステムおよび情報処理システム
US9961119B2 (en) 2014-04-22 2018-05-01 Minerva Project, Inc. System and method for managing virtual conferencing breakout groups
US9100629B1 (en) * 2014-06-09 2015-08-04 Kino Llc System and method for arranging and presenting interactive preshow sessions to an audience
US20170282082A1 (en) 2015-05-29 2017-10-05 ATTAQ Online, Inc. Automated tournament platform for online video games
US10034036B2 (en) 2015-10-09 2018-07-24 Microsoft Technology Licensing, Llc Media synchronization for real-time streaming
CN114768245A (zh) * 2016-03-15 2022-07-22 思奇里兹平台股份有限公司 用于虚拟排名赛的同步模型
US11229850B2 (en) 2016-04-13 2022-01-25 Roblox Corporation User-controlled, on-demand gaming channel
WO2017223210A1 (en) * 2016-06-22 2017-12-28 Proletariat, Inc. Systems, methods and computer readable media for a viewer controller
JP6544864B2 (ja) * 2016-12-15 2019-07-17 任天堂株式会社 ゲームシステム、ゲーム処理方法、情報処理装置、および、情報処理プログラム
US11020671B2 (en) * 2018-07-12 2021-06-01 Microsoft Technology Licensing, Llc System and method for enhancing participation in online multiplayer sessions

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102383371B1 (ko) 2021-07-22 2022-04-08 주식회사 에이치엠씨네트웍스 하드웨어 리소스 프로비저닝 최적화 방법 및 그 방법이 적용된 온라인 서비스 제공 방법
KR20230015264A (ko) 2021-07-22 2023-01-31 주식회사 에이치엠씨네트웍스 하드웨어 리소스 프로비저닝 최적화 방법 및 그 방법이 적용된 온라인 서비스 제공 방법
KR20230015265A (ko) 2021-07-22 2023-01-31 주식회사 에이치엠씨네트웍스 하드웨어 리소스 프로비저닝 최적화 방법 및 그 방법이 적용된 온라인 서비스 제공 방법
KR20230033277A (ko) 2021-09-01 2023-03-08 주식회사 에이치엠씨네트웍스 프로세스 차등화 결과에 따른 하드웨어 리소스 할당 방법 및 그 방법이 적용된 온라인 서비스 제공 방법
KR20240015119A (ko) 2021-09-01 2024-02-02 주식회사 에이치엠씨네트웍스 서비스 공급자에 대한 가이드 컨텐츠 자동 제공 방법
KR20230168320A (ko) 2022-06-07 2023-12-14 (주)소셜인프라테크 이종 메타버스 상호 간 캐릭터 브릿지 시스템

Also Published As

Publication number Publication date
US11794116B2 (en) 2023-10-24
EP3820582A1 (en) 2021-05-19
JP7369176B2 (ja) 2023-10-25
US11020671B2 (en) 2021-06-01
CN112399878A (zh) 2021-02-23
US20200016495A1 (en) 2020-01-16
JP2021531086A (ja) 2021-11-18
US20210260489A1 (en) 2021-08-26
WO2020013963A1 (en) 2020-01-16
EP3820582B1 (en) 2022-11-16

Similar Documents

Publication Publication Date Title
US11794116B2 (en) System and method for enhancing participation in online multiplayer sessions
US11172012B2 (en) Co-streaming within a live interactive video game streaming service
KR102493861B1 (ko) 대화형 클라우드 게임용 방법, 디바이스 및 시스템
KR102072233B1 (ko) 게임 세션에의 참여를 가능하게 하기 위한 방법들 및 시스템들
CN110769907B (zh) 用于安排视频游戏的游戏进行的方法和系统
CN112423002B (zh) 一种直播方法及装置
JP7300503B2 (ja) マルチユーザアプリケーションを起動するための招待リンク
US8195809B2 (en) Multigame multiplayer party session
WO2023029823A1 (zh) 游戏画面的显示方法、装置、设备以及存储介质
US20190268662A1 (en) System and method for enhancing live video content streams
CN114501104B (zh) 基于直播视频的互动方法、装置、设备、存储介质及产品
US20200261808A1 (en) Computerized system, method and computerized program product facilitating games in conjunction with a messaging server
KR20220047724A (ko) 멀티플레이어 게임 세션 구축을 위한 게임 중개 인프라
CN113411652A (zh) 媒体资源播放方法和装置、存储介质及电子设备
CN111886060A (zh) 协调多玩家游戏会话的方法、系统和介质
CN106232193A (zh) 使用检索到的部分用户数据的游戏进展
CN114666672B (zh) 由观众发起的直播对战互动方法、系统及计算机设备
CN105577641B (zh) 用于基于互动记录邀请用户参加活动的系统和方法
KR101674567B1 (ko) 온라인 게임에서의 온오프라인 플레이어 매칭 방법 및 시스템
CN111343469B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN114760531B (zh) 直播间团队互动方法、装置、系统、设备及存储介质
CN114760520A (zh) 直播中小视频拍摄互动方法、装置、设备及存储介质
CN113348024B (zh) 建立和管理多玩家会话
CN113348024A (zh) 建立和管理多玩家会话
CN116126184A (zh) 一种数据处理方法、设备以及可读存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal