KR20170038807A - 인스턴트 메시징 그룹 설문 기법 - Google Patents

인스턴트 메시징 그룹 설문 기법 Download PDF

Info

Publication number
KR20170038807A
KR20170038807A KR1020177002273A KR20177002273A KR20170038807A KR 20170038807 A KR20170038807 A KR 20170038807A KR 1020177002273 A KR1020177002273 A KR 1020177002273A KR 20177002273 A KR20177002273 A KR 20177002273A KR 20170038807 A KR20170038807 A KR 20170038807A
Authority
KR
South Korea
Prior art keywords
message
user
participant
instant messaging
network
Prior art date
Application number
KR1020177002273A
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 KR20170038807A publication Critical patent/KR20170038807A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • G06F17/248
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • H04L51/16
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/216Handling conversation history, e.g. grouping of messages in sessions or threads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes

Abstract

본 발명은 인스턴트 메시징 통신 세션 동안 참가자 장치와 각각 연관된 복수의 참가자들 사이에 통신망을 통해 교환된 메시지를 업데이트하는 방법에 관한 것으로, 상기 메시지는 복수의 업데이트가능한 필드를 포함하며, 이 방법은 복수의 업데이트가능한 필드 각각의 상태 정보를 메모리에 유지하는 단계와, 복수의 업데이트가능한 필드 중 적어도 하나의 필드를 편집하기로 한, 복수의 참가자들 중 하나 이상의 참가자에 의한 적어도 하나의 선택을 검출하는 단계와, 이 검출에 응답하여 복수의 업데이트가능한 필드 중 적어도 하나의 필드의 상태 정보를 업데이트하는 단계와, 업데이트된 상태 정보를 인스턴트 메시징 통신 세션의 참가자들 중 적어도 한 참가자에게 전달하는 단계를 포함한다.

Description

인스턴트 메시징 그룹 설문 기법{INSTANT MESSAGING GROUP POLLS}
패킷 기반 통신 시스템은 개인용 컴퓨터와 같은 장치의 사용자가 인터넷 프로토콜(IP)과 같은 패킷 프로토콜을 사용하여 컴퓨터 네트워크를 통해 통신할 수 있게 해준다. 패킷 기반 통신 시스템은 다양한 유형의 통신 이벤트에 사용될 수 있다. 이러한 통신 이벤트로는 보이스 콜, 비디오 콜, 인스턴트 메시징, 보이스 메일, 파일 전송 등이 있다. 이들 시스템은 흔히 유선망이나 무선망보다 비용이 훨씬 더 적게 들기 때문에 사용자에게 유익하다. 이는 특히 원거리 통신의 경우에 그러하다. 패킷 기반 시스템을 사용하기 위해, 사용자는 자신의 장치에 클라이언트 소프트웨어를 설치하여 실행한다. 클라이언트 소프트웨어는 패킷 기반 접속 외에 등록 및 인증과 같은 다른 기능들도 제공한다.
통신 시스템은 장치 사용자들이 인터넷과 같은 컴퓨터 네트워크를 통해 통신할 수 있게 한다. 이러한 통신 이벤트로는 보이스 콜, 비디오 콜, 인스턴트 메시징, 보이스 메일, 파일 전송 등이 있다.
인스턴트 메시징 통신 세션은 컴퓨터 네트워크를 통해 컴퓨터 장치의 사용자들이 채팅을 할 수 있게 한다. 각각의 사용자는 필드에 텍스트를 입력하고, 전송 버튼을 작동시켜 다른 사용자에게 보낼 인스턴트 메시지를 생성할 수 있다.
인스턴트 메시징 통신 세션의 사용자가 설문(poll)을 작성하고 인스턴트 메시징 통신 세션의 다른 사용자들의 피드백을 받기 위해 이것을 공유하는 것이 알려져 있다. 설문을 작성하는 사용자는 각각의 설문 옵션을 수작업으로 기입한다. 예를 들면, 어디시 점심을 먹을지를 친구 그룹이 결정할 수 있게 하는 설문을 작성하는 사용자는 근처의 식당 이름을 파악하고, 이들을 일일이 설문 옵션으로 입력한 다음 이 설문을 나머지 그룹 멤버와 공유한다.
본 발명자는, 그룹 인스턴트 메시징 통신 세션 내의 사용자들에게, 이미 수신한 메시지에 대해 협력할 방법이 현재 아무 것도 없다는 점을 인식하였다. 예컨대, 사용자가 피드백(예컨대, 설문 메시지에서 투표)을 요구하는 메시지를 수신하면, 사용자가 원본 메시지의 컨텍스트로 그 피드백을 제공할 방법이 없다. 오히려, 사용자는 인스턴트 메시징 통신 세션의 채팅 히스토리(chat history)에 동일한 정보를 불필요하게 복사한 새로운 메시지를 작성해서 보내야 한다.
본 발명의 한 특징에 따르면, 인스턴트 메시징 통신 세션 동안에, 각자가 참가자 장치와 연관된 복수의 참가자들 사이에 통신망을 통해 교환된 메시지 - 이 메시지는 복수의 업데이트가능한 필드를 포함함- 를 업데이트하는 방법으로서, 복수의 업데이트가능한 필드 각각의 상태 정보를 메모리에 유지하는 단계와, 복수의 업데이트가능한 필드 중 적어도 하나를 편집하기로 한, 복수의 참가자들 중 하나 이상의 참가자에 의한 적어도 하나의 선택을 검출하는 단계와, 이 검출에 응답하여 복수의 업데이트가능한 필드 중 적어도 하나의 상태 정보를 업데이트하는 단계와, 업데이트된 상기 상태 정보를 인스턴트 메시징 통신 세션의 참가자들 중 적어도 한 참가자에게 전달하는 단계를 포함하는 방법이 제공된다.
본 발명의 다른 특징에 따르면, 사용자 장치로서, 메모리와, 인스턴트 메시징 통신 세션 동안에, 사용자 장치와 연관된 참가자와 각자가 참가자 장치와 연관된 적어도 하나의 다른 참가자 사이에 통신망을 통해 교환된 메시지 - 이 메시지는 복수의 업데이트가능한 필드를 포함함- 를 표시하도록 구성된 디스플레이와, 클라이언트 애플리케이션을 실행하도록 구성된 하나 이상의 프로세서를 포함하되, 클라이언트 애플리케이션은 복수의 업데이트가능한 필드 각각의 상태 정보를 메모리에 유지하고, 복수의 업데이트가능한 필드 중 적어도 하나를 편집하기로 한, 복수의 참가자들 중 하나 이상의 참가자에 의한 적어도 하나의 선택을 검출하며, 이 검출에 응답하여 복수의 업데이트가능한 필드 중 적어도 하나의 상태 정보를 업데이트하고, 업데이트된 상태 정보를 인스턴트 메시징 통신 세션의 참가자들 중 적어도 한 참가자에게 전달하도록 구성된 사용자 장치가 제공된다.
본 발명의 또 다른 특징에 따르면, 컴퓨터 판독가능 매체로 구현되며, 프로세서 상에서 실행될 때 본 명세서에 기술된 방법들 중 어느 한 방법을 수행하도록 구성된 컴퓨터 프로그램 제품이 제공된다.
본 발명의 또 다른 특징에 따르면, 인스턴트 메시징 통신 세션 동안에, 각자가 참가자 장치와 연관된 복수의 참가자들 사이에 통신망을 통해 교환된 메시지 - 상기 메시지는 복수의 설문 옵션을 포함함- 를 업데이트하기 위한 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 비일시적 컴퓨터 판독가능 매체로 구현되며, 프로세서 상에서 실행될 때, 상기 복수의 업데이트가능한 필드 각각의 상태 정보를 메모리에 유지하고, 상기 복수의 업데이트가능한 필드 중 적어도 하나를 편집하기로 한, 상기 복수의 참가자들 중 하나 이상의 참가자에 의한 적어도 하나의 선택을 검출하며, 상기 검출에 응답하여 상기 복수의 업데이트가능한 필드 중 상기 적어도 하나의 상태 정보를 업데이트하고, 업데이트된 상기 상태 정보를 상기 인스턴트 메시징 통신 세션의 참가자들 중 적어도 한 참가자에게 전달하도록 구성된 컴퓨터 프로그램 제품이 제공된다.
본 개요는 후속하여 발명의 상세한 설명 부분에서 설명되는 개념들 중 선택된 것들을 단순화된 형태로 소개하고자 제공되는 것이다. 본 개요는 청구항의 청구대상의 핵심적인 특징이나 필수적인 특징들을 밝히고자 함이 아니며, 청구항의 청구대상의 범위를 결정하는 데 도움이 되고자 함도 아니다.
본 발명을 보다 잘 이해하기 위해, 또한 본 발명을 실시하는 방법을 보여주기 위해, 이하에서는 첨부 도면을 예로서 참고할 것이다.
도 1은 통신 시스템을 도시한 것이다.
도 2는 사용자 단말기의 구성도이다.
도 3은 설문 메시지를 작성하는 프로세스의 흐름도이다.
도 4a는 통신 클라이언트 애플리케이션의 대화창을 보여주는 사용자 단말기를 도시한 것이다.
도 4b는 통신 클라이언트 애플리케이션의 제1 설문 작성 창을 보여주는 사용자 단말기를 도시한 것이다.
도 4c는 통신 클라이언트 애플리케이션의 제2 설문 작성 창을 보여주는 사용자 단말기를 도시한 것이다.
도 4d는 통신 클라이언트 애플리케이션의 제3 설문 작성 창을 보여주는 사용자 단말기를 도시한 것이다.
도 4e는 통신 클라이언트 애플리케이션의 대화창 내 전송된 설문을 보여주는 사용자 단말기를 도시한 것이다.
도 5는 설문 메시지 편집 프로세스의 흐름도이다.
이제 실시예들을 설명할 것이다.
도 1은 사용자 단말기(102)와 연관된 제1 사용자(104)(사용자 A)와, 사용자 단말기(108)와 연관된 제2 사용자(110)(사용자 B)와, 사용자 단말기(112)와 연관된 제3 사용자(114)(사용자 C)와, 사용자 단말기(116)와 연관된 제4 사용자(118)(사용자 D)를 포함하는 통신 시스템(100)을 보여준다. 사용자 단말기는 통신 시스템(100) 내의 통신망(106)을 통해 통신할 수 있으며, 사용자가 통신망(106)을 통해 서로 통신할 수 있게 해준다. 통신망(106)은 사용자 단말기들 사이에 통신 채널을 제공하는 기능이 있는 적절한 네트워크일 수 있다. 예컨대, 통신망(106)은 인터넷이나 또는, 고속 데이터 통신(high data rate) 모바일 네트워크, 예컨대 3세대(3G) 모바일 네트워크와 같은 다른 유형의 네트워크일 수 있다.
다른 실시예에서는, 사용자 단말기가 도 1에 도시되어 있지 않은 다른 중간 네트워크를 통해 통신망(106)에 연결될 수 있다. 예를 들어, 사용자 단말기가 모바일 장치인 경우, 이 장치는 GSM 또는 UMTS 네트워크와 같은 셀룰러 모바일 네트워크(도 1에 도시되어 있지 않음)를 통해 통신망(106)에 연결될 수 있다.
사용자 단말기는, 예컨대, 모바일폰, PDA(personal digital assistant), PC(personal computer)(예컨대, WindowsTM, Mac OSTM 및 LinuxTM PC를 포함함), 태블릿 컴퓨터, 게이밍 장치 또는 통신망(106)에 접속할 수 있는 기타 내장형 장치일 수 있다.
사용자 단말기(102)는 통신 시스템(100)과 연관된 소프트웨어 제공자에 의해 제공된 통신 클라이언트 애플리케이션(105)을 실행한다. 통신 클라이언트 애플리케이션(105)은 사용자 단말기(102) 내의 로컬 프로세서에서 실행되는 소프트웨어 프로그램이다. 통신 클라이언트 애플리케이션(105)은 사용자 단말기(102)가 통신 시스템(100)을 통해 데이터를 송수신하기 위해 사용자 단말기(102)에서 요구되는 처리를 수행한다. 사용자 단말기(102)에서 실행되는 통신 클라이언트 애플리케이션(105)은 통신 시스템을 통해 통신하도록 (예컨대, 사용자(104)가 통신 시스템의 진짜 가입자임을 증명하기 위해 - 이에 대해서는 WO 2005/009019에 보다 상세히 설명되어 있다) 디지털 인증서의 프리젠테이션을 통해 인증될 수 있다.
사용자 단말기(108, 112, 116)는 각각 로컬 프로세서 상에서, 사용자 단말기(102)에서 실행된 통신 클라이언트 애플리케이션(105)에 대응하는 통신 클라이언트 애플리케이션을 실행한다. 도 1에 도시된 사용자 단말기들은 통신 시스템에서 엔드 포인트들이다. 도 1은 명확성을 위해 네 명의 사용자와 네 대의 사용자 단말기만 도시하였지만, 당해 분야에 알려져 있는 바와 같이, 보다 많은 수의 사용자와 사용자 장치가 통신 시스템(100)에 포함될 수도 있고, 제각기의 사용자 장치에서 실행되는 제각기의 통신 클라이언트를 사용하여 통신 시스템(100)을 통해 통신할 수도 있다.
인스턴트 메시징 통신 세션 동안에 교환되는 메시지는 네트워크(106)를 통해 전송된다. 이들 메시지는 사용자 단말기들 사이의 네트워크에 접속되어 있는 네트워크 엔티티(예컨대, 서버)를 통해 전송된다. 이에 갈음하여 또는 이에 더하여, 당해 분야에 공지되어 있는 바와 같이, 통신 세션의 메시지는 사용자 단말기들 사이의 점대점(point-to-point) 루트(즉, 통신 시스템(100) 내 임의의 서버를 통하지 않는 루트) 상에서 전송될 수도 있다.
도 2는 통신 시스템(100)에서 통신을 위해 사용되는 통신 클라이언트 애플리케이션을 실행하는 사용자 단말기(102)의 상세도이다. 사용자 단말기(102)는, 중앙 처리 장치(CPU)(202), CPU에 연결된 스크린이나 터치 스크린과 같은 디스플레이(204)가 연결되는 키패드(206)와 같은 입력 장치, 카메라(208) 및 터치 스크린(204)을 포함한다. 출력 오디오 장치(210)(예컨대, 스피커) 및 입력 오디오 장치(212)(예컨대, 마이크로폰)는 CPU(202)에 연결된다. 디스플레이(204), 키패드(206), 카메라(208), 출력 오디오 장치(210) 및 입력 오디오 장치(212)는 도 2에 도시되어 있는 바와 같이 사용자 단말기(102)에 통합될 수 있다. 다른 사용자 단말기에서는, 디스플레이(204), 키패드(206), 카메라(208), 출력 오디오 장치(210) 및 입력 오디오 장치(212) 중 하나 이상이 사용자 단말기(102)에 통합되지 않고, 제각기의 인터페이스를 통해 CPU(202)에 연결될 수 있다. 이러한 인터페이스의 한 예로 USB 인터페이스가 있다. CPU(202)는 통신망(106)과 통신하기 위해 모뎀과 같은 네트워크 인터페이스(224)에 연결된다. 네트워크 인터페이스(224)는 도 2에 도시되어 있는 바와 같이 사용자 단말기(102)에 통합될 수 있다. 다른 사용자 단말기에서는 네트워크 인터페이스(224)가 사용자 단말기(102)에 통합되지 않는다. 사용자 단말기(102)는 또한, 당해 분야에 공지되어 있는 바와 같이, 데이터를 저장하기 위한 메모리(226)를 포함한다. 메모리(226)는 ROM과 같은 영구 메모리일 수 있다. 또는 메모리(226)는 RAM과 같은 일시적 메모리일 수도 있다.
사용자 단말기(102)는, 통신 클라이언트 애플리케이션(105)이 메모리(226)에 저장되어 CPU(202)에서 실행하도록 구성되어 있다는 점에서, 통신 클라이언트 애플리케이션(105)을 갖고 있다. 도 2는 또한 CPU(202)에서 실행되는 운영 체제(OS)(214)를 도시하고 있다. OS(214) 상에서, 전술한 통신 클라이언트 애플리케이션(112)을 위한 소프트웨어 스택(216)이 실행된다. 소프트웨어 스택은 I/O 층(218), 클라이언트 엔진 층(220) 및 클라이언트 유저 인터페이스 층(UI)(222)을 나타낸다. 각 층은 특정 기능을 담당한다. 각 층은 일반적으로 나머지 두 층과 통신하기 때문에, 이들은 도 2에 도시되어 있는 바와 같이 스택으로 구성된 것으로 간주할 수 있다. 운영 체제(214)는 컴퓨터의 하드웨어 자원을 관리하며 네트워크 인터페이스(224)를 통해 통신망(106)과 송수신하는 데이터를 처리한다. I/O 층218)은, 인입하는 인코딩된 스트림을 수신하고 이들을 스피커(210) 및/또는 디스플레이(204)로 출력하기 위해 적절히 디코딩하며, 마이크로폰(212) 및/또는 카메라(208)로부터 인코딩되지 않은 오디오 및/또는 비디오 데이터를 수신하고 이들을 통신 시스템(100)의 다른 엔드유저 단말기에 스트림으로 송신하기 위해 인코딩하는 오디오 및/또는 비디오 코덱을 포함한다. 클라이언트 엔진 층(220)은 전술한 VoIP 시스템의 접속 관리 기능, 통화 연결이나 서버 기반 또는 P2P 어드레스 룩업 및 인증에 의한 기타 접속을 담당한다. 클라이언트 엔진은 또한 본 명세서에서 논하지 않는 다른 부차적인 기능들도 담당할 수 있다. 클라이언트 엔진(220)은 또한 클라이언트 유저 인터페이스 층(222)과 통신한다. 클라이언트 엔진(220)은, 디스플레이(204) 상에 표시되는 클라이언트의 유저 인터페이스를 통해 사용자 단말기(102)의 사용자에게 정보를 제공하고 유저 인터페이스를 통해 사용자 단말기(102)로부터 정보를 수신하도록, 클라이언트 유저 인터페이스 층(222)을 제어하도록 구성될 수 있다.
설문 메시지 생성
통신망(106)을 통해 복수의 사용자 장치들(또는 본 명세서에서 사용자 단말기라고도 함) 사이의 인스턴트 메시징 통신 세션 동안에 구현되는 방법을 이제 도 3을 참고하여 설명하는데, 도 3은 설문 메시지를 생성하기 위해 사용자 단말기(102)에서 실행되는 클라이언트 애플리케이션(105)에 의해 수행되는 프로세스(300)의 흐름도이다. 또한, 다양한 실시예에서 프로세서(300)의 일부로서 제시된 예시적인 클라이언트 유저 인터페이스를 보여주는 도 4a, 4b, 4c, 4d 및 4e도 참고할 것이다.
본 발명의 실시예들은 사용자 A(104), 사용자 B(110), 사용자 C(114) 및 사용자 D(118)가 인스턴트 메시징 대화에 참여함으로써 인스턴트 메시징 통신 세션 중에 사용자 단말기들(102, 108, 112, 116) 사이에 메시지가 송수신될 수 있는 것에 관하여 설명된다.
사용자 단말기(102)에서 실행되는 통신 클라이언트 애플리케이션(105)에 의해 제공되는 클라이언트 유저 인터페이스는 인스턴트 메시징 통신 세션의 메시지로 보내기 위해 사용자 A(104)가 입력하였지만 아직 보내지는 않은 텍스트를 디스플레이하도록 동작할 수 있다. 구체적으로, 통신 클라이언트 애플리케이션(105)은 클라이언트 유저 인터페이스를 통해 메시지 필드(402)(도 4a에 도시되어 있음)를 디스플레이하며, 사용자 A(104)는 예컨대 터치 스크린(204) 또는 키패드(206)를 사용하여 이 메시지 필드에 텍스트를 입력할 수 있다. 클라이언트 유저 인터페이스는, 사용자 A(104)가 그러한 텍스트를 입력한 후에 선택할 수 있는 선택가능한 송신 옵션(408)을 디스플레이한다. 이에 응하여, 통신 클라이언트 애플리케이션(105)은 입력 텍스트를 포함하는 메시지를 생성하고, 생성된 메시지를 통신망(106)을 통해 사용자 단말기(108, 112, 116)로 전송한다. 사용자 단말기(102)로부터 송신된 메시지와 사용자 단말기(103, 112, 116)로부터 수신된 메시지는 채팅 창(403) 안에 표시된다.
단계(S302)에서, 통신 클라이언트 애플리케이션(105)은 통신 클라이언트 애플리케이션(105)에 의해 제공된 클라이언트 유저 인터페이스와의 상호작용을 검출한 것에 기초하여 설문 메시지를 사용자 B 내지 사용자 D에게 보내려는 사용자 A(104)의 선택을 검출한다. 통신 클라이언트 애플리케이션(105)은 클라이언트 유저 인터페이스를 통해, 사용자 A(104)가 마우스(도 2에 도시되어 있지 않음), 키패드(206)와 같은 적절한 입력 장치 또는 터치 스크린(204)를 사용하여 선택할 수 있는 메뉴 버튼(도 4a 및 4e의 404)을 표시할 수 있다. 사용자 A(104)는 메뉴 옵션을 탐색하여 설문 메시지를 사용자 B 내지 사용자 D에게 보내려는 적절한 선택을 할 수 있다. 이에 갈음하여 또는 이에 더하여, 통신 클라이언트 애플리케이션(105)은 클라이언트 유저 인터페이스를 통해, 설문 메시지의 송신을 위한 전용 버튼을 표시할 수 있다.
단계(S302)에서의 검출에 응답하여, 프로세스(300)는 단계(S304)로 진행한다. 단계(S304)에서, 통신 클라이언트 애플리케이션(105)은 클라이언트 유저 인터페이스를 통해 제1 설문 작성 창(405)을 표시한다. 제1 설문 작성 창(405)은 도 4b에 도시되어 있다.
S306에서, 통신 클라이언트 애플리케이션(105)은 설문조사 질문 및 검색어를 수신한다.
도 4b에 도시되어 있는 바와 같이, 제1 설문 작성 창(405)은 설문조사 질문 입력 필드(408)를 포함한다. 설문조사 질문은 사용자 A(104)에 의해 키패드(206)와 같은 적절한 입력 장치나 터치 스크린(204)을 이용하여 설문조사 질문 입력 필드(408)에 입력될 수 있다. 도 4b는 설문조사 질문 입력 필드(408)에 입력된 예시적인 설문조사 질문(409) "And which one of these places?"를 보여준다.
제1 설문 작성 창(405)은 제1 선택가능 아이콘(410) 및 제2 선택가능 아이콘(412)을 포함한다. 사용자 A(104)는 통신 클라이언트 애플리케이션(105)이 설문 옵션을 자동 검색하기를 원하면 제1 선택가능 아이콘(410)을 선택하고, 설문 옵션을 자신이 직접 입력하기를 원하면 제2 선택가능 아이콘(412)을 선택한다.
제1 선택가능 아이콘(410)의 선택이 검출되면, 통신 클라이언트 애플리케이션(105)은 클라이언트 유저 인터페이스를 통해 제2 설문 작성 창(425)(도 4c에 도시되어 있음)을 디스플레이할 수 있다. 또는 사용자는 제1 선택가능 아이콘(410)을 선택한 후에, 제2 설문 작성 창(425)으로 이동하기 위해 선택가능 버튼(407a)을 선택할 수도 있다.
도 4c에 도시되어 있는 바와 같이, 제2 설문 작성 창(425)은 검색어 입력 필드(414)를 포함한다.
검색어는 사용자가 키패드(206)와 같은 적절한 입력 장치나 터치 스크린(204)을 사용하여 검색어 입력 필드(414)에 입력될 수 있다. 도 4c는 검색어 입력 필드(414)에 입력된 예시적인 검색어(416) "Pizza"를 보여준다.
사용자 A(104)는 제3 설문 작성 창(435)으로 이동하기 위해 선택가능 버튼(407a)을 선택할 수 있다.
단계(S308)에서, 통신 클라이언트 애플리케이션(105)은 선택적으로 사용자 A의 컨텍스트를 판정한다. 한 가지 예를 들면, 단계(S308)는 사용자 단말기(102)의 위치를 결정(이에 따라 사용자 A(104)의 위치를 결정)하는 것을 포함한다.
통신 클라이언트 애플리케이션(105)은 다양한 방법으로 사용자 단말기(102)의 위치를 결정할 수 있다.
일례로, 통신 클라이언트 애플리케이션(105)은 OS(214) 위에서 실행되는 위치 결정 모듈(230)과 통신하여 사용자 단말기(102)의 위치를 결정할 수 있다. 위치 결정 모듈(230)은 사용자 단말기(102)의 위치를 결정하도록 구성된다. 위치 결정 모듈(230)은 지표면에 대한 지리적 위치에 기초를 두고 사용자 단말기(102)의 위치를 결정하는 지리적 위치 기술을 이용하며, 예컨대, (AGPS(Assisted GPS) 또는 DGPS(Differential GPS)와 같은 잠재적 변형을 포함하는)GPS(Global Positioning System), GLONASS(Global Navigation Satellite System) 또는 갈릴레오(Galileo)와 같은 위성 기반 측위 시스템; 및/또는 위치가 알려진 복수의 상이한 무선 기지국 또는 액세스 포인트에 대한 삼변측량(trilateration)(또는 보다 일반적으로는 다변측량(multilateration)); 및/또는 알려진 기지국이나 액세스 포인트에 대한 신호 세기 검출에 기반하는 기법을 이용한다. 사용자 단말기(102)가 자신의 위치를 결정하기 위해 다른 잘 알려져 있는 방법이 사용될 수도 있다. 이 예에서는, 통신 클라이언트 애플리케이션(105)이 위치 정보에 대한 요청을 위치 결정 모듈(230)에게 전송한 것에 응답하여 위치 결정 모듈(230)로부터 수신된 위치 정보(예컨대, 위도/경도 정보)에 기초하여 사용자 단말기(102)의 위치를 결정한다.
통신 클라이언트 애플리케이션(105)은 사용자 A(104)가 선택하였거나 또는 입력한 사용자 단말기(102)의 위치 표시에 기초하여 사용자 단말기(102)의 위치를 결정할 수 있다. 예컨대, 사용자 A(104)는 통신 클라이언트 애플리케이션(105)에 의해 제공된 클라이언트 유저 인터페이스에 자신의 위치를 직접 입력할 수 있다. 다른 예에서는, 사용자 A(104)가 (자신이 특정 도시, 주 또는 나라에 있음을 나타내는)사용자 A의 위치 표시를 제공하는 통신 클라이언트 애플리케이션(105)에 의해 제공된 클라이언트 유저 인터페이스에서 온라인 존재 상태를 선택하거나 또는 무드(mood) 메시지를 입력할 수 있다.
다른 예에서, 통신 클라이언트 애플리케이션(105)은 기계 학습 기법에 기초하여 사용자 단말기(102)의 위치를 결정할 수 있다. 예를 들어, 통신 클라이언트 애플리케이션(105)은 다양한 시각에 위치 결정 모듈(230)과 통신할 수 있고(이것은 예컨대 1시간에 한 번씩 주기적으로 행해질 수 있다), 사용자 단말기(102)가 (통신 클라이언트 애플리케이션(105)의 제공자에 의해 설정된)장기간 동안 동일 영역 내에 있으면, 통신 클라이언트 애플리케이션(105)은 (오전 8시와 오후 5시 사이의 사용자 단말기(102)의 위치에 기초하여)사용자 A의 직장 위치와 (오후 6시 부터 사용자 단말기(102)의 위치에 기초하여)사용자의 가정의 위치를 추론할 수 있다. 따라서, 통신 클라이언트 애플리케이션(105)은 시각에 기초하여 이들 예상 위치 중 하나에 있는 사용자 단말기(102)의 위치를 예측할 수 있다.
사용자 A(104)의 다른 컨텍스트 정보는 사용자 A의 나이, 언어, 국적, 성별 등을 포함할 수 있다. 통신 클라이언트 애플리케이션(105)은 사용자 A(102)가 입력한 프로파일 정보에 기초하여 이러한 다른 컨텍스트 정보를 결정할 수 있다. 컨텍스트 정보는 시각도 포함할 수 있다.
단계(S310)에서, 통신 클라이언트 애플리케이션(105)은 적어도 검색어(416)를 사용하여 검색을 수행한다. 단계(S310)는 통신 클라이언트 애플리케이션(105)이 검색어(416)를 포함하는 검색어를 네트워크(106)에 연결된 웹 서버(도 1에 도시되어 있지 않음)에 전송하는 것을 포함한다. 웹 서버는 웹 검색 엔진 소프트웨어를 실행하여 월드 와이드 웹에서 콘텐츠를 검색하도록 구성되어 있다. 검색 엔진의 예로는 Microsoft®의 BingTM 검색 엔진이 있다.
단계(S308)가 수행되면, 컨텍스트 정보가 검색 요청에서 사용된 검색 방법에 따라 검색어나 검색 파라미터에 포함된다. 컨텍스트 정보는, 사용자 A(104)와 더 관련이 있는 검색 결과를 통신 클라이언트 애플리케이션(105)에게 제공하는데 도움이 될 때, 제공된다. 예를 들어, 위치 정보가 검색 요청에 포함되면, 통신 클라이언트 애플리케이션(105)은 이 검색 요청을 검색어(416)와 위치 정보에 기초하여 사용자 단말기(102) 근방의 관심 위치의 검색 결과를 반환하도록 구성된 웹 서버에게 전송하도록 구성된다. 예를 들어, API(application programming interface), 예컨대 Microsoft Bing의 관심 지점 API를 이용하면, 웹 서버가, 검색 결과에 기초하여 관심 위치 및 이들의 관련 위치 정보를 저장하고 있는 네트워크(106) 내의 데이터베이스를 검색할 수 있다.
컨텍스트 정보는 또한 적절한 검색 매체를 고르는데 사용될 수 있다. 예를 들어, 컨텍스트 정보가 소셜 네트워크(예컨대, 페이스북)에 있는 사용자의 친구 목록을 포함하면, 단계(S310)에서 통신 클라이언트 애플리케이션(105)는 소셜 네트워크의 사용자 A의 활동 기록(activity feed)에서 검색을 수행할 수 있다. 당업자에게 알려져 있는 바와 같이, 사용자의 활동 기록은 사용자가 팔로우하기로 선택한 페이지 및 다른 사용자들의 활동(예컨대, 상태 업데이트, 사진, 비디오, 링크 등)을 디스플레이한다.
단계(S312)에서, 클라이언트 애플리케이션(105)은 제3 설문 작성 창(435)에 정해진 개수의 반환된 검색 결과를 표시한다. 이 정해진 개수는 클라이언트 애플리케이션(105)의 제공자에 의해 결정된다.
도 4d는 검색 결과에 응답하여 웹 서버에서 클라이언트 애플리케이션(105)에게 반환된 복수의 검색 결과(418a-d)를 포함하는 제3 설문 작성 창(435)을 도시한 것이다.
일례로, 검색 요청은 검색어(416) "Pizza" 및 사용자 단말기(102)의 위치 정보를 포함하고, 통신 클라이언트 애플리케이션(105)은 사용자 단말기(102) 위치 가까이에 있는 "Pizza" 음식점에 대한 검색 결과를 수신한다. 즉, 클라이언트 애플리케이션(105)으로 반환된 복수의 검색 결과(418a-d)는 검색어(416) "Pizza"와 관련된 관심 장소이다.
반환된 관심 장소(418a-d)는 사용자 B-D에게 전송된 설문 메시지에 설문 옵션으로 사용될 수 있다. 도 4d는 제1 관심 장소 "Pizza Plaza"(418a), 제2 관심 장소 "Pizza Pizza"(418b), 제3 관심 장소 "Luigi's Plazas"(418c), 제4 관심 장소 "P멤 JJ's Pizza"(418d)를 보여준다.
사용자 A(104)는 설문 메시지를 사용자 B-D에게 보내기 전에, 설문 옵션을 편집할 수 있다. 예를 들어, 사용자 A(104)가 설문 옵션들 중 하나 이상을 사용자 B-D에게 보낼 설문 메시지에 포함하고 싶지 않으면, 사용자 A(104)는 삭제할 제각기의 설문 옵션과 연관된 선택가능한 설문 옵션 삭제 아이콘(420)을 선택함으로써 설문 옵션들 중 하나 이상의 설문 옵션을 삭제할 수도 있다.
설문 옵션의 삭제를 검출한 후에, 통신 클라이언트 애플리케이션(105)은 검색 결과에 대한 응답으로 삭제된 설문 옵션 대신에 다른 관심 장소를 웹 서버에 의해 반환된 설문 옵션으로서 표시하도록 구성될 수도 있다. 또는, 통신 클라이언트(105)는 설문 옵션을 그냥 삭제하도록 구성될 수도 있다.
사용자 A(104)는 설문 메시지를 사용자 B-D에게 보내기 전에, 추가적인 설문 옵션을 직접 입력할 수도 있다.
사용자 A(104)가 설문 옵션 편집을 완료하면, (필요한 경우에) 사용자 A(104)는 선택가능한 버튼(407a)을 선택하여 설문조사 질문(409)과 설문 옵션(418)을 포함하는 설문 메시지를 사용자 B-D에게 보낼 수도 있다.
통신 클라이언트 애플리케이션(105)은, 선택가능한 버튼(407a)의 선택이 검출되면 설문 메시지(422)를 네트워크(106)를 통해 사용자 B-D 각각과 연관된 사용자 단말기에게 전송하도록 구성된다.
도 4e는 통신 클라이언트 애플리케이션(105)에 의해 제공된 클라이언트 유저 인터페이스의 채팅 창(403)에 표시되는 전송된 설문 메시지(422)를 도시한 것이다. 도 4e에 도시되어 있는 바와 같이, 전송된 설문 메시지는 설문조사 질문(409)과 복수의 설문 옵션(418)을 포함한다. 사용자 단말기(108, 112, 115) 각각에서 실행되는 통신 클라이언트 애플리케이션은 제각기의 통신 클라이언트 애플리케이션에 의해 제공된 클라이언트 사용자의 채팅 창에 수신한 설문 메시지(422)를 표시한다.
본 발명의 실시예들은 위치 및 검색 기준과 같은 사용자의 컨텍스트에 기초하여 설문 옵션을 자동으로 생성함으로써 인스턴트 메시징 통신 세션에서 사용할 설문을 작성하고자 하는 사용자의 사용자 경험을 향상시킨다. 설문 옵션을 자동으로 생성함으로써, 설문 메시지를 빨리 작성할 수 있으며 설문을 작성하고자 하는 사용자가 해야 할 수작업 단계의 수가 감소할 수 있다.
종래기술과 달리, 인스턴트 메시징 통신 세션 동안 교환된 설문 메시지(422)가 통신 클라이언트 애플리케이션(105)에 의해 제공되는 클라이언트 유저 인터페이스의 채팅 창(403)(즉, 인스턴트 메시징 통신 세션 동안 교환된 메시지가 표시되는 영역)에 표시된다. 채팅 창(403)에 설문 메시지(422)를 표시함으로써, IM 대화의 연속성이 유지될 수 있고, 사용자 참여가 늘어난다.
설문 작성 과정의 어느 한 지점에서 설문 작성 창을 떠나기 위해, 사용자 A(104)는 선택가능 버튼(407b)을 선택하여 채팅 창(403)으로 돌아갈 수 있다.
설문 메시지 편집
본 발명의 실시예들은 인스턴트 메시징 통신 세션의 참가자들이 설문 옵션들(418) 중 하나 이상에 투표함으로써 전송된 설문 메시지(422)를 편집하게 할 수 있다.
이제 설문 메시지 편집 프로세스(500)의 흐름도를 도시한 도 5를 참고하여, 통신망(106)을 통한 사용자 단말기(104, 108, 112, 116) 사이의 인스턴트 메시징 통신 세션 동안 구현된 방법을 설명한다.
프로세스(500)는 제각기의 사용자 단말기(104, 108, 112, 116)에서 실행되는 각각의 통신 클라이언트 애플리케이션에 의해 수행될 수 있다. 또는, 인스턴트 메시징 통신 세션 동안 교환된 메시지가 네트워크(106)에 연결된 네트워크 엔티티(예컨대, 서버)를 경유하여 네트워크(106)를 통해 전송되면, 프로세스(500)는 이 네트워크 엔티티에 의해 수행될 수 있다.
프로세스(500)는 먼저 인스턴트 메시징 통신 세션에 포함된 사용자 단말기들 중 하나의 단말기에서 실행되는 통신 클라이언트 애플리케이션, 구체적으로는 사용자 단말기(102)에서 실행되는 통신 클라이언트 애플리케이션(105)에 의해 수행되는 것과 관련해서 설명할 것이다.
설문 메시지(422)를 네트워크(106)를 통해 사용자 B-D 각각과 연관된 사용자 단말기로 전송한 것에 응답하여, 단계(S502)에서 통신 클라이언트 애플리케이션(105)은 설문 메시지(422)의 상태 정보를 사용자 단말기(102)의 메모리(예컨대, 메모리(226))에 저장하도록 구성된다. 상태 정보는 설문 메시지에 있는 복수의 업데이트가능한 필드(426)에 대한 정보를 포함한다. 상태 정보는 설문 메시지(422)의 메시지 식별자, 설문조사 질문(409), 및 설문 옵션들(418)을 더 포함할 수 있다.
설문 메시지(422)의 설문 옵션들(418) 각각은 업데이트가능한 필드(426)와 연관된다. 업데이트가능한 필드(426)는 관련 설문 옵션에 대한 사용자 피드백을 나타낸다. 이하에서는 복수의 업데이트가능한 필드(426)가 관련 설문 옵션에 대한 득표수를 나타내는 카운터 값을 포함하는 것과 관련하여 설명하겠지만, 아래에서 보다 상세히 설명하는 바와 같이, 업데이트가능한 필드는 많은 다른 형태를 취할 수 있다.
설문 메시지(422)가 네트워크(106)를 통해 사용자 B-D 각각과 연관된 사용자 단말기로 전송되면, 카운트 값이 디폴트 초기값(즉, 0)으로 설정된다. 따라서, 설문 메시지(422)의 전송 후에 복수의 업데이트가능한 필드(426)의 메모리(226)에 저장된 상태 정보는 이들 디폴트 초기 카운터 값을 포함한다.
단계(S504)에서, 통신 클라이언트 애플리케이션(105)은 인스턴트 메시징 통신 세션의 참가자가 설문 메시지(422)를 편집하기로 선택했는지 여부를 검출한다.
사용자 A-D 중 임의의 사용자는, 자신의 사용자 단말기를 사용하여 투표하고 싶은 설문 옵션을 선택함으로써, 복수의 설문 옵션들(418) 중 하나에 투표할 수 있다. 사용자가 설문 옵션들(418) 중 하나를 선택한 것을 검출하면(즉, 선택된 설문 옵션과 연관된 카운트 값을 편집하기 위해), 프로세스(500)는 단계(S506)로 진행한다.
단계(S506)에서, 통신 클라이언트 애플리케이션(105)은 저장된 카운터 값을 1씩 증분시킴으로써 메모리(226)에 저장되어 있는 선택된 설문 옵션과 연관된 카운터 값을 업데이트한다. 그 다음에 프로세스(500)는 단계(S508)로 진행한다.
단계(S508)에서, 통신 클라이언트 애플리케이션(105)은 업데이트된 상태 정보를 인스턴트 메시징 통신 세션의 참가자들(즉, 사용자 A-D) 중 적어도 한 참가자에게 전달한다.
사용자 A(104)는 통신 클라이언트 애플리케이션(105)에 의해 제공된 유저 인터페이스에서 선택을 함으로써 설문 메시지(422)에서 투표하고 싶은 설문 옵션을 선택할 수 있다. 통신 클라이언트 애플리케이션(105)은 이 선택을 검출하도록 구성된다.
도 4e에 도시되어 있는 바와 같이, 설문 메시지(422)는 제각기의 설문 옵션(418)과 각각 연관된 복수의 선택가능 아이콘(424)을 포함할 수 있다. 사용자 A(104)는 투표하고 싶은 설문 옵션과 연관된 선택가능 아이콘(424)을 선택함으로써 투표하고 싶은 설문 옵션을 선택할 수 있다. 또는 설문 옵션 자체가, 사용자 A(104)가 투표하고 싶은 설문 옵션을 선택함으로써 투표할 수 있는 선택가능 아이콘일 수 있다. 설문 옵션은 사용자 A(104)가 키패드(206)와 같은 적절한 입력 장치나 마우스 또는 터치 스크린(204)을 이용하여 선택할 수 있다.
통신 클라이언트 애플리케이션(105)은, 사용자 단말기(102)의 디스플레이(204) 상의 유저 인터페이스에 표시된 설문 메시지(422)의 표시를 수정함으로써, 구체적으로는 사용자 A(104)에 의해 선택된 설문 옵션과 연관된 카운터 값(426)을 증분하여 표시함으로써, 업데이트된 상태 정보를 사용자 A(104)에게 전달한다.
통신 클라이언트 애플리케이션(105)은 또한 검출된 선택을 사용자 단말기(108, 112, 116)에서 실행되는 제각기의 통신 클라이언트 애플리케이션에 전달하도록 구성되며, 따라서 이들 단말기는 그에 따라 자신에게 표시된 설문 메시지(422)를 업데이트할 수 있다.
이렇게 하기 위해, 통신 클라이언트 애플리케이션(105)은 설문 메시지(422)의 메시지 식별자, 사용자 A(102)를 식별하는 사용자 식별자 및 사용자 A에 의해 선택된 설문 옵션의 표시를 포함하는 설문 옵션 선택 메시지를 생성한다. 통신 클라이언트 애플리케이션(105)은 생성된 설문 옵션 선택 메시지를 통신망(106)을 통해 사용자 단말기(108, 112, 116)로 전송한다.
통신 클라이언트 애플리케이션(105)은, 다른 참가자들(사용자 B-D) 중 한 참가자의 사용자 단말기(예컨대, 사용자 단말기(108, 112, 116) 중 하나의 단말기)로부터 설문 옵션 선택 메시지를 수신한 것에 기초하여, 그 참가자에 의한 투표하고 싶어하는 설문 옵션의 선택을 검출하도록 구성된다. 통신 클라이언트 애플리케이션(105)은, 설문 옵션 선택 메시지 내의 메시지 식별자에 기초하여 설문 옵션 선택 메시지와 관계가 있는 설문 메시지(즉, 설문 메시지(422))를 결정하고, 설문 옵션 선택 메시지에 표시된 선택된 설문 옵션을 검출하도록 구성된다. 따라서, 통신 클라이언트 애플리케이션(105)은 메모리(226)에 저장되어 있는 선택된 설문 옵션과 연관된 카운터 값을 1씩 증분시킴으로써 이 카운터 값을 업데이트할 수 있고, 사용자 단말기(102)의 디스플레이(204) 상의 유저 인터페이스에 표시된 설문 메시지(422)의 표시를 수정함으로써, 구체적으로는 선택된 설문 옵션과 연관된 카운터 값(426)을 증분하여 표시함으로써, 업데이트된 상태 정보를 사용자 A(104)에게 전달한다.
사용자 단말기(108, 112, 116)에서 실행되는 통신 클라이언트들 각각은 통신 클라이언트 애플리케이션(105)에 대해 전술한 바와 동일한 방식으로 동작하도록 구성된다. 따라서, 인스턴트 메시징 통신 세션에 참여하는 사용자들 각각이 복수의 설문 옵션(418)에 투표할 수 있고, 사용자의 투표에 따라 설문 메시지(422)의 각각의 설문 옵션(418)과 연관된 투표 카운트가 업데이트된다.
전술한 바와 같이, 인스턴트 메시징 통신 세션 동안 교환된 메시지가 네트워크(106) 상에서 네트워크(106)에 연결된 네트워크 엔티티(예컨대, 서버)를 통해 전송되면, 프로세스(500)는 이 네트워크 엔티티에 의해 수행될 수 있다.
이 실시예에서, 네트워크 엔티티는 설문 메시지(422)의 상태 정보를, 네트워크 엔티티의 메모리나 또는 네트워크 엔티티가 액세스할 수 있는 네트워크(106) 내의 외부 저장 위치에 저장하도록 구성된다.
사용자 단말기(102, 108, 112, 116) 중 하나의 단말기에서 실행되는 통신 클라이언트 애플리케이션이, 이 통신 클라이언트 애플리케이션을 실행하고 있는 사용자 단말기와 연관된 사용자가 설문 옵션들(418) 중 한 옵션을 선택한 것을 검출하면, 통신 클라이언트 애플리케이션은 설문 메시지(422)의 메시지 식별자, 사용자를 식별하는 사용자 식별자 및 사용자에 의해 선택된 설문 옵션의 표시를 포함하는 설문 옵션 선택 메시지를 생성한다. 통신 클라이언트 애플리케이션은 생성된 설문 옵션 선택 메시지를 통신망(106)을 통해 네트워크 엔티티로 전송한다.
네트워크 엔티티는 사용자들과 (설문 메시지의 메시지 식별자에 의해 식별된) 이들 사용자의 특정 설문 메시지에 대한 설문 응답(각 사용자에 의해 선택된 설문 옵션)의 목록을 자체 메모리에 유지한다. 이 목록으로부터, 네트워크 엔티티는 소정의 설문 옵션에 대한 득표수를 결정하고, 상태 정보를 인스턴트 메시징 통신 세션(즉, 사용자 A-D)의 모든 참가자에게 전달한다. 이것은 한 사용자가 복수의 설문 옵션(418) 중 하나보다 많은 옵션에 투표할 수 있게 하는 것을 회피하기 위해 필요하다.
전술한 바와 같이, 설문 메시지는 한 사용자가 복수의 설문 옵션들(418) 중 하나의 옵션에만 투표하도록 제한할 수 있다. 또는, 설문 메시지는 한 사용자가 복수의 설문 옵션들(418) 중 하나보다 많은 옵션에 투표할 수 있도록 할 수도 있다. 한 사용자가 복수의 설문 옵션들(418) 중 하나의 옵션에만 투표하도록 제한하는 설문 메시지의 경우, 설문 메시지의 상태 정보를 유지하는 엔티티(통신 클라이언트 애플리케이션 또는 네트워크 엔티티)는, 설문 메시지(422)의 메시지 식별자와 사용자를 식별하는 사용자 식별자에 기초하여, 사용자가 복수의 설문 옵션 중 하나보다 많은 옵션에 투표하지 못하게 하거나 아니면 동일한 설문 옵션에 대해 두 번 이상 투표하지 못하게 하도록 작동할 수 있다. 즉, 설문 메시지의 상태 정보를 유지하는 엔티티는 특정 사용자가 설문 옵션들(418) 중 하나의 옵션에 이미 투표하였는지 여부를 검출할 수 있고, 만약 이미 투표했다면 그 사용자의 추가 투표에 응하여 상태 정보의 업데이트가 이루어지지 않게 할 수 있다.
(도 4e에 도시되어 있는 바와 같이)관련 설문 옵션에 대한 득표수를 나타내는 카운터 값을 포함하는 복수의 업데이트가능한 필드(426)와 관련한 실시예들을 설명하였지만, 이것은 설문 옵션들(418)에 대한 사용자 피드백을 나타내는 일례일 뿐이다. 업데이트가능한 필드(426)는 수많은 다른 형태를 취할 수도 있다.
예를 들어, 복수의 업데이트가능한 필드(426) 각각은 특정 설문 옵션에 대한 총 득표율을 나타내는 수치를 포함할 수 있다. 설문 메시지(422)가 네트워크(106)를 통해 사용자 B-D 각각과 연관된 사용자 단말기로 전송되면, 그 비율 값은 초기값(0%)으로 설정된다. 설문 메시지의 상태 정보를 유지하는 엔티티는, 사용자 A-D가 복수의 설문 옵션들(418)에 대해 투표한 것을 검출한 후에 새로운 비율 값을 계산함으로써, 메모리에 저장되는 설문 옵션과 연관된 비율 값을 업데이트한다.
다른 예에서는, 복수의 업데이트가능한 필드(426) 각각이, 특정 설문 옵션에 대한 평균 별 등급 투표를 나타내는 별 등급(예컨대, 별 다섯 개 중의)을 포함할 수 있다. 설문 메시지(422)가 네트워크(106)를 통해 사용자 B-D 각각과 연관된 사용자 단말기로 보내지면, 별 등급은 초기 값(예컨대, 0)으로 설정된다. 설문 메시지의 상태 정보를 유지하는 엔티티는 사용자 A-D가 설문 옵션에 대해 한 번 이상 투표한 것을 검출한 후에 평균 별 등급을 계산함으로써, 메모리에 저장되는 설문 옵션과 연관된 별 등급을 업데이트한다.
본 발명의 실시예들은 설문 옵션(418)과 관련하여 사용자 피드백을 나타내는 다른 방법에도 적용되는데, 이는 당업자에게 명확할 것이다.
도면에 도시되어 있지는 않지만, 인스턴트 메시징 통신 세션 동안에 교환되는 설문 메시지를 표시하는 통신 클라이언트 애플리케이션은 설문 옵션들(418) 각각에 대해 얼마나 많은 사용자들이 표를 주었는지 그리고/또는 설문 옵션들(418) 각각에게 표를 준 사용자들의 유저네임(통신 시스템의 사용자를 다른 사용자들에 대해 고유하게 식별하는데 사용됨)을 나타내도록 구성될 수 있다.
전술한 실시예로부터 설문 옵션들(418) 중 하나 이상에 대한 투표/등급 평가를 통해 설문 메시지(422)가 인스턴트 메시징 통신 세션의 사용자에 의해 편집가능함을 알 수 있을 것이다. 또한 설문 메시지는 다른 방식으로 편집가능할 수 있다.
예를 들어, 인스턴트 메시징 통신 세션의 사용자는 설문 메시지의 코멘트 필드(도면에는 도시되어 있지 않음)에 텍스트를 입력함으로써 설문 옵션에 대해 코멘트할 수 있다. 텍스트는 사용자가 키패드(206)와 같은 적절한 입력 장치나 터치 스크린(204)을 이용하여 코멘트 필드에 삽입될 수 있다. 이렇게 함으로써 사용자는 설문 옵션에 대해 추가적인 피드백을 제공할 수 있다. 도 4e에 도시되어 있는 설문 메시지(422)의 설문 옵션과 관련한 예에서, 사용자는 단순한 예로서, "already been here this week(이미 이번 주에 갔었음)!", "this place is closed for refurbishment(여기는 개장을 위해 닫혀있음)" 또는 "always wanted to go here(여기는 항상 찬성임)"를 코멘트할 수 있다. 따라서 인스턴트 메시징 통신 세션의 한 사용자가 설문 메시지에 삽입한 코멘트는 인스턴트 메시징 통신 세션의 다른 사용자들의 투표에 영향을 미칠 것이라는 것을 알 수 있을 것이다.
본 발명의 실시예들은 사용자가 원본 메시지의 컨텍스트에서 피드백을 요구하는 메시지에 피드백을 제공할 수 있게 한다. 이것은 인스턴트 메시징 통신 세션의 채팅 이력에 동일한 정보의 불필요한 복사를 회피한다.
이상 본 발명의 실시예들은 디스플레이(204)의 가용 영역(400)에 콘텐츠를 표시하는 클라이언트 유저 인터페이스와 관련하여 설명하였다. 도 4a-e에 도시되어 있는 바와 같이, 디스플레이의 가용 영역은 전체 디스플레이이다. 그러나, (클라이언트(105)에게 이용가능한 영역)디스플레이의 가용 영역은 디스플레이의 일부분만을 이루고, 예컨대, 디스플레이의 나머지 부분은 다른 콘텐츠를 디스플레이하기 위해 운영 체제 및/또는 그 위에서 실행되는 다른 애플리케이션에 의해 사용될 수도 있다.
도 3 및 5에 별도로 도시된 단계들은 별개의 단계로 구현될 수도 있고 그렇지 않을 수도 있다.
일반적으로, 본 명세서에 기술된 기능들 중 임의의 기능은 소프트웨어, 펌웨어, 하드웨어(예컨대, 고정 로직 회로), 또는 이들의 조합을 이용하여 구현될 수 있다. 본 명세서에서 사용되는 "컨트롤러", "기능", "컴포넌트" 및 "애플리케이션"은 소프트웨어, 펌웨어, 하드웨어(예컨대, 고정 로직 회로), 또는 이들의 조합을 이용하여 구현될 수 있다. 소프트웨어로 구현되는 경우에, 컨트롤러, 기능, 컴포넌트 및 애플리케이션은 프로세서(예컨대, CPU 또는 CPU들) 상에서 실행될 때 지정된 작업을 수행하는 프로그램 코드를 나타낸다. 프로그램 코드는 하나 이상의 컴퓨터 판독가능 메모리 장치에 저장될 수 있다. 후술하는 기법들의 특징은 플랫폼 독립적인데, 이는 이들 기법이 다양한 프로세서를 구비한 다양한 상용 컴퓨팅 플랫폼에서 구현될 수 있음을 의미한다.
예를 들어, 사용자 단말기는 또한 사용자 단말기의 하드웨어로 하여금 프로세서 기능 블록 등과 같은 동작을 수행하게 하는 엔티티(예컨대, 소프트웨어)를 포함할 수 있다. 예를 들어, 사용자 단말기는, 사용자 단말기, 구체적으로는 사용자 단말기의 운영 체제 및 관련 하드웨어로 하여금 동작들을 수행하게 하는 명령어를 유지하도록 구성될 수 있는 컴퓨터 판독가능 매체를 포함할 수 있다. 따라서, 이들 명령어는 이들 동작을 수행하도록 운영 체제 및 관련 하드웨어를 구성하는 기능을 하며, 이런 방식으로 결국 이들 기능을 수행하도록 운영 체제 및 관련 하드웨어를 바꾼다. 이들 명령어는 컴퓨터 판독가능 매체에 의해 다양한 구성을 통해 사용자 단말기에 제공된다.
컴퓨터 판독가능 매체의 이러한 하나의 구성이 신호 전달 매체이며, 따라서 명령어(예컨대, 반송파)를, 예컨대 네트워크를 통해 컴퓨팅 장치로 전송하도록 구성된다. 컴퓨터 판독가능 매체는 또한 컴퓨터 판독가능 저장 매체로서 구성될 수 있으며, 따라서 신호 전달 매체가 아니다. 컴퓨터 판독가능 저장 매체의 예로는 RAM, ROM, 광학 디스크, 플래시 메모리, 하드 디스크 메모리, 및 명령어와 기타 데이터를 저장하기 위한 자기, 광학 및 기타 기법을 이용하는 다른 메모리 장치를 들 수 있다.
첨부된 청구항들에 정의된 청구대상은 구조적인 특징 및/또는 방법적 동작에 특유한 언어로 기술되어 있지만, 반드시 전술한 특정한 특징이나 동작으로 제한되지는 않음을 이해해야 한다. 오히려, 전술한 특정한 특징 및 동작은 청구항 및 실시예들을 구현하는 예시적인 형태로서 개시되어 있다.

Claims (10)

  1. 인스턴트 메시징 통신 세션 동안 참가자 장치와 각각 연관된 복수의 참가자들 사이에 통신망을 통해 교환된 메시지를 업데이트하는 방법 - 상기 메시지는 복수의 업데이트가능한 필드를 포함함 - 으로서,
    상기 복수의 업데이트가능한 필드 각각의 상태 정보를 메모리에 유지하는 단계와,
    상기 복수의 업데이트가능한 필드 중 적어도 하나의 필드를 편집하기로 한, 상기 복수의 참가자들 중 하나 이상의 참가자에 의한 적어도 하나의 선택을 검출하는 단계와,
    상기 검출에 응답하여 상기 복수의 업데이트가능한 필드 중 상기 적어도 하나의 필드의 상태 정보를 업데이트하는 단계와,
    업데이트된 상기 상태 정보를 상기 인스턴트 메시징 통신 세션의 참가자들 중 적어도 한 참가자에게 전달하는 단계를 포함하는
    방법.
  2. 제1항에 있어서,
    상기 방법은 복수의 참가자 장치 중 하나의 참가자 장치에서 실행되는 클라이언트 애플리케이션에 의해 수행되는
    방법.
  3. 제2항에 있어서,
    상기 클라이언트 애플리케이션은 유저 인터페이스를 가지며,
    상기 적어도 하나의 선택을 검출하는 단계는 상기 참가자 장치와 연관된 참가자에 의한 상기 유저 인터페이스와의 상호작용을 검출하는 단계를 포함하는
    방법.
  4. 제3항에 있어서,
    상기 업데이트된 상태 정보를 상기 인스턴트 메시징 통신 세션의 참가자들 중 적어도 한 참가자에게 전달하는 단계는 상기 선택의 표시를 포함하는 메시지를 상기 통신망을 통해 상기 복수의 참가자들 중 다른 참가자와 연관된 각 참가자 장치로 전송하는 단계를 포함하는
    방법.
  5. 제2항 내지 제4항 중 어느 한 항에 있어서,
    상기 적어도 하나의 선택을 검출하는 단계는 상기 선택의 표시를 포함하는 메시지를 상기 통신망을 통해 상기 복수의 참가자들 중 다른 참가자와 연관된 참가자 장치로부터 수신하는 단계를 포함하는
    방법.
  6. 제3항 내지 제5항 중 어느 한 항에 있어서,
    상기 인스턴트 메시징 통신 세션 동안 상기 통신망을 통해 교환된 메시지를 상기 참가자 장치의 디스플레이에 표시하는 단계를 더 포함하고,
    상기 업데이트된 상태 정보를 상기 인스턴트 메시징 통신 세션의 참가자들 중 적어도 한 참가자에게 전달하는 단계는 상기 업데이트된 상태 정보에 따라 상기 참가자 장치에 표시된 메시지의 표시를 수정하여 상기 상태 정보에 대한 업데이트를 상기 참가자에게 전달하는 단계를 포함하는
    방법.
  7. 제1항에 있어서,
    상기 인스턴트 메시징 통신 세션 동안 교환된 메시지는 상기 통신망의 네트워크 엔티티를 통해 전송되고, 상기 방법은 상기 네트워크 엔티티에 의해 수행되며,
    상기 선택을 검출하는 단계는 상기 복수의 참가자들 중 하나 이상의 참가자와 연관된 참가자 장치로부터 상기 통신망을 통해 상기 선택의 표시를 포함하는 메시지를 수신하는 단계를 포함하고,
    상기 방법은, 상기 업데이트된 상태 정보를 포함하는 메시지를 상기 통신망을 통해 상기 복수의 참가자 장치 각각으로 전송함으로써, 상기 업데이트된 상태 정보를 상기 인스턴트 메시징 통신 세션의 참가자들 각각에게 전달하는 단계를 포함하는
    방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 메시지는 복수의 설문 옵션을 포함하고,
    상기 복수의 업데이트가능한 필드 중 하나의 필드와 연관된 각각의 상기 설문 옵션은 상기 업데이트가능한 필드와 연관된 상기 설문 옵션의 인기를 나타내는 표시자를 포함하는
    방법.
  9. 사용자 장치로서,
    메모리와,
    인스턴트 메시징 통신 세션 동안 상기 사용자 장치와 연관된 참가자와 참가자 장치와 각각 연관된 적어도 하나의 다른 참가자 사이에 통신망을 통해 교환된 메시지를 표시하도록 구성된 디스플레이 - 상기 메시지는 복수의 업데이트가능한 필드를 포함함 - 와,
    클라이언트 애플리케이션을 실행하도록 구성된 하나 이상의 프로세서를 포함하되,
    상기 클라이언트 애플리케이션은
    상기 복수의 업데이트가능한 필드 각각의 상태 정보를 상기 메모리에 유지하고,
    상기 복수의 업데이트가능한 필드 중 적어도 하나의 필드를 편집하기로 한, 상기 복수의 참가자들 중 하나 이상의 참가자에 의한 적어도 하나의 선택을 검출하며,
    상기 검출에 응답하여 상기 복수의 업데이트가능한 필드 중 상기 적어도 하나의 필드의 상태 정보를 업데이트하고,
    업데이트된 상기 상태 정보를 상기 인스턴트 메시징 통신 세션의 참가자들 중 적어도 한 참가자에게 전달하도록 구성된
    사용자 장치.
  10. 인스턴트 메시징 통신 세션 동안 참가자 장치와 각각 연관된 복수의 참가자들 사이에 통신망을 통해 교환된 메시지 - 상기 메시지는 복수의 설문 옵션을 포함함- 를 업데이트하기 위한 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 프로그램 제품은 비일시적 컴퓨터 판독가능 매체로 구현되며, 프로세서 상에서 실행될 때
    상기 복수의 업데이트가능한 필드 각각의 상태 정보를 메모리에 유지하고,
    상기 복수의 업데이트가능한 필드 중 적어도 하나의 필드를 편집하기로 한, 상기 복수의 참가자들 중 하나 이상의 참가자에 의한 적어도 하나의 선택을 검출하며,
    상기 검출에 응답하여 상기 복수의 업데이트가능한 필드 중 상기 적어도 하나의 필드의 상태 정보를 업데이트하고,
    업데이트된 상기 상태 정보를 상기 인스턴트 메시징 통신 세션의 참가자들 중 적어도 한 참가자에게 전달하도록 구성된
    컴퓨터 프로그램 제품.
KR1020177002273A 2014-07-30 2015-07-24 인스턴트 메시징 그룹 설문 기법 KR20170038807A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GBGB1413513.1A GB201413513D0 (en) 2014-07-30 2014-07-30 Instant messaging
GB1413513.1 2014-07-30
US14/498,802 2014-09-26
US14/498,802 US20160034162A1 (en) 2014-07-30 2014-09-26 Instant Messaging
PCT/US2015/041895 WO2016018735A1 (en) 2014-07-30 2015-07-24 Instant messaging group polls

Publications (1)

Publication Number Publication Date
KR20170038807A true KR20170038807A (ko) 2017-04-07

Family

ID=51587474

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177002273A KR20170038807A (ko) 2014-07-30 2015-07-24 인스턴트 메시징 그룹 설문 기법

Country Status (7)

Country Link
US (1) US20160034162A1 (ko)
EP (1) EP3155767A1 (ko)
KR (1) KR20170038807A (ko)
CN (1) CN106664240A (ko)
GB (1) GB201413513D0 (ko)
TW (1) TW201611546A (ko)
WO (1) WO2016018735A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201413581D0 (en) 2014-07-31 2014-09-17 Microsoft Corp Instant messaging
CN106896991B (zh) * 2017-02-21 2020-02-28 北京小米移动软件有限公司 一种更新信息的方法及装置
CN107481384A (zh) * 2017-06-30 2017-12-15 珠海市魅族科技有限公司 一种投票方法和装置、计算机装置、可读存储介质
CN114035729B (zh) * 2021-11-19 2024-04-26 广州博冠信息科技有限公司 电子投票方法及装置、终端设备
CN117560445A (zh) * 2022-08-05 2024-02-13 腾讯科技(深圳)有限公司 一种发布群投票的方法、装置及相关产品

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7325034B2 (en) * 2003-09-24 2008-01-29 International Business Machines Corporation Method and apparatus for scalable peer-to-peer inquiries in a network of untrusted parties
US7668918B2 (en) * 2004-08-02 2010-02-23 Microsoft Corporation Utilizing instant messaging to effectuate structured communication
US8260852B1 (en) * 2005-03-02 2012-09-04 Google Inc. Methods and apparatuses for polls
US20080133671A1 (en) * 2006-11-30 2008-06-05 Yahoo! Inc. Instant answering
US8706818B2 (en) * 2006-12-19 2014-04-22 Microsoft Corporation Remote control-based instant messaging
US7721217B2 (en) * 2007-02-07 2010-05-18 Yahoo! Inc. Templates for themed instant messages
US20080201434A1 (en) * 2007-02-16 2008-08-21 Microsoft Corporation Context-Sensitive Searches and Functionality for Instant Messaging Applications
US8693494B2 (en) * 2007-06-01 2014-04-08 Seven Networks, Inc. Polling
US8265612B2 (en) * 2007-12-18 2012-09-11 Yahoo! Inc. Pocket broadcasting for mobile media content
US8447643B2 (en) * 2008-06-02 2013-05-21 Melvin L. Barnes, Jr. System and method for collecting and distributing reviews and ratings
IL214855A0 (en) * 2011-08-28 2011-10-31 Arnon Joseph A method and device for carrying out a computerized group session
US20130339091A1 (en) * 2012-06-15 2013-12-19 Anthony W. Humay Intelligent social polling platform

Also Published As

Publication number Publication date
CN106664240A (zh) 2017-05-10
TW201611546A (zh) 2016-03-16
GB201413513D0 (en) 2014-09-10
EP3155767A1 (en) 2017-04-19
US20160034162A1 (en) 2016-02-04
WO2016018735A1 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
US11876767B2 (en) Systems and methods for mobile communication integration
US10819841B2 (en) Avatar-based communications launching system
US8447324B2 (en) System for multimedia tagging by a mobile user
US8762459B2 (en) Selectable mode based social networking interaction systems and methods
EP2817925B1 (en) Systems and methods for mobile communication integration
AU2012327213B2 (en) Creating and discovering real-time conversations
US7898423B2 (en) Real-time event notification
US20130226453A1 (en) Systems and methods for mobile communication integration
KR20170038807A (ko) 인스턴트 메시징 그룹 설문 기법
KR20170038806A (ko) 인스턴트 메시징 기법
KR102392436B1 (ko) 인스턴트 메시징을 통한 미디어 데이터 및 위치 정보 공유 기법
US20150319223A1 (en) Delivering Content