基于分組的通信系統(tǒng)允許設(shè)備(例如,個人計算機)的用戶使用諸如互聯(lián)網(wǎng)協(xié)議(IP)之類的分組協(xié)議,在計算機網(wǎng)絡(luò)中進行通信?;诜纸M的通信系統(tǒng)可以用于各種類型的通信事件??梢越⒌耐ㄐ攀录ㄕZ音呼叫、視頻呼叫、即時消息發(fā)送、語音郵件、文件傳輸和其它事件。由于與其它固定線路或者移動網(wǎng)絡(luò)的成本相比,這些系統(tǒng)通常具有明顯更低的成本,因此它們對于用戶是有益的。對于遠距離通信來說,可能尤其如此。為了使用基于分組的系統(tǒng),用戶在他們的設(shè)備上安裝和執(zhí)行客戶端軟件。客戶端軟件提供基于分組的連接,以及諸如注冊和認證之類的其它功能。
通信系統(tǒng)允許設(shè)備的用戶在諸如互聯(lián)網(wǎng)之類的計算機網(wǎng)絡(luò)之中進行通信。可以建立的通信事件包括語音呼叫、視頻呼叫、即時消息發(fā)送、語音郵件、文件傳輸和其它事件。
即時消息發(fā)送通信會話允許經(jīng)由計算機網(wǎng)絡(luò),在計算機設(shè)備的用戶之間進行聊天。每一個用戶可以在字段中輸入文本,啟動發(fā)送按鈕,從而生成向另一個用戶傳輸?shù)募磿r消息發(fā)送。已知的是,允許在IM聊天消息中包含用于表示情感或表達(例如,“情感”或者“貼紙”)的圖標,以便提高傳輸會話的較少言語的方面,以及增強該會話的互動性和享受的能力。
技術(shù)實現(xiàn)要素:
根據(jù)本公開內(nèi)容的一個方面,提供了一種在通信網(wǎng)絡(luò)上的多個用戶設(shè)備之間的通信事件期間實現(xiàn)的方法。該方法包括:識別在從所述用戶設(shè)備中的一個用戶設(shè)備發(fā)送的第一消息中的第一協(xié)同操作元素;識別在從所述用戶設(shè)備中的一個用戶設(shè)備發(fā)送的第二消息中的第二協(xié)同操作元素;查詢存儲器以識別與第一和至少第二協(xié)同操作元素的組合相關(guān)聯(lián)的動作;向所述多個用戶設(shè)備中的每一個發(fā)送消息,使得使用在所述多個用戶設(shè)備處的輸出單元來傳送該動作。
根據(jù)本公開內(nèi)容的另一個方面,提供了一種計算機程序產(chǎn)品,該計算機程序產(chǎn)品體現(xiàn)在非臨時計算機可讀介質(zhì)上并進行配置,以便當在一個或多個處理器上執(zhí)行時,運行本文所描述的方法中的任何一個。
根據(jù)本公開內(nèi)容的另外方面,提供了一種網(wǎng)絡(luò)實體,其包括:存儲關(guān)于動作的信息的至少一個存儲器,其中這些動作將響應(yīng)于協(xié)同操作元素的組合而被觸發(fā);消息構(gòu)建器部件,其被配置為對于在多個用戶設(shè)備之間的通信事件期間,在通信網(wǎng)絡(luò)上交換的消息進行分析,以確定所述消息是否包括協(xié)同操作元素;動作控制器部件,其被配置為響應(yīng)于確定所述消息構(gòu)建器已經(jīng)識別出在從所述用戶設(shè)備中的一個用戶設(shè)備發(fā)送的第一消息中的第一協(xié)同操作元素,和識別出在從所述用戶設(shè)備中的一個用戶設(shè)備發(fā)送的第二消息中的第二協(xié)同操作元素時,查詢所述存儲器以識別與第一和至少第二協(xié)同操作元素的組合相關(guān)聯(lián)的動作;其中,消息構(gòu)建器部件被配置為向所述多個用戶設(shè)備中的每一個發(fā)送消息,使得使用在所述多個用戶設(shè)備處的輸出單元來傳送該動作。
根據(jù)本公開內(nèi)容的另一個方面,提供了一種用戶終端,其包括:輸出單元;存儲關(guān)于動作的信息的至少一個存儲器,其中這些動作將響應(yīng)于協(xié)同操作元素的組合而被觸發(fā);網(wǎng)絡(luò)接口,其被配置為在多個用戶終端之間的通信期間,通過通信網(wǎng)絡(luò)在該用戶終端和一個或多個另外的用戶終端之間發(fā)送消息和接收消息;被配置為運行通信客戶端應(yīng)用的一個或多個處理器。該通信客戶端應(yīng)用包括:消息構(gòu)建器,其被配置為對于在通信事件期間在通信網(wǎng)絡(luò)上交換的消息進行分析,以確定所述消息是否包括協(xié)同操作元素;動作控制器部件,其被配置為響應(yīng)于確定所述消息構(gòu)建器已經(jīng)識別出在從所述用戶終端中的一個用戶終端發(fā)送的第一消息中的第一協(xié)同操作元素,和識別出在從所述用戶終端中的一個用戶終端發(fā)送的第二消息中的第二協(xié)同操作元素時,查詢所述存儲器以識別與第一和至少第二協(xié)同操作元素的組合相關(guān)聯(lián)的動作;其中,消息構(gòu)建器部件被配置為向所述一個或多個另外的用戶終端發(fā)送消息,以使得使用在所述一個或多個另外的用戶終端處的輸出單元來傳送該動作,消息構(gòu)建器部件還被配置為控制所述輸出單元來傳送該動作。
提供本概括部分以便用簡化的形式介紹將在以下的詳細描述中進一步描述的概念選擇。本概括部分并不是旨在標識本發(fā)明的關(guān)鍵特征或本質(zhì)特征,也不是用于限制本發(fā)明的保護范圍。所要求保護的主題并不限于解決在背景中提及的任何或所有缺點的實現(xiàn)。
附圖說明
為了更好地理解本公開內(nèi)容以及展示可以怎樣實施本發(fā)明的各實施例,下面將參照附圖舉例進行說明,在這些附圖中:
圖1示出了一種通信系統(tǒng);
圖2示出了用戶終端的示意性視圖;
圖3是用于觸發(fā)動作的處理的流程圖;
圖4a示出了用戶終端顯示響應(yīng)于在通信事件期間交換的貼紙序列而觸發(fā)的動作;
圖4b示出了用戶終端顯示響應(yīng)于在通信事件期間交換的被輸入成消息的文本部分序列而觸發(fā)的動作;
圖4c示出了用戶終端顯示響應(yīng)于在通信事件期間選擇的人物局部序列而觸發(fā)的動作;
圖4d示出了用戶終端顯示響應(yīng)于在通信事件期間選擇的屏幕區(qū)域序列而觸發(fā)的動作;
圖5根據(jù)示例性實施例,示出了在通信事件期間發(fā)送的數(shù)據(jù)流。
具體實施方式
圖1示出了包括第一用戶104(用戶A)和第二用戶110(用戶B)的通信系統(tǒng)100,其中,第一用戶104與第一用戶終端102相關(guān)聯(lián),第二用戶110與第二用戶終端108相關(guān)聯(lián)。用戶終端102和108可以通過通信系統(tǒng)100中的通信網(wǎng)絡(luò)106來進行通信,從而允許用戶104和110通過通信網(wǎng)絡(luò)106來彼此之間進行通信。通信網(wǎng)絡(luò)106可以是具有在第一用戶終端102和第二用戶終端108之間提供通信信道的任何適當?shù)木W(wǎng)絡(luò)。例如,通信網(wǎng)絡(luò)106可以是互聯(lián)網(wǎng)或者諸如高數(shù)據(jù)速率移動網(wǎng)絡(luò)(例如,第三代(“3G”)移動網(wǎng)絡(luò))之類的另一種類型的網(wǎng)絡(luò)。
應(yīng)當注意,在替代的實施例中,用戶終端可以經(jīng)由圖1中沒有示出的另外的中間網(wǎng)絡(luò)來連接到通信網(wǎng)絡(luò)106。例如,如果用戶終端102是移動設(shè)備,則其可以經(jīng)由諸如GSM或UMTS網(wǎng)絡(luò)之類的蜂窩移動網(wǎng)絡(luò)(圖1中沒有示出)連接到通信網(wǎng)絡(luò)106。
例如,用戶終端102可以是能夠連接到通信網(wǎng)絡(luò)106的移動電話、個人數(shù)字助理(“PDA”)、個人計算機(“PC”)(例如,其包括WindowsTM、Mac OSTM和Linux PCTM)、平板計算機、游戲設(shè)備或者其它嵌入式設(shè)備。用戶終端102被布置為從用戶A 104接收信息,以及向用戶A 104輸出信息。
用戶終端102執(zhí)行與通信系統(tǒng)100相關(guān)聯(lián)的軟件提供商所提供的通信客戶端應(yīng)用112。通信客戶端應(yīng)用112是在用戶終端102中的本地處理器上執(zhí)行的軟件程序。通信客戶端應(yīng)用112執(zhí)行在用戶終端102處需要的處理,以便用戶終端102通過通信系統(tǒng)100來發(fā)送和接收數(shù)據(jù)??梢詫υ谟脩艚K端102處執(zhí)行的通信客戶端應(yīng)用112進行認證,以便通過數(shù)字證書的提供(例如,其用于證明用戶104是該通信系統(tǒng)的真實用戶,其在WO2005/009019中進行更詳細地描述)來在通信系統(tǒng)上進行通信。
用戶終端108可以對應(yīng)于用戶終端102。用戶終端108在本地處理器上執(zhí)行通信客戶端應(yīng)用114,后者對應(yīng)于在用戶終端102處執(zhí)行的通信客戶端應(yīng)用112。利用用戶終端102處的通信客戶端應(yīng)用112為了允許用戶A104在網(wǎng)絡(luò)106上進行通信而所需要執(zhí)行的處理相同的方式,用戶終端108處的通信客戶端應(yīng)用114為了允許用戶110在網(wǎng)絡(luò)106上進行通信而所需要執(zhí)行的處理。用戶終端102和108是通信系統(tǒng)中的端點。為了清楚說明起見,圖1僅示出了兩個用戶(104和110)和兩個用戶終端(102和108),但在通信系統(tǒng)100中可以包括更多的用戶和用戶設(shè)備,這些用戶和用戶終端可以使用在相應(yīng)的用戶設(shè)備上執(zhí)行的相應(yīng)通信客戶端,在通信系統(tǒng)100上進行通信,如本領(lǐng)域所已知的。
圖1示出了通信網(wǎng)絡(luò)106中的網(wǎng)絡(luò)實體(服務(wù)器116),其中通信網(wǎng)絡(luò)106包括消息構(gòu)建器部件118、動作控制器部件120和存儲器122。服務(wù)器116執(zhí)行的操作由與通信系統(tǒng)100相關(guān)聯(lián)的軟件提供商來控制(其中,通信系統(tǒng)100提供通信客戶端應(yīng)用112和114的實例)。下面將進一步詳細描述這些部件的功能。
圖2示出了在其上執(zhí)行通信客戶端應(yīng)用,以便通過通信系統(tǒng)100進行通信的用戶終端102的詳細視圖。用戶終端102包括中央處理單元(“CPU”)202,其中CPU 202連接到諸如屏幕或者觸摸屏之類的顯示器204、諸如鍵盤206、照相機208和觸摸屏204之類的輸入設(shè)備。輸出音頻設(shè)備210(例如,揚聲器)和輸入音頻設(shè)備212(例如,麥克風(fēng))連接到CPU 202。如圖2中所示,可以將顯示器204、鍵盤206、照相機208、輸出音頻設(shè)備210和輸入音頻設(shè)備212集成到用戶終端102中。在替代的用戶終端中,可以不將顯示器204、鍵盤206、照相機208、輸出音頻設(shè)備210和輸入音頻設(shè)備212中的一個或多個集成到用戶終端102中,而是經(jīng)由相應(yīng)的接口來連接到CPU 202。這樣的接口的一個例子是USB接口。CPU 202連接到網(wǎng)絡(luò)接口224(例如,調(diào)制解調(diào)器),以與通信網(wǎng)絡(luò)106進行通信??梢詫⒕W(wǎng)絡(luò)接口224集成到用戶終端102中,如圖2中所示。在替代的用戶終端中,不將網(wǎng)絡(luò)接口224集成到用戶終端102中。此外,用戶終端102還包括用于存儲數(shù)據(jù)的存儲器226,如本領(lǐng)域所已知的。存儲器226可以是持久性存儲器(例如,ROM)。替代地,存儲器226也可以是臨時存儲器(例如,RAM)。
此外,圖2還示出了在CPU 202上執(zhí)行的操作系統(tǒng)(“OS”)214。在OS 214之上運行的是用于上面所引用的通信客戶端應(yīng)用112的軟件棧216。該軟件棧示出了I/O層218、客戶端引擎層220和客戶端用戶界面層(“UI”)222。每一個層負責特定的功能。由于每一個層通常與兩個其它層進行通信,因此將它們視作為布置在如圖2中所示的棧中。操作系統(tǒng)214管理計算機的硬件資源,并對經(jīng)由網(wǎng)絡(luò)接口224來發(fā)送到通信網(wǎng)絡(luò)106和從通信網(wǎng)絡(luò)106發(fā)送的數(shù)據(jù)進行處理。I/O層218包括音頻和/或視頻編解碼器,后者接收輸入的經(jīng)編碼的流,并根據(jù)需要對它們進行解碼以輸出到揚聲器210和/或顯示器204,并從麥克風(fēng)212和/或照相機208接收未編碼的音頻和/或視頻數(shù)據(jù),對它們進行編碼以便作為流來發(fā)送給通信系統(tǒng)100的其它端用戶終端??蛻舳艘鎸?20處理VoIP系統(tǒng)的連接管理功能(如上所述),例如,通過基于服務(wù)器或者P2P地址查找和認證來建立呼叫或者其它連接。此外,客戶端引擎還可以負責本文沒有討論的其它輔助功能??蛻舳艘?20還與客戶端用戶接口層222進行通信??蛻舳艘?20可以被布置為控制客戶端用戶接口層222,以經(jīng)由在顯示器204上顯示的該客戶端的用戶界面來向用戶終端200的用戶呈現(xiàn)信息,并經(jīng)由該用戶接口來從用戶終端200的用戶接收信息。
現(xiàn)在參照圖3來描述通過通信網(wǎng)絡(luò)106,在多個用戶設(shè)備(或者本文稱為的用戶終端)之間的通信事件期間實現(xiàn)的方法,圖3是用于觸發(fā)一個動作的處理300的流程圖。此外,還參照圖4a、4b、4c和4d來進行說明,其中圖4a、4b、4c和4d將各個實施例中呈現(xiàn)的示例性客戶端用戶界面示出為處理300的一部分。
參照參與即時消息發(fā)送會話的用戶A 104和用戶B 110來描述本公開內(nèi)容的實施例,其中,在即時消息發(fā)送通信會話中,在第一用戶終端102和第二用戶終端108之間發(fā)送和接收消息。但是,本公開內(nèi)容的實施例也可以擴展到如稍后所描述的其它類型的通信事件。
在即時消息發(fā)送會話期間,響應(yīng)于接收到來自用戶B 110的接收消息,在與發(fā)起新消息的傳輸?shù)挠脩鬉 104的兩個方向(其為從第一用戶終端102到第二用戶終端108,反之亦然),都可以發(fā)送消息,反之亦然。即時消息發(fā)送會話可以包括兩個以上的用戶,并且可以在會話中的任意用戶之間發(fā)送即時消息發(fā)送。
通過通信網(wǎng)絡(luò)106,來發(fā)送該通信會話中的消息。下面參照在通信事件期間發(fā)送的消息,來描述本公開內(nèi)容的實施例,其中該消息是經(jīng)由連接到通信網(wǎng)絡(luò)106的位于第一用戶終端102和第二用戶終端108之間的服務(wù)器116來發(fā)送的。替代地或另外地,可以在第一用戶終端102和第二用戶終端108之間的點對點路由(即,不經(jīng)由通信系統(tǒng)100中的任何服務(wù)器的路由)上發(fā)送該通信會話的消息,如本領(lǐng)域如已知的。
可以經(jīng)由服務(wù)器116,在第一用戶終端102和第二用戶終端108之間的消息中,發(fā)送多個協(xié)同操作的元素。在步驟S302處,服務(wù)器116對于在即時消息發(fā)送會話期間從用戶終端接收的消息進行分析,以識別這些協(xié)同操作的元素。
該消息可以包含一個用戶在它們的用戶終端處輸入的文本,以傳輸給其它用戶終端。由在第一用戶終端102上執(zhí)行的由通信客戶端應(yīng)用112提供的客戶端用戶界面,可操作于顯示由用戶102輸入的將在該即時消息發(fā)送通信會話的消息中進行發(fā)送,但還沒有發(fā)送的文本輸入。具體而言,客戶端112經(jīng)由客戶端用戶界面來顯示消息字段(圖4a、4b、4c和4d中的402),其中用戶A 104能夠使用例如觸摸屏204或者鍵盤206來向該消息字段輸入文本。客戶端用戶界面顯示可選擇的發(fā)送選項408,其中用戶A 104在輸入該文本之后可以選擇該發(fā)送選項408。作為響應(yīng),客戶端112生成包含該輸入文本的消息,并經(jīng)由通信網(wǎng)絡(luò)106向第二用戶終端108發(fā)送所生成的消息。隨后,用戶B 110可以以類似的方式對用戶A的消息進行響應(yīng),或者在用戶B 110沒有對用戶A的早先消息進行響應(yīng)的情況下,用戶A 104可以以類似的方式來發(fā)起另外的消息的傳輸。這些協(xié)同操作元素可以包括由一個用戶在他們的用戶終端處輸入到消息中的、用于向其它用戶終端傳輸?shù)奈谋静糠帧?/p>
此外,這些消息還可以包含由一個用戶在他們的用戶終端處輸入的用于向其它用戶終端傳輸?shù)谋砬榉枴>唧w而言,客戶端112經(jīng)由客戶端用戶界面來顯示表情符號按鈕(圖4a、4b、4c和4d中的404),其中,用戶A 104能夠使用諸如鼠標(圖2中沒有示出)之類的適當輸入設(shè)備或者使用觸摸屏204來選擇該表情符號按鈕。響應(yīng)于檢測到對表情符號按鈕404的選擇,客戶端112經(jīng)由客戶端用戶界面來顯示可用于插入到消息字段402中的多個表情符號。將所述多個表情符號存儲在存儲器226中。用戶通過在消息字段402中輸入字符/符號的組合(例如,冒號“:”后跟著圓括號“)”),來調(diào)用某些表情符號。響應(yīng)于用戶選擇發(fā)送選項408,客戶端檢測到所選定的表情符號或字符/符號組合,并將與所選定的表情符號或者與所輸入的字符/符號組合相對應(yīng)的表情符號(例如,“微笑”表情符號)顯示成發(fā)送的消息。位于接收方第二用戶終端108處的客戶端114類似地檢測到所接收的表情符號或者字符/符號組合,并將該表情符號顯示成接收的消息。這些協(xié)同操作元素可以包括表情符號,其中由一個用戶在他們的用戶終端處將表情符號輸入到消息中,以便傳輸給服務(wù)器116。
消息可以包括貼紙。與表情符號相比而言,將貼紙發(fā)送成單一媒體對象,其不能像表情符號一樣與文本一致地發(fā)送。不同于某些表情符號,不能夠通過在消息字段402中輸入某些字符/符號來選擇貼紙??蛻舳?12可以經(jīng)由客戶端用戶界面來顯示專用的貼紙按鈕,以使用戶A能夠訪問可用貼紙的集合。替代地,可以經(jīng)由菜單按鈕406或者經(jīng)由表情符號按鈕(圖4a、4b、4c和4d中的404),來訪問可用貼紙的集合。將所述多個貼紙存儲在存儲器226中。這些協(xié)同操作元素可以包括貼紙,其中由一個用戶在他們的用戶終端處將貼紙輸入到消息中,以便向其它用戶終端進行傳輸。
表情符號和貼紙的插入實現(xiàn)了對會話的較少的言語方面進行傳輸,減少了必須輸入的用于傳送消息的文本的量,并增強了會話的互動性和享受。提供這些優(yōu)點的另一種方式是插入兩個或更多人物局部,以傳送人物的表情/表達。
也就是說,消息可以包括選定的人物局部(例如,頭、身體或者腿)??蛻舳?12可以經(jīng)由客戶端用戶界面來顯示專用的人物局部按鈕,以使用戶A能夠訪問可用人物局部的集合。替代地,可以經(jīng)由菜單按鈕406或者經(jīng)由表情符號按鈕(圖4a、4b、4c和4d中的404)來訪問可用人物局部的集合。例如,用戶A可以導(dǎo)航瀏覽第一組的人物局部(例如,頭)的集合,從第一集合中選擇人物局部,導(dǎo)航瀏覽第二組的人物局部(例如,身體)的集合,從第二集合中選擇人物局部,導(dǎo)航瀏覽第三組的人物局部(例如,腿)的集合,從第三集合中選擇人物局部。雖然在上面的例子中將人物描述成由三個人物局部構(gòu)成,但應(yīng)當理解的是,這只是一個例子,一個人物可以由兩個或更多的人物局部來構(gòu)成。將所述多個人物局部存儲在存儲器226中。協(xié)同操作元素可以包括人物局部,其中一個用戶可以在他們的用戶終端處將人物局部輸入到消息中,以便向其它用戶終端進行傳輸。
在用戶在他們的設(shè)備上安裝和執(zhí)行客戶端軟件之后,一組表情符號、貼紙和/或人物局部是用戶可使用的。用戶可以下載另外的表情符號、貼紙和人物局部,并隨后將其存儲在存儲器226中。
為了增加互動性和用戶參與,在這些用戶之間的通信事件期間,用戶B 110可以與用戶A 104發(fā)起游戲。用戶B 104可以通過選擇菜單按鈕406,進行一個或多個進一步的選擇,來發(fā)起該游戲。響應(yīng)于檢測到該游戲的發(fā)起,服務(wù)器116被配置為請求用戶A 104選擇使用由通信客戶端應(yīng)用112提供的客戶端用戶界面所顯示的多個媒體對象中的一個(例如,圖形的區(qū)域),在消息中接收用戶A選擇的媒體對象的指示,請求用戶B 110選擇使用由通信客戶端應(yīng)用114提供的客戶端用戶界面所顯示的多個媒體對象中的一個,在消息中接收用戶B選擇的媒體對象的指示,并且基于用戶A選擇的媒體對象是否與用戶B選擇的媒體對象是否匹配,向第一用戶終端102和第二用戶終端108提供該游戲的結(jié)果。這些協(xié)同操作元素可以包括:可以在從用戶的用戶終端向其它用戶終端發(fā)送的消息中傳輸?shù)目蛇x擇的媒體對象。
步驟S302由消息構(gòu)建器118來實現(xiàn),其中消息構(gòu)建器118對于在即時消息發(fā)送會話期間,從第一終端102向第二終端108發(fā)送的消息,以及從第二終端108向第一終端102發(fā)送的消息進行分析。通信客戶端應(yīng)用112和114被配置為根據(jù)基于文本的消息協(xié)議來交換消息。也就是說,上面提到的每一個協(xié)同操作元素對應(yīng)于文本的一部分。文本的部分可以包括一個或多個字母字符、和/或一個或多個數(shù)字字符、和/或一個或多個符號。該部分的文本可以是由一個用戶在他們的用戶終端處輸入消息的用于向其它用戶終端傳輸?shù)奈谋?。替代地,該部分的文本可以分配給協(xié)同操作元素,以用于協(xié)同操作元素的識別。例如,存儲器226中存儲的每一個表情符號、貼紙和人物局部都具有相關(guān)聯(lián)的文本部分以標識該協(xié)同操作元素。類似地,上面所提到的游戲中的每一個可選擇的媒體對象都具有相關(guān)聯(lián)的文本部分來標識該協(xié)同操作元素。分配給協(xié)同操作元素的文本的部分可以包括統(tǒng)一資源指示符(URI)。
將與協(xié)同操作元素相對應(yīng)的文本的部分存儲在存儲器122中。消息構(gòu)建器118訪問存儲器122,查詢存儲器122以判斷在用戶終端102和108之間交換的消息是否包括協(xié)同操作元素。
響應(yīng)于在步驟S304處識別從第一用戶終端102或者第二用戶終端108接收的消息中的協(xié)同操作元素,消息構(gòu)建器118向動作控制器120提供對所識別的協(xié)同操作元素的指示,以便由動作控制器120進行評估。
動作控制器120耦合到用于存儲關(guān)于動作的信息的存儲器,其中這些動作將響應(yīng)于協(xié)同操作元素的組合而進行觸發(fā)。例如,存儲器122可以存儲關(guān)于動作的信息,其中這些動作將響應(yīng)于協(xié)同操作元素的組合而進行觸發(fā)(除了與協(xié)同操作元素相對應(yīng)的文本的部分)。
響應(yīng)于協(xié)同操作元素的組合而進行觸發(fā)的動作,由與通信系統(tǒng)100(其提供通信客戶端應(yīng)用112和114的實例)相關(guān)聯(lián)的軟件提供商來配置。響應(yīng)于在第一用戶終端102和第二用戶終端108之間的通信事件期間交換的消息中所標識的兩個或更多協(xié)同操作元素,來觸發(fā)動作(存儲器122中規(guī)定的動作)。某些動作可以是僅僅基于協(xié)同操作元素的某個(時間上)順序來觸發(fā)的。而其它動作是基于協(xié)同操作元素的組合來觸發(fā)的,不管這些協(xié)同操作元素的順序。此外,可以依賴于同一個用戶或者不同的用戶是否發(fā)送了包括兩個或更多協(xié)同操作元素的消息,來觸發(fā)動作。例如,如果用戶A 104從第一用戶終端102向第二用戶終端108發(fā)送包括協(xié)同操作元素‘x’的消息,隨后用戶B 110從第二用戶終端108向第一用戶終端102發(fā)送包括協(xié)同操作元素‘y’的消息,則可以觸發(fā)動作‘z’(在存儲器122中進行規(guī)定)。但是,如果用戶A從第一用戶終端102向第二用戶終端108發(fā)送包括協(xié)同操作元素‘x’的消息,隨后向第二用戶終端108發(fā)送包括協(xié)同操作元素‘y’的消息,則可以觸發(fā)不同的動作‘w’(在存儲器122中進行規(guī)定)。
關(guān)于響應(yīng)于協(xié)同操作元素的組合而進行觸發(fā)的動作的信息,可以采用決策樹的形式,其中該決策樹指示基于協(xié)同操作元素的不同組合而將觸發(fā)的動作。用于指示基于所識別的協(xié)同操作元素的組合而將觸發(fā)的動作的該決策樹,在下面的意義上是多層的:如果檢測到與某個動作相關(guān)聯(lián)的協(xié)同操作元素的組合,將要觸發(fā)的動作取決于哪些動作先前已經(jīng)在該通信事件期間被觸發(fā)。
每一次動作控制器120從消息構(gòu)建器118接收到所識別的協(xié)同操作元素的指示,動作控制器120被配置為在步驟S306處,通過查詢耦合到動作控制器120的存儲器122,判斷所識別的協(xié)同操作元素和一個或多個先前識別的協(xié)同操作元素的組合是否與某個動作相關(guān)聯(lián)。
如果在步驟S306處,確定所識別的協(xié)同操作元素和一個或多個先前識別的協(xié)同操作元素的組合不與某個動作相關(guān)聯(lián),則動作控制器120不采取進一步動作,消息構(gòu)建器118繼續(xù)對于在該通信事件期間從用戶終端接收的消息進行分析以識別協(xié)同操作元素,如處理300返回到步驟S302處所表示的。
如果在步驟S306處,確定所識別的協(xié)同操作元素和一個或多個先前識別的協(xié)同操作元素的組合與某個動作相關(guān)聯(lián),則該處理轉(zhuǎn)到步驟S308處。
在步驟S308處,動作控制器120通過查詢耦合到動作控制器120的存儲器122,確定基于所識別的協(xié)同操作元素和一個或多個先前識別的協(xié)同操作元素的組合要進行觸發(fā)的動作。步驟S308可以包括:判斷同一用戶或者不同的用戶是否發(fā)送了包括所述兩個或更多協(xié)同操作元素的消息,以便確定要觸發(fā)的動作。隨后,動作控制器120向消息構(gòu)建器118傳輸基于所識別的協(xié)同操作元素和一個或多個先前識別的協(xié)同操作元素的組合而將觸發(fā)的動作。
隨后,處理300轉(zhuǎn)到步驟S310,其中在步驟S310處,消息構(gòu)建器118基于該將要觸發(fā)的動作,構(gòu)造將向第一用戶終端102和第二用戶終端108發(fā)送的消息,并且在步驟S310處,向第一用戶終端102和第二用戶終端108發(fā)送該構(gòu)造的消息。
向第一用戶終端102和第二用戶終端108發(fā)送的消息包括文本部分,其中當在相應(yīng)用戶終端處的通信客戶端應(yīng)用接收到該文本部分時,造成使用第一用戶終端102和第二用戶終端108處的輸出單元來傳送該動作。該動作可以包括在第一用戶終端102和第二用戶終端108的顯示器上顯示至少一個媒體對象。替代地或另外地,該動作可以包括使用第一用戶終端102和第二用戶終端108中的每一個的揚聲器210來輸出音頻信號。
在步驟S310處發(fā)送這些消息之后,消息構(gòu)建器118繼續(xù)對于在該通信事件期間從用戶終端接收的消息進行分析,以識別協(xié)同操作元素,如處理300轉(zhuǎn)回到步驟S302所表示的。
為了使用處理300,在一個示例性實施例中說明如何將一個動作傳送到用戶終端,參見在圖4a中所示出的用戶終端102上所顯示的客戶端用戶界面和圖5中所示出的信令流轉(zhuǎn)圖500,其中圖5示出了在即時消息發(fā)送會話期間發(fā)送的數(shù)據(jù)流。
如圖4a中所示,在用戶A的顯示器204上,顯示了用戶A 104和用戶B 104之間,在示例性日期2013年12月18日所發(fā)生的即時消息發(fā)送會話的發(fā)送的消息和接收的消息。該客戶端用戶界面在顯示器204的可用區(qū)域400中顯示內(nèi)容(其包括發(fā)送的消息和接收的消息)。
在即時消息發(fā)送會話期間,用戶A 104選擇Yoda貼紙410(貼紙1)以便傳輸給第二用戶終端108處的用戶B 110,并選擇發(fā)送選項408向第二用戶終端108的用戶B 110發(fā)送所選定的貼紙。響應(yīng)于檢測到選擇了發(fā)送選項408來向第二用戶終端108處的用戶B 110發(fā)送所選定的貼紙,通信客戶端應(yīng)用112根據(jù)第一用戶終端102上的存儲器226來確定分配給貼紙1(協(xié)同操作元素)的文本部分,通過通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送包括該文本部分的消息502。
響應(yīng)于通過通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送消息502,由由通信客戶端應(yīng)用112提供的客戶端用戶界面將貼紙1 410顯示成發(fā)送的消息(如圖4a中所示)。
消息構(gòu)建器118基于利用分配給貼紙1 410的文本部分來查詢存儲器122,識別消息502包括協(xié)同操作元素,并向動作控制器120提供對所識別的協(xié)同操作元素(貼紙1)的指示504,以便進行評估。
由于貼紙1 410是在第一用戶終端102和第二用戶終端108之間交換的消息中發(fā)送的第一協(xié)同操作元素,因此動作控制器120在步驟S306處確定不存在協(xié)同操作元素的組合,故不采取進一步動作。
消息構(gòu)建器118通過通信網(wǎng)絡(luò)106向第二用戶終端108發(fā)送包括有分配給貼紙1(協(xié)同操作元素)的文本部分的消息506。響應(yīng)于接收到該消息506,通信客戶端應(yīng)用114根據(jù)第二用戶終端108上的存儲器226,確定分配給消息506中的該文本部分的貼紙1(協(xié)同操作元素),由通信客戶端應(yīng)用114提供的客戶端用戶界面將貼紙1 410顯示成接收的消息(圖4a中沒有示出)。
在即時消息發(fā)送會話期間,用戶B 110選擇Darth Vader貼紙412(貼紙2)以傳輸給第一用戶終端102處的用戶A 102,并選擇發(fā)送選項408向第一用戶終端102處的用戶A 102發(fā)送所選定的貼紙。響應(yīng)于檢測到選擇了發(fā)送選項408向第一用戶終端102處的用戶A 102發(fā)送所選定的貼紙,通信客戶端應(yīng)用114根據(jù)第二用戶終端108上的存儲器226,確定分配給貼紙2(協(xié)同操作元素)的文本部分,并通過通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送包括該文本部分的消息508。
響應(yīng)于通過通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送了消息508,由通信客戶端應(yīng)用114提供的客戶端用戶界面將貼紙2 412顯示成發(fā)送的消息(圖4a中沒有示出)。
消息構(gòu)建器118基于利用分配給貼紙2 412的文本部分來查詢存儲器122,識別消息508包括協(xié)同操作元素,并將所識別的協(xié)同操作元素(貼紙2)提供給動作控制器120來進行評估。
消息構(gòu)建器118通過通信網(wǎng)絡(luò)106,向第一用戶終端102發(fā)送包括分配給貼紙2(協(xié)同操作元素)的文本部分。響應(yīng)于接收到消息512,通信客戶端應(yīng)用112通過第一用戶終端102上的存儲器226,確定分配給消息512中的該文本部分的貼紙2(協(xié)同操作元素),由通信客戶端應(yīng)用112提供的客戶端用戶界面將貼紙2 412顯示成接收的消息(圖4a中沒有示出)。
存儲器122存儲關(guān)于動作的信息,其中,該動作將響應(yīng)于貼紙1 410和貼紙2 412的組合而進行觸發(fā)。因此,響應(yīng)于從消息構(gòu)建器118接收到對所識別的協(xié)同操作元素(貼紙2)的指示510,動作控制器120通過查詢耦合到動作控制器120的存儲器122,在步驟S308處確定基于貼紙1 410和貼紙2 412的組合而進行觸發(fā)的動作。該示例性實施例中的所確定的動作,對應(yīng)于將在第一用戶終端102和第二用戶終端108二者上顯示的貼紙1 410和貼紙2 412的動畫版。
動作控制器120向消息構(gòu)建器118發(fā)送消息514,其中消息514指示應(yīng)當向第一用戶終端102和第二用戶終端108發(fā)送貼紙1 410的動畫版,消息514包括分配給貼紙1a 414a的文本部分(貼紙1 410的動畫版)。響應(yīng)于接收到消息514,消息構(gòu)建器118通過通信網(wǎng)絡(luò)106向第一用戶終端102發(fā)送消息516,通過通信網(wǎng)絡(luò)106向第二用戶終端108發(fā)送消息518,其中消息516和消息518包括分配給貼紙1a 414a的文本部分(貼紙1 410的動畫版)。
此外,動作控制器120還向消息構(gòu)建器118發(fā)送消息520,其中消息520指示應(yīng)當向第一用戶終端102和第二用戶終端108發(fā)送貼紙2 412的動畫版,消息520包括分配給貼紙1a 414b的文本部分(貼紙2 412的動畫版)。響應(yīng)于接收到消息520,消息構(gòu)建器118通過通信網(wǎng)絡(luò)106向第一用戶終端102發(fā)送消息522,通過通信網(wǎng)絡(luò)106向第二用戶終端108發(fā)送消息524,其中消息522和消息524包括分配給貼紙2a 414b的文本部分(貼紙2 412的動畫版)。
響應(yīng)于接收到消息516,通信客戶端應(yīng)用112通過第一用戶終端102上的存儲器206,確定分配給消息516中的文本部分的貼紙1a 414a。響應(yīng)于接收到消息522,通信客戶端應(yīng)用112通過第一用戶終端102上的存儲器226,確定分配給消息522中的文本部分的貼紙2a 414b。由由通信客戶端應(yīng)用112提供的客戶端用戶界面將動畫貼紙1a 414a和動畫貼紙2a 414b顯示成接收的消息(如圖4a中所示)。動畫貼紙1a 414a和動畫貼紙2a 414b的組合提供這兩個字符貼紙414a、414b之間的戰(zhàn)斗動畫。響應(yīng)于接收到消息518和524,通信客戶端應(yīng)用114以相同的方式進行工作。
雖然在上面所描述的示例性實施例中,與貼紙1 410和貼紙2 412相關(guān)聯(lián)的動作用于將在第一用戶終端102和第二用戶終端108上顯示貼紙1 140和貼紙2 412的動畫版,但這僅僅只是一個例子。與通信系統(tǒng)100相關(guān)聯(lián)的軟件提供商可以配置其它動作,以響應(yīng)于貼紙1 410和貼紙2 412的組合而進行觸發(fā)。
雖然在上文參照兩個用戶發(fā)送消息(其中各消息中包括協(xié)同操作元素)來描述了圖4a和圖5,但相同的原理也可應(yīng)用于單一用戶發(fā)送單獨的消息,其中每一個單獨的消息包括協(xié)同操作元素。
雖然在上文參照作為貼紙的協(xié)同操作元素來描述了圖4a和圖5,但相同的原理可應(yīng)用于所識別的協(xié)同操作元素是表情符號?,F(xiàn)在參照圖4b-d來描述響應(yīng)于在第一用戶終端102和第二用戶終端108之間交換的消息中的協(xié)同操作元素的組合,而可以向第一用戶終端102和第二用戶終端108傳送的其它動作。
如圖4b中所示,在用戶A的顯示器204上,顯示在用戶A 104和用戶B 110之間,在示例性日期2013年12月20日所發(fā)生的即時消息發(fā)送會話的發(fā)送的消息和接收的消息。該客戶端用戶界面在顯示器204的可用區(qū)域400中顯示內(nèi)容(其包括發(fā)送的消息和接收的消息)。
在該例子中,存儲器122存儲:關(guān)于響應(yīng)于在用戶A 104和用戶B 110之間交換的單獨消息中存在的文本部分的組合(其是由一個用戶在他們的用戶終端處輸入消息以用于向其它用戶終端傳輸?shù)?,而進行觸發(fā)的動作的信息。具體而言,響應(yīng)于在第一用戶終端102和第二用戶終端108之間發(fā)送的兩個單獨消息中識別到詞語“cool”,在通信客戶端應(yīng)用112、114所提供的客戶端用戶界面中顯示圖形圖標“uber cool!”。
用戶A 104使用第一用戶終端102上的輸入單元,在消息字段402中輸入包括詞語“cool”的文本,并在輸入該文本之后,選擇可選擇的發(fā)送選項408。作為響應(yīng),通信客戶端應(yīng)用112生成包含該輸入文本的消息,并經(jīng)由通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送所生成的消息,以傳送給第二用戶終端108。如圖4b中所示,由由通信客戶端應(yīng)用112提供的客戶端用戶界面將用戶A輸入的文本顯示成包括該詞語cool的發(fā)送消息416。
作為答復(fù),用戶B 110使用第二用戶終端108上的輸入單元,在消息字段402中輸入包括詞語“cool”的文本,并在輸入該文本之后,選擇可選擇的發(fā)送選項408。作為響應(yīng),通信客戶端應(yīng)用114生成包含該輸入文本的消息,并經(jīng)由通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送所生成的消息,以傳送給第一用戶終端102。服務(wù)器116向第一用戶終端102發(fā)送包含該輸入文本的消息。如圖4b中所示,由通信客戶端應(yīng)用112提供的客戶端用戶界面顯示所接收的包括詞語cool的消息。
響應(yīng)于從消息構(gòu)建器118接收到對所識別的協(xié)同操作元素416、418的指示,動作控制器120通過查詢耦合到該動作控制器120的存儲器122,來確定基于文本部分416、418的組合而將觸發(fā)的動作。
動作控制器120向消息構(gòu)建器118發(fā)送用于指示應(yīng)當向第一用戶終端102和第二用戶終端108兩者發(fā)送圖形圖標“uber cool!”的消息。響應(yīng)于接收到該消息,消息構(gòu)建器118通過通信網(wǎng)絡(luò)106向第一用戶終端102發(fā)送包括有分配給該圖形圖標“uber cool!”的文本部分的消息,通過通信網(wǎng)絡(luò)106向第二用戶終端108發(fā)送包括有分配給該圖形圖標“uber cool!”的文本部分的消息。
響應(yīng)于從消息構(gòu)建器518接收到該消息,通信客戶端應(yīng)用112通過第一用戶終端102上的存儲器226,確定分配給該消息中的該文本部分的圖形圖標“uber cool!”420,由通信客戶端應(yīng)用112提供的客戶端用戶界面將圖形圖標“uber cool!”420顯示成接收的消息(如圖4b中所示)。響應(yīng)于接收到包括有分配給圖形圖標“uber cool!”的文本部分的消息,通信客戶端應(yīng)用114以相同的方式進行工作。
雖然在上文描述了響應(yīng)于在第一用戶終端102和第二用戶終端108之間發(fā)送的兩個單獨消息中識別到相同的文本部分(“cool”)而觸發(fā)動作,但也可以響應(yīng)于識別出在第一用戶終端102和第二用戶終端108之間的單獨消息中發(fā)送的不同文本部分的組合,觸發(fā)其它動作。
雖然在上文參照兩個用戶發(fā)送包括協(xié)同操作元素的消息,對圖4b進行了描述,但相同的原理也可應(yīng)用于單一用戶發(fā)送單獨的消息,其中每一個單獨的消息包括協(xié)同操作元素。
現(xiàn)參見圖4c,用戶A 104能夠通過向用戶B 110發(fā)送人物,在通信事件期間傳送表情符號/表達。
在該例子中,存儲器122存儲:關(guān)于響應(yīng)于(通信事件的一個或多個用戶所選定的)人物局部的組合,而進行觸發(fā)的動作的信息。
用戶A 104可以導(dǎo)航瀏覽第一組的人物局部(例如,頭)的集合,從第一組中選擇人物局部(頭),并選擇發(fā)送選項408。響應(yīng)于檢測到選擇了發(fā)送選項408,向第二用戶終端108處的用戶B 110發(fā)送所選定的頭部,通信客戶端應(yīng)用112通過第一用戶終端102上的存儲器226,確定分配給所選定的頭部(協(xié)同操作元素)的文本部分,通過通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送包括該文本部分的消息,以傳送到第二用戶終端108。如圖4c中所示,由通信客戶端應(yīng)用112提供的客戶端用戶界面將用戶A選擇的頭部424顯示成發(fā)送的消息。
隨后,用戶A可以導(dǎo)航瀏覽第二組的人物局部(例如,身體)的集合,從第二組中選擇人物局部(身體),并選擇發(fā)送選項408。響應(yīng)于檢測到選擇了發(fā)送選項408,向第二用戶終端108處的用戶B 110發(fā)送所選定的身體,通信客戶端應(yīng)用112通過第一用戶終端102上的存儲器226,確定分配給所選定的身體(協(xié)同操作元素)的文本部分,通過通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送包括該文本部分的消息,以傳送到第二用戶終端108。如圖4c中所示,由通信客戶端應(yīng)用112提供的客戶端用戶界面將用戶A選擇的身體426顯示成發(fā)送的消息。
隨后,用戶A可以導(dǎo)航瀏覽第三組的人物局部(例如,腿部)的集合,從第三組中選擇人物局部(腿部),并選擇發(fā)送選項408。響應(yīng)于檢測到選擇了發(fā)送選項408,向第二用戶終端108處的用戶B 110發(fā)送所選定的腿部,通信客戶端應(yīng)用112通過第一用戶終端102上的存儲器226,確定分配給所選定的腿部(協(xié)同操作元素)的文本部分,通過通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送包括該文本部分的消息,以傳送到第二用戶終端108。如圖4c中所示,由通信客戶端應(yīng)用112提供的客戶端用戶界面將用戶A選擇的腿部428顯示成發(fā)送的消息。
響應(yīng)于從消息構(gòu)建器118接收到對所識別的協(xié)同操作元素424、426、428的指示,動作控制器120通過查詢耦合到動作控制器120的存儲器122,確定基于人物局部424、426、428的組合將進行觸發(fā)的動作。
動作控制器120向消息構(gòu)建器118發(fā)送用于指示應(yīng)當向第一用戶終端102和第二用戶終端108二者發(fā)送復(fù)合圖像的消息。響應(yīng)于接收到該消息,消息構(gòu)建器118通過通信網(wǎng)絡(luò)106向第一用戶終端102發(fā)送包括有分配給該復(fù)合圖像的文本部分的消息,通過通信網(wǎng)絡(luò)106向第二用戶終端108發(fā)送包括有分配給該復(fù)合圖像的文本部分的消息。
響應(yīng)于從消息構(gòu)建器518接收到該消息,通信客戶端應(yīng)用112通過第一用戶終端102上的存儲器226,確定分配給該消息中的文本部分的復(fù)合圖像430,由通信客戶端應(yīng)用112提供的客戶端用戶界面將該復(fù)合圖像430顯示成所接收的圖像(如圖4c中所示)。響應(yīng)于接收到包括有分配給該復(fù)合圖像的文本部分,通信客戶端應(yīng)用114以相同的方式進行工作。
雖然在上文描述了單一用戶(用戶A)來選擇用于觸發(fā)一個動作的人物局部,但用于觸發(fā)動作的人物局部也可以由兩個或更多用戶在通信事件期間進行選擇。此外,雖然上文描述了僅僅用于顯示復(fù)合圖像的動作,但也可以基于在第一用戶終端102和第二用戶終端108之間交換的消息中所識別的人物局部的組合,觸發(fā)其它動作,例如,通信客戶端應(yīng)用112、114可以顯示由所選定的人物局部所構(gòu)成的動畫人物。
通過在用戶可訪問的單獨集合中提供人物局部的集合,通信客戶端應(yīng)用112、114使呈現(xiàn)給用戶的選擇選項的數(shù)量減到最少。這對于屏幕尺寸受限的移動設(shè)備來說是特別是利的。
現(xiàn)參見圖4d,用戶A 104和用戶B 110可以在這些用戶之間的通信事件期間,參與某個游戲。
在該例子中,存儲器122存儲:關(guān)于響應(yīng)于在該游戲匹配期間,用戶A 104和用戶B 110所選擇的選項,而將進行觸發(fā)的動作的信息;以及關(guān)于響應(yīng)于在該游戲不匹配的期間,用戶A 104和用戶B 110所選擇的媒體對象,而將進行觸發(fā)的動作的信息。
為了增加在即時消息發(fā)送會話期間的互動性和用戶參與性,用戶B 110可以在該即時消息發(fā)送會話期間,發(fā)起與用戶A 104的游戲。
響應(yīng)于通信客戶端應(yīng)用112檢測到接受針對該游戲的邀請,由通信客戶端應(yīng)用112提供的客戶端用戶界面顯示多個可選擇的媒體對象432a-f。此外,由通信客戶端應(yīng)用114提供的客戶端用戶界面也在第二用戶終端108上,向用戶B顯示多個可選擇的媒體對象432a-f。僅僅舉例而言,可選擇的媒體對象432a-f可以是與足球球門的一部分相對應(yīng)的顯示區(qū)域。
充當該游戲中的點球罰球員,用戶A 104選擇所述多個可選擇的媒體對象432a-f中的他想要將球射到的一個。響應(yīng)于檢測到用戶A 104選擇了所述多個可選擇的媒體對象432a-f中的一個,通信客戶端應(yīng)用112通過第一用戶終端102上的存儲器226,確定分配給所選定的可選擇媒體對象(協(xié)同操作元素)的文本部分,并通過通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送包括該文本部分的消息。
充當為該游戲中的守門員,用戶B 110選擇所述多個可選擇的媒體對象432a-f中的他想要嘗試捕住該球的一個。響應(yīng)于檢測到用戶B 110選擇了所述多個可選擇的媒體對象432a-f中的一個,通信客戶端應(yīng)用114通過第二用戶終端108上的存儲器226,確定分配給所選定的可選擇媒體對象(協(xié)同操作元素)的文本部分,并通過通信網(wǎng)絡(luò)106向服務(wù)器116發(fā)送包括該文本部分的消息。
響應(yīng)于從消息構(gòu)建器118接收到對所選定的協(xié)同操作元素432的指示,動作控制器120通過查詢耦合到該動作控制器120的存儲器122,確定基于可選擇媒體對象的組合而將觸發(fā)的動作。
如果分配給用戶A 104所選定的可選擇媒體對象的文本部分,與分配給用戶B 110所選定的可選擇媒體對象的文本部分相匹配,則動作控制器確定應(yīng)當向第一用戶終端102和第二用戶終端108傳送用于說明用戶B捕住了用戶A的射門的指示。
相比而言,如果分配給用戶A 104所選定的可選擇媒體對象的文本部分,與分配給用戶B 110所選定的可選擇媒體對象的文本部分不匹配,則動作控制器120確定應(yīng)當向第一用戶終端102和第二用戶終端108傳送用于說明用戶A的射門進球的指示。
在來自動作控制器120的指令之后,消息構(gòu)建器118通過通信網(wǎng)絡(luò)106向第一用戶終端102發(fā)送消息,以向用戶A 104指示該游戲中的結(jié)果,并通過通信網(wǎng)絡(luò)106向第二用戶終端108發(fā)送消息,以向用戶B 110指示該游戲中的結(jié)果。從消息構(gòu)建器118向第一用戶終端102和第二用戶終端108發(fā)送的消息包括用于傳送該游戲中的結(jié)果的文本部分。
響應(yīng)于從消息構(gòu)建器518接收到該消息,通信客戶端應(yīng)用112基于該消息中的文本部分,通過第一用戶終端102上的存儲器226,確定將向用戶A輸出什么內(nèi)容。由通信客戶端應(yīng)用112提供的客戶端應(yīng)用界面基于所接收的消息中的該文本部分,向用戶A提供該游戲中的結(jié)果。例如,響應(yīng)于從消息構(gòu)建器518接收到該消息,通信客戶端應(yīng)用112可以在客戶端用戶界面中向用戶A 104顯示消息434。替代地,通信客戶端應(yīng)用112可以通過存儲器226中,確定分配給該消息中的該文本部分的圖形圖像,或者分配給該消息中的該文本部分的動畫,將在針對用戶A 104的客戶端用戶界面中進行顯示。響應(yīng)于接收到該消息(其包括用于傳送該游戲中的結(jié)果的文本部分),通信客戶端應(yīng)用114以相同的方式進行工作。
用于向用戶A和用戶B傳送該游戲中的結(jié)果的文本部分可以是相同的。例如,該文本部分可以對應(yīng)于:通信客戶端應(yīng)用112、114提供的客戶端用戶界面所顯示的得分“用戶A 1-0用戶B”。在另一個例子中,該文本部分可以對應(yīng)于:由通信客戶端應(yīng)用112、114提供的客戶端用戶界面所顯示的守門員救到點球(或者沒有救到點球)的動畫。
替代地,向用戶A和用戶B傳送該游戲中的結(jié)果所使用的文本可以是不同的。例如,響應(yīng)于從消息構(gòu)建器518接收到該消息,通信客戶端應(yīng)用112可以在針對用戶A 104的客戶端用戶界面中顯示第一消息,例如,“你已得分!用戶A 1-0用戶B”,而響應(yīng)于從消息構(gòu)建器518接收到該消息,通信客戶端應(yīng)用114可以在針對用戶B 110的客戶端用戶界面中顯示第二消息,例如,“你沒有救到球!用戶A 1-0用戶B”。
一旦傳送了該動作,則用戶A 104和用戶B 110交換在該游戲中的角色,來繼續(xù)進行該游戲。
在所有的上面所描述的實施例中,傳送到該通信事件的用戶的動作不是該通信事件中的任何用戶所選擇或者預(yù)先選擇的。也就是說,在該通信事件的用戶的終端處傳送的動作,對該用戶是非預(yù)期的。這是由于下面的事實:響應(yīng)于協(xié)同操作元素的組合而將觸發(fā)的動作(其存儲在存儲器122中),是由與通信系統(tǒng)100相關(guān)聯(lián)的軟件提供商進行配置的,因此對于通信系統(tǒng)100的用戶而言,動作控制器120的行為是隱藏的。
在通信事件期間從用戶終端發(fā)送的消息,可以包括傳輸時間的時間戳(在傳輸之前,針對該消息所生成)。響應(yīng)于協(xié)同操作元素的組合而將觸發(fā)的動作的信息(其存儲在存儲器122中)可以指示:僅當在某個時間幀中發(fā)送的消息里標識了這些協(xié)同操作元素時,才觸發(fā)該動作。
在圖4b中對此進行了說明,其中,在用戶A 104和用戶B 110之間,在示例性日期2013年12月18日所發(fā)生的示例性即時消息發(fā)送會話中,用戶A 104發(fā)送包括有詞語“cool”422的消息,其中消息構(gòu)建器118將該詞語“cool”422標識成協(xié)同操作元素。
存儲器122可以存儲用于說明以下內(nèi)容的信息:如果在第一消息(其包括在第一用戶終端102和第二用戶終端108之間發(fā)送的詞語“cool”)的預(yù)定時間段(例如,6個小時)之內(nèi),基于傳輸時間的時間戳而識別出包括詞語“cool”的第二消息在第一用戶終端102和第二用戶終端108之間被發(fā)送,,才在通信客戶端應(yīng)用112、114所提供的客戶端用戶界面中顯示圖形圖標“uber cool!”。
因此,在示例性日期2013年12月20日在用戶A 104和用戶B 110之間發(fā)生的后續(xù)即時消息發(fā)送會話中,用戶A 104發(fā)送包括詞語“cool”416的消息,其中消息構(gòu)建器118將該詞語“cool”識別成協(xié)同操作元素。但是,由于該動作觸發(fā)的基于時間的元素,在用戶A發(fā)送包括詞語“cool”416的消息之后,并不向第一用戶終端102和第二用戶終端108傳送圖形圖標“uber cool!”。
雖然上面參照圖4b對此進行了描述,但在本文的上面所提到的響應(yīng)于其它協(xié)同操作元素的組合而觸發(fā)的動作還可以僅當在某個時間幀之內(nèi)發(fā)送的單獨的消息之內(nèi)識別出這些協(xié)同操作元素時,才被觸發(fā)。
雖然上面所描述的所有的實施例都指代包括以下操作的動作:在用戶終端的顯示器上顯示至少一個媒體對象(例如,貼紙、動畫貼紙、圖形圖標、人物、動畫人物、基于文本的消息的顯示)。另外地或替代地,一種動作可以包括使用用戶終端的揚聲器210來輸出音頻信號。也就是說,向用戶終端發(fā)送的用于造成動作的傳送的消息可以包括文本部分,當由在相應(yīng)的用戶終端處的通信客戶端應(yīng)用進行接收時,使得該通信客戶端應(yīng)用通過存儲器226確定分配給該文本部分的音頻文件,以便使用該用戶終端的揚聲器210進行輸出。
軟件提供商可以更新客戶端軟件,例如,在該客戶端軟件的新版本中引入新的和/或改進的功能。因此,與通信客戶端應(yīng)用114相比,通信客戶端應(yīng)用112可以具有不同的版本和/或構(gòu)建號。針對客戶端軟件的代碼的每一個改變,該客戶端的構(gòu)建號都會發(fā)生遞增。當客戶端的功能發(fā)生改變時,客戶端的版本號發(fā)生遞增。與版本號的改變相比,構(gòu)建號的改變通常表示客戶端軟件的改變較小。用此方式,可以將構(gòu)建號可以被視作為版本號的子區(qū)分。
在通信客戶端的建立期間,通信應(yīng)用112、114被配置為交換通信客戶端類型信息(即,版本號和/或構(gòu)建號)。如果服務(wù)器116檢測到應(yīng)當向執(zhí)行通信客戶端應(yīng)用的用戶終端傳送一個動作(但該動作具有該用戶終端不支持該動作的傳送的類型),則消息構(gòu)建器118可以向該用戶終端發(fā)送用于在客戶端用戶界面中,在該用戶終端上顯示的消息,該消息邀請用戶更新他們的客戶端軟件。例如,該消息可以包括web鏈接,用戶可以選擇該web鏈接以發(fā)起對最新客戶端軟件的下載。
在上面所描述的實施例中,服務(wù)器116被配置為發(fā)送包括協(xié)同操作元素的消息,其觸發(fā)對接收方終端的一個動作,使得在接收方終端處顯示觸發(fā)該動作的協(xié)同操作元素。例如,接收方終端上的通信客戶端應(yīng)用被配置為顯示腿部428,這觸發(fā)復(fù)合圖像430被顯示。類似地,接收方終端上的通信客戶端應(yīng)用被配置為顯示貼紙2 412,這觸發(fā)動畫貼紙414a和414b被顯示。在替代的實施例中,響應(yīng)于識別出包括協(xié)同操作元素(其觸發(fā)一個動作)的消息,服務(wù)器116并不被配置為向接收方終端發(fā)送該消息,而是向接收方終端發(fā)送用于使得傳送該動作的消息(根據(jù)上面所描述的實施例)。例如,參見圖5,不向第一用戶終端102發(fā)送消息512。
雖然在上文中,描述了存儲器122存儲關(guān)于響應(yīng)于協(xié)同操作元素的組合(在與協(xié)同操作元素相對應(yīng)的文本的部分之外)而將觸發(fā)的動作的信息。替代地,耦合到動作控制器120的專用存儲器(圖1中沒有示出)也可以存儲關(guān)于響應(yīng)于協(xié)同操作元素的組合而將觸發(fā)的動作的信息。
雖然圖1在通信網(wǎng)絡(luò)106中示出了單一服務(wù)器116,但可以將消息構(gòu)建器118和動作控制器120的功能分布在連接到通信網(wǎng)絡(luò)106的多個計算設(shè)備(例如,服務(wù)器)上,例如,在“云計算”環(huán)境下。
如上所述,在第一用戶終端102和第二用戶終端108之間的通信事件中交換的消息,可以在點對點路由上進行發(fā)送,而不經(jīng)由服務(wù)器116。服務(wù)器116的功能可以由該通信事件所涉及的用戶終端之一上運行的通信客戶端應(yīng)用來實現(xiàn)。在該替代的實施例中,該用戶終端上的一個或多個存儲器(例如,存儲器226)存儲與協(xié)同操作元素相對應(yīng)的文本的部分,以及關(guān)于響應(yīng)于協(xié)同操作元素的組合而將觸發(fā)的動作的信息。
上面參照參與即時消息發(fā)送會話的用戶A 104和用戶B 110,來描述本公開內(nèi)容的實施例??蛻舳擞脩艚缑嬖陲@示器204的可用區(qū)域400中顯示內(nèi)容(其包括發(fā)送的消息和接收的消息)。如圖4a、4b、4c和4d中所描述的,顯示器的可用區(qū)域是該顯示器的整個部分。但是,可以設(shè)想的是,顯示器的可用區(qū)域(其是可用于客戶端108的區(qū)域)可能只構(gòu)成該顯示器的一部分,例如,該顯示器的剩余部分由操作系統(tǒng)和/或在其上運行的其它應(yīng)用進行使用,以顯示其它內(nèi)容。
雖然參照用戶A 104和用戶B 110參與即時消息發(fā)送會話來描述本公開內(nèi)容的實施例,但本公開內(nèi)容的實施例也可以擴展到其它類型的通信事件,上面說明了其中的一些例子。例如,在用戶A 104和用戶B 110之間的視頻呼叫期間,用戶A 104可以選擇在該視頻呼叫期間,向用戶B 110發(fā)送第一表情符號,用戶B 110可以隨后選擇在該視頻呼叫期間,向用戶A 104發(fā)送選擇了一個表情符號。如果第一表情符號和第二表情符號是與一個動作相關(guān)聯(lián)的協(xié)同操作元素(例如,顯示第三表情符號),則根據(jù)本公開內(nèi)容的實施例,服務(wù)器116將向第一用戶終端102和第二用戶終端108發(fā)送消息,以使得在該視頻呼叫期間,在由通信客戶端應(yīng)用112、114提供的客戶端用戶界面中顯示該第三表情符號。
圖3中單獨示出的步驟可以實現(xiàn)成單獨的步驟,也可以不實現(xiàn)成單獨的步驟。
通常,本文所描述的功能中的任何一個可以使用軟件、固件、硬件(例如,固定邏輯電路)來實現(xiàn),或者使用這些實現(xiàn)方式的組合來實現(xiàn)。如本文所使用的術(shù)語“控制器”、“功能”、“部件”和“應(yīng)用”通常表示軟件、固件、硬件或者其組合。在軟件實現(xiàn)的情況下,控制器、功能、部件或應(yīng)用表示當其在處理器(例如,一個CPU或一些CPU)上執(zhí)行時,執(zhí)行指定任務(wù)的程序代碼。該程序代碼可以存儲在一個或多個計算機可讀存儲器設(shè)備中。下面所描述的技術(shù)的特征是獨立于平臺的,其意味著可以在具有各種各樣的處理器的各種商業(yè)計算平臺上實現(xiàn)這些技術(shù)。
例如,用戶終端還可以包括使得該用戶終端的硬件執(zhí)行操作(例如,處理器功能模塊)等等的實體(例如,軟件)。例如,用戶終端可以包括配置為維持指令的計算機可讀介質(zhì),其中這些指令使得這些用戶終端(具體而言,這些用戶操作的操作系統(tǒng)和相關(guān)聯(lián)的硬件)執(zhí)行操作。因此,這些指令用于配置操作系統(tǒng)和相關(guān)聯(lián)的硬件執(zhí)行這些操作,并用此方式來導(dǎo)致操作系統(tǒng)和相關(guān)聯(lián)的硬件的轉(zhuǎn)換以執(zhí)行功能。計算機可讀介質(zhì)可以通過各種不同的配置,向用戶終端提供這些指令。
計算機可讀介質(zhì)的一個這種配置是信號承載介質(zhì),因此被配置為例如經(jīng)由網(wǎng)絡(luò),向計算設(shè)備發(fā)送這些指令(例如,作為載波波形)。此外,計算機可讀介質(zhì)還可以被配置成計算機可讀存儲介質(zhì),因此其不是信號承載介質(zhì)。計算機可讀存儲介質(zhì)的例子包括隨機存取存儲器(RAM)、只讀存儲器(ROM)、光盤、閃存、硬盤存儲器、以及可以使用磁、光和其它技術(shù)來存儲指令和其它數(shù)據(jù)的其它存儲器設(shè)備。
雖然利用特定于結(jié)構(gòu)特征和/或方法動作的語言來描述了本發(fā)明,但應(yīng)當理解的是,所附權(quán)利要求書中規(guī)定的本發(fā)明并不是必需限于上面所描述的這些特定特征或動作。相反,只是將上面所描述的特定特征和動作公開成實現(xiàn)本發(fā)明的示例性形式。