一種即時通訊未讀消息的同步方法和系統的制作方法
【技術領域】
[0001]本申請實施例涉及通訊的技術領域,特別是涉及一種即時通訊未讀消息的同步方法和一種即時通訊未讀消息的同步系統。
【背景技術】
[0002]隨著互聯網技術和通訊技術的不斷發展以及互聯網用戶的不斷增加,互聯網領域和通訊領域得到了空前的發展,互聯網終端的用戶已經達到了幾十億。
[0003]基于互聯網技術和通訊技術的通訊系統已經被越來越多的人接受并在人們的工作、學習、日常生活中等各方面的使用越來越普遍,可以說,通訊系統成為人們生活中不可以缺少的一部分。特別是近年來移動設備(例如智能手機、平板電腦Pad)的風靡,在各個行業領域,特別是在即時通信(Instant messaging, IM)中,需要使用這種便攜的移動設備協同進行工作的需求也越來越強烈。
[0004]但是,在現有技術中,移動終端現有技術不能無縫同步各個終端的消息,導致在各個終端上的消息狀態不一樣,嚴重影響用戶體驗。以即時通訊為例,即時通訊可以支持兩人或多人同時會話,如果當前用戶離線而會話中的其他用戶繼續發言,或者當前因為忙于其他事情而沒有查看這些會話,則會產生未讀消息,即沒有被當前用戶閱讀過聊天消息。當前用戶在終端A上登錄并查看了未讀消息(如好友的留言消息),該未讀消息的狀態則為已讀。但是當前用戶再登錄終端B,可能發現剛在終端A看過的消息(如上述好友的留言消息)在設備B上仍是未讀狀態。未讀消息的重復發送,不僅增加了服務器和終端的資源占用,并且造成用戶的重復閱讀,極大地影響了用戶體驗。
[0005]因此,目前需要本領域技術人員解決的一個技術問題在于,提供一種未讀消息的同步機制,用以對不同終端進行未讀消息的同步,降低服務器和終端的資源占用,并提高用戶體驗。
【發明內容】
[0006]本申請提供了一種即時通訊未讀消息的同步方法,用以用以對不同終端進行未讀消息的同步,降低服務器和終端的資源占用,并提高用戶體驗。
[0007]相應的,本申請還提供了一種即時通訊未讀消息的同步系統,用以保證上述方法的實現及應用。
[0008]為了解決上述問題,本申請公開了一種即時通訊未讀消息的同步方法,包括:
[0009]在當前終端側登錄即時通訊賬號時,從服務器側獲取所述賬號的每一個會話中未讀消息的信息;
[0010]在當前終端側顯示所述未讀消息的信息;
[0011]其中,所述未讀消息為每一個會話中時間信息大于所述第一時間戳的消息,所述第一時間戳為所述賬號提交的每一會話的前一次讀取的消息的時間信息,所述賬號的每一個會話對應的第一時間戳存儲于服務器側。
[0012]優選地,所述未讀消息的信息包括每一會話的第一時間戳、每一會話的未讀消息的數量和/或每一會話的最后一條消息。
[0013]優選地,所述其它終端為除當前終端以外,登錄了同一即時通訊賬號,或登錄過同一即時通訊賬號的終端。
[0014]優選地,還包括:
[0015]采用所述未讀消息的信息中的第一時間戳更新當前終端側中每一個會話的第二時間戳。
[0016]優選地,還包括:
[0017]在當前終端側基于所述賬號在會話中進行消息交互時,判斷當前正在進行的會話中接收到的消息是否已讀;
[0018]若是,則將所述已讀消息的時間信息發送至服務器側;所述服務器用于采用所述時間信息更新所述會話對應的第一時間戳,將所述會話中時間信息大于所述第一時間戳的消息確定為未讀消息。
[0019]優選地,所述判斷當前正在進行的會話中接收到的消息是否已讀的步驟包括:
[0020]判斷當前正在進行的會話對應的窗口是否獲得焦點;
[0021]若是,則判定所述會話中當前接收到的消息已讀;
[0022]和/ 或,
[0023]判斷當前正在進行的會話對應的窗口是否超過預設區域被覆蓋;
[0024]若否,則判定所述會話中當前接收到的消息已讀。
[0025]優選地,還包括:
[0026]采用所述已讀消息的時間信息更新當前終端側存儲的所述會話對應的第二時間戳。
[0027]優選地,還包括:
[0028]接收服務器側發送的所述賬號的會話對應的第一時間戳;所述第一時間戳為其他終端側發送的所述會話接收到最新已讀消息的時間信息。
[0029]優選地,還包括:
[0030]采用所述會話對應的第一時間戳更新當前終端側存儲的所述會話對應的第二時間戳。
[0031]優選地,還包括:
[0032]當進入一個或多個會話對應的窗口時,從服務器側下載所述一個或多個會話對應的漫游消息;所述漫游消息包括所述賬號發送的消息和接收的消息;
[0033]將所述發送的消息確定為已讀消息,并顯示所述已讀消息;
[0034]和/ 或,
[0035]將時間信息大于所述第二時間戳的接收的消息確定為未讀消息,并顯示所述未讀消息;
[0036]和/ 或,
[0037]將時間信息小于或等于所述第二時間戳的接收的消息確定為已讀消息,并顯示所述已讀消息。
[0038]本申請還公開了一種即時通訊未讀消息的同步方法,包括:
[0039]在當前終端側登錄即時通訊賬號時,提取所述賬號對應的每一個會話中未讀消息的信息;
[0040]將所述賬號對應的每一個會話中未讀消息的信息發送至當前終端側;
[0041]其中,所述未讀消息為每一個會話中時間信息大于所述第一時間戳的消息,所述第一時間戳為所述賬號提交的每一會話的前一次讀取的消息的時間信息,所述賬號的每一個會話對應的第一時間戳存儲于服務器側。
[0042]優選地,所述未讀消息的信息包括每一會話的第一時間戳、每一會話的未讀消息的數量和/或每一會話的最后一條消息。
[0043]優選地,所述其它終端為除當前終端以外,登錄了同一即時通訊賬號,或登錄過同一即時通訊賬號的終端。
[0044]優選地,還包括:
[0045]接收當前終端側發送的已讀消息的時間信息;其中,所述已讀消息的時間信息為在當前終端側基于所屬賬號并在會話中進行消息交互時,判斷的當前正在進行的會話中接收到的為已讀的消息的時間信息;
[0046]采用所述時間信息更新所述會話對應的第一時間戳;
[0047]將所述會話中時間信息大于所述第一時間戳的消息確定為未讀消息。
[0048]優選地,還包括:
[0049]采用所述第一時間戳統計所述會話的未讀消息的信息。
[0050]優選地,還包括:
[0051]在多個終端側登錄所述賬號,并當前終端側在會話中進行消息交互時,接收當前終端側發送的所述會話當前接收到的已讀消息的時間信息;
[0052]采用所述時間信息更新所述會話對應的第一時間戳;
[0053]將所述會話對應的第一時間戳發送至其他終端側。
[0054]本申請還公開了一種即時通訊未讀消息的同步系統,包括:
[0055]未讀消息信息獲取模塊,用于在當前終端側登錄即時通訊賬號時,從服務器側獲取所述賬號的每一個會話中未讀消息的信息;
[0056]未讀消息信息顯示模塊,用于在當前終端側顯示所述未讀消息的信息;
[0057]其中,所述未讀消息為每一個會話中時間信息大于所述第一時間戳的消息,所述第一時間戳為所述賬號提交的每一會話的前一次讀取的消息的時間信息,所述賬號的每一個會話對應的第一時間戳存儲于服務器側。
[0058]優選地,所述未讀消息的信息包括每一會話的第一時間戳、每一會話的未讀消息的數量和/或每一會話的最后一條消息。
[0059]優選地,所述其它終端為除當前終端以外,登錄了同一即時通訊賬號,或登錄過同一即時通訊賬號的終端。
[0060]優選地,還包括:
[0061]第一更新模塊,用于采用所述未讀消息的信息中的第一時間戳更新當前終端側中每一個會話的第二時間戳。
[0062]優選地,還包括:
[0063]已讀判斷模塊,用于在當前終端側基于所述賬號在會話中進行消息交互時,判斷當前正在進行的會話中接收到的消息是否已讀;若是,則調用時間信息發送模塊;
[0064]時間信息發送模塊,用于將所述已讀消息的時間信息發送至服務器側;所述服務器用于采用所述時間信息更新所述會話對應的第一時間戳,將所述會話中時間信息大于所述第一時間戳的消息確定為未讀消息。
[0065]優選地,所述已讀判斷模塊包括:
[0066]焦點判斷子模塊,用于判斷當前正在進行的會話對應的窗口是否獲得焦點;若是,則調用已讀判定子模塊;
[0067]和/ 或,
[0068]覆蓋判斷子模塊,用于判斷當前正在進行的會話對應的窗口是否超過預設區域被覆蓋;若否,則調用已讀判定子模塊;
[0069]已讀判定子模塊,用于判定所述會話中當前接收到的消息已讀。
[0070]優選地,還包括:
[0071]第二更新模塊,用于采用所述已讀消息的時間信息更新當前終端側存儲的所述會話對應的第二時間戳。
[0072]優選地,還包括:
[0073]第一時間戳接收模塊,用于接收服務器側發送的所述賬號的會話對應的第一時間戳;所述第一時間戳為其他終端側發送的所述會話接收到最新已讀消息的時間信息。
[0074]優選地,還包括:
[0075]第三更新模塊,用于采用所述會話對應的第一時間戳更新當前終端側存儲的所述會話對應的第二時間戳。
[0076]優選地,還包括:
[0077]漫游消息下載模塊,用于在進入一個或多個會話對應的窗口時,從服務器側下載所述一個或多個會話對應的漫游消息;所述漫游消息包括所述賬號發送的消息和接收的消息;
[0078]第一已讀消息處理子模塊,用于將所述發送的消息確定為已讀消息,并顯示所述已讀消息;
[0079]和/ 或,
[0080]未讀消息處理子模塊,用于將時間信息大于所述第二時間戳的接收的消息確定為未讀消息,并顯示所述未讀消息;
[0081]和/ 或,
[0082]第二已讀消息處理子模塊,用于將時間信息小于或等于所述第二時間戳的接收的消息確定為已讀消息,并顯示所述已讀消息。
[0083]本申請還公開了一種即時通訊未讀消息的同步系統,包括:
[0084]未讀消息信息提取模塊,用于在當前終端側登錄即時通訊賬號時,提取所述賬號對應的每一個會話中未讀消息的信息;
[0085]未讀消息信息發送模塊,用于將所述賬號對應的每一個會話中未讀消息的信息發送至當前終端側;
[0086]其中,所述未讀消息為每一個會話中時間信息大于所述第一時間戳的消息,所述第一時間戳為所述賬號提交的每一會話的前一次讀取的消息的時間信息,所述賬號的每一個會話對應的第一時間戳存儲于服務器側。
[0087]優選地,所述未讀消息的信息包括每一會話的第一時間戳、每一會話的未讀消息的數量和/或每一會話的最后一條消息。
[0088]優選地,所述其它終端為除當前終端以外,登錄了同一即時通訊賬號,或登錄過同一即時通訊賬號的終端。
[0089]優選地,還包括:
[0090]第一時間信息接收模塊,用于接收當前終端側發送的已讀消息的時間信息;其中,所述已讀消息的時間信息為在當前終端側基于所屬賬號并在會話中進行消息交互時,判斷的當前正在進行的會話中接收到的為已讀的消息的時間信息;
[0091]第四更新模塊,用于采用所述時間信息更新所述會話對應的第一時間戳;
[0092]未讀消息確定模塊,用于將所述會話中時間信息大于所述第一時間戳的消息