微信小程序+OLAMI

微信小程序最近比較熱門道伟,再加上自然語義理解也越來越被人關(guān)注帚豪,于是我想趕趕潮流,做一個(gè)小程序試試空另。想來想去快遞查詢應(yīng)該是一種比較普遍的需求。

如果你也在通過自然語言接口做點(diǎn)什么蹋砚,希望我的這篇博客能幫到你扼菠。感興趣的朋友可以加入互通有無摄杂。或者你也可以直接下載代碼試一試循榆。

----------代碼下載:-------------

GitHub代碼下載

CSDN代碼下載

----------------功能介紹: 我的小程序名字叫“智能生活寶”------------------------

1. 通過自然語言對(duì)話查詢

現(xiàn)在在微信里析恢,如果你參加一個(gè)什么活動(dòng),一般都是在輸入框里寫上關(guān)鍵字或者數(shù)字秧饮,這樣才能獲取你所需要的服務(wù)映挂。而通過自然語言接口,可以讓用戶像跟人對(duì)話一樣和你的小程序?qū)υ捚珠埂1热纾?/p>

我要查快遞袖肥,幫我查一下快遞咪辱,查快遞122343振劳,甚至直接輸入快遞運(yùn)單號(hào),小程序就能做出相應(yīng)的回應(yīng)油狂。

2. 多功能查詢

目前支持快遞查詢历恐,聊天,日歷查詢专筷,菜譜查詢弱贼,講笑話,講故事磷蛹,計(jì)算吮旅,算24點(diǎn)功能。

原本我只是準(zhǔn)備支持快遞查詢功能味咳,后來發(fā)現(xiàn)OLAMI開放平臺(tái)有許多內(nèi)置的模塊庇勃,于是也順便添加了一下。

----------------功能展示:------------------------------------------------------------------------

1. 快遞查詢頁面如下圖所示槽驶,只要在下方的輸入框中輸入查詢句子责嚷,就會(huì)在text控件中返回結(jié)果。

也可以點(diǎn)擊“例句”按鈕和“更換例句”按鈕體驗(yàn)一下掂铐。

2. ?點(diǎn)擊例句后的效果圖罕拂,觸摸例句就會(huì)在text控件中看到效果。

3. ?輸入語句: “查詢中通快遞765325527325”

4. ?點(diǎn)擊更換例句按鈕可以更換例句

5. ? 其他模塊體驗(yàn)

點(diǎn)擊左下角的切換按鈕全陨,會(huì)發(fā)現(xiàn)右下角的查快遞變成了“聊天”

爆班。

6. ?點(diǎn)擊“例句”按鈕,這時(shí)候例句里就是其他模塊的例句了辱姨。

7. ?同樣可以通過“更換例句”按鈕進(jìn)行例句更換

8. ?查日期

9. 講笑話

10. ?查菜譜

----------------開發(fā)步驟----------------------------------------

1. ?微信小程序相關(guān)

首先要申請(qǐng)一個(gè)微信小程序公眾號(hào)柿菩,注意不是微信公眾號(hào),然后仔細(xì)閱讀小程序的框架和功能介紹炮叶。有些JS的功能小程序里是不能用的碗旅。我之前也沒有做過JS渡处,但上起手來感覺還是很快的,幾乎沒有太多阻礙祟辟。網(wǎng)上有很多教程医瘫,我就不多說了。

網(wǎng)址:微信小程序開發(fā)文檔

2. 快遞查詢的API接口

注意尋找合適的API接口時(shí)旧困,要選用支持https的訪問接口醇份,微信小程序目前僅支持https的訪問。

我選用的是快遞鳥快遞API里面的即使查詢API吼具,因?yàn)槊赓M(fèi)嘛僚纷,呵呵。而且每天可以訪問3000次拗盒,足夠了怖竭。你需要自己注冊(cè),獲取自己的API key和商戶ID陡蝇。

注意:注冊(cè)之后痊臭,需要在自己的賬號(hào)界面申請(qǐng)對(duì)應(yīng)的API接口才能使用,免費(fèi)的也要申請(qǐng)登夫。如下圖所示:

3. ?歐拉蜜(OLAMI)人工智能開發(fā)平臺(tái)

這個(gè)非常重要广匙,決定了你能支持多少種模塊,多少種句子恼策。畢竟這種接口看起來還是很復(fù)雜的鸦致,總結(jié)一下我的心得:

* ?寫語法

在使用自然語言語義API之前,首先得寫語法涣楷,仔細(xì)閱讀語法文檔分唾,這個(gè)很重要。當(dāng)然你也可以登錄進(jìn)去总棵,看看平臺(tái)內(nèi)置的語法是否符合你的要求鳍寂,如果只是為了測(cè)試,完全可以先導(dǎo)入一個(gè)內(nèi)置的模塊試試情龄。點(diǎn)擊下圖中的“進(jìn)入NLI系統(tǒng)”迄汛。

進(jìn)入NLI系統(tǒng)之后,點(diǎn)擊“導(dǎo)入”按鈕骤视,既可以看到內(nèi)置模塊鞍爱,選中添加即可,如下圖所示专酗。每個(gè)模塊的作用可以在NLI 自然語言語義互動(dòng)系統(tǒng) / 內(nèi)置模塊列表看到詳細(xì)描述睹逃。

下圖中是我的NLI系統(tǒng),里面有我自己寫的快遞模塊"expressage"和添加了內(nèi)置模塊"music".

2...創(chuàng)建應(yīng)用,配置模塊

寫好語法并發(fā)布之后后沉填,就可以創(chuàng)建自己的應(yīng)用了疗隶,并在應(yīng)用里添加模塊即可。我在配置模塊的過程中翼闹,發(fā)現(xiàn)OLAMI有內(nèi)置的模塊可以使用斑鼻,于是我創(chuàng)建了兩個(gè)應(yīng)用,一個(gè)叫查詢工具猎荠,用來專門查詢快遞坚弱;另一個(gè)叫工具,選了內(nèi)置的模塊关摇。

為什么我沒有將這些應(yīng)用放在一起呢荒叶?因?yàn)槲业目爝f模塊語法中有一個(gè)會(huì)抓整個(gè)句子,導(dǎo)致內(nèi)置模塊無法正常工作输虱。

你如果想驗(yàn)證自己的功能是否可用些楣,可以點(diǎn)“測(cè)試”按鈕測(cè)試一下看看。

快遞應(yīng)用配置:

其他查詢應(yīng)用配置(這個(gè)語法完全不用自己寫悼瓮,還有對(duì)應(yīng)的輸出結(jié)果戈毒,很好用):

應(yīng)用創(chuàng)建好之后,你就可以查看OLAMI分配給你的Key信息横堡,這可是訪問API接口的必備信息。

3. ?訪問API

如果你在你的應(yīng)用中測(cè)試結(jié)果很滿意冠桃,也就是你要捕獲的句子都支持命贴,那么就可以嘗試調(diào)用API了。然后分析API的結(jié)果食听,做出對(duì)應(yīng)的回應(yīng)胸蛛。

比如我的快遞查詢APP的語法通過modifier支持的四種功能,如下表所示:

modifier含義

modifier

含義

例句

query輸入的句子只是說要查快遞樱报,沒有提供快遞公司名稱和運(yùn)單號(hào)我要查快遞

查一下快

幫我查查快遞唄

query_num輸入的句子中提供了運(yùn)單號(hào)12112311111

查一下運(yùn)單號(hào)是123423的快遞

query_name輸入的句子中提供了快遞公司名稱我想查圓通快

看一下申通快遞

query_name_num輸入的句子中提供了運(yùn)單編號(hào)和快遞公司名稱查申通快遞1122333

我的語法中僅涉及了兩個(gè)關(guān)鍵信息葬项,即兩個(gè)slot,“expnumber”抓取快遞單號(hào),'expname'用來抓取快遞公司的名稱。

因此當(dāng)OLAMI 的API接口返回語法信息之后迹蛤,我只需要根據(jù)modifier的值就可以做出對(duì)應(yīng)的操作民珍,而使用slot的值去快遞鳥的API接口查詢快遞信息。

我的快遞APP功能邏輯如下:

* 如果僅提供運(yùn)單號(hào)盗飒,則先用運(yùn)單號(hào)查詢快遞公司編號(hào)嚷量,如果快遞公司編號(hào)有一個(gè),則直接用運(yùn)單號(hào)和公司編號(hào)查物流信息逆趣。

如果有多個(gè)蝶溶,則請(qǐng)用戶選擇快遞公司。

* 如果提供運(yùn)單號(hào)和快遞公司宣渗,則直接調(diào)用運(yùn)單號(hào)+快遞code接口查詢抖所。

* 如果僅提供快遞公司名稱梨州,則記錄并查詢對(duì)應(yīng)快遞公司code,并請(qǐng)用戶提供運(yùn)單編號(hào)。

其他的查詢功能田轧,因?yàn)橛玫氖莾?nèi)置模塊摊唇,直接就有回復(fù),不需要我再去調(diào)用其他接口涯鲁,直接顯示即可巷查,很有意思。

----------代碼下載:-------------

CSDN代碼下載

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末抹腿,一起剝皮案震驚了整個(gè)濱河市岛请,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌警绩,老刑警劉巖崇败,帶你破解...
    沈念sama閱讀 216,591評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異肩祥,居然都是意外死亡后室,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門混狠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來岸霹,“玉大人,你說我怎么就攤上這事将饺」北埽” “怎么了?”我有些...
    開封第一講書人閱讀 162,823評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵予弧,是天一觀的道長(zhǎng)刮吧。 經(jīng)常有香客問我,道長(zhǎng)掖蛤,這世上最難降的妖魔是什么杀捻? 我笑而不...
    開封第一講書人閱讀 58,204評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮蚓庭,結(jié)果婚禮上致讥,老公的妹妹穿的比我還像新娘。我一直安慰自己彪置,他們只是感情好拄踪,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,228評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著拳魁,像睡著了一般惶桐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,190評(píng)論 1 299
  • 那天姚糊,我揣著相機(jī)與錄音贿衍,去河邊找鬼。 笑死救恨,一個(gè)胖子當(dāng)著我的面吹牛贸辈,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播肠槽,決...
    沈念sama閱讀 40,078評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼擎淤,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了秸仙?” 一聲冷哼從身側(cè)響起嘴拢,我...
    開封第一講書人閱讀 38,923評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎寂纪,沒想到半個(gè)月后席吴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,334評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡捞蛋,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,550評(píng)論 2 333
  • 正文 我和宋清朗相戀三年孝冒,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拟杉。...
    茶點(diǎn)故事閱讀 39,727評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡庄涡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出捣域,到底是詐尸還是另有隱情啼染,我是刑警寧澤,帶...
    沈念sama閱讀 35,428評(píng)論 5 343
  • 正文 年R本政府宣布焕梅,位于F島的核電站,受9級(jí)特大地震影響卦洽,放射性物質(zhì)發(fā)生泄漏贞言。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,022評(píng)論 3 326
  • 文/蒙蒙 一阀蒂、第九天 我趴在偏房一處隱蔽的房頂上張望该窗。 院中可真熱鬧,春花似錦蚤霞、人聲如沸酗失。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽规肴。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間拖刃,已是汗流浹背删壮。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留兑牡,地道東北人央碟。 一個(gè)月前我還...
    沈念sama閱讀 47,734評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像均函,于是被迫代替她去往敵國(guó)和親亿虽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,619評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容