本發(fā)明涉及搜索引擎服務(wù)領(lǐng)域,尤其是涉及一種基于CoreSeek的多平臺微信服務(wù)的通知發(fā)送方法。
背景技術(shù):
隨著互聯(lián)網(wǎng)教育日星月異的發(fā)展,在移動手持式終端設(shè)備(如智能手機、平板電腦等)普及的今天,微信公眾平臺成為了用戶使用最多的軟件,所以如何利用微信所帶來的學習便利成為了新時代網(wǎng)上教育不可忽視的重要部分。微信于近幾年針對企業(yè)用戶推出了新功能,一個企業(yè)賬號可以對多個子賬號進行統(tǒng)一管理,使得企業(yè)可以跨平臺和多平臺管理微信用戶。不過介于跨平臺、多平臺的微信用戶共享賬號的特點,以及關(guān)注微信公眾號的用戶不斷增加,在使用過程中通過微信提供的接口無法達到預(yù)期的用戶體驗效果,使得用戶在跨平臺使用微信服務(wù)時體驗程度差,難以達到預(yù)期的速度。而且由于微信的該功能推出時間晚,對于已經(jīng)搭建了成熟架構(gòu)的企業(yè)用戶,不便于重新設(shè)計新的架構(gòu)用以與微信功能進行匹配,同時微信也沒有提供通過統(tǒng)一管理后的唯一身份標識來識別用戶從而發(fā)送信息的接口。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是針對上述問題提供一種基于CoreSeek的多平臺微信服務(wù)的通知發(fā)送方法。
本發(fā)明的目的可以通過以下技術(shù)方案來實現(xiàn):
一種基于CoreSeek的多平臺微信服務(wù)的通知發(fā)送方法,所述方法包括下列步驟:
1)CoreSeek定時通過微信用戶列表獲取接口更新所有微信服務(wù)的全部用戶的信息字段;
2)業(yè)務(wù)端服務(wù)器判斷當前微信服務(wù)是否需要向微信用戶發(fā)送通知,若是則進入步驟3),若否則返回步驟1);
3)業(yè)務(wù)端服務(wù)器通過CoreSeek進行微信用戶的身份匹配,判斷身份匹配是否成功,若是則將身份匹配信息發(fā)送至微信服務(wù)器并進入步驟4),若否則返回步驟1);
4)微信服務(wù)器根據(jù)身份匹配信息向當前微信服務(wù)的微信用戶發(fā)送通知。
所述用戶的信息字段包括服務(wù)身份標識碼openID和唯一身份標識碼unionID。
所述服務(wù)身份標識碼openID具體為用戶具有的與微信服務(wù)對應(yīng)的身份信息,用戶在每一個微信服務(wù)中均具有與微信服務(wù)對應(yīng)的互異的服務(wù)身份標識碼openID。
所述唯一身份標識碼unionID具體為用戶具有的唯一的身份信息,用戶在所有微信服務(wù)中只具有唯一的代表用戶身份的唯一身份標識碼unionID。
所述步驟3)具體為:
31)業(yè)務(wù)端服務(wù)器獲取微信用戶的唯一身份標識碼unionID;
32)業(yè)務(wù)端服務(wù)器通過CoreSeek對該用戶進行身份匹配;
33)業(yè)務(wù)端服務(wù)器判斷步驟32)的身份匹配是否成功,若是則將身份匹配信息發(fā)送至微信服務(wù)器并進入步驟4),若否則返回步驟1)。
所述步驟32)具體為:
321)業(yè)務(wù)端服務(wù)器向CoreSeek發(fā)送該用戶的唯一身份標識碼unionID;
322)CoreSeek根據(jù)unionID匹配該用戶在當前微信相關(guān)服務(wù)下的openID,若匹配成功則向業(yè)務(wù)端服務(wù)器返回匹配得到的openID,若匹配不成功則向業(yè)務(wù)端服務(wù)器返回匹配不成功的信息。
所述微信服務(wù)包括微信公眾號、微信訂閱號、通過微信賬號注冊的網(wǎng)站和通過微信賬號注冊的移動應(yīng)用軟件。
所述業(yè)務(wù)端服務(wù)器具體為管理所有微信服務(wù)的總服務(wù)器。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:
(1)對于已經(jīng)搭建了成熟架構(gòu)的企業(yè)用戶,無需重新設(shè)計新的架構(gòu),只需通過外接CoreSeek進行身份匹配既可以實現(xiàn)新的微信功能,大大節(jié)省了企業(yè)的操作難度和成本。
(2)通過CoreSeek實現(xiàn)用戶身份的匹配,與原有的直接通過微信提供的接口進行匹配相比,對用戶的請求響應(yīng)及時,大大加快了與用戶的交互速度,提高了用戶的體驗度。
(3)CoreSeek定時通過微信用戶列表獲取接口更新所有微信服務(wù)的全部用戶的信息字段,對用戶信息的索引進行批量更新,避免了每次響應(yīng)用戶請求時臨時搜索用戶的信息字段,節(jié)省了響應(yīng)時間,提高了用戶體驗度。
(4)通過唯一身份標識碼將用戶在多個微信相關(guān)服務(wù)下的身份信息進行串聯(lián),便于對用戶的身份進行統(tǒng)一的管理,同時又不改變用戶原有的服務(wù)身份標識碼,只是將二者匹配實現(xiàn)用戶身份的識別,實現(xiàn)手段簡單且效率高。
(5)通過唯一身份標識碼,可以實現(xiàn)只注冊了一個微信服務(wù)用戶也可以接受其他微信相關(guān)服務(wù)的信息,對于企業(yè)來講,便于對所有旗下的微信服務(wù)進行統(tǒng)一管理,節(jié)省了企業(yè)發(fā)布信息的時間。
(6)本方法既適用于微信本身具有的微信公眾號和微信訂閱號,也適用于通過微信賬號注冊的網(wǎng)站和通過微信賬號注冊的移動應(yīng)用軟件,實現(xiàn)了微信內(nèi)部和外部的數(shù)據(jù)交互,適用范圍廣。
附圖說明
圖1為本發(fā)明的方法流程圖;
圖2為本實施例中用戶接受公眾號服務(wù)通知的流程圖。
具體實施方式
下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細說明。本實施例以本發(fā)明技術(shù)方案為前提進行實施,給出了詳細的實施方式和具體的操作過程,但本發(fā)明的保護范圍不限于下述的實施例。
Coreseek是一款中文全文檢索/搜索軟件,以GPLv2許可協(xié)議開源發(fā)布,基于Sphinx研發(fā)并獨立發(fā)布,專攻中文搜索和信息處理領(lǐng)域,適用于行業(yè)/垂直搜索、論壇/站內(nèi)搜索、數(shù)據(jù)庫搜索、文檔/文獻檢索、信息檢索、數(shù)據(jù)挖掘等應(yīng)用場景。
如圖1所示,為一種基于CoreSeek的多平臺微信服務(wù)的通知發(fā)送方法,包括下列步驟:
1)CoreSeek定時通過微信用戶列表獲取接口更新所有微信服務(wù)的全部用戶的信息字段;
2)業(yè)務(wù)端服務(wù)器判斷當前微信服務(wù)是否需要向微信用戶發(fā)送通知,若是則進入步驟3),若否則返回步驟1);
3)業(yè)務(wù)端服務(wù)器通過CoreSeek進行微信用戶的身份匹配,判斷身份匹配是否成功,若是則將身份匹配信息發(fā)送至微信服務(wù)器并進入步驟4),若否則返回步驟1):
31)業(yè)務(wù)端服務(wù)器獲取微信用戶的唯一身份標識碼unionID;
32)業(yè)務(wù)端服務(wù)器通過CoreSeek對該用戶進行身份匹配:
321)業(yè)務(wù)端服務(wù)器向CoreSeek發(fā)送該用戶的唯一身份標識碼unionID;
322)CoreSeek根據(jù)unionID匹配該用戶在當前微信相關(guān)服務(wù)下的openID,若匹配成功則向業(yè)務(wù)端服務(wù)器返回匹配得到的openID,若匹配不成功則向業(yè)務(wù)端服務(wù)器返回匹配不成功的信息;
33)業(yè)務(wù)端服務(wù)器判斷步驟32)的身份匹配是否成功,若是則將身份匹配信息發(fā)送至微信服務(wù)器并進入步驟4),若否則返回步驟1);
4)微信服務(wù)器根據(jù)身份匹配信息向當前微信服務(wù)的微信用戶發(fā)送通知。
其中,微信服務(wù)包括微信公眾號、微信訂閱號、通過微信賬號注冊的網(wǎng)站和通過微信賬號注冊的移動應(yīng)用軟件,用戶的信息字段包括服務(wù)身份標識碼openID和唯一身份標識碼unionID。服務(wù)身份標識碼openID具體為用戶具有的與微信相關(guān)服務(wù)對應(yīng)的身份信息,用戶在每一個微信相關(guān)服務(wù)中均具有與微信服務(wù)對應(yīng)的互異的服務(wù)身份標識碼openID。唯一身份標識碼unionID具體為用戶具有的唯一的身份信息,用戶在所有微信服務(wù)中只具有唯一的代表用戶身份的唯一身份標識碼unionID。具體來講,即用戶甲在微信公眾號A中具有一個openID1,在微信公眾號B中具有另一個openID2,在微信訂閱號C中具有一個openID3等等以此類推,用戶A的openID1、openID2以及openID3等都是不同的,微信公眾號A若想給用戶甲發(fā)送信息,即需要把信息發(fā)送給openID1,若發(fā)送到openID2則對應(yīng)的用戶不一定是用戶甲,同理,其余的微信服務(wù)若想給用戶發(fā)送信息,也需要找到該用戶在該相關(guān)服務(wù)下的openID。但是unionID則是唯一的,即用戶甲在微信公眾號A、微信公眾號B、微信訂閱號C等微信服務(wù)下的unionID都是一樣的,是唯一不變的。
基于上述原理,以用戶接收微信公眾號服務(wù)通知為例,如圖2所示,業(yè)務(wù)端服務(wù)器與用戶的交互過程如下:
1、用戶關(guān)注了微信公眾賬號,用于接收微信公眾賬號的通知以及查詢?yōu)g覽最新信息。
2、CoreSeek定時通過微信提供的獲取用戶列表接口獲得全部關(guān)注用戶的信息字段:針對微信公眾號形成的用戶身份標識碼(openID)以及共享所有應(yīng)用(網(wǎng)站、app、其他公眾號)所需要的唯一標示碼(unionID)。
3、用戶訪問網(wǎng)站使用微信作為第三方進行注冊時,CoreSeek通過微信的獲取用戶基本信息接口獲得該用戶的unionID。
4、當用戶其后在該微信公眾賬號所述企業(yè)的任何應(yīng)用中需要接收通知時,業(yè)務(wù)端服務(wù)器通過CoreSeek快速匹配unionID查出openID。
5、遇到openID匹配到該用戶,對該用戶發(fā)起微信通知服務(wù)。