本發(fā)明涉及信息處理領(lǐng)域,具體而言,涉及一種消息處理方法、裝置及系統(tǒng)。
背景技術(shù):
目前在使用即時(shí)通訊工具進(jìn)行即時(shí)通訊時(shí),用戶可能同時(shí)與多個(gè)賬戶啟動了即時(shí)通訊的會話,這樣用戶可能在同一時(shí)間或較短的一個(gè)時(shí)間段內(nèi)收到多條未讀消息,用戶可能執(zhí)行了查看操作,但實(shí)際上并沒有讀取該多條消息,在執(zhí)行查看讀操作之后并未重新查看消息。例如,用戶在開會中或工作繁忙時(shí),收到一個(gè)或多條消息的通知,用戶查看通知之后,對這些通知做了如下處理:看到應(yīng)用的圖標(biāo)或應(yīng)用界面中的會話上一直提醒有未讀消息,拖動或者點(diǎn)擊提醒紅點(diǎn),清除了所有未讀提醒。在這種情況下,服務(wù)器視為用戶已經(jīng)查看了消息,如果用戶沒有想起來,這些沒有回復(fù)的消息就都石沉大海了。而如果這消息里有重要的消息,會導(dǎo)致消息的遺漏。
如上述分析,在好友或多人的強(qiáng)交互消息的環(huán)境下,如果用戶只能對消息提示或消息通知執(zhí)行查看操作,若用戶執(zhí)行了查看操作實(shí)際上并沒有查看消息內(nèi)容,則會錯過或遺漏重要消息,這樣會降低消息的讀取率。
針對現(xiàn)有技術(shù)中提供的對未讀消息的操作方式,會造成未讀消息的遺漏的問題,目前尚未提出有效的解決方案。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種消息處理方法、裝置及系統(tǒng),以至少解決現(xiàn)有技術(shù)中提供的對未讀消息的操作方式,會造成未讀消息的遺漏的技術(shù)問題。
根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種消息處理方法,包括:在客戶端中檢測到撤回指令;判斷所述客戶端中是否存在未被讀取的消息;在判斷出所述客戶端中存在所述未被讀取的消息的情況下,響應(yīng)于所述撤回指令對所述未被讀取的消息執(zhí)行撤回操作,其中,所述撤回操作用于在所述客戶端中取消顯示所述未被讀取的消息。
根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種消息處理方法,包括:向客戶端發(fā)送消息;接收所述客戶端發(fā)送的撤回通知,其中,所述撤回通知用于指示服務(wù)器所述客戶端取消顯示所述消息中未被讀取的消息;響應(yīng)于所述撤回通知,重新向所述客戶端發(fā)送所述未被讀取的消息。
根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種消息處理裝置,包括:檢測單元,用于在客戶端中檢測撤回指令;判斷單元,用于在檢測到所述撤回指令的情況下,判斷所述客戶端中是否存在未被讀取的消息;撤回單元,用于在判斷出所述客戶端中存在所述未被讀取的消息的情況下,響應(yīng)于所述撤回指令對所述未被讀取的消息執(zhí)行撤回操作,其中,所述撤回操作用于在所述客戶端中取消顯示所述未被讀取的消息。
根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種消息處理裝置,包括:發(fā)送單元,用于向客戶端發(fā)送消息;接收單元,用于接收所述客戶端發(fā)送的撤回通知,其中,所述撤回通知用于指示服務(wù)器所述客戶端取消顯示所述消息中未被讀取的消息;重新發(fā)送單元,用于響應(yīng)于所述撤回通知,重新向所述客戶端發(fā)送所述未被讀取的消息。
在本發(fā)明實(shí)施例中,在第一終端和第二終端建立連接之后,第二終端在運(yùn)動過程中向第一終端發(fā)送運(yùn)動信息,第一終端接收到運(yùn)動信息之后直接將其顯示在第一終端對應(yīng)的屏幕上,在該方案中,第二終端被用戶攜帶,該第二終端的運(yùn)動可以反映用戶的運(yùn)動,第二終端在運(yùn)動過程中發(fā)送運(yùn)動信息,從而可以將用戶運(yùn)動過程中產(chǎn)生的數(shù)據(jù)實(shí)時(shí)發(fā)送給第一終端,并通過第一終端的屏幕實(shí)時(shí)顯示該運(yùn)動信息,從而可以在用戶運(yùn)動的過程中,實(shí)時(shí)顯示用戶的運(yùn)動信息,以實(shí)時(shí)提醒用戶,解決了現(xiàn)有技術(shù)中只在運(yùn)動結(jié)束時(shí)提醒用戶,無法實(shí)時(shí)提醒用戶的問題。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
圖1是根據(jù)本發(fā)明實(shí)施例的一種硬件環(huán)境的示意圖;
圖2是根據(jù)本發(fā)明實(shí)施例的一種可選的消息處理方法的流程圖;
圖3是根據(jù)本發(fā)明實(shí)施例的另一種可選的消息處理方法的流程圖一;
圖4是根據(jù)本發(fā)明實(shí)施例的另一種可選的消息處理方法的流程圖二;
圖5是根據(jù)本發(fā)明實(shí)施例的另一種可選的消息處理方法的流程圖三;
圖6是根據(jù)本發(fā)明實(shí)施例的一種可選的消息處理方法的交互圖;
圖7是根據(jù)本發(fā)明實(shí)施例的一種可選的消息處理裝置的示意圖;
圖8是根據(jù)本發(fā)明實(shí)施例的一種可選的終端的內(nèi)部結(jié)構(gòu)框圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分的實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。
需要說明的是,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本發(fā)明的實(shí)施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤4送?,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
首先,對本申請涉及的術(shù)語,解釋如下:
即時(shí)通訊:一般是指實(shí)時(shí)通信,該通信方式允許兩人或多人使用網(wǎng)絡(luò)實(shí)時(shí)傳遞文字消息、文件、語音或視頻信息。
Tab界面是包含有tab選項(xiàng)卡的動態(tài)頁面。
根據(jù)本發(fā)明實(shí)施例,提供了一種消息處理方法??蛇x地,在本實(shí)施例中,上述消息處理方法可以應(yīng)用于如圖1所示的硬件環(huán)境中,其中,硬件環(huán)境包括網(wǎng)絡(luò)環(huán)境。如圖1所示,該硬件環(huán)境可以包括第一終端101、第二終端102和服務(wù)器103。
如圖1所示,第一終端和第二終端分別通過網(wǎng)絡(luò)與服務(wù)器進(jìn)行連接。上述網(wǎng)絡(luò)包括但不限于:廣域網(wǎng)、城域網(wǎng)或局域網(wǎng)。
其中,圖1中的第一終端和第二終端均可以為個(gè)人計(jì)算機(jī)、移動終端等設(shè)備,如,智能移動終端(如智能手機(jī)、平板電腦)等終端。第一終端和第二終端上均可以安裝客戶端,該客戶端可以為建立兩個(gè)賬戶進(jìn)行通訊的客戶端,如即時(shí)通訊客戶端,或者可以登錄瀏覽器以進(jìn)入通訊頁面,該頁面也可以為即時(shí)通訊頁面。
下面以在第一終端和第二終端上安裝即時(shí)通訊應(yīng)用為例,詳述本申請的應(yīng)用場景。
第一賬戶登錄在第一終端的即時(shí)通訊應(yīng)用的客戶端(以下簡稱為第一客戶端)上,第二賬戶登錄在第二終端的即時(shí)通訊應(yīng)用的客戶端(以下簡稱為第二客戶端)上。在第一賬戶登錄在第一客戶端之后,在第一客戶端的好友列表中選中第二賬戶作為通信對象,創(chuàng)建第一賬戶與第二賬戶的會話,在創(chuàng)建會話之后,第一賬戶可以在創(chuàng)建的會話界面生成即時(shí)通訊消息并發(fā)送該消息至服務(wù)器,服務(wù)器接收到該即時(shí)通訊消息之后,將即時(shí)通訊消息一并下發(fā)至第二客戶端。
可選地,根據(jù)本發(fā)明實(shí)施例提供的一種消息處理方法,上述消息處理方法還可以應(yīng)用于如圖1所示的硬件環(huán)境中的第一終端、第二終端或服務(wù)器上。
該消息可以為其中任意一個(gè)設(shè)備(如第一終端、第二終端或服務(wù)器)上的處理器在處理數(shù)據(jù)流的過程中產(chǎn)生的消息。其中,圖1中的第一終端和第二終端可以為個(gè)人計(jì)算機(jī)、移動終端等設(shè)備,如,智能移動終端(如智能手機(jī)、平板電腦)等終端。
下面結(jié)合圖2詳述本發(fā)明上述實(shí)施例,如圖2所示,該實(shí)施例可以包括如下步驟:
步驟S202:在客戶端中檢測到撤回指令;
步驟S204:判斷客戶端中是否存在未被讀取的消息;
步驟S206:在判斷出客戶端中存在未被讀取的消息的情況下,響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作,其中,撤回操作用于在客戶端中取消顯示未被讀取的消息。
通過本發(fā)明實(shí)施例,在客戶端中檢測到撤回指令、且在客戶端中存在未被讀取的消息的情況下,對該未被讀取的消息執(zhí)行撤回操作,以取消顯示未被讀取的消息。通過上述實(shí)施例,可以在客戶端中存在未讀消息的情況下,取消顯示該未被讀取的消息,在該方案中提供的撤回操作可以取消顯示未讀消息,這樣未讀消息不會被服務(wù)器任務(wù)已經(jīng)被閱讀過,執(zhí)行了撤回操作的未讀消息還是未讀消息,只是暫時(shí)沒有顯示而已,該方案并不影響未被閱讀的消息未讀的狀態(tài),該消息并不會遺漏未讀消息,解決了現(xiàn)有技術(shù)中提供的對未讀消息的操作方式,會造成未讀消息的遺漏的問題。
上述實(shí)施例中的客戶端可以為安裝在設(shè)備上的即時(shí)通訊客戶端,消息可以在即時(shí)通訊客戶端中的會話產(chǎn)生的即時(shí)通訊消息。
在上述實(shí)施例中,客戶端的處理器可以檢測客戶端中的撤回指令,在檢測到撤回指令之后,判斷該客戶端上是否存在尚未被讀取的消息,該尚未被讀取的消息是指未被執(zhí)行讀取操作的消息,在客戶端上存在該未被讀取的消息的情況下,對該未被讀取的消息執(zhí)行撤回操作,以取消該未被讀取的消息的顯示,在進(jìn)入客戶端的界面之后,不會看到關(guān)于該未讀消息。
需要說明的是,在客戶端上不存在該未被讀取的消息的情況下,則撤回指令無效,不對客戶端上已經(jīng)讀取的消息執(zhí)行撤回操作。
在客戶端接收到消息之后,將該消息的信息顯示在客戶端中,或者顯示在客戶端所在設(shè)備的屏幕上,如在設(shè)備的鎖屏界面上顯示該未讀消息的通知信息,如“賬戶B發(fā)送了3條會話消息”。又如,在客戶端中顯示該消息的信息,可以在對應(yīng)的會話上顯示未讀消息的標(biāo)記,如,會話的提示信息上顯示有未讀消息的小紅點(diǎn)標(biāo)記或者未讀消息的數(shù)量標(biāo)記。
判斷客戶端中是否存在未被讀取的消息可以通過檢測客戶端所在設(shè)備的屏幕上是否存在未讀消息的通知信息、或者檢測客戶端的會話提示信息上是否存在未讀消息的標(biāo)記來實(shí)現(xiàn)。
可選地,若檢測出客戶端所在設(shè)備的屏幕上存在未讀消息的通知信息的情況下,則判斷出客戶端中存在未被讀取的消息;或者,若檢測出客戶端的會話提示信息上存在未讀消息的標(biāo)記,則判斷出客戶端中存在未被讀取的消息。
在判斷出客戶端中存在未被讀取的消息的情況下,響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作,其中,撤回操作用于在客戶端中取消顯示未被讀取的消息。這里,取消顯示的可以為部分或全部的未被讀取的消息,用戶在執(zhí)行預(yù)定操作,以輸入撤回指令時(shí),可以選中客戶端中存在的未讀消息的部分或全部,本申請對此不做限定。
根據(jù)本發(fā)明的上述實(shí)施例,在客戶端中檢測到撤回指令可以包括:從客戶端所在的設(shè)備的輸入裝置獲取輸入信息;檢測輸入信息是否符合第一預(yù)定條件;在檢測出輸入信息符合第一預(yù)定條件的情況下,確定檢測出撤回指令。
具體地,可以預(yù)先設(shè)置第一預(yù)定條件,設(shè)置符合第一預(yù)定條件的情況下,確定檢測到撤回指令。
可選地,從客戶端所在的設(shè)備的輸入裝置獲取輸入信息,該輸入裝置可以為向客戶端所在的設(shè)備輸入信息和數(shù)據(jù)的設(shè)備。該輸入裝置包括:鍵盤、鼠標(biāo)、攝像頭、觸摸裝置(如觸摸屏)、光筆、語音輸入裝置、振動輸入裝置以及加速度傳感器等。
在上述實(shí)施例中,通過不同的輸入裝置輸入的信息,可以按照不同的第一預(yù)定條件來檢測該信息是否為撤回指令。
在一個(gè)可選的實(shí)施例中,輸入信息為加速度信息,檢測輸入信息是否符合第一預(yù)定條件包括:檢測加速度信息是否超過加速度閾值;在加速度信息超過加速度閾值的情況下,確定輸入信息符合第一預(yù)定條件。
具體地,該輸入信息可以通過客戶端所在設(shè)備的加速度傳感器輸入,在從該設(shè)備的加速度傳感器獲取得到加速度信息之后,從數(shù)據(jù)庫中讀取加速度閾值,在加速度信息超過該加速度閾值的情況下,確定輸入信息符合第一預(yù)定條件,從而檢測出輸入信息為撤回指令。如,用戶甩了設(shè)備一下,設(shè)備檢測到用戶甩手機(jī)時(shí)的加速度信息,判斷該加速度信息是否超過加速度閾值,以檢測用戶甩設(shè)備時(shí)輸入設(shè)備的信息是否撤回指令。
進(jìn)一步可選地,在加速度信息中包括多個(gè)加速度值的情況下,在多個(gè)加速度值中符合預(yù)設(shè)個(gè)數(shù)的值超過加速度閾值的情況下,確定輸入信息符合第一預(yù)定條件,并檢測出輸入信息為撤回指令。
在另一個(gè)可選的實(shí)施例中,輸入信息可以為觸摸信息,該觸摸信息可以是通過觸摸屏幕輸入的信息,檢測輸入信息是否符合第一預(yù)定條件可以包括:檢測觸摸信息所表示的觸摸痕跡是否符合預(yù)先設(shè)置的觸摸痕跡;在觸摸信息所表示的觸摸痕跡符合預(yù)先設(shè)置的觸摸痕跡的情況下,確定輸入信息符合第一預(yù)定條件。
具體地,可以從觸摸屏幕獲取觸摸信息,并基于觸摸信息確定觸摸痕跡,檢測觸摸痕跡是否符合預(yù)先設(shè)置的觸摸痕跡,若檢測出觸摸痕跡符合預(yù)先設(shè)置的觸摸痕跡,則確定輸入的信息符合第一預(yù)定條件,并確定檢測出撤回指令。
其中,觸摸痕跡可以包括滑動觸摸的痕跡和點(diǎn)擊觸摸的痕跡。如,觸摸痕跡為在預(yù)定區(qū)域內(nèi)點(diǎn)擊預(yù)定次數(shù)的觸摸痕跡,則在獲取到輸入的觸摸痕跡之后,檢測該輸入的觸摸痕跡是否為在預(yù)定區(qū)域內(nèi)點(diǎn)擊預(yù)定次數(shù)的觸摸痕跡,以判斷是否輸入撤回指令。
上述的預(yù)定區(qū)域可以為客戶端所在設(shè)備的當(dāng)前顯示界面上的區(qū)域,該區(qū)域可以預(yù)先設(shè)置為固定區(qū)域,也可以根據(jù)需求設(shè)置,本申請對此不做限定。
在另一個(gè)可選的實(shí)施例中,輸入信息可以包括設(shè)備使用者的影像,在從設(shè)備的攝像裝置中獲取設(shè)備使用者的影像之后,檢測該影像中是否包括預(yù)定手勢,若影像中包括預(yù)定手勢,則確定檢測到撤回指令。如,預(yù)定手勢為揮手,若檢測到影像中包括揮手的動作,則確定檢測到撤回指令。
在又一個(gè)可選的實(shí)施例中,輸入信息可以包括音頻,在從語音輸入裝置(如麥克風(fēng))中獲取設(shè)備使用者的音頻之后,對音頻進(jìn)行語義識別,若檢測出音頻中包括預(yù)定語音,則確定檢測到撤回指令。
可選地,輸入信息還可以為文字信息、振動信息等,基于這些信息確定撤回指令的方式相似,在此不再贅述。
根據(jù)本發(fā)明的上述實(shí)施例,響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作可以包括:刪除未被讀取的消息,以取消顯示未被讀取的消息;或隱藏未被讀取的消息,并取消顯示未被讀取的消息。
可選地,執(zhí)行撤回操作可以直接將撤回指令指示的未被讀取的消息從客戶端刪除,并將客戶端所在設(shè)備的緩存中記錄的該未被讀取的消息刪除,在刪除該未被讀取的消息的情況下,客戶端取消這些消息的顯示。
另一種可選地,執(zhí)行撤回操作可以將撤回指令指示的未被讀取的消息隱藏,該操作可以保留設(shè)備的緩存中記錄的該未被讀取的消息,但是在客戶端取消這些消息的顯示。
通過該實(shí)施例,從客戶端的顯示上來說,不存在該消息,但是實(shí)質(zhì)上這類消息并未被讀取,在符合一定條件的情況下,還可以重新顯示這些消息。
根據(jù)本發(fā)明的上述實(shí)施例,在通過刪除未被讀取的消息,取消顯示該未被讀取的消息的情況下,客戶端向服務(wù)器發(fā)送撤回通知,其中,撤回通知用于指示服務(wù)器在第二預(yù)定條件下,重新向客戶端發(fā)送被客戶端取消顯示的未被讀取的消息。
在該實(shí)施例中,由于刪除了未被讀取的消息,為了可以再次顯示該刪除的未被讀取的消息,可以向服務(wù)器發(fā)送撤回通知,服務(wù)器接收到該撤回通知之后,服務(wù)器在第二預(yù)定條件下,重新向客戶端發(fā)送被客戶端刪除的未被讀取的消息。
可選地,符合第二預(yù)定條件包括間隔預(yù)定時(shí)長,方法還可以包括:展示輸入框,其中,輸入框用于輸入預(yù)定時(shí)長;將預(yù)定時(shí)長發(fā)送至服務(wù)器。
在一個(gè)可選的實(shí)施例中,服務(wù)器接收到撤回通知之后,向客戶端提供輸入框,客戶端接收到該輸入框之后,在輸入框中輸入預(yù)定時(shí)長,并將該預(yù)定時(shí)長發(fā)送至服務(wù)器,服務(wù)器從接收到撤回通知開始計(jì)時(shí),在記錄的時(shí)長達(dá)到預(yù)定時(shí)長的情況下,服務(wù)器重新下發(fā)被刪除的未被讀取的消息。
另一種可選地,符合第二預(yù)定條件包括屬于消息類別,方法還包括:展示輸入框,其中,輸入框用于輸入消息類別;將消息類別發(fā)送至服務(wù)器。
在一個(gè)可選的實(shí)施例中,服務(wù)器接收到撤回通知之后,向客戶端提供輸入框,客戶端接收到該輸入框之后,在輸入框中輸入消息類別,并將該消息類別發(fā)送至服務(wù)器。其中,該消息類別可以為允許重發(fā)的消息的類別,也可以為不允許重發(fā)的消息的類別,本申請對此不做限定。
以消息類別為允許重發(fā)的消息的類別為例,服務(wù)器從接收到撤回通知之后,間隔預(yù)定時(shí)長之后,重新發(fā)送將屬于消息類別的刪除的未被閱讀的消息。
進(jìn)一步需要說明的是,若在服務(wù)器接收到撤回通知之后、且在記錄的時(shí)長達(dá)到預(yù)定時(shí)長之前,接收到向客戶端發(fā)布的新的消息,若該新的消息屬于消息類別,服務(wù)器也將該新的消息記錄,并在記錄的時(shí)長達(dá)到預(yù)定時(shí)長的時(shí)候,將刪除的未被讀取的消息和該新的消息一并下發(fā)給客戶端。
若在服務(wù)器接收到撤回通知之后、且在記錄的時(shí)長達(dá)到預(yù)定時(shí)長之前,接收到向客戶端發(fā)布的新的消息,若該新的消息不屬于上述的消息類別,則將該新的消息直接發(fā)送至客戶端。
在本發(fā)明的上述實(shí)施例中,在響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作之后,方法還可以包括如圖3所示的:步驟S302:重新顯示取消顯示的未被讀取的消息。圖3中示出的步驟S202至步驟S206與圖2示出的實(shí)施例中的實(shí)現(xiàn)方式一致,在此不再贅述。
通過該實(shí)施例,可以重新顯示未被讀取的消息,以供設(shè)備的使用者重新看到該未讀消息,提高消息的讀取率。
需要進(jìn)一步說明的是,在服務(wù)器再次發(fā)送未被讀取的消息之后,客戶端可以展示提示信息,其中,提示信息用于提示未被讀取的消息為再次接收的消息,或者,未被讀取的消息被再次接收的次數(shù)。
進(jìn)一步地,在客戶端接收到未被讀取的消息的次數(shù)超過預(yù)定操作次數(shù)的情況下,不再檢測撤回指令,或者拒絕向服務(wù)器發(fā)送撤回通知,并且,拒絕從即時(shí)通訊客戶端中刪除未被讀取的消息。
本發(fā)明還提供了一種消息處理方法的實(shí)施例,該實(shí)施例應(yīng)用在服務(wù)器上,如圖4所示,該實(shí)施例可以包括:
步驟S402:向客戶端發(fā)送消息;
步驟S404:接收客戶端發(fā)送的撤回通知,其中,撤回通知用于指示服務(wù)器客戶端取消顯示消息中未被讀取的消息;
步驟S406:響應(yīng)于撤回通知,重新向客戶端發(fā)送未被讀取的消息。
在該實(shí)施例中,客戶端可以取消顯示服務(wù)器向其下發(fā)的消息中未被讀取的消息,并向服務(wù)器發(fā)送撤回通知,服務(wù)器接收到撤回通知之后,重新向服務(wù)器發(fā)送客戶端取消顯示的未被讀取的消息,減少了信息的遺漏。
在該實(shí)施例中,可以在客戶端中存在未讀消息的情況下,取消顯示該未被讀取的消息,在該方案中提供的撤回操作可以取消顯示未讀消息,這樣未讀消息不會被服務(wù)器任務(wù)已經(jīng)被閱讀過,執(zhí)行了撤回操作的未讀消息還是未讀消息,只是暫時(shí)沒有顯示而已,該方案并不影響未被閱讀的消息未讀的狀態(tài),該消息并不會遺漏未讀消息,解決了現(xiàn)有技術(shù)中提供的對未讀消息的操作方式,會造成未讀消息的遺漏的問題。
根據(jù)本發(fā)明的上述實(shí)施例,服務(wù)器響應(yīng)于撤回通知,重新向客戶端發(fā)送未被讀取的消息可以包括:檢測是否符合預(yù)設(shè)條件;在符合預(yù)設(shè)條件的情況下,重新向客戶端發(fā)送未被讀取的消息。
其中,檢測是否符合預(yù)設(shè)條件可以包括:檢測接收到撤回通知的時(shí)刻與當(dāng)前時(shí)刻的時(shí)間差是否達(dá)到預(yù)定時(shí)長;若檢測出時(shí)間差到達(dá)預(yù)定時(shí)長,則確定符合預(yù)設(shè)條件。
可選地,在接收到撤回通知的時(shí)刻開始計(jì)時(shí),當(dāng)記錄的時(shí)長達(dá)到預(yù)定時(shí)長的情況下,也可以確定時(shí)間差達(dá)到預(yù)定時(shí)長。
另一個(gè)可選地,檢測是否符合預(yù)設(shè)條件可以包括:檢測客戶端取消顯示的未被讀取的消息中是否還存在未被讀取的消息;若檢測出客戶端取消顯示的未被讀取的消息中還存在未被讀取的消息,則確定符合預(yù)設(shè)條件。
具體地,在間隔一定時(shí)長之后,確定重發(fā)的未被讀取的消息是否均被讀??;在確定出重發(fā)的未被讀取的消息中存在尚未被讀取的消息的情況下,向客戶端發(fā)送該仍未被讀取的消息。
其中,確定再次發(fā)送的第一消息是否均被讀取可以包括:獲取客戶端查看再次發(fā)送的第一消息的第一數(shù)量;比較第一數(shù)量和服務(wù)器重新發(fā)送的第一消息的第二數(shù)量;若第一數(shù)量小于或等于第二數(shù)量,則確定出再次發(fā)送的第一消息中存在尚未被讀取的消息。
通過該實(shí)施例,可以基于本地和服務(wù)器的信息進(jìn)行同步校驗(yàn),保證所有未被讀取的消息均被重新發(fā)送,以將未讀消息的遺漏率降到最低。
在一個(gè)可選的實(shí)施例中,若消息為客戶端生成的消息,客戶端的服務(wù)器,也可以在重發(fā)未被讀取的消息之后,檢測是否還存在尚未被讀取的消息,若存在,則重發(fā)未被讀取的消息,直至所有未讀的消息均被客戶端所在設(shè)備的使用者讀取。
在又一個(gè)可選的實(shí)施例中,檢測是否符合預(yù)設(shè)條件可以包括:檢測向客戶端發(fā)布的新的消息是否屬于預(yù)定的消息類別;若檢測出向客戶端發(fā)布的新的消息屬于預(yù)定的消息類別,則確定符合預(yù)設(shè)條件。
通過上述實(shí)施例,在好友或多人的強(qiáng)交互消息的環(huán)境下,將下發(fā)的未讀消息撤回服務(wù)器,通過設(shè)定的格式如自定義的時(shí)間和方式將未讀的消息下發(fā)并提醒,提高閱讀效率。
下面以即時(shí)通訊消息為例,結(jié)合圖5詳述上述實(shí)施例,如圖5所示,該方案可以通過如下步驟實(shí)現(xiàn):
步驟S501:第一賬戶接收到多條未讀消息。
可選地,該第一賬戶登錄在客戶端上,該多條未讀消息可以是一個(gè)第二賬戶發(fā)送的消息,也可以是多個(gè)第二賬戶發(fā)送的消息,本申請對此不作限定,但是,在下述對本申請的實(shí)現(xiàn)方式進(jìn)行說明時(shí),以多個(gè)第二賬戶向第一賬戶發(fā)布的多條消息為例,進(jìn)行詳細(xì)說明。
多個(gè)第二賬戶向第一賬戶發(fā)布了即時(shí)通訊消息之后,服務(wù)器將該即時(shí)通訊消息下發(fā)至第一賬戶。
步驟S502:在第一賬戶所在的終端的屏幕上顯示該多條未讀消息的信息。
其中,在第一賬戶接收到該多條未讀消息之后,生成該多條未讀消息的信息,該信息可以顯示在第一賬戶所在終端的鎖屏界面上,還可以顯示在該終端上安裝的客戶端應(yīng)用上,還可以在第一賬戶與第二賬戶的會話標(biāo)識上顯示信息。
該通知信息可以為文字信息,如“接收到B發(fā)送的3條消息”,該通知消息還可以為標(biāo)識信息,如在該終端安裝的客戶端的圖標(biāo)上顯示預(yù)定標(biāo)識,該預(yù)定標(biāo)識可以為將圖標(biāo)的默認(rèn)顯示顏色轉(zhuǎn)換為其他的顯示顏色,或者在圖標(biāo)上增加標(biāo)記,在圖標(biāo)上顯示小紅點(diǎn)。又如,在第一賬戶與第二賬戶的會話標(biāo)識上,顯示小紅點(diǎn)或者顯示信息的條數(shù)。
步驟S503:在終端的屏幕上顯示未讀消息的信息時(shí),生成撤回指令,以取消未讀消息的顯示。
其中,用戶可以預(yù)先通過即時(shí)通訊應(yīng)用設(shè)置預(yù)定操作,在終端的屏幕上顯示及時(shí)通訊消息的未讀消息的信息時(shí),用戶可以對第一賬戶所在的終端設(shè)備執(zhí)行預(yù)定操作,生成撤回指令,以將消息撤回服務(wù)器。
可選地,該預(yù)定操作可以為搖晃終端設(shè)備預(yù)定次數(shù)的操作,該預(yù)定操作還可以為對客戶端所在設(shè)備的屏幕執(zhí)行的觸摸操作。
例如,用戶可以在即時(shí)通訊應(yīng)用的設(shè)置界面上啟動撤回服務(wù),并設(shè)置觸發(fā)撤回服務(wù)的預(yù)定操作,如,設(shè)置的預(yù)定操作為搖晃三次終端設(shè)備,在接收到新的即時(shí)通訊消息之后,用戶搖三下手機(jī),則可以生成撤回指令。
其中,撤回指令指示的撤回消息可以包括生成撤回指令時(shí),在終端的屏幕上顯示的通知信息所通知的全部或部分即時(shí)通訊消息。
在另一個(gè)可選的實(shí)施例中,在顯示通知信息的界面上可以記錄有撤回按鍵,用戶可以對該按鍵執(zhí)行點(diǎn)擊操作(即上述實(shí)施例中的預(yù)定操作),生成撤回指令。
進(jìn)一步可選地,每個(gè)未讀消息均可以對應(yīng)設(shè)置一個(gè)撤回按鍵。
步驟S504:響應(yīng)撤回指令,設(shè)置再次下發(fā)時(shí)間。
其中,在第一賬戶所在的終端設(shè)備檢測到撤回指令之后,響應(yīng)于該撤回指令,在終端的屏幕上顯示時(shí)間設(shè)置界面,該時(shí)間設(shè)置界面上記錄有引導(dǎo)用戶輸入再次下發(fā)時(shí)間的引導(dǎo)信息,用戶在引導(dǎo)信息的引導(dǎo)下,設(shè)置再次下發(fā)時(shí)間,該再次下發(fā)時(shí)間可以為時(shí)間間隔或時(shí)間點(diǎn),如用戶可以設(shè)置:一個(gè)小時(shí)候再提醒,或者設(shè)置18:00再提醒。
可選地,該時(shí)間設(shè)置界面中可以記錄有提示框(即上述的輸入框),該提示框以懸浮的方式顯示在終端的屏幕中,在該提示框中可以顯示多個(gè)時(shí)間間隔的選項(xiàng),如,30分鐘、一個(gè)小時(shí)以及兩個(gè)小時(shí)等。
步驟S505:設(shè)置再次下發(fā)的消息類別。
可選地,響應(yīng)撤回指令,生成提示用戶設(shè)置再次下發(fā)的消息類別的提示框,用戶可以通過該提示框(即上述的輸入框)輸入再次下發(fā)的消息類別。設(shè)置再次下發(fā)的消息類別可以設(shè)置某個(gè)或某些會話的消息允許再次下發(fā),也可以設(shè)置某個(gè)或某些群會話的消息允許再次下發(fā)等。當(dāng)然這里的設(shè)置方式也可以是相反的,如設(shè)置某個(gè)或某些會話的消息不允許再次下發(fā),也可以設(shè)置某個(gè)或某些群會話的消息不允許再次下發(fā)。
具體地,這里的設(shè)置再次下發(fā)的消息類別可以包括再次下發(fā)的消息的顯示方式,如置頂顯示。
需要說明的是,上述實(shí)施例中的步驟S504和步驟S505的執(zhí)行順序不分先后,可以先執(zhí)行步驟S504,再執(zhí)行步驟S505,也可以先執(zhí)行步驟S505再執(zhí)行步驟S504,也可以同時(shí)執(zhí)行步驟S504和步驟S505,本申請對此不作限定。
在一個(gè)可選的實(shí)施例中,可以預(yù)先設(shè)置好再次下發(fā)的時(shí)間和再次下發(fā)的消息類別,這樣在系統(tǒng)檢測到撤回指令之后,無需再設(shè)置再次下發(fā)的時(shí)間和再次下發(fā)的消息類別,可以直接從數(shù)據(jù)庫中讀取這兩個(gè)參數(shù)。
在該實(shí)施例中,系統(tǒng)在檢測到撤回指令之后,生成提示信息,該提示信息用于提示用戶是否使用預(yù)先設(shè)置的撤回參數(shù)(包括上述的再次下發(fā)的時(shí)間和再次下發(fā)的消息類別),若接收到用戶的確認(rèn)指令,則確定用戶選擇使用預(yù)先設(shè)置的撤回參數(shù),則不在顯示設(shè)置再次下發(fā)的時(shí)間和再次下發(fā)的消息類別的提示框,也即不再執(zhí)行上述的步驟S504和步驟S505。
在又一個(gè)可選的實(shí)施例中,用戶可以設(shè)置在生成撤回指令之后,直接使用設(shè)置好的撤回參數(shù)(包括上述的預(yù)定時(shí)長和消息類別),而不再詢問用戶是否要使用設(shè)置好的撤回參數(shù),通過該實(shí)施例可以簡化操作、提高處理速度。
步驟S506:基于設(shè)置的再次下發(fā)時(shí)間和再次下發(fā)的消息類別,生成撤回請求,并將撤回請求發(fā)送至服務(wù)器。
可選地,可以將設(shè)置的再次下發(fā)的時(shí)間和再次下發(fā)的消息類別進(jìn)行封裝,生成撤回請求,并將該撤回請求(即上述實(shí)施例中的撤回通知)發(fā)送至服務(wù)器。
具體地,系統(tǒng)檢測到撤回指令之后,獲取撤回指令對應(yīng)的消息標(biāo)識,并將該消息標(biāo)識攜帶在撤回請求中。
這里的撤回指令對應(yīng)的消息標(biāo)識可以為在生成撤回指令時(shí),屏幕上顯示的所有的未讀消息的標(biāo)識。
可選地,在用戶設(shè)置有再次下發(fā)的消息類別的情況下,該撤回指令對應(yīng)的消息標(biāo)識可以為在生成撤回指令時(shí),屏幕上顯示的所有未讀消息中屬于消息類別的消息的標(biāo)識。
上述實(shí)施例中的消息標(biāo)識的級別與設(shè)置的再次下發(fā)的消息類別的級別相同,如設(shè)置的再次下發(fā)的消息類別的級別為會話級別,則消息標(biāo)識為會話標(biāo)識。
進(jìn)一步可選地,在用戶設(shè)置好撤回參數(shù)之后,可以將該撤回參數(shù)同步至服務(wù)器,服務(wù)器記錄并存儲該撤回參數(shù),這樣用戶在生成撤回指令之后,不用讀取撤回參數(shù),直接將固定的撤回請求發(fā)送至服務(wù)器,在服務(wù)器接收到撤回請求之后,讀取對應(yīng)的撤回參數(shù),采用這樣的處理方式,不但可以減少終端的處理量,而且由于撤回請求中攜帶的信息少,可以加快數(shù)據(jù)的傳輸速度,并減少終端的網(wǎng)絡(luò)傳輸流量。
在一個(gè)可選的示例中,可以預(yù)先設(shè)置撤回參數(shù),在檢測到撤回指令之后,只需向服務(wù)器發(fā)送撤回通知即可,該撤回通知中可以包括取消顯示的未讀消息的標(biāo)識。也即,在這種情況下,撤回請求中不包含撤回參數(shù)。
步驟S507:服務(wù)器獲取撤回請求之后,記錄并存儲撤回請求所請求撤回的未讀消息。
可選地,服務(wù)器獲取撤回請求之后,可以將撤回請求所請求的未讀消息記錄并保存下來,并進(jìn)入重新提醒流程。
步驟S508:在服務(wù)器檢測到系統(tǒng)時(shí)間達(dá)到再次下發(fā)的時(shí)間點(diǎn)時(shí),檢測是否有未讀消息。
其中,在檢測到該賬戶有未讀消息的情況下,執(zhí)行步驟S509,在檢測出該賬戶沒有未讀消息的情況下,執(zhí)行步驟S510:消息下發(fā)完畢。
具體地,本地(即賬戶所在的終端設(shè)備)和服務(wù)器同步校驗(yàn)讀取結(jié)果,這里的讀取結(jié)果指示的是即時(shí)通訊消息是否已讀的數(shù)量,并對本地和服務(wù)器上已讀消息的數(shù)量進(jìn)行對比,比較結(jié)果指示本地已經(jīng)查閱所有的未讀消息,則確定檢測出該賬戶沒有未讀消息;否則,反之。
步驟S509:向該賬戶下發(fā)提醒信息。
步驟S511:檢測是否接收到屬于消息類別的未讀消息。
該消息類別為允許再次下發(fā)的類別,也即,該名單為允許撤回的白名單。
若否,則執(zhí)行步驟S512;若是,則返回執(zhí)行步驟S508。
步驟S512:將該新的消息下發(fā)至本地。
步驟S513:服務(wù)器計(jì)算未讀消息的數(shù)量。
若未讀消息的數(shù)量為零,則執(zhí)行步驟S510,若未讀消息的數(shù)量不是零,則返回執(zhí)行步驟S508。
通過上述實(shí)施例,不僅可以在好友或多人的強(qiáng)交互消息的環(huán)境下,將下發(fā)的消息撤回服務(wù)器,通過設(shè)定的格式如自定義的時(shí)間和方式將消息下發(fā)并提醒,提高讀取效率;還可以設(shè)置白名單好友(即不允許再次下發(fā)的會話消息),對于特定的好友支持設(shè)定為白名單,不在撤回服務(wù)器機(jī)制內(nèi),可以隨時(shí)接收白名單中好友消息。
下面結(jié)合圖6詳述本發(fā)明的實(shí)施例。如圖6所示,該實(shí)施例可以通過如下交互方式實(shí)現(xiàn):
步驟S601:客戶端B將向客戶端A發(fā)送的消息發(fā)送至服務(wù)器。
步驟S602:服務(wù)器接收到該消息之后,將該消息發(fā)送至客戶端A。
步驟S603:客戶端A將生成的撤回請求發(fā)送至服務(wù)器。
具體地,通過特定手勢,將已下發(fā)的消息撤回服務(wù)器后,根據(jù)設(shè)定的時(shí)間,再次下發(fā)到本地端。
其中,在消息界面下,且在有未讀消息的場合,使用特定手勢(例如手機(jī)甩一甩)可以啟動消息撤回的機(jī)制,通過該手勢將未讀消息撤回服務(wù)器。
上述的消息撤回手勢可以是在消息tab界面預(yù)設(shè)的手勢,如甩一甩,或者3連擊屏幕。需要說明的是,如果在當(dāng)前界面上沒有未讀消息,則執(zhí)行設(shè)定的手勢,消息撤回機(jī)制不生效。
根據(jù)上述實(shí)施例,在消息撤回服務(wù)器之后,本地?zé)o未讀消息顯示,服務(wù)器記錄并存儲該部分消息內(nèi)容。
步驟S604:服務(wù)器請客戶端A確認(rèn)再次下發(fā)的時(shí)間。
步驟S605:客戶端A設(shè)置再次下發(fā)的時(shí)間和消息類別。
具體地,服務(wù)器下發(fā)客戶端提示框,內(nèi)容為下次下發(fā)時(shí)間和消息類別,這里的下發(fā)時(shí)間,可以為30分鐘后;這里的下發(fā)的消息類別,可以為下發(fā)為置頂消息或者我的工作好友消息,對與工作無關(guān)的群發(fā)送的消息,設(shè)置為非工作時(shí)間提醒。
步驟S606:服務(wù)器在到達(dá)再次下發(fā)的時(shí)間點(diǎn)時(shí),再次下發(fā)上述消息。
步驟S607:客戶端A查看該消息。
在上述實(shí)施例中,服務(wù)器下發(fā)客戶端提示框,內(nèi)容為下次下發(fā)時(shí)間和消息類別;其中,下發(fā)時(shí)間設(shè)定,可以為30分鐘后;其中的下發(fā)的消息類別,可為下發(fā)為置頂消息或者我的工作好友消息,對與工作無關(guān)的群發(fā)送的消息,設(shè)置為非工作時(shí)間提醒。
上述實(shí)施例中,本地和服務(wù)器同步校驗(yàn)讀取結(jié)果,并進(jìn)行取值對比;根據(jù)客戶端用戶的自定義設(shè)定接受下發(fā)時(shí)間和消息類別,滾動過程中,根據(jù)本地讀取消息記錄,服務(wù)器計(jì)算未讀消息數(shù)量,直到全部未讀消息查閱完為止,服務(wù)器停止下發(fā)提醒。
進(jìn)一步需要說明的是,在服務(wù)器滾動下發(fā)機(jī)制時(shí)間區(qū)間內(nèi),有新的未讀消息生成,加入滾動下發(fā)流程,不做新的提醒。
需要說明的是,對于前述的各方法實(shí)施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因?yàn)橐罁?jù)本發(fā)明,某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到根據(jù)上述實(shí)施例的方法可借助軟件加必需的通用硬件平臺的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個(gè)存儲介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例的方法。
根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種消息處理系統(tǒng),包括:第一終端和第二終端,第一終端與第二終端建立有連接關(guān)系,其中,第二終端在運(yùn)動的過程中采集運(yùn)動信息,并將運(yùn)動信息在運(yùn)動的過程中發(fā)送至第一終端;第一終端接收第二終端發(fā)送的運(yùn)動信息,并實(shí)時(shí)顯示運(yùn)動信息。
根據(jù)本發(fā)明實(shí)施例,還提供了一種用于實(shí)施上述消息處理方法的消息處理裝置,該消息處理裝置可以設(shè)置在上述的客戶端所在的設(shè)備上,如圖7所示,該裝置可以包括:
檢測單元71,用于在客戶端中檢測撤回指令;
判斷單元73,用于在檢測到撤回指令的情況下,判斷客戶端中是否存在未被讀取的消息;
撤回單元75,用于在判斷出客戶端中存在未被讀取的消息的情況下,響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作,其中,撤回操作用于在客戶端中取消顯示未被讀取的消息。
通過本發(fā)明實(shí)施例,在客戶端中檢測到撤回指令、且在客戶端中存在未被讀取的消息的情況下,對該未被讀取的消息執(zhí)行撤回操作,以取消顯示未被讀取的消息。通過上述實(shí)施例,可以在客戶端中存在未讀消息的情況下,取消顯示該未被讀取的消息,在該方案中提供的撤回操作可以取消顯示未讀消息,這樣未讀消息不會被服務(wù)器任務(wù)已經(jīng)被閱讀過,執(zhí)行了撤回操作的未讀消息還是未讀消息,只是暫時(shí)沒有顯示而已,該方案并不影響未被閱讀的消息未讀的狀態(tài),該消息并不會遺漏未讀消息,解決了現(xiàn)有技術(shù)中提供的對未讀消息的操作方式,會造成未讀消息的遺漏的問題。
根據(jù)本發(fā)明的上述實(shí)施例,檢測單元可以包括:獲取模塊,用于從客戶端所在的設(shè)備的輸入裝置獲取輸入信息;檢測模塊,用于檢測輸入信息是否符合第一預(yù)定條件;確定模塊,用于在檢測出輸入信息符合第一預(yù)定條件的情況下,確定檢測出撤回指令。
可選地,檢測模塊可以包括:第一檢測子模塊,用于在輸入信息為加速度信息的情況下,檢測加速度信息是否超過加速度閾值;第一確定子模塊,用于在加速度信息超過加速度閾值的情況下,確定輸入信息符合第一預(yù)定條件。
可選地,檢測模塊包括:第一檢測子模塊,用于在輸入信息為觸摸信息的情況下,檢測觸摸信息所表示的觸摸痕跡是否符合預(yù)先設(shè)置的觸摸痕跡;第一確定子模塊,用于在觸摸信息所表示的觸摸痕跡符合預(yù)先設(shè)置的觸摸痕跡的情況下,確定輸入信息符合第一預(yù)定條件。
根據(jù)本發(fā)明的上述實(shí)施例,撤回單元可以包括:刪除模塊,用于刪除未被讀取的消息,以取消顯示未被讀取的消息;或隱藏模塊,用于隱藏未被讀取的消息,并取消顯示未被讀取的消息。
進(jìn)一步地,裝置還包括:發(fā)送單元,用于在刪除未被讀取的消息的情況下,向服務(wù)器發(fā)送撤回通知,其中,撤回通知用于指示服務(wù)器在第二預(yù)定條件下,重新向即時(shí)通信客戶端發(fā)送被客戶端取消顯示的未被讀取的消息。
根據(jù)本發(fā)明的上述實(shí)施例,裝置還可以包括:第一展示單元,用于展示輸入框,其中,輸入框用于輸入預(yù)定時(shí)長;發(fā)送單元還用于將預(yù)定時(shí)長發(fā)送至服務(wù)器,其中,符合第二預(yù)定條件包括間隔預(yù)定時(shí)長。
進(jìn)一步地,裝置還包括:第二展示單元,用于展示輸入框,其中,輸入框用于輸入消息類別;發(fā)送單元還用于將消息類別發(fā)送至服務(wù)器,其中,符合第二預(yù)定條件包括屬于消息類別。
根據(jù)本發(fā)明的上述實(shí)施例,方法還可以包括:顯示單元,用于在響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作之后,重新顯示取消顯示的未被讀取的消息。
根據(jù)本發(fā)明的上述實(shí)施例,還提供了一種消息處理裝置,該裝置設(shè)置在服務(wù)器上,該裝置可以包括:發(fā)送單元,用于向客戶端發(fā)送消息;接收單元,用于接收客戶端發(fā)送的撤回通知,其中,撤回通知用于指示服務(wù)器客戶端取消顯示消息中未被讀取的消息;重新發(fā)送單元,用于響應(yīng)于撤回通知,重新向客戶端發(fā)送未被讀取的消息。
在該實(shí)施例中,客戶端可以取消顯示服務(wù)器向其下發(fā)的消息中未被讀取的消息,并向服務(wù)器發(fā)送撤回通知,服務(wù)器接收到撤回通知之后,重新向服務(wù)器發(fā)送客戶端取消顯示的未被讀取的消息,減少了信息的遺漏。
在該實(shí)施例中,可以在客戶端中存在未讀消息的情況下,取消顯示該未被讀取的消息,在該方案中提供的撤回操作可以取消顯示未讀消息,這樣未讀消息不會被服務(wù)器任務(wù)已經(jīng)被閱讀過,執(zhí)行了撤回操作的未讀消息還是未讀消息,只是暫時(shí)沒有顯示而已,該方案并不影響未被閱讀的消息未讀的狀態(tài),該消息并不會遺漏未讀消息,解決了現(xiàn)有技術(shù)中提供的對未讀消息的操作方式,會造成未讀消息的遺漏的問題。
具體地,重新發(fā)送單元包括:檢測模塊,用于檢測是否符合預(yù)設(shè)條件;重新發(fā)送模塊,用于在符合預(yù)設(shè)條件的情況下,重新向客戶端發(fā)送未被讀取的消息。
在一個(gè)可選的實(shí)施例中,檢測模塊具體用于:檢測接收到撤回通知的時(shí)刻與當(dāng)前時(shí)刻的時(shí)間差是否達(dá)到預(yù)定時(shí)長;若檢測出時(shí)間差到達(dá)預(yù)定時(shí)長,則確定符合預(yù)設(shè)條件。
可選地,檢測模塊具體用于:檢測客戶端取消顯示的未被讀取的消息中是否還存在未被讀取的消息;若檢測出客戶端取消顯示的未被讀取的消息中還存在未被讀取的消息,則確定符合預(yù)設(shè)條件。
進(jìn)一步地,檢測模塊具體用于:檢測向客戶端發(fā)布的新的消息是否屬于預(yù)定的消息類別;若檢測出向客戶端發(fā)布的新的消息屬于預(yù)定的消息類別,則確定符合預(yù)設(shè)條件。
本實(shí)施例中所提供的各個(gè)模塊與方法實(shí)施例對應(yīng)步驟所提供的使用方法相同、應(yīng)用場景也可以相同。當(dāng)然,需要注意的是,上述模塊涉及的方案可以不限于上述實(shí)施例中的內(nèi)容和場景,且上述模塊可以運(yùn)行在計(jì)算機(jī)終端或移動終端,可以通過軟件或硬件實(shí)現(xiàn)。
根據(jù)本發(fā)明實(shí)施例,還提供了一種用于實(shí)施上述消息處理方法的終端,如圖8所示,該終端包括:
如圖8所示,該終端包括:一個(gè)或多個(gè)(圖中僅示出一個(gè))處理器801、存儲器803、以及傳輸裝置,還可以包括如圖8所示的輸入輸出裝置。
其中,存儲器803可用于存儲軟件程序以及模塊,如本發(fā)明實(shí)施例中的消息處理方法和裝置對應(yīng)的程序指令/模塊,處理器801通過運(yùn)行存儲在存儲器803內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,即實(shí)現(xiàn)上述的消息處理方法。存儲器803可包括高速隨機(jī)存儲器,還可以包括非易失性存儲器,如一個(gè)或者多個(gè)磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。在一些實(shí)例中,存儲器803可進(jìn)一步包括相對于處理器801遠(yuǎn)程設(shè)置的存儲器,這些遠(yuǎn)程存儲器可以通過網(wǎng)絡(luò)連接至終端。上述網(wǎng)絡(luò)的實(shí)例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。
上述的傳輸裝置用于經(jīng)由一個(gè)網(wǎng)絡(luò)接收或者發(fā)送數(shù)據(jù),還可以用于處理器與存儲器之間的數(shù)據(jù)傳輸。上述的網(wǎng)絡(luò)具體實(shí)例可包括有線網(wǎng)絡(luò)及無線網(wǎng)絡(luò)。在一個(gè)實(shí)例中,傳輸裝置包括一個(gè)網(wǎng)絡(luò)適配器(Network Interface Controller,NIC),其可通過網(wǎng)線與其他網(wǎng)絡(luò)設(shè)備與路由器相連從而可與互聯(lián)網(wǎng)或局域網(wǎng)進(jìn)行通訊。在一個(gè)實(shí)例中,傳輸裝置為射頻(Radio Frequency,RF)模塊,其用于通過無線方式與互聯(lián)網(wǎng)進(jìn)行通訊。
其中,具體地,存儲器803用于存儲應(yīng)用程序。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:在客戶端中檢測到撤回指令;判斷客戶端中是否存在未被讀取的消息;在判斷出客戶端中存在未被讀取的消息的情況下,響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作,其中,撤回操作用于在客戶端中取消顯示未被讀取的消息。
通過本發(fā)明實(shí)施例,在客戶端中檢測到撤回指令、且在客戶端中存在未被讀取的消息的情況下,對該未被讀取的消息執(zhí)行撤回操作,以取消顯示未被讀取的消息。通過上述實(shí)施例,可以在客戶端中存在未讀消息的情況下,取消顯示該未被讀取的消息,在該方案中提供的撤回操作可以取消顯示未讀消息,這樣未讀消息不會被服務(wù)器任務(wù)已經(jīng)被閱讀過,執(zhí)行了撤回操作的未讀消息還是未讀消息,只是暫時(shí)沒有顯示而已,該方案并不影響未被閱讀的消息未讀的狀態(tài),該消息并不會遺漏未讀消息,解決了現(xiàn)有技術(shù)中提供的對未讀消息的操作方式,會造成未讀消息的遺漏的問題。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:從客戶端所在的設(shè)備的輸入裝置獲取輸入信息;檢測輸入信息是否符合第一預(yù)定條件;在檢測出輸入信息符合第一預(yù)定條件的情況下,確定檢測出撤回指令。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:在輸入信息為加速度信息的情況下,檢測加速度信息是否超過加速度閾值;在加速度信息超過加速度閾值的情況下,確定輸入信息符合第一預(yù)定條件。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:在輸入信息為觸摸信息的情況下,檢測觸摸信息所表示的觸摸痕跡是否符合預(yù)先設(shè)置的觸摸痕跡;在觸摸信息所表示的觸摸痕跡符合預(yù)先設(shè)置的觸摸痕跡的情況下,確定輸入信息符合第一預(yù)定條件。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:刪除未被讀取的消息,以取消顯示未被讀取的消息;或隱藏未被讀取的消息,并取消顯示未被讀取的消息。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:在刪除未被讀取的消息的情況下,向服務(wù)器發(fā)送撤回通知,其中,撤回通知用于指示服務(wù)器在第二預(yù)定條件下,重新向客戶端發(fā)送被客戶端刪除的未被讀取的消息。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:展示輸入框,其中,輸入框用于輸入預(yù)定時(shí)長;將預(yù)定時(shí)長發(fā)送至服務(wù)器。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:展示輸入框,其中,輸入框用于輸入消息類別;將消息類別發(fā)送至服務(wù)器。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:在響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作之后,重新顯示取消顯示的未被讀取的消息。
處理器801可以通過傳輸裝置調(diào)用存儲器803存儲的應(yīng)用程序,以執(zhí)行下述步驟:向客戶端發(fā)送消息;接收客戶端發(fā)送的撤回通知,其中,撤回通知用于指示服務(wù)器客戶端取消顯示消息中未被讀取的消息;響應(yīng)于撤回通知,重新向客戶端發(fā)送未被讀取的消息。
本領(lǐng)域普通技術(shù)人員可以理解,圖8所示的結(jié)構(gòu)僅為示意,終端可以是智能手機(jī)(如Android手機(jī)、iOS手機(jī)等)、平板電腦、掌上電腦以及移動互聯(lián)網(wǎng)設(shè)備(Mobile Internet Devices,MID)、PAD等終端設(shè)備。圖8其并不對上述電子裝置的結(jié)構(gòu)造成限定。例如,終端還可包括比圖8中所示更多或者更少的組件(如網(wǎng)絡(luò)接口、顯示裝置等),或者具有與圖8所示不同的配置。
本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過程序來指令終端設(shè)備相關(guān)的硬件來完成,該程序可以存儲于一計(jì)算機(jī)可讀存儲介質(zhì)中,存儲介質(zhì)可以包括:閃存盤、只讀存儲器(Read-Only Memory,ROM)、隨機(jī)存取器(Random Access Memory,RAM)、磁盤或光盤等。
本發(fā)明的實(shí)施例還提供了一種存儲介質(zhì)??蛇x地,在本實(shí)施例中,上述存儲介質(zhì)可以用于執(zhí)行上述消息處理方法的程序代碼。
可選地,在本實(shí)施例中,上述存儲介質(zhì)可以位于上述實(shí)施例所示的網(wǎng)絡(luò)中的多個(gè)網(wǎng)絡(luò)設(shè)備中的至少一個(gè)網(wǎng)絡(luò)設(shè)備上。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:
在客戶端中檢測到撤回指令;判斷客戶端中是否存在未被讀取的消息;在判斷出客戶端中存在未被讀取的消息的情況下,響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作,其中,撤回操作用于在客戶端中取消顯示未被讀取的消息。
通過本發(fā)明實(shí)施例,在客戶端中檢測到撤回指令、且在客戶端中存在未被讀取的消息的情況下,對該未被讀取的消息執(zhí)行撤回操作,以取消顯示未被讀取的消息。通過上述實(shí)施例,可以在客戶端中存在未讀消息的情況下,取消顯示該未被讀取的消息,在該方案中提供的撤回操作可以取消顯示未讀消息,這樣未讀消息不會被服務(wù)器任務(wù)已經(jīng)被閱讀過,執(zhí)行了撤回操作的未讀消息還是未讀消息,只是暫時(shí)沒有顯示而已,該方案并不影響未被閱讀的消息未讀的狀態(tài),該消息并不會遺漏未讀消息,解決了現(xiàn)有技術(shù)中提供的對未讀消息的操作方式,會造成未讀消息的遺漏的問題。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:從客戶端所在的設(shè)備的輸入裝置獲取輸入信息;檢測輸入信息是否符合第一預(yù)定條件;在檢測出輸入信息符合第一預(yù)定條件的情況下,確定檢測出撤回指令。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:在輸入信息為加速度信息的情況下,檢測加速度信息是否超過加速度閾值;在加速度信息超過加速度閾值的情況下,確定輸入信息符合第一預(yù)定條件。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:在輸入信息為觸摸信息的情況下,檢測觸摸信息所表示的觸摸痕跡是否符合預(yù)先設(shè)置的觸摸痕跡;在觸摸信息所表示的觸摸痕跡符合預(yù)先設(shè)置的觸摸痕跡的情況下,確定輸入信息符合第一預(yù)定條件。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:刪除未被讀取的消息,以取消顯示未被讀取的消息;或隱藏未被讀取的消息,并取消顯示未被讀取的消息。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:在刪除未被讀取的消息的情況下,向服務(wù)器發(fā)送撤回通知,其中,撤回通知用于指示服務(wù)器在第二預(yù)定條件下,重新向客戶端發(fā)送被客戶端刪除的未被讀取的消息。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:展示輸入框,其中,輸入框用于輸入預(yù)定時(shí)長;將預(yù)定時(shí)長發(fā)送至服務(wù)器。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:展示輸入框,其中,輸入框用于輸入消息類別;將消息類別發(fā)送至服務(wù)器。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:在響應(yīng)于撤回指令對未被讀取的消息執(zhí)行撤回操作之后,重新顯示取消顯示的未被讀取的消息。
可選地,在本實(shí)施例中,處理器根據(jù)存儲介質(zhì)中已存儲的程序代碼執(zhí)行下述步驟:向客戶端發(fā)送消息;接收客戶端發(fā)送的撤回通知,其中,撤回通知用于指示服務(wù)器客戶端取消顯示消息中未被讀取的消息;響應(yīng)于撤回通知,重新向客戶端發(fā)送未被讀取的消息。
可選地,在本實(shí)施例中,上述存儲介質(zhì)可以包括但不限于:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機(jī)存取存儲器(RAM,Random Access Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
可選地,本實(shí)施例中的具體示例可以參考上述實(shí)施例中所描述的示例,本實(shí)施例在此不再贅述。
上述本發(fā)明實(shí)施例序號僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
上述實(shí)施例中的集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲在上述計(jì)算機(jī)可讀取的存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在存儲介質(zhì)中,包括若干指令用以使得一臺或多臺計(jì)算機(jī)設(shè)備(可為個(gè)人計(jì)算機(jī)、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。
在本發(fā)明的上述實(shí)施例中,對各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。
在本申請所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的客戶端,可通過其它的方式實(shí)現(xiàn)。其中,以上所描述的裝置實(shí)施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。