本發明屬于防災預警方法,具體涉及一種用戶可定義擴展的通用預警服務方法。
背景技術:
防災預警作為防災組織體系中重要的組成部分之一,在災情預防中起到了不可估量的作用。在當前防汛防災工作過程中,存在災情多樣、多變的現象,同時缺乏有效持續的預警方式,因此一種用戶可自定義,可配置并且易于擴展的通用預警服務就顯得尤為重要。
目前,各省市災情系統預警種類不夠完善,預警信息通知渠道不夠健全,預警通知不夠到位,不夠及時,這些問題都是各地區防災預警能力薄弱的重要原因。災情預警作為防災預防中關鍵的一環,必須具有預測性、多樣性以及有效性,但是由于缺乏一套完善的通用預警服務體系,在災情頻發的地區,民眾還是無法及時收到準確的預警通知,導致受到不同程度的人身和財產損失。
技術實現要素:
為了解決目前防災預警系統發布的預警通知種類單一,預警不準確,導致災害地區不能有效規避風險。本發明提供一種用戶可定義擴展的通用預警服務方法。
為實現上述目的,本發明采用以下技術方案:一種用戶可定義擴展的通用預警服務方法,其特征在于:包括以下步驟:步驟S1:定義可擴展的服務框架,所述服務框架抽象了預警服務方法;
步驟S2:添加預警類型,預警服務流程中以預警類型作為每種預警的區分,每種預警類型對應相應的業務基礎數據,配置預警類型管理進行類型初始化;步驟S3:用戶對于不同類型的預警進行規則的配置,修改對應閾值以滿足業務要求;預警規則根據需求配置預警的內容與格式,設置預警的等級以及多個閾值參數與單位;步驟S4:通用預警服務基于業務數據,根據預警類型和預警規則,產生預警通知每種預警類型根據業務數據,基于預警規則產生相應的預警通知;
步驟S5:通過JPush推送服務將生成的預警通知推送到app端以及展示到Web端。
進一步的,所述預警服務方法包括業務基礎數據的獲取方法、抽象的預警通知生成方法以及統一的預警推送方法;不同的預警類型會包含不同的業務數據,獲取這些不同數據的方法進行抽象,不同預警數據以不同入口參數進行標識;得到預警數據源之后,在配置不同的預警規則基礎上,就能得到統一的預警通知生成方法;最后,得到相同結構的預警通知數據,通過不同終端進行消息的分發。
進一步的,每個目標用戶在app端都有唯一的標識,用戶根據需求選擇關注不同的預警類型,推送服務通過用戶標識進行不同預警類型的推送。
與現有技術相比,本發明的具有以下優點:通過用戶自定義擴展的通用預警服務方法,基于監測設備采集的業務數據,添加預警類型,配置預警規則,修改對應閾值,產生預警通知,預警通知對于每一個目標用戶進行了標識區分,結合JPush推送服務,對指定的用戶進行相應預警通知的推送,提高了災情預警的多樣性與有效性。
附圖說明
圖1為本發明的主要原理框圖。
圖2為本發明的定義可擴展的服務框架的流程示意圖。
圖3為本發明的添加預警類型流程示意圖。
圖4為本發明的預警規則配置流程示意圖。
圖5為本發明的預警通知生成流程示意圖。
圖6為本發明的預警推送流程示意圖。
具體實施方式
下面結合附圖和具體實施例對本發明做進一步解釋說明。
本發明提供一種用戶可定義擴展的通用預警服務方法,基于用戶自定義預警類型、規則,抽象預警服務方法,實現具體預警通知方法。首先通過模板方法設計模式,抽象了公共的預警基礎業務數據獲取方法、預警通知存儲方法,作為整個架構基礎。當添加一個新的預警類型之后,實現該類型具體的預警通知生成方法,用戶可通過配置預警規則,根據實際業務調整對應的閾值以滿足需求。然后服務框架根據預警類型和預警規則,產生預警通知,通過JPush推送服務將生成的預警通知定時推送到app端,并在Web端進行展示。主要原理框圖參見圖1。
本發明的主要步驟如下:
1、定義可擴展的服務框架。該框架抽象了預警服務方法,實現產生預警通知方法。預警服務方法主要分為業務基礎數據的獲取方法,抽象的預警通知生成方法以及統一的預警推送方法。主要流程圖參見圖2。不同類的預警主要是預警規則與數據源的不同,但預警總體流程是相同的,都是先獲取數據源,通過規則篩選出預警數據,最后發送通知,通過抽象化該預警流程,實現通用的預警方法。
2、添加預警類型。預警服務流程中以預警類型作為每種預警的區分,每種預警類型對應相應的業務基礎數據,配置預警類型管理進行類型初始化。主要流程圖參見圖3。
3、預警規則配置。用戶對于不同類型的預警進行規則的配置,修改對應閾值以滿足業務要求。預警規則可配置預警的內容與格式,設置預警的等級以及多個閾值參數與單位。主要流程圖參見圖4。
4、預警通知生成。通用預警服務基于業務數據,根據預警類型和預警規則,產生預警通知。業務數據是預警的基礎,是預警規則判斷的數據標準,每種預警類型根據業務數據,基于預警規則產生相應的預警通知。主要流程圖參見圖5。
5、預警推送。通過JPush推送服務將生成的預警通知推送到app端以及展示到Web端。每個目標用戶在app端都有唯一的標識,并且可以選擇關注不同的預警類型,推送服務通過用戶標識進行不同預警類型的推送。主要流程圖參見圖6。用戶不需要的,不關注的不需要進行推送,減少用戶收到無關信息。
所述預警服務方法包括業務基礎數據的獲取方法、抽象的預警通知生成方法以及統一的預警推送方法;由于不同的預警類型會包含不同的業務數據,比如降雨量預警會包含降雨量監測數據,水位預警會包含水位監測數據,獲取這些不同數據的方法可以進行抽象,不同預警數據以不同入口參數進行標識;得到預警數據源之后,在配置不同的預警規則基礎上,就能得到統一的預警通知生成方法。最后,得到相同結構的預警通知數據,通過不同終端進行消息的分發。
為了解決預警系統存在的預警難問題,本發明開發了一套用戶可自定義擴展的通用預警服務框架,該框架抽象通用的預警服務方法,通過添加不同的預警類型,配置類型相應的預警規則、閾值,從而產生預警通知。并通過JPush推送服務的方式,將生成的預警通知及時推送到app端,同時在Web端展示。
以上是本發明的較佳實施例,凡依本發明技術方案所作的改變,所產生的功能作用未超出本發明技術方案的范圍時,均屬于本發明的保護范圍。