KR20240037930A - 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치 - Google Patents

일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치 Download PDF

Info

Publication number
KR20240037930A
KR20240037930A KR1020240034983A KR20240034983A KR20240037930A KR 20240037930 A KR20240037930 A KR 20240037930A KR 1020240034983 A KR1020240034983 A KR 1020240034983A KR 20240034983 A KR20240034983 A KR 20240034983A KR 20240037930 A KR20240037930 A KR 20240037930A
Authority
KR
South Korea
Prior art keywords
schedule
account
host
chat room
guest
Prior art date
Application number
KR1020240034983A
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
Priority claimed from KR1020190133217A external-priority patent/KR102439877B1/ko
Application filed by 주식회사 카카오 filed Critical 주식회사 카카오
Priority to KR1020240034983A priority Critical patent/KR20240037930A/ko
Publication of KR20240037930A publication Critical patent/KR20240037930A/ko

Links

Classifications

    • G06Q50/50
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • 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]

Abstract

일 실시예에 따른 인스턴트 메신저 서버의 동작 방법은 호스트의 일정 생성 요청에 응답하여 호스트의 계정에 종속하는 일정을 생성하는 단계; 일정에 초대되는 초대 대상을 수신하는 단계; 초대 대상에 포함된 적어도 하나의 게스트로부터 일정에 참여할지 여부를 수신하는 단계; 적어도 하나의 게스트의 참여 여부에 기초하여, 일정에 포함된 참여자 정보를 갱신하는 단계; 및 갱신된 참여자 정보에 기초하여, 일정에 참여한 사용자들의 계정들에 종속하는 일정들을 동기화하는 단계를 포함한다.

Description

일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치{APPARATUS AND OPERATING METHOD OF MESSENGER SERVER PROVIDING SCHEDULE SERVICE}
아래의 실시예들은 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치에 관한 것이다.
사용자는 인스턴트 메신저 서버를 통해 다수의 다양한 채팅방들에 참여하여 다른 참여자들과 대화 및/또는 데이터를 공유할 수 있다. 이 밖에도, 인스턴트 메신저 서버는 사용자가 일정을 잘 관리할 수 있도록 하는 캘린더 또한 제공할 수 있다. 하지만, 인스턴트 메신저 서버에 의하여 제공되는 캘린더는 채팅방에 종속되며, 캘린더의 일정은 채팅방 단위로 생성되고 있다. 또한, 채팅방에 참여 중인 참여자들에게 공개되는데, 참여자들이 해당 채팅방에 참여한 시점에 관계없이 모든 일정 정보가 공개되기도 한다. 이로 인하여, 인스턴트 메시징 서비스 상에서 개인 일정을 관리하기 어려운 문제가 있다.
일 측에 따르면, 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법은 호스트(host)의 일정 생성 요청에 응답하여 인스턴트 메시징 서비스를 위한 상기 호스트의 계정에 종속하는 일정을 생성하는 단계; 상기 인스턴트 메시징 서비스 상에서 상기 호스트의 계정의 채팅방 목록 및 상기 호스트의 계정의 친구 목록 중 적어도 하나에 기초하여 상기 일정에 초대되는 초대 대상을 수신하는 단계; 상기 초대 대상에 포함된 적어도 하나의 게스트(guest)로부터 상기 일정에 참여할지 여부를 수신하는 단계; 상기 적어도 하나의 게스트의 참여 여부에 기초하여, 상기 일정에 포함된 참여자 정보를 갱신하는 단계; 및 상기 갱신된 참여자 정보에 기초하여, 상기 일정에 참여한 사용자들의 계정들에 종속하는 일정들을 동기화하는 단계를 포함한다.
상기 인스턴트 메시징 서비스를 위한 사용자의 계정에 종속하는 일정은 사용자 단위의 캘린더에 등록되는 일정을 포함할 수 있다. 상기 사용자 단위의 캘린더는 상기 사용자가 참여한 복수의 채팅방을 통하여 등록되는 복수의 일정들을 포함할 수 있다.
상기 적어도 하나의 게스트로부터 상기 일정에 참여할지 여부를 수신하는 단계는 상기 초대 대상에 기초하여, 상기 일정을 공유할 채팅방을 결정하는 단계; 및 상기 채팅방에 상기 일정을 공유함으로써, 상기 적어도 하나의 게스트로부터 상기 일정에 참여할지 여부를 수신하는 단계를 포함할 수 있다.
상기 호스트의 일정 생성 요청이 특정 채팅방을 통하여 생성된 경우, 해당하는 채팅방에 참여 중인 사용자들이 상기 초대 대상으로 자동으로 입력될 수 있다.
상기 인스턴트 메신저 서버의 동작 방법은 상기 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상을 포함하는 후보 채팅방을 제공하는 단계; 상기 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상들 중 참석 대상을 포함하는 후보 채팅방을 제공하는 단계; 상기 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상을 포함하는 새로운 채팅방을 생성하는 단계; 및 상기 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상들 중 참석 대상을 포함하는 새로운 채팅방을 생성하는 단계 중 적어도 하나를 더 포함할 수 있다.
상기 일정을 생성하는 단계는 상기 일정 생성 요청이 일반 채팅방을 통하여 발생하였는지 여부를 판단하는 단계; 및 상기 판단 결과에 기초하여, 상기 일반 채팅방의 식별 정보를 상기 일정에 태깅(tagging)하는 단계를 포함할 수 있다.
상기 인스턴트 메신저 서버의 동작 방법은 상기 호스트의 계정에 종속하는 일정을 편집하는 인터페이스를 제공하는 단계; 및 상기 호스트의 계정에 종속하는 일정이 편집됨에 따라, 상기 편집된 일정과 상기 적어도 하나의 게스트의 계정에 종속하는 적어도 하나의 일정을 동기화하는 단계를 더 포함할 수 있다.
상기 인스턴트 메신저 서버의 동작 방법은 특정 채팅방에 참여한 사용자의 일정 미리보기 요청에 응답하여, 해당하는 사용자의 계정에 종속하는 일정에 액세스하는 단계; 및 상기 해당하는 사용자의 계정에 종속하는 일정을 탐색하는 인터페이스를 제공하는 단계를 더 포함할 수 있다.
상기 인스턴트 메신저 서버의 동작 방법은 상기 호스트의 일정 공유 요청에 응답하여, 공유 요청된 일정을 공유 요청된 채팅방에 공유하는 단계를 더 포함할 수 있다.
상기 인스턴트 메신저 서버의 동작 방법은 상기 일정이 공유된 채팅방의 사용자들 중 상기 초대 대상에 해당하지 않는 사용자로부터 초대 요청을 수신하는 단계; 상기 일정의 호스트로부터 상기 초대 요청을 수락할지 여부를 수신하는 단계; 및 상기 호스트의 수락 여부에 기초하여, 상기 일정에 포함된 참여자 정보를 갱신하는 단계를 더 포함할 수 있다.
상기 인스턴트 메신저 서버의 동작 방법은 특정 채팅방에 종속하는 일정을 해당하는 채팅방에 참여 중인 사용자들에 종속하는 일정들로 이동(migration)시키는 단계를 더 포함할 수 있다.
상기 인스턴트 메신저 서버의 동작 방법은 특정 사용자로부터, 참여자 정보에 기초한 검색 요청을 수신하는 단계; 상기 특정 사용자의 계정에 종속하는 복수의 일정들 중 상기 검색 요청된 참여자 정보에 대응하는 적어도 하나의 일정을 추출하는 단계; 및 상기 추출된 적어도 하나의 일정을 제공하는 단계를 더 포함할 수 있다.
상기 인스턴트 메신저 서버의 동작 방법은 상기 인스턴트 메시징 서비스의 채팅방에 참여한 사용자로부터 상기 채팅방을 통한 일정 미리보기 요청을 수신하는 단계; 및 상기 사용자의 계정에 종속하는 일정들 중 상기 채팅방과 연관된 일정을 우선적으로 표시하는 뷰를 제공하는 단계를 더 포함할 수 있다.
일 측에 따른 일정 서비스를 제공하는 인스턴트 메신저 어플리케이션의 동작 방법은 인스턴트 메시징 서비스를 위한 사용자의 계정에 종속하는 일정을 생성하기 위한 일정 생성 요청을 서버로 전송하는 단계; 상기 사용자의 계정의 채팅방 목록 및 상기 사용자의 계정의 친구 목록 중 적어도 하나에 기초하여 상기 일정에 초대되는 초대 대상을 입력 받는 단계; 및 상기 초대 대상에 포함된 적어도 하나의 게스트의 참여 여부에 기초하여 갱신된 참여자 정보를 상기 서버로부터 수신하는 단계를 포함한다. 상기 갱신된 참여자 정보에 기초하여, 상기 일정에 참여한 사용자들의 계정들에 종속하는 일정들이 동기화될 수 있다.
상기 어플리케이션의 동작 방법은 상기 사용자가 참여한 복수의 채팅방을 통하여 등록되는 복수의 일정들을 사용자 단위의 캘린더를 통하여 표시하는 단계를 더 포함할 수 있다.
상기 어플리케이션의 동작 방법은 상기 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상을 포함하는 후보 채팅방을 표시하는 단계; 상기 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상들 중 참석 대상을 포함하는 후보 채팅방을 표시하는 단계; 상기 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상을 포함하는 새로운 채팅방을 표시하는 단계; 및 상기 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상들 중 참석 대상을 포함하는 새로운 채팅방을 표시하는 단계 중 적어도 하나를 더 포함할 수 있다.
상기 일정을 생성하는 단계는 상기 일정 생성 요청이 일반 채팅방을 통하여 발생한 경우, 상기 일반 채팅방의 식별정보를 상기 일정에 태깅(tagging)하기 위한 정보를 상기 서버로 전송하는 단계를 포함할 수 있다.
상기 어플리케이션의 동작 방법은 상기 인스턴트 메시징 서비스를 통하여 상기 일정을 공유하는 요청을 상기 서버로 전송하는 단계; 상기 일정이 공유된 채팅방의 사용자들 중 상기 초대 대상에 해당하지 않는 사용자의 초대 요청을 수신하는 단계; 상기 초대 요청을 수락할지 여부를 입력 받는 단계; 및 상기 수락 여부에 기초하여, 상기 일정에 포함된 참여자 정보를 갱신하기 위한 정보를 상기 서버로 전송하는 단계를 더 포함할 수 있다.
상기 어플리케이션의 동작 방법은 상기 사용자가 참여한 채팅방을 통하여 일정 미리보기 요청을 입력 받는 단계; 및 상기 사용자의 계정에 종속하는 일정들 중 상기 채팅방과 연관된 일정을 우선적으로 표시하는 뷰를 표시하는 단계를 더 포함할 수 있다.
도 1은 일 실시예에 따른 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법을 설명하기 위한 도면.
도 2는 일 실시예에 따른 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법을 나타낸 흐름도.
도 3은 일 실시예에 따른 일정이 표시되는 캘린더의 화면을 도시한 도면.
도 4는 일 실시예에 따라 일정에 초대될 초대 대상을 입력 받는 방법을 설명하기 위한 도면.
도 5는 일 실시예에 따라 일정의 참여 대상과 채팅을 요청하는 방법을 설명하기 위한 도면.
도 6은 일 실시예에 따라 일정에 참여할지 여부를 입력 받는 방법을 설명하기 위한 도면.
도 7은 일 실시예에 따라 호스트가 참여자들과 일정을 공유하는 과정을 설명하기 위한 도면.
도 8은 일 실시예에 따라 검색 요청된 참여자 정보에 대응하는 적어도 하나의 일정을 제공하는 방법을 설명하기 위한 도면.
도 9는 일 실시예에 따른 일정 미리 보기를 수행하는 방법을 설명하기 위한 도면.
도 10은 일 실시예에 따른 일정의 미리 알림 화면을 나타낸 도면.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다. 아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 입력, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 입력, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 실시예에 따른 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법을 설명하기 위한 도면이다. 도 1을 참조하면, 일 실시예에 따른 인스턴트 메시징 서비스를 제공하는 인스턴트 메신저 서버(이하, '서버')가 호스트(host) 도메인(101) 및 게스트(guest) 도메인(102)에서 수행하는 동작들이 도시된다.
일 실시예에서 '호스트(host)'는 인스턴트 메시징 서비스를 이용하는 사용자들 중 자신의 계정에 종속하는 일정을 생성한 사용자에 해당할 수 있다. 호스트는 인스턴트 메신저 서버스를 이용하는 다른 사용자들 중 일정에 초대될 초대 대상을 선택 또는 결정할 수 있다. 이때, 호스트에 의해 해당 일정에 초대된 초대 대상이 '게스트(guest)'에 해당할 수 있다. 호스트 도메인은 호스트의 단말에 설치된 어플리케이션을 통하여 제공되는 서비스 영역이고, 게스트 도메인은 게스트의 단말에 설치된 어플리케이션을 통하여 제공되는 서비스 영역일 수 있다.
호스트의 단말 및 게스트의 단말은 각 단말에 설치된 어플리케이션에 의해 구동될 수 있다. 각 단말에는 예를 들어, 사용자에게 호스트의 계정에 종속하는 일정을 관리하는 서비스를 제공하는 인스턴트 메신저 어플리케이션이 설치될 수 있다. 해당 어플리케이션은 소셜 네트워킹 서비스 또는 인스턴트 메시징 서비스를 제공하는 어플리케이션 등을 포함할 수 있다. 일 실시예에 따른 단말은 예를 들어, PC(Personal Computer), 넷북, 노트북, PDA(Personal Digital Appliance), 스마트폰, 웨어러블 디바이스(Wearable device), 및 유사한 기능을 수행하는 다양한 사용자 표시 장치들을 포함할 수 있다.
서버는 호스트 도메인(101)에서 제공되는 사용자 인터페이스(UI), 기능(function), 동작(operation) 또는 서비스 등을 위하여 호스트의 단말에 설치된 인스턴트 메신저 어플리케이션과의 연동하고, 게스트 도메인(102)에서 제공되는 사용자 인터페이스(UI), 기능, 동작 또는 서비스 등을 위하여 게스트의 단말에 설치된 인스턴트 메신저 어플리케이션과 연동할 수 있다.
서버는 일정 서비스를 제공하는 제1 서버와 인스턴트 메시징 서비스를 제공하는 제2 서버를 포함할 수 있다. 예를 들어, 제1 서버는 일정 생성(110), 일정초대(120), 일정가등록(130), 새소식(140)의 서비스를 제공할 수 있다. 또한, 제2 서버는 채팅방 (103, 106), 나와의 채팅방(104, 107), 내서랍(105)의 서비스를 제공할 수 있다. 제1 서버와 제2 서버는 단일 서버 상에 구현될 수도 있고, 별도의 서버로 구현될 수도 있다. 제1 서버와 제2 서버 간의 연동을 통하여, 일정 서비스와 인스턴트 메시징 서비스가 연동될 수 있다.
호스트 도메인(101)은 예를 들어, 일반 채팅방(103), 나와의 채팅방(104), 및 내 서랍(105)을 포함할 수 있다. 일반 채팅방(103)은 적어도 한명 이상의 타인과 채팅하기 위하여 사용자가 참여 중인 일반적인 유형의 채팅방에 해당할 수 있다. 나와의 채팅방(104)은 사용자 자신과의 대화를 위하여 미리 정해진 유형의 채팅방으로, 일반 채팅방(103)과 구별될 수 있다. 내 서랍(105)은 인스턴트 메시징 서비스와 연동되는 스토리지 서비스를 지칭할 수 있다.
호스트는 일반 채팅방(103), 나와의 채팅방(104), 또는 내 서랍(105)을 통해 서버에게 일정 생성 요청을 전송할 수 있다. 도면에 도시하지 않았으나, 실시예에 따라 호스트의 단말에 설치된 어플리케이션에서 일정 서비스를 위하여 별도로 제공되는 사용자 인터페이스를 통하여 서버에게 일정 생성 요청을 전송할 수도 있다.
서버는 호스트의 일정 생성 요청에 응답하여 인스턴트 메시징 서비스를 위한 호스트의 계정에 종속하는 일정을 생성할 수 있다(110). 이때, 일정이 포함된 캘린더는 채팅방이 아닌 호스트의 계정에 종속되며, 캘린더에 포함된 개별 일정(들) 또한 호스트의 계정에 종속될 수 있다. 일정이 계정에 종속한다는 것은 해당 일정이 특정 계정을 위한 캘린더(또는, 사용자 단위의 캘린더)에 등록되는 것을 의미할 수 있다. 예를 들어, 일정이 계정에 종속하는 경우, 복수의 채팅방들을 통하여 복수의 일정들이 생성되더라도 호스트의 계정을 위한 동일한 캘린더에 등록될 수 있다. 반면, 일정이 채팅방에 종속하는 경우, 복수의 채팅방들을 통하여 복수의 일정들이 생성되면, 각 일정들은 해당하는 채팅방을 위한 서로 다른 캘린더에 등록된다.
일정이 생성되면, 호스트는 일정을 함께 하고자 하는 초대 대상을 선택함으로써 생성된 일정의 게스트로 초대할 수 있다(120). 이때, 초대 대상은 특정 채팅방일 수도 있고, 개별 사용자일 수도 있다. 예를 들어, 호스트는 인스턴트 메시징 서비스 상에서 호스트의 계정의 채팅방 목록 및/또는 호스트의 계정의 친구 목록에 기초하여 일정에 초대되는 초대 대상을 수신할 수 있다. 호스트로부터 초대 대상을 입력 받기 위하여, 호스트 도메인에 채팅방 목록 및/또는 친구 목록을 포함하는 피커(picker) 인터페이스가 호스트의 단말을 통하여 제공될 수 있다. 일 실시예에 따르면, 일반 채팅방을 통하여 일정 생성이 요청된 경우, 해당 채팅방 혹은 해당 채팅방의 참여자들이 초대 대상으로 자동으로 입력될 수 있다.
도면에 도시하지 않았으나, 초대 대상을 수신하는 단계는 일정을 생성하는 단계에 포함될 수 있다. 예를 들어, 호스트의 일정 생성 요청에 응답하여 초대 대상을 입력 받는 인터페이스가 호스트의 단말에 제공될 수 있고, 초대 대상의 입력이 완료된 이후에 일정이 생성될 수도 있다.
서버는 초대 대상에 포함된 적어도 하나의 게스트(guest)로부터 해당 일정에 참여할지 여부를 수신할 수 있다. 예를 들어, 서버는 호스트의 일정 초대(120)에 반응하여 게스트의 개인 캘린더에 일정을 가등록(130)하고, 새소식(140)을 통하여 초대된 일정이 있음을 게스트의 단말에 알릴 수 있다. 게스트는 초대된 일정에 참여할지 여부를 입력할 수 있다. 게스트의 개인 캘린더에 가등록된 일정은 게스트의 계정에 종속하는 일정일 수 있다. 도면에 도시하지 않았으나, 실시예에 따라 초대/변경 알림은 호스트와 게스트가 참여한 채팅방을 통해서도 제공될 수 있다.
서버는 게스트의 참여 여부에 기초하여, 호스트의 계정에 종속하는 일정에 포함된 참여자 정보를 갱신할 수 있다. 참여자 정보는 초대 대상들에 대한 정보, 및/또는 초대 대상들의 응답(예를 들어, 참석, 불참 및 미정의 응답)에 대한 정보를 포함할 수 있다.
이 경우, 서버는 갱신된 참여자 정보에 기초하여, 해당 일정에 참여한 사용자들의 계정들에 종속하는 일정들을 동기화할 수 있다. 예를 들어, 호스트의 계정에 종속하는 일정과 게스트의 계정에 종속하는 일정을 동기화할 수 있다. 서버는 게스트의 계정에 종속하는 일정에 포함된 참여자 정보를 갱신할 수 있다. 실시예에 따라, 서버는 일정에 초대된 초대 대상들의 계정들에 종속하는 일정들을 동기화하거나, 초대 대상들 중 참여 의사를 밝힌 참여 대상들의 계정들에 종속하는 일정들을 동기화할 수도 있다.
일 실시예에 따르면, 호스트의 계정에 종속하는 일정은 채팅방을 통하여 공유될 수 있다. 일 예로, 초대 대상이 결정됨에 따라, 서버는 초대 대상에 기초하여 일정을 공유할 채팅방(106)을 자동으로 결정할 수 있다. 예를 들어, 서버는 초대 대상에 포함된 개별 사용자와 호스트 사이의 1:1 채팅방을 일정을 공유할 채팅방으로 결정하거나, 초대 대상에 포함된 사용자들과 호스트 사이의 그룹 채팅방을 일정을 공유할 채팅방으로 결정할 수 있다. 또는, 서버는 호스트의 단말로부터 일정을 공유할 채팅방을 수신할 수도 있다. 예를 들어, 서버는 일정을 공유할 복수의 후보 채팅방들을 사용자에게 추천하고, 사용자의 선택에 의하여 일정을 공유할 채팅방을 결정할 수 있다.
서버는 호스트의 일정 공유 요청에 응답하여, 결정된 채팅방(106)으로 공유 요청된 일정을 공유할 수 있다. 서버가 채팅방(106)에 일정을 공유함으로써 호스트와 게스트는 채팅방(106)을 통해 서로 일정을 확인할 수 있다.
일 실시예에 따르면, '초대하기'는 일정 서비스 상에서 일정을 함께할 사용자들을 지정하는 액션이고, '공유하기'는 메시징 서비스를 통하여 일정을 공유하기 위한 메시지를 전송하는 액션이다. '초대하기'의 대상과 '공유하기'의 대상은 동일할 수도 있고, 상이할 수도 있다. 예를 들어, 초대 대상이 사용자 A와 사용자 B 로 지정되어 일정 S가 생성된 후, 일정 S가 사용자 A, 사용자 B, 및 사용자 C가 참여 중인 그룹 채팅방 G로 공유될 수 있다. 이 경우, 사용자 C는 일정 S의 초대 대상은 아니지만, 그룹 채팅방 G를 통하여 일정 S를 공유 받을 수 있다.
이처럼 일정이 공유된 채팅방의 사용자들이 모두 초대 대상에 해당하는 것은 아니다. 아래에서 상세히 설명하겠으나, 이 경우 일정이 공유된 채팅방의 사용자들 중 초대 대상에 해당하지 않는 사용자는 호스트에게 자신을 초대해 줄 것을 요청하는 초대 요청을 전송할 수 있다. 초대 대상에 해당하지 않는 사용자는 해당 일정의 호스트로부터 초대 요청이 수락된 경우에 해당 일정에 게스트로 참여할 수 있다.
서버가 채팅방(106)에 일정을 공유한 경우, 해당 일정은 게스트의 개인 캘린더로 가등록될 수 있다(130). 게스트의 개인 캘린더로 가등록된 일정은 게스트가 해당 일정에 참여할지 여부를 입력한 경우에 게스트의 일정으로 생성될 수 있다. 이때, 서버는 호스트의 계정에 종속하는 일정에 기초하여, 적어도 하나의 게스트의 계정에 종속하는 적어도 하나의 일정을 생성할 수 있다.
예를 들어, 게스트가 해당 일정에 참여할지, 불참할지, 혹은 미정인지를 선택한 경우, 서버는 해당 일정에 포함된 참여자 정보에서 해당 게스트의 참여자 정보를 갱신할 수 있다. 서버는 갱신된 참여자 정보에 기초하여, 호스트의 일정과 적어도 하나의 게스트에 종속된 적어도 하나의 일정을 동기화할 수 있다.
게스트가 가등록된 일정에 대한 응답을 미리 정해진 시간동안 입력하지 않거나, 가등록된 일정에 지정된 날짜가 경과하였거나, 혹은 게스트가 해당 일정을 등록하지 않겠다는 입력을 한 경우, 가등록된 일정은 삭제될 수 있다. 실시예에 따라, 게스트가 해당 일정에 참여할 것을 거절한 경우, 게스트의 일정 상세 화면에는 해당 일정이 거절되었음이 표시되고, 게스트의 개인 캘린더에 가등록된 일정은 삭제될 수도 있다.
게스트가 해당 일정에 참여할 것을 선택함으로써 게스트의 계정에 종속하는 일정이 생성된 경우, 호스트가 해당 일정에 대해 수행한 초대 및/또는 변경 알림은 미리 정해진 UI(예를 들어, 일정 모아보기 기능의 새소식 UI 등)를 통해 게스트에게 알려질 수 있다(140). 예를 들어, 호스트의 계정에 종속하는 일정을 편집하는 인터페이스를 통해 일정이 편집된 경우, 서버는 편집된 일정과 적어도 하나의 게스트의 계정에 종속하는 적어도 하나의 일정을 동기화할 수 있다.
또한, 게스트는 게스트의 나와의 채팅방(107)을 통해 일정에 대한 미리 알림을 설정할 수 있다(150). 일정에 대한 미리 알림을 설정한 경우에 호스트 및/또는 게스트의 단말에 제공되는 화면의 일 예는 도 10을 통하여 후술한다. 실시예에 따라, 게스트의 설정 없이 자동으로 일정에 대한 미리 알림이 나와의 채팅방에 전송될 수도 있다.
일 실시예에 따르면, 서버는 일정 생성 요청이 일반 채팅방을 통하여 발생하였는지 여부를 판단하고, 일반 채팅방에서 발생한 경우, 해당 채팅방의 식별정보를 일정에 태깅(tagging)할 수 있다. 일정에 태깅된 채팅방의 식별정보는 다양하게 활용될 수 있다. 예를 들어, 일정의 참여 대상과 채팅을 요청하는 기능이 제공될 수 있으며, 이 때 해당 일정에 태깅된 채팅방의 식별정보에 기초하여 해당 채팅방이 자동으로 추천될 수 있다.
일 실시예에서 따르면, 일반 채팅방으로 통하여 일정 생성이 요청되더라도, 해당 채팅방에 참여 중인 사용자들 중 적어도 일부는 해당 일정에 초대되지 않을 수 있다. 다시 말해, 해당 일정에 대한 접근 권한은 일정 생성이 요청된 채팅방과 무관하게 해당 일정으로의 초대와 초대에 대한 수락에 의해 부여될 수 있다.
이하, 본 명세서에서 사용되는 용어를 아래의 [표 1]과 같이 간략하게 정리할 수 있다.
여기서, '소유'는 일정을 본인의 캘린더에 종속시키고, 변경 등을 할 수 있는 소유 권한을 의미할 수 있으며, 일정 생성 요청을 통하여 생성된 제1 일정에 대한 호스트의 소유 권한과 일정 초대를 통하여 생성된 제2 일정에 대한 게스트의 소유 권한은 상이할 수 있다.
일 실시예에 따르면 일정의 작성 권한은 아래의 [표 2]와 같이 일정의 작성자 및 채팅방의 종류에 따라 달라질 수 있다.
채팅방 구분 작성 권한
나와의 채팅방 해당 사용자
일반 채팅방 참여자 전원
오픈 채팅방 참여자 전원 (혹은 방장)
기업 채팅방 해당 기업
또한, 일 실시예에 따르면, 호스트는 예를 들어, 일정 편집, 일정 삭제, 일정으로의 초대, 및 미리 알림 설정 등과 같이 호스트의 계정에 종속하는 모든 일정과 관련된 편집 권한을 가질 수 있다. 이와 달리, 게스트는 자신(게스트)의 계정에 종속하는 일정에 대한 일부 편집 권한만을 가질 수 있으며, 일정으로의 초대 권한을 가지지 않는다. 예를 들어, 게스트는 일정의 제목이나 일정에 대한 설명만을 편집할 수 있으며, 게스트의 일정이 편집되더라도 호스트의 일정 및 다른 게스트의 일정과 동기화되지 않는다.도면에 도시하지 않았으나, 서버는 특정 채팅방(예를 들어, 5명의 사용자들이 참여 중인 채팅방)에 종속하는 일정을, 일정을 공유할 채팅방에 참여 중인 사용자들에 종속하는 일정들로 이동(migration)시키는 기능을 제공할 수 있다. 예를 들어, 채팅방에 종속하는 일정이 이미 존재하는 경우, 해당 일정에 기초하여 참여자들의 계정들에 종속하는 일정들로 생성할 수 있다. 이 경우, 채팅방에 종속하는 일정을 생성한 참여자가 호스트가 되고, 나머지 참여자들이 게스트가 될 수 있다.도 2는 일 실시예에 따른 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법을 나타낸 흐름도이다. 도 2를 참조하면, 일 실시예에 따른 인스턴트 메신저 서버(이하, '서버')는 호스트의 일정 생성 요청에 응답하여 호스트의 계정에 종속하는 일정을 생성한다(210). 이때, 호스트의 계정에 종속하는 일정은 예를 들어, 아래의 도 3에 도시된 화면과 같이 표시될 수 있다.
서버는 일정에 초대될 초대 대상을 수신한다(220). 서버는 호스트의 단말을 통하여 인스턴트 메시징 서비스 상에서 호스트의 계정의 채팅방 목록 및/또는 호스트의 계정의 친구 목록에 기초하여 초대되는 초대 대상에 대한 정보를 수신할 수 있다. 초대 대상에 대한 정보는 채팅방에 대한 정보(예를 들어, 채팅방의 식별자, 채팅방 참여자의 식별자 등) 또는 개별 사용자의 식별자를 포함할 수 있다.
서버가 초대 대상을 수신하는 과정은 예를 들어, 아래의 도 4를 참조하여 설명한다. 일 실시예에 따르면, 호스트의 단말에서 초대 대상이 자동으로 입력될 수 있다. 예를 들어, 호스트의 일정 생성 요청이 특정 채팅방을 통하여 생성된 경우, 해당하는 채팅방에 참여 중인 사용자들이 초대 대상으로 자동으로 입력될 수 있다. 호스트는 자동으로 입력된 초대 대상을 편집할 수 있다.
서버는 초대 대상에 기초하여, 일정을 공유할 채팅방을 결정한다(230). 서버는 예를 들어, 일정과 관련한 채팅 요청에 응답하여, 참여자 정보에 기초한 후보 채팅방을 제공할 수 있다. 서버가 일정을 공유할 채팅방을 결정하는 방법은 아래의 도 5를 참조하여 구체적으로 설명한다.
서버는 채팅방에 일정을 공유함으로써, 초대 대상에 포함된 적어도 하나의 게스트로부터 일정에 참여할지 여부를 수신한다(240). 서버가 게스트로부터 일정에 참여할지 여부를 수신하는 방법은 아래의 도 6을 참조하여 구체적으로 설명한다.
*
*서버는 적어도 하나의 게스트의 참여 여부에 기초하여, 일정에 포함된 참여자 정보를 갱신한다(250).
도 3은 일 실시예에 따른 일정이 표시되는 캘린더의 화면을 도시한 도면이다. 도 3을 참조하면, 일 실시예에 따른 호스트의 계정에 종속하는 일정이 월별로 표시되는 캘린더의 월별 보기 화면(310) 및 월별 보기 화면(310)에 포함된 일정 목록만이 표시되는 목록 보기 화면(330)이 도시된다.
월별 보기 화면(310)의 상단에는 예를 들어, 오늘(2018년 07월 24일)에 해당하는 월(7월)이 캘린더 형태로 표시할 수 있다. 또한, 월별 보기 화면(310)의 하단에는 오늘 또는 사용자에 의해 선택된 일자에 해당하는 일정 목록이 표시될 수 있다. 월별 보기 화면(310)에서 일정이 있는 날짜의 아래에는 ● 와 같은 마크가 표시될 수 있다. 예를 들어, 오늘 또는 사용자에 의해 선택된 일자에 해당하는 일정이 없는 경우, "일정이 없습니다."와 같은 문구가 표시될 수 있다.
일정 목록은 각 일정의 제목(예를 들어, '주간 보고 작성', '플랫폼 부문 주간 회의' 등), 시작 일시, 종료 일시, 장소, 등과 같은 정보를 포함할 수 있다. 이때, 일정들의 목록에는 사용자가 참석 여부를 선택할 수 있는 버튼들(예를 들어, 참석 버튼, 불참 버튼, 및 미정 버튼)이 함께 표시될 수 있다. 또한, 일정 목록에는 해당 일정의 호스트의 프로필 사진(315)을 포함하는 프로필 정보가 표시될 수 있다.
월별 보기 화면(310)은 일정 작성을 위한 아이콘(311), 캘린더 검색을 위한 아이콘(313), 및/또는 캘린더 뷰 모드 전환을 위한 아이콘(317)을 포함할 수 있다.
사용자(예를 들어, 호스트)가 아이콘(311)을 선택하는 경우, 사용자의 단말에는 일정 작성을 위한 작성 폼(form)(도 4의 화면(410) 참조)이 표시될 수 있다. 작성 폼에서 사용자는 일정의 제목(title)을 입력하고, 일정의 시작 일시 및 종료 일시를 설정할 수 있다. 사용자가 작성 폼에 포함된 장소 필드를 탭(tab)하는 경우, 장소 검색을 위한 사용자 인터페이스 화면이 제공될 수 있다.
또한, 사용자는 작성 폼에 포함된 일정의 미리 알림 설정 항목을 선택함으로써 예를 들어, 5분전 알림, 15분 전 알림, 1시간 전 알림, 1일 전 알림 등과 같이 해당 일정에 대한 미리 알림 시간을 설정할 수 있다. 미리 알림은 복수 개의 시간 대에 대해 설정될 수 있다.
이 밖에도, 작성 폼에는 반복 설정을 위한 아이콘(미도시)이 포함될 수 있 다. 사용자는 반복 설정을 위한 아이콘을 선택함으로써 해당 일정을 매일, 매주, 매월, 매년과 같은 주기로 반복 설정할 수 있다.
사용자(예를 들어, 호스트)가 아이콘(313)을 선택한 경우, 사용자의 단말에는 캘린더 검색 메뉴가 표시될 수 있다. 사용자가 아이콘(317)을 선택한 경우, 월별 보기 화면(310)에 표시된 달력이 접어지고, 목록 보기 화면(330)와 같이 일정 목록만이 표시될 수 있다.
도 4는 일 실시예에 따라 일정에 초대될 초대 대상을 입력 받는 방법을 설명하기 위한 도면이다. 도 4를 참조하면, 호스트의 일정 작성을 위한 작성 폼을 나타낸 화면(410), 호스트의 일정 생성 요청이 호스트의 캘린더를 통해 생성되는 경우의 초대를 위한 진입 화면(430), 호스트의 일정 생성 요청이 특정 채팅방을 통하여 생성된 경우의 초대를 위한 진입 화면(450), 및 초대 대상에 대한 입력이 완료된 화면(470)이 도시된다.
일 실시예에 따른 호스트는 화면(410)에 포함된 초대 아이콘(415)을 선택함으로써 일정에 초대될 초대 대상을 입력할 수 있다. 이때, 초대 대상은 개별 사용자일 수도 있고, 특정 채팅방일 수도 있다.
예를 들어, 호스트의 일정 생성 요청이 호스트의 캘린더를 통해 생성되는 경우, 호스트의 단말에는 화면(430)이 표시될 수 있다. 호스트는 화면(430)에 표시된 개별 사용자들 중 일정에 초대될 초대 대상을 선택할 수 있다. 호스트의 일정 생성 요청이 특정 채팅방을 통하여 생성된 경우, 호스트의 단말에는 화면(450)이 표시될 수 있다. 호스트는 화면(450)에 표시된 해당 채팅방에 참여 중인 사용자들 중 일정에 초대될 초대 대상을 선택할 수 있다. 호스트의 일정 생성 요청이 화면(450)과 같이 특정 채팅방을 통하여 생성된 경우, 호스트의 단말은 해당하는 채팅방에 참여 중인 사용자들을 호스트의 계정에 종속하는 일정에 초대될 초대 대상으로 자동 입력할 수 있다.
화면(430) 및/또는 화면(450)을 통해 초대 대상의 선택이 완료된 경우, 화면(470)과 같이 최종적으로 선택된 초대 대상들이 표시될 수 있다. 예를 들어, 초대 대상이 3명 또는 5명 이상인 경우, 3명 또는 5명을 초과하는 초대 대상의 인원 수는 '+' 표시와 함께 표시될 수 있다. '+'가 선택되는 경우, 표시가 생략되었던 초대 대상들이 표시되면서, 스크롤을 통하여 초대 대상들을 탐색하는 인터페이스가 제공될 수 있다. 혹은, '+'가 선택되는 경우, 초대 대상들을 한번에 표시하는 별도의 인터페이스가 제공될 수도 있다.
도 5는 일 실시예에 따라 일정의 참여 대상과 채팅을 요청하는 방법을 설명하기 위한 도면이다. 도 5를 참조하면, 일정 상세 보기를 위한 화면(510), 일정의 참여 대상과 채팅을 요청하는 화면(530) 및 해당 채팅방에 일정 미리 보기가 메시지의 형태로 표시된 화면(550)이 도시된다.
예를 들어, 화면(510)과 같이 일정의 초대 대상이 5명으로 지정되어 있고, 호스트가 화면(510)에 포함된 채팅하기 아이콘(515)을 선택할 수 있다. 서버는 채팅 요청에 응답하여, 화면(530)과 같이 호스트 및 일정의 초대에 수락한 게스트들을 포함하는 참여자 정보에 기초한 후보 채팅방을 제공(또는 추천)할 수 있다. 이때, 후보 채팅방은 5명의 사용자들이 참여 중인 채팅방들일 수 있다.
일 실시예에 따르면, 채팅방의 추천 순서는 다양하게 설정될 수 있다. 예를 들어, i)초대 대상(예를 들어, 5명)만 들어간 채팅방을 가장 우선적으로 배치한다거나, ii) 초대 대상(예를 들어, 5명)이 포함된 채팅방 중 가장 최근에 메시지가 송수신된 채팅방을 배치한다거나, iii) 참석자들(예를 들어, 초대 대상 중 참석을 표시한 사람들)만 포함된 채팅방을 가장 먼저 배치하는 등으로 설정될 수 있다.
또는 서버는 호스트가 화면(510)에 포함된 채팅하기 아이콘(515)을 선택한 경우, 채팅 요청에 응답하여 참여자 정보에 기초한 새로운 채팅방을 생성할 수도 있다. 예를 들어, 일정의 참여 대상들로 구성된 새로운 채팅방이 생성될 수 있다.
도 6은 일 실시예에 따라 일정에 참여할지 여부를 입력 받는 방법을 설명하기 위한 도면이다. 도 6을 참조하면, 일 실시예에 따른 일정 상세 보기를 위한 화면(610), 일정에 참여 여부가 응답된 화면(630) 및 참여자 상세 보기를 위한 화면(650)이 도시된다.
사용자가 화면(610)에 포함된 편집 버튼(611)을 선택하면, 사용자의 화면에는 일정과 관련한 편집을 위한 편집 메뉴가 표시될 수 있다.
일 실시예에 따르면, 해당 일정의 소유자가 호스트와 게스트 중 누구인지에 따라 아래의 [표 3]과 같이 일정의 각 필드에 대한 수정의 허용 범위 및 반영 대상이 결정될 수 있다.
호스트는 일정의 모든 필드에 대한 수정 및/또는 삭제가 가능하다. 호스트에 의해 수정 및/또는 삭제된 일정은 호스트 및 게스트를 포함하는 참여자 전체의 일정으로 반영될 수 있다. 예를 들어, 호스트가 해당 게스트에 대하여 일정으로의 초대를 취소한 경우, 서버는 해당 게스트에게 일정 취소를 알릴 수 있다. 호스트가 일정을 편집한 후에 저장하면, "일정을 수정하면 참석 여부 응답이 초기화되고 일정 변경 알림을 보냅니다. 일정을 수정하시겠습니까?"와 같은 확인 팝업이 호스트의 화면에 표시될 수 있다.
이와 달리, 게스트는 일부 필드에 대한 수정만 가능하다. 예를 들어, 게스트는 일정의 제목, 알림, 및 설명 필드를 수정할 수 있다. 게스트에 의해 수정된 일정은 자신(게스트)의 계정에 종속하는 일정에만 반영될 수 있다. 예를 들어, 게스트가 일정을 편집한 후에 저장하면 "수정된 내용은 내 캘린더에만 반영됩니다."와 같은 확인 팝업이 게스트의 화면에 표시될 수 있다.
화면(610)에는 사용자가 초대받은 일정에 대한 참석 응답을 표시할 수 있는 버튼들(참석 버튼, 불참 버튼, 및/또는 미정 버튼)이 표시될 수 있다. 사용자는 일정 종료 전까지 참석 응답에 대한 상태값(예를 들어, 참석, 불참, 또는 미정)을 변경할 수 있다. 이때, 사용자의 응답 여부와 관계없이 일정은 캘린더에 표시될 수 있다. 사용자가 화면(610)에 표시된 다운로드 아이콘(613)을 선택하면, 사용자가 초대받은 일정이 해당 사용자의 단말의 기본 캘린더에 저장될 수 있다. 또한, 사용자가 화면(610)에 표시된 삭제 아이콘(615)을 선택하는 경우, 사용자가 초대 받은 일정은 삭제될 수 있다. 이때, 해당 사용자가 호스트라면, 일정의 삭제에 의해 참여자들에게 일정 취소가 알려질 수 있다. 또한, 해당 사용자가 게스트라면, 일정의 삭제에 의해 해당 일정은 게스트 본인의 캘린더에서만 제거될 수 있다.
사용자가 화면(610)에 표시된 일정 공유하기 아이콘(617)을 선택한 경우, 채팅방에 일정을 공유할 수 있다. 사용자는 일정 공유하기 아이콘(617)을 선택함으로써 초대받지 않은 참여자에게 일정을 공유할 수도 있다.
사용자가 화면(610)에서 참석 응답을 하면, 선택된 버튼 인터페이스는 화면(630)과 같이 도시된 것과 같이 선택되지 않은 다른 버튼 인터페이스와 다르게 표시될 수 있다. 초대 대상에 포함된 적어도 하나의 사용자의 응답에 따라, 화면(630)과 같이 참석/ 불참/ 미정을 선택한 인원 수가 표시될 수 있다. 이때, 응답하지 않은 게스트는 미정을 선택한 것으로 카운트될 수 있다.
참석 여부가 최종적으로 결정된 경우, 사용자는 화면(650)을 통해 참여자에 대한 상세 정보를 확인할 수 있다. 화면(650)에는 참석 응답의 유형 별로 참여자의 수와 참여자의 프로필 정보가 표시될 수 있다. 이때, 참여자 중 친구가 아닌 참여자에 대하여는 친구 추가 버튼(655)이 함께 표시될 수 있다.
도 7은 일 실시예에 따라 호스트가 참여자들과 일정을 공유하는 과정을 설명하기 위한 도면이다. 도 7을 참조하면, 일 실시예에 따라 사용자 X(예를 들어, 호스트)가 일정 상세 보기 화면(710)에 포함된 일정 공유하기 아이콘(715)을 선택함으로써 일정을 공유하는 과정이 도시된다. 전술한 바와 같이, 사용자 X는 일정 공유하기 아이콘(715)을 선택함으로써 일정의 공유 대상을 선택할 수 있다(720). 일정의 공유 대상은 개별 사용자일 수도 있고, 채팅방일 수도 있다. 공유 대상 선택이 완료되면, 선택된 공유 대상의 채팅방(예를 들어, 1 대 1 채팅방 혹은 그룹 채팅방)으로 일정 말풍선이 전송될 수 있다(730). 이때, 일정이 공유된 채팅방의 사용자들 중 초대 대상에 해당하는 사용자 Y의 단말에서 일정 말풍선이 선택되면, 일정 상세 화면이 표시될 수 있다(740).
또한, 일정이 공유된 채팅방의 사용자들 중 초대 대상에 해당하지 않는 사용자 Z의 단말에는 예를 들어, "일정에 초대받지 않은 멤버입니다."와 같은 미초대 안내 얼럿이 표시될 수 있다(750). 이 경우, 초대 대상에 해당하지 않는 사용자 Z는 일정 공유를 선택한 사용자 X에게 자신을 일정에 초대해 줄 것을 요청하는 초대 요청을 전송할 수 있다. 사용자 Z의 초대 요청은 일정의 호스트인 사용자 X의 새소식에 초대 요청 알림으로 표시될 수 있다(760). 실시예에 따라, 초대 요청 메시지는 호스트가 참여 중인 채팅방으로 전송될 수도 있다.
서버는 사용자 X로부터 초대 요청을 수락할지 여부를 입력 받고, 사용자 X의 수락 여부에 기초하여, 일정에 포함된 참여자 정보를 갱신할 수 있다. 참여자 정보가 갱신됨에 따라 사용자 Z는 초대 요청 친구로 확인(confirm)되고, 이에 따라 사용자 Z의 단말에서도 일정 상세 화면이 표시될 수 있다(740). 참여자 정보가 갱신되면, 호스트 및 게스트(들)의 일정들이 동기화될 수 있다.
도 8은 일 실시예에 따라 검색 요청된 참여자 정보에 대응하는 적어도 하나의 일정을 제공하는 방법을 설명하기 위한 도면이다. 도 8을 참조하면, 일정의 검색 진입 화면(810), 검색 페이지를 나타낸 화면(830), 및 검색 결과를 나타낸 화면(850)이 도시된다.
사용자가 검색 진입 화면(810)에 포함되 검색 아이콘(815)을 선택한 경우, 화면(830)과 같은 검색 페이지가 제공될 수 있다. 이때, 화면(830)과 같은 검색 페이지에는 예를 들어, 제목, 장소, 메모, 초대 멤버 이름 등과 같은 검색 대상을 입력하는 검색창(831)이 포함될 수 있다. 또한, 검색 페이지에는 '함께 하는 친구로 찾기' 항목(833)이 포함될 수 있다. 이때, 함께하는 친구로 찾기 항목(833)은 일정의 호스트 및/또는 일정의 참여자가 포함된 일정을 검색하는 기능을 수행할 수 있다.
예를 들어, 특정 사용자 A로부터, 참여자 정보(참여자 B, C, D,)에 기초한 검색 요청을 수신한 경우, 서버는 특정 사용자의 계정에 종속하는 복수의 일정들 중 검색 요청된 참여자 정보에 대응하는 적어도 하나의 일정을 추출하여 제공할 수 있다. 참여자 B, C, D에 대응하는 최근 5건의 일정이 존재한다면, 서버는 5건의 일정을 검색 결과로서 제공할 수 있다. 실시예에 따라서, 각 일정이 색상 별로 구별되어 있는 경우, 서버는 지정해둔 색상 별로 필터링하여 일정을 검색할 수 있다.
최종적인 일정 검색 결과는 화면(850)과 같이 월 단위로 구분된 리스트 형태로 제공될 수 있다. 이때, 검색 요청된 참여자 정보에 대응하는 적어도 하나의 일정은 예를 들어, 월, 일자, 날짜, 요일, 제목, 시간, 장소 등과 같은 정보를 포함할 수 있다. 검색된 일정은 오늘과 가장 가까운 일정을 기준으로 순차적으로, 또는 역순으로 정렬되어 표시될 수 있다.
도 9는 일 실시예에 따른 일정 미리 보기를 수행하는 방법을 설명하기 위한 도면이다. 도 9를 참조하면, 일 실시예에 따른 나와의 채팅방에 표시되는 일정 미리 보기 화면(910) 및 일반 채팅방에 표시되는 일정 미리 보기 화면(930)이 도시된다.
예를 들어, 특정 채팅방에 참여한 사용자가 일정 미리보기를 요청한 경우, 서버는 해당하는 사용자의 계정에 종속하는 일정에 액세스함으로써 일정 미리 보기화면(910, 930)을 제공할 수 있다. 이때, 서버는 사용자에게 해당하는 사용자의 계정에 종속하는 일정을 탐색하는 인터페이스를 제공할 수 있다.
일정 미리 보기 화면(910)에서 해당 사용자의 최신 일정(예를 들어, 오늘의 일정)을 미리 보기하는 기능이 제공되고, 일정 미리 보기 화면(930)에서 해당 사용자의 일정을 빠르게 탐색(예를 들어, 날짜 별로 탐색)하는 기능이 제공될 수 있다.
또는, 일반 채팅방을 통하여 일정 미리보기가 요청되는 경우, 사용자에게 종속된 일정 중 해당하는 채팅방에 연관된 일정(예를 들어, 해당하는 채팅방이 태깅되어 있는 일정, 해당하는 채팅방에 참여 중인 멤버와 관련된 일정 등)을 다른 일정에 비하여 우선적으로 표시하는 일정 미리보기 뷰가 제공될 수 있다.
도 10은 일 실시예에 따른 일정의 미리 알림 화면을 나타낸 도면이다. 도 10을 참조하면, 채팅방에서 다양한 형태로 표시되는 미리 알림 화면들(1010, 1030)이 도시된다.
일 실시예에 따른 사용자는 나와의 채팅방 및/또는 일반 채팅방을 통해 일정에 대한 미리 알림을 설정할 수 있다. 일정에 대한 미리 알림을 설정한 경우에 사용자의 단말에는 예를 들어, 미리 알림 시간 안내 문구("15분 후 일정이 있습니다"), 일정 시작 월/일, 일정 제목, 일정 시작 ~ 종료 시각, 장소, 일정 상세보기 화면 진입 버튼 등과 같은 미리 알림 정보를 포함하는 미리 알림 화면(1010)이 표시될 수 있다.
실시예에 따라서, 일정은 회사 일정 및 개인 일정 등과 같이 일정의 유형 별로 구분되어 미리 알림 화면(1030)과 같이 표시될 수 있다.
도면에 도시하지 않았으나, 일 실시예에 따른 인스턴트 메신저 서버는 프로세서 및 통신 인터페이스를 포함한다. 인스턴트 메신저 서버는 메모리를 더 포함할 수 있다. 프로세서, 통신 인터페이스, 및 메모리는 통신 버스를 통해 서로 연결될 수 있다. 인스턴트 메신저 서버는 예를 들어, 클라우드 서버 또는 이와 동일 또는 유사한 기능을 수행하는 사용자 장치일 수 있다.
프로세서는 도 1 내지 도 10을 통해 전술한 적어도 하나의 방법 또는 적어도 하나의 방법에 대응되는 알고리즘을 수행할 수 있다. 프로세서는 프로그램을 실행하고, 인스턴트 메신저 서버를 제어할 수 있다. 프로세서에 의하여 실행되는 프로그램 코드는 메모리에 저장될 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기된 하드웨어 표시 장치는 실시예의 입력을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 비록 한정된 도면에 의해 실시예들이 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 표시 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 일정 서비스를 제공하는 서버의 동작 방법에 있어서,
    호스트(host)의 일정 생성 요청에 응답하여 상기 일정 서비스를 위한 상기 호스트의 계정에 종속하는 제1 일정을 생성하는 단계; 및
    상기 호스트의 계정에 종속하는 제1 일정과 상기 제1 일정의 초대 대상- 상기 초대 대상은 상기 호스트의 계정의 채팅방 목록 및 상기 호스트의 계정과 관련된 계정 목록 중 적어도 하나에 기초하여 결정됨 -에 포함된 적어도 하나의 게스트(guest)의 계정에 종속하는 제2 일정을 동기화하는 단계
    를 포함하고,
    상기 호스트의 계정에 종속하는 상기 제1 일정이 변경되는 경우, 상기 게스트의 계정에 종속하는 상기 제2 일정은 상기 변경된 제1 일정과 동기화되고,
    상기 게스트의 계정에 종속하는 제2 일정이 변경되는 경우, 상기 호스트의 계정에 대응하는 상기 제1 일정은 상기 변경된 제2 일정과 동기화되지 않는,
    서버의 동작 방법.
  2. 제1항에 있어서,
    상기 초대 대상에 포함된 적어도 하나의 게스트(guest)의 계정의 상기 제1 일정에 대한 참여 여부의 응답에 기초하여, 상기 게스트의 계정에 종속하는 제2 일정을 생성하는 단계를 더 포함하는, 서버의 동작 방법.
  3. 제1항에 있어서,
    상기 초대 대상에 포함된 적어도 하나의 게스트를 상기 제1 일정에 초대하는 메시지를 전송하는 단계
    를 더 포함하는,서버의 동작 방법.
  4. 제1항에 있어서,
    상기 일정 생성 요청은
    상기 일정 서비스와 연동되는 소셜 미디어 서비스 및 상기 일정 서비스와 연동되는 스토리지 서비스 중 적어도 하나를 통해 수신되는, 서버의 동작 방법.
  5. 제1항에 있어서,
    상기 동기화하는 단계는
    상기 호스트의 계정에 종속하는 일정을 편집하는 인터페이스를 통하여 상기 호스트의 계정에 종속하는 제1 일정의 편집을 요청하는 메시지를 수신하는 단계;
    상기 호스트의 계정에 종속하는 제1 일정을 편집하는 단계; 및
    상기 편집된 제1 일정과 상기 적어도 하나의 게스트의 계정에 종속하는 제2 일정을 동기화하는 단계
    를 포함하는, 서버의 동작 방법.
  6. 제1항에 있어서,
    상기 제1 일정을 생성하는 단계는
    상기 일정 생성 요청이 일반 채팅방을 통하여 발생하였는지 여부를 판단하는 단계; 및
    상기 판단 결과에 기초하여, 상기 일반 채팅방의 식별정보를 상기 제1 일정에 태깅(tagging)하는 단계
    를 포함하는, 서버의 동작 방법.
  7. 제1항에 있어서,
    상기 일정 서비스를 위한 사용자의 계정에 종속하는 일정은 사용자 단위의 캘린더에 등록되는 일정을 포함하고,
    상기 사용자 단위의 캘린더는 상기 사용자 계정에 대응하여 등록되는 복수의 일정들을 포함하는, 서버의 동작 방법.
  8. 제1항에 있어서,
    상기 호스트의 일정 생성 요청이 특정 채팅방을 통하여 생성된 경우, 해당하는 채팅방에 참여 중인 사용자들이 상기 초대 대상으로 자동으로 입력되는, 서버의 동작 방법.
  9. 제1항에 있어서,
    상기 제1 일정과 관련한 채팅 요청에 응답하여, 상기 제1 일정의 참여자 정보에 포함된 초대 대상을 포함하는 후보 채팅방을 제공하는 단계;
    상기 제1 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상들 중 참석 대상을 포함하는 후보 채팅방을 제공하는 단계;
    상기 제1 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상을 포함하는 새로운 채팅방을 생성하는 단계; 및
    상기 제1 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상들 중 참석 대상을 포함하는 새로운 채팅방을 생성하는 단계
    중 적어도 하나를 더 포함하는, 서버의 동작 방법.
  10. 제1항에 있어서,
    상기 초대 대상을 결정하는 단계는
    상기 호스트의 계정이 참여 중이며, 상기 제1 일정이 공유된 채팅방의 사용자들 중 상기 초대 대상에 해당하지 않는 사용자로부터 초대 요청을 수신하는 단계;
    상기 일정의 호스트로부터 상기 초대 요청을 수락할지 여부를 수신하는 단계; 및
    상기 호스트의 수락 여부에 기초하여, 상기 제1 일정에 대응하는 초대 대상을 갱신하는 단계
    를 포함하는, 서버의 동작 방법.
  11. 제1항에 있어서,
    상기 게스트의 계정에 종속하는 상기 제2 일정이 변경되는 경우, 상기 호스트의 계정에 대응하는 상기 제1 일정은 상기 변경된 제2 일정과 동기화되지 않음을 지시하는 알림을 상기 게스트의 단말에 전송하는 단계
    를 더 포함하는,
    단말의 동작 방법.
  12. 일정 서비스를 이용하는 단말의 동작 방법에 있어서,
    상기 일정 서비스를 위한 호스트의 계정에 종속하는 제1 일정을 생성하기 위한 일정 생성 요청을 서버로 전송하는 단계; 및
    상기 호스트의 계정의 채팅방 목록 및 상기 호스트의 계정과 관련된 계정 목록 중 적어도 하나에 기초하여 상기 제1 일정에 초대되는 초대 대상을 입력 받는 단계
    를 포함하고,
    상기 호스트의 계정에 종속하는 상기 제1 일정이 변경되는 경우, 상기 초대 대상에 포함된 적어도 하나의 게스트의 계정에 종속하는 제2 일정은 상기 변경된 제1 일정과 동기화되고,
    상기 게스트의 계정에 종속하는 제2 일정이 변경되는 경우, 상기 호스트의 계정에 대응하는 상기 제1 일정은 상기 변경된 제2 일정과 동기화되지 않는,
    단말의 동작 방법.
  13. 제12항에 있어서,
    상기 게스트의 계정에 종속하는 상기 제2 일정은 상기 게스트의 계정의 상기 제1 일정에 대한 참여 여부의 응답에 기초하여 생성된, 단말의 동작 방법.
  14. 제12항에 있어서,
    상기 일정 생성 요청은
    상기 일정 서비스와 연동되는 소셜 미디어 서비스 및 상기 일정 서비스와 연동되는 스토리지 서비스 중 적어도 하나를 통해 생성되는, 단말의 동작 방법.
  15. 제12항에 있어서,
    상기 호스트의 계정에 종속하는 일정을 편집하는 인터페이스를 통하여 수신된 입력에 기초하여, 상기 호스트의 계정에 종속하는 제1 일정을 편집하는 단계
    를 더 포함하고,
    상기 편집된 제1 일정과 상기 게스트의 계정에 종속하는 상기 제2 일정은 동기화되는, 단말의 동작 방법.
  16. 제12항에 있어서,
    상기 일정 서비스를 위한 사용자- 상기 사용자는 상기 호스트 및 상기 게스트 중 어느 하나를 포함함-의 계정에 대응하여 등록되는 복수의 일정들을 사용자 단위의 캘린더를 통하여 표시하는 단계
    를 더 포함하는,
    단말의 동작 방법.
  17. 제12항에 있어서,
    상기 제1 일정과 관련한 채팅 요청에 응답하여, 상기 제1 일정의 참여자 정보에 포함된 초대 대상을 포함하는 후보 채팅방을 표시하는 단계;
    상기 제1 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상들 중 참석 대상을 포함하는 후보 채팅방을 표시하는 단계;
    상기 제1 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상을 포함하는 새로운 채팅방을 표시하는 단계; 및
    상기 제1 일정과 관련한 채팅 요청에 응답하여, 상기 참여자 정보에 포함된 초대 대상들 중 참석 대상을 포함하는 새로운 채팅방을 표시하는 단계
    중 적어도 하나를 더 포함하는, 단말의 동작 방법.
  18. 제12항에 있어서,
    상기 초대 대상을 입력받는 단계는
    상기 제1 일정이 공유된 채팅방의 사용자들 중 상기 초대 대상에 해당하지 않는 사용자의 초대 요청을 수신하는 단계;
    상기 초대 요청을 수락할지 여부를 입력 받는 단계; 및
    상기 수락 여부에 기초하여, 상기 제1 일정에 대응하는 초대 대상을 갱신하기 위한 정보를 상기 서버로 전송하는 단계
    를 포함하는, 단말의 동작 방법.
  19. 제12항에 있어서,
    상기 게스트의 계정에 종속하는 상기 제2 일정이 변경되는 경우, 상기 호스트의 계정에 대응하는 상기 제1 일정은 상기 변경된 제2 일정과 동기화되지 않음을 지시하는 알림이 상기 게스트의 단말에 표시되는,
    단말의 동작 방법.
  20. 하드웨어와 결합되어 제1항 내지 제19항 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.


KR1020240034983A 2019-10-24 2024-03-13 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치 KR20240037930A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020240034983A KR20240037930A (ko) 2019-10-24 2024-03-13 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020190133217A KR102439877B1 (ko) 2018-11-22 2019-10-24 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치
KR1020220109386A KR102648679B1 (ko) 2019-10-24 2022-08-30 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치
KR1020240034983A KR20240037930A (ko) 2019-10-24 2024-03-13 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020220109386A Division KR102648679B1 (ko) 2019-10-24 2022-08-30 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20240037930A true KR20240037930A (ko) 2024-03-22

Family

ID=83281257

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020220109403A KR102648684B1 (ko) 2019-10-24 2022-08-30 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치
KR1020220109386A KR102648679B1 (ko) 2019-10-24 2022-08-30 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치
KR1020240034983A KR20240037930A (ko) 2019-10-24 2024-03-13 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020220109403A KR102648684B1 (ko) 2019-10-24 2022-08-30 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치
KR1020220109386A KR102648679B1 (ko) 2019-10-24 2022-08-30 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치

Country Status (1)

Country Link
KR (3) KR102648684B1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101209549B1 (ko) * 2005-05-03 2012-12-07 에스케이커뮤니케이션즈 주식회사 인터넷을 이용한 모임 생성, 관리 및 평가 시스템, 방법 및 이를 구현할 수 있는 컴퓨터로 읽을 수 있는 기록 매체
KR101032312B1 (ko) * 2009-02-19 2011-05-06 고려대학교 산학협력단 모바일 기기 기반의 모임 관리 시스템 및 이에 사용되는 모바일 기기
KR20140086549A (ko) * 2012-12-28 2014-07-08 계명대학교 산학협력단 메신저 프로그램을 이용한 모임 진행 방법
KR20170027061A (ko) * 2015-09-01 2017-03-09 삼성에스디에스 주식회사 인스턴트 메신저 상의 가상 도우미 애플리케이션 이용 방법 및 장치
KR102467785B1 (ko) * 2016-05-04 2022-11-16 (주)지란지교컴즈 일정 공유 방법

Also Published As

Publication number Publication date
KR102648679B1 (ko) 2024-03-19
KR102648684B1 (ko) 2024-03-19
KR20220123369A (ko) 2022-09-06
KR20220123370A (ko) 2022-09-06

Similar Documents

Publication Publication Date Title
US11321643B1 (en) Method and system for facilitating collaboration sessions
US20210344624A1 (en) Appointment negotiation systems and methods
US20230031878A1 (en) Systems and methods for incorporating calendar functionality into electronic messages
RU2618376C2 (ru) Система и метод координации встреч
US7876714B2 (en) Techniques for managing conference schedules using groups
TWI313438B (en) System and method for integrating projects events with personal calendar and scheduling clients
US10510050B2 (en) Meetings and events coordinating system and method
US7991637B1 (en) Freeform communication in calendaring system
US8712820B2 (en) Mobile application for calendar sharing and scheduling
US20180077542A1 (en) Unified enterprise mobile data collaboration
US20140310045A1 (en) Generating and Displaying a Calendar Event Recurrence Preview
US20060047557A1 (en) Techniques for resolving conflicts in scheduling conferences
US10992487B2 (en) Instant messaging service method for providing schedule service and apparatus therefor
US20140310044A1 (en) Transmitting an Electronic Message to Calendar Event Invitees
US20150200978A1 (en) Meeting Conflict Indicator
US20180060017A1 (en) Computerized Contact Management Systems and Methods
US20140237380A1 (en) Online shared calendar application that facilitates communication and coordination of shared events amongst users and their contacts
US11700223B2 (en) Asynchronous collaboration in a communication platform
JP2020068040A (ja) インスタントメッセンジャーアプリケーションの動作方法及び装置
WO2013091068A1 (en) Social network, systems and methods for managing activities within groups and with contacts
KR102281198B1 (ko) 일정 서비스를 제공하는 인스턴트 메시징 서비스 방법 및 장치
US20130132476A1 (en) Defining Future Plans in Connection with Objects in a Social Networking System
KR102439877B1 (ko) 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치
KR102648679B1 (ko) 일정 서비스를 제공하는 인스턴트 메신저 서버의 동작 방법 및 장치
JP2017059025A (ja) スケジュール管理システム

Legal Events

Date Code Title Description
A107 Divisional application of patent