《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于短信內(nèi)容解析的日程管理軟件設(shè)計(jì)與實(shí)現(xiàn)
基于短信內(nèi)容解析的日程管理軟件設(shè)計(jì)與實(shí)現(xiàn)
2015年微型機(jī)與應(yīng)用第15期
韓玉民,,楊騰飛,,劉安戰(zhàn)
(中原工學(xué)院 軟件學(xué)院,河南 鄭州 450001)
摘要: 通過手機(jī)管理日常事務(wù),已成為快節(jié)奏生活狀態(tài)下人們的首選,。與傳統(tǒng)的手動添加日程不同,為了提高日程管理效率,,依據(jù)GTD時間管理理念,,設(shè)計(jì)和實(shí)現(xiàn)基于短信內(nèi)容解析的日程助手軟件。通過短信監(jiān)聽,,采用分詞算法對短信文本進(jìn)行解析,,提取出事務(wù)日程信息,自動加入到Android手機(jī)自帶谷歌日歷的待辦事項(xiàng),,為用戶提供了短信日程自動記錄,、提醒等功能。方便了用戶收集日程任務(wù),,提高了時間管理效率,。
Abstract:
Key words :

  摘  要: 通過手機(jī)管理日常事務(wù),已成為快節(jié)奏生活狀態(tài)下人們的首選,。與傳統(tǒng)的手動添加日程不同,,為了提高日程管理效率,依據(jù)GTD時間管理理念,,設(shè)計(jì)和實(shí)現(xiàn)基于短信內(nèi)容解析的日程助手軟件,。通過短信監(jiān)聽,采用分詞算法對短信文本進(jìn)行解析,,提取出事務(wù)日程信息,,自動加入到Android手機(jī)自帶谷歌日歷的待辦事項(xiàng),為用戶提供了短信日程自動記錄,、提醒等功能,。方便了用戶收集日程任務(wù),提高了時間管理效率,。

  關(guān)鍵詞: GTD,;Android;短信監(jiān)聽,;文本解析,;日程助手

0 引言

  信息時代,手機(jī)已影響到人們?nèi)粘I畹姆椒矫婷??!?014年中美移動互聯(lián)網(wǎng)調(diào)查報(bào)告》[1]顯示,,70%以上的移動互聯(lián)網(wǎng)用戶對智能手機(jī)有依賴性,用戶通過手機(jī)進(jìn)行通訊,、瀏覽信息,、收發(fā)郵件、社交等活動,。Android系統(tǒng)是Google公司推出的以移動互聯(lián)網(wǎng)業(yè)務(wù)為核心的智能終端開源平臺[2],。目前在中國市場上,Android系統(tǒng)的智能手機(jī)占有83.6%的移動互聯(lián)網(wǎng)終端市場[3],。

  短信息社交是一項(xiàng)傳達(dá)準(zhǔn)確,、接收及時、回饋迅速的高效社交方式,。通過短信息發(fā)送活動通知已成為很多組織活動很重要的一項(xiàng)工作,。特別是一些服務(wù)商推出的短信群發(fā)的社交軟件,,比如飛信,、超信等,這些軟件為組織機(jī)構(gòu)提供了方便快捷的事務(wù)通知等功能,。

  Allan提出的GTD(Getting Things Done)[4]理念,,是近年來很多公司和個人較為推崇的一種時間管理理念,其主要通過收集,、整理,、組織、執(zhí)行,、回顧5個步驟來管理個人時間,。

  市場上也出現(xiàn)了一系列的時間管理軟件來管理日程計(jì)劃[5],這些軟件的著眼點(diǎn)是定時提醒,,一般都需要安裝應(yīng)用程序(APP),,尚未發(fā)現(xiàn)從接收短信中提取出日程安排信息,自動添加進(jìn)日歷待辦事項(xiàng)中Android移動日程應(yīng)用,。

  為了使用戶更好地安排好自己的日常學(xué)習(xí)和生活,,設(shè)計(jì)和實(shí)現(xiàn)了基于GTD時間管理理念,基于短信內(nèi)容解析的大學(xué)生日程助手軟件,。采用短信監(jiān)聽技術(shù),,通過短信接收日程安排,解析短信文本,,提取待辦事項(xiàng)內(nèi)容,,并自動添加進(jìn)Android手機(jī)自帶的谷歌日歷待辦事項(xiàng)中,到時提醒,。

1 模塊設(shè)計(jì)

001.jpg

  該日程助手軟件主要分三個模塊,,如圖1所示,。短信監(jiān)聽模塊實(shí)現(xiàn)對手機(jī)接收短信的監(jiān)聽和記錄。日歷提醒模塊包括信息提取,、鬧鐘提醒和自定義設(shè)置,,信息提取模塊包括提取原文和提取屬性,提取的原文通過解析抽取后,,形成日程的基本屬性信息,,提取的屬性包括短信息的發(fā)送時間、發(fā)送人等,。經(jīng)過提取解析后的事務(wù)相關(guān)內(nèi)容加載到日歷待辦事項(xiàng)當(dāng)中,,另外,用戶還可以根據(jù)自己的需求,,對鬧鐘提醒進(jìn)行再管理設(shè)置,。自定義設(shè)置為用戶提供了一些定制的自定義功能,如很多單位和機(jī)構(gòu)以“周”作為時間單位,,自定義可以設(shè)置第一周的時間點(diǎn),。模板回復(fù)模塊包括快速回復(fù)和模板管理,快速回復(fù)為用戶提供采用已有的模板進(jìn)行快速回復(fù)功能,,模板管理模塊為用戶提供自行增加,、刪除和修改的管理功能。

2 核心流程

  根據(jù)GTD的5個步驟(收集,、整理,、組織、執(zhí)行,、回顧),,設(shè)計(jì)、分析手機(jī)日程助手軟件的流程,。日程助手軟件先通過監(jiān)聽短信,,獲取新收短信息;遵照用戶意愿,,確定是否加入日歷提醒,,對于需要進(jìn)行日程安排的短信,解析短信內(nèi)容及屬性,,使用分詞技術(shù)進(jìn)行匹配,,提取出事務(wù)關(guān)鍵信息,包括時間,、地點(diǎn),、備注等;然后加入到Android手機(jī)自帶Google日歷中,到時提醒,。系統(tǒng)的核心流程如圖2所示,。

002.jpg

3 關(guān)鍵技術(shù)

  3.1 短信監(jiān)聽

  在Android系統(tǒng)中,電話的接收和短信的接收都會產(chǎn)生一個廣播,,通過監(jiān)聽這些廣播可以對電話,、短信做出程序邏輯的處理。通過接收Android系統(tǒng)的短信廣播方式監(jiān)聽短信,,操作方便,,適合簡單的短信處理。

  短信廣播是一種有序廣播,,它會先發(fā)送給優(yōu)先級最高的那個Receiver,,設(shè)置代碼中SmsReceiver的優(yōu)先級為800:<intent-filter android:priority="800">。這個優(yōu)先級比原有接收短信軟件優(yōu)先級高,。所以SmsReceiver接收到了短信,,起到攔截短信的作用。

  另外,,接收短信需要權(quán)限,,需要在AndroidManifest.xml中配置:<uses-permission android:name="android.permission.RECEIVE_SMS"/>。

  3.2 短信內(nèi)容解析

  解析短信內(nèi)容,,即運(yùn)用工具從短信文本中選取與待辦事項(xiàng)有關(guān)的時間,、地點(diǎn)等信息,。先要根據(jù)需求,,建立日程信息詞典,再運(yùn)用匹配技術(shù),,在短信文本中搜尋符合詞典中詞條的文本,。

  根據(jù)信息處理需求,按照特定規(guī)范,,要對全部短信內(nèi)容進(jìn)行切分,,即分詞。采用好的分詞算法可以得到準(zhǔn)確的時間相關(guān)詞以及事項(xiàng)關(guān)鍵詞,。目前分詞算法主要分為三大類:基于字符串匹配的分詞方法,、基于詞頻度統(tǒng)計(jì)的分詞方法和基于知識理解的分詞方法[6]。第一類方法基于詞典詞條,,若在詞典中找到某個字符串,,則匹配成功。這類方法實(shí)現(xiàn)簡單,,分詞效率較高,。第二類基于統(tǒng)計(jì)的分詞方法則基于字和詞的統(tǒng)計(jì)信息,由于這些信息是通過調(diào)查真實(shí)語料而取得的,因而具有較好的實(shí)用性,。第三類基于知識理解的分詞方法是讓計(jì)算機(jī)模擬人類的思想語言邏輯對句子理解劃分,,達(dá)到分詞效果。

  對于日常事務(wù)通知,,短信內(nèi)容一般不會很長,,多數(shù)主題明確,地點(diǎn)也多有重復(fù),,日程信息詞典詞條數(shù)量不大,,因此設(shè)計(jì)使用基于字符串匹配的分詞技術(shù),將詞典中的所有詞按由長到短的順序在短信中逐詞遍歷搜索,,進(jìn)行匹配,,直至文本結(jié)束。再配合對時間格式的匹配,,短信的重要信息就可以被輕松獲取,。

  短信息發(fā)送方不統(tǒng)一,文本編排風(fēng)格各異,,日常通知短信息中,,待辦事項(xiàng)文本結(jié)構(gòu)復(fù)雜。因此,,采用正則表達(dá)式設(shè)計(jì)查找時間復(fù)雜字符串的規(guī)則,。正則表達(dá)式對復(fù)雜規(guī)則的字符串的查找效率高,用法靈活,,語句簡單[7],。

  設(shè)計(jì)提取時間內(nèi)容的正則表達(dá)式為:((本|下)?(周|(星期))*(一|二|三|四|五|六|日)|[今明后]天)|((1?[0-9])|(十*[(一|二|三|四|五|六|七|八|九)]))月(([1-3]?[0-9])|([二三]十*[(一|二|三|四|五|六|七|八|九)]))(日|號)。

  例如:“后天中午十二點(diǎn)在一號樓111開會”,,分詞后得到“后天”,、“中午”、“十二點(diǎn)”,、“一號樓”,、“111”、“開會”這些詞語,。按照正則表達(dá)式取出時間關(guān)鍵詞,,計(jì)算出時間,然后取出剩下的地點(diǎn)信息,。

  3.3 傳值方法

  基于以上技術(shù)實(shí)現(xiàn)整體軟件,,其中重要的一點(diǎn)就是對數(shù)值的傳遞和使用。

  采取Bundle方法在不同Activity之間傳遞短信內(nèi)容,,然后再對數(shù)據(jù)進(jìn)行處理,。它的數(shù)據(jù)不是持久化狀態(tài)。在對用戶設(shè)置的屬性進(jìn)行保存時使用sharePreferences方法,它簡單地存儲持久化的設(shè)置,,就像用戶每次打開應(yīng)用程序時的主頁,,它只是通過一些簡單的鍵值對來操作。它將數(shù)據(jù)保存在一個XML文件中,。通過系統(tǒng)的shared框架,,用key-value進(jìn)行值的增刪改查。在對短信和快捷回復(fù)的保存中使用SQlite,。

4 實(shí)現(xiàn)

  系統(tǒng)主要實(shí)現(xiàn)了短信息的監(jiān)聽,、事務(wù)內(nèi)容提取及加入日歷提醒等功能。在系統(tǒng)啟動后會自動進(jìn)入監(jiān)聽模式,,對于新短信息則會自動彈出提示窗口,,提示用戶是否要將此信息內(nèi)容加入到日歷中,同時為用戶提供快速回復(fù)和模板回復(fù)功能,,監(jiān)聽界面如圖3,。

003.jpg

  如果用戶選擇“加入日歷”,則對短信息內(nèi)容進(jìn)行解析和提取,,提取出事務(wù)信息和整個短信內(nèi)容,,進(jìn)入“確認(rèn)加入”界面,如圖4,。用戶可以對信息進(jìn)行進(jìn)一步編輯,,同時可以選擇是否有鈴聲提示及鬧鐘提示間隔時間等。確認(rèn)加入后,,系統(tǒng)調(diào)用Android系統(tǒng)提供的日歷接口,,將日程待辦事項(xiàng)信息加入到手機(jī)日歷中,如圖5,。

004.jpg

5 結(jié)論

  針對日常繁瑣的事務(wù),,整合了當(dāng)前領(lǐng)先的GTD時間管理理念于軟件設(shè)計(jì)中,,通過監(jiān)聽事務(wù)短信,,使用基于字符串匹配的分詞算法及正則表達(dá)式提取新短信息中的事務(wù)相關(guān)信息,能夠較準(zhǔn)確地提取出事務(wù)信息,,加入到手機(jī)自帶日歷中,,實(shí)現(xiàn)到時提醒?;诙绦艃?nèi)容解析的手機(jī)日程管理軟件可以幫助用戶快速建立日程計(jì)劃,,降低人工操作的錯誤率,降低手機(jī)負(fù)載,,大大縮短時間,,提高辦事效率。

參考文獻(xiàn)

  [1] 于俊杰.2014年中美移動互聯(lián)網(wǎng)調(diào)查報(bào)告[EB/OL].(2014-11-20)[2015-2-10].http://tech.sina.com.cn/i/2014-11-20/14339810372.shtml.

  [2] Android project official. Android project [EB/OL].(2008-9-1)[2015-2-10] http://www.android.com/2008.

  [3] Sui Linda. China Smartphone Vendor and OS Marketshare [EB/OL].(2014-11-3)[2015-2-10] http://www.strategyanalytics.com/default.aspx?mod=reportabstractviewer&a0=10248.

  [4] ALLEN D. Getting Things Done: the art of stress-free productivity[M]. Penguin Books, 2002.

  [5] 林鴻.基于Android的班級智能日程安排系統(tǒng)的設(shè)計(jì)與開發(fā)[J].福建電腦,,2014,,30(1):151-153.

  [6] 黎佳.淺談中文切詞算法[J].軟件,2013,,34(7):75-76.

  [7] 劉楊,,陳暉,陳遠(yuǎn)江.中文文本信息過濾技術(shù)研究[J].船電技術(shù),,2010,,30(7):58-61.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。