前言
半年前我在簡(jiǎn)書上分享過(guò)一篇文章——Huginn 安裝教程—建立你自己的 IFTTT,簡(jiǎn)單地介紹了一下Huginn到底是什么以及它部署到Heroku云平臺(tái)上的方法。后來(lái),我和利器群里結(jié)識(shí)的幾個(gè)群友一起完成了Huginn教程的翻譯;就在上個(gè)月,我們把這些教程都放到了網(wǎng)上(托管Github和Coding),于是就有了現(xiàn)在的Huginn中文網(wǎng)。但是,當(dāng)我向其他人推薦這個(gè)開源應(yīng)用時(shí),大家還是不理解這個(gè)應(yīng)用到底有大的用途,或者是有哪些有趣的玩法,恐怕就連Huginn這個(gè)單詞很多人都不知道它的意思,更不要說(shuō)它其中的典故。所以,我想結(jié)合我這近十個(gè)月左右的使用經(jīng)驗(yàn)跟大家談一談它。
本文不會(huì)詳細(xì)地去介紹如何去使用它,如果你想學(xué)習(xí)Huginn的話,請(qǐng)看我們的Huginn中文網(wǎng);更加深入地學(xué)習(xí),請(qǐng)?jiān)L問(wèn)該項(xiàng)目的Github地址;如果你還不知道Huginn是什么,或者還不是十分清楚它的用途,或是想知道它到底有哪些有趣的玩法,可以繼續(xù)看下去。

簡(jiǎn)介與原理
Huginn是北歐神話中奧丁肩膀上的烏鴉,它會(huì)幫助奧丁收集全世界的信息。在Huginn的項(xiàng)目主頁(yè)上,作者對(duì)它有詳細(xì)的介紹,我們的中文網(wǎng)上也有一篇簡(jiǎn)介——Huginn 簡(jiǎn)介。作者的原話是“Huginn is a system for building agents that perform automated tasks for you online”,所以,你可以理解成Huginn是一個(gè)在線自動(dòng)化任務(wù)系統(tǒng)或者是云端私人助手;如果你對(duì)IFTTT和Yahoo!Pipes很了解的話,你也可以理解成 Huginn >= IFTTT + Yahoo!Pipes 。
Huginn的原理跟IFTTT云服務(wù)的原理類似,在IFTTT中,通過(guò)將每個(gè)Recipe串連起來(lái),組合成一個(gè)Applet,就可以實(shí)現(xiàn)一個(gè)功能;在Huginn中也有相似的概念,Agent對(duì)應(yīng)Recipe,Scenario對(duì)應(yīng)Applet(兩者稍微有點(diǎn)差別,在Huginn中,Scenario其實(shí)只是一些標(biāo)簽)。在Huginn中,通過(guò)編寫一連串的Agents,就可以實(shí)現(xiàn)一個(gè)功能。在簡(jiǎn)書上的這篇文章中——Huginn: 燒錄 RSS 的神器,作者將Huginn比如成一個(gè)加工工廠,每個(gè)Agents就像是流水線上的工人或機(jī)器,一組串聯(lián)起來(lái)的Agents組成了一條流水線,我覺得這個(gè)比喻非常地恰當(dāng)。
下面我舉一個(gè)簡(jiǎn)單的例子吧,例如,我們想把某個(gè)人的知乎回答制作成RSS,用來(lái)在RSS閱讀器上進(jìn)行閱讀。那么,我們需要寫三個(gè)Agents,第一個(gè)Agent抓取回答的標(biāo)題和鏈接,第二個(gè)Agent會(huì)根據(jù)鏈接抓取回答的全文,最后一個(gè)Agent將標(biāo)題、鏈接和全文組合在一起,制作成RSS,這樣就可以得到一個(gè)跟蹤某人知乎回答的RSS源。在Huginn中,會(huì)按照下圖所示的流程進(jìn)行工作:

定制化推送與一站式閱讀
Huginn具體有哪些作用或用途,作者其實(shí)也列舉了很多,比如,監(jiān)測(cè)天氣變化,監(jiān)測(cè)Twitter熱點(diǎn),監(jiān)測(cè)商品價(jià)格,監(jiān)測(cè)Gmail郵箱,發(fā)送提醒,制作RSS,還可以連接到各種豐富的第三方應(yīng)用(比如,郵箱、微博、Twitter、Wunderlist、Slack、Pushbullet,等等),可以組合出很多很多有趣的功能。經(jīng)過(guò)我這一段時(shí)間的使用,總得來(lái)說(shuō),我覺得Huginn可以幫助我們做到兩件事情,一是定制化推送或提醒,二是一站式閱讀。
首先,定制化推送或提醒就像你平時(shí)設(shè)定鬧鐘一樣,設(shè)定好時(shí)間或條件后,當(dāng)時(shí)間或條件滿足時(shí),Huginn就會(huì)把信息推送給你,或提醒你該去做某件事情。比如說(shuō),明天下雨,提醒你帶傘;電視劇或漫畫更新,提醒你去觀看或直接推送給你;感興趣的商品降價(jià),提醒你去購(gòu)買;發(fā)生有趣的熱點(diǎn)新聞,也會(huì)推送給你。。。諸如此類生活中很多零散的信息地處理,甚至可以說(shuō),我們每天都在接收并處理這些信息。但是,這些明顯帶有個(gè)人主觀喜好的事情,每個(gè)人的需求都不一樣,有些人喜歡看西部世界,有些人喜歡看射雕英雄傳,有些人喜歡看電視,有些人喜歡看漫畫,有些人喜歡閱讀文章,有些人喜歡欣賞照片......但是,很難有一個(gè)應(yīng)用能夠滿足所有人的需求。如果要想滿足所有人的需求的話,那就必須要讓用戶自己也參與進(jìn)來(lái),自己去篩選信息、制作信息源。
去年出現(xiàn)了一個(gè)非?;鸬腶pp,叫做即刻,我相信很多人都用過(guò)它或者還在使用它,這個(gè)app上有很多有趣的主題,諸如,有豆瓣8.0分以上的新電影、今天微博都在熱議什么,等等,這個(gè)app在豌豆莢上的下載量已經(jīng)有了34萬(wàn),但是,盡管它有如此之多的主題,仍然不可能滿足所有人的需求,比如,我想讓它推送豆瓣7.5分以上的新電影,因?yàn)樗鼪](méi)有這個(gè)主題,用戶就無(wú)法得到這個(gè)信息。但是,對(duì)于Huginn來(lái)說(shuō),這種自定義是最簡(jiǎn)單不過(guò)的啦,因?yàn)?strong>Huginn的自定義界面是可以從底層信息源開始,它是一個(gè)通用的云端信息處理工具,只要你能熟悉掌握它,就可以滿足你想要的大部分定制化推送。當(dāng)然,它的操作和使用成本是比較高的,需要自建服務(wù)器,學(xué)習(xí)它的操作方法,再深入一些還需要用戶懂一些編程方面的知識(shí)。
再說(shuō)一說(shuō)一站式閱讀吧,我個(gè)人理解的一站式閱讀是指在一處閱讀所有的關(guān)注信息,包括但不僅限于微信公眾號(hào)、知乎、簡(jiǎn)書、豆瓣、微博、Instagram......首先,我想講一講,為什么我們要去做一站式閱讀。不知道大家有沒(méi)有這樣的體驗(yàn),自己訂閱了很多的微信公眾號(hào),但是卻很少閱讀,哪怕是當(dāng)時(shí)覺得這個(gè)公眾號(hào)的文章非常非常好,而過(guò)了很久才發(fā)現(xiàn),我每天卻很少打開它,除了微信公眾號(hào)以外,知乎、簡(jiǎn)書、微博上的關(guān)注都可能會(huì)出現(xiàn)這種狀況,這是為什么呢?我覺得很大一部分的原因是因?yàn)?,這些信息的分布太過(guò)于分散。比如,你想要看微信公眾號(hào)的話,需要打開微信,找到訂閱號(hào);閱讀知乎需要打開知乎app,微博、簡(jiǎn)書也是這樣;而除了這些主流的信息渠道,還有很多其它的信息渠道需要單獨(dú)去閱讀,我想你肯定是難搞定的;即使能做到定期閱讀這些信息渠道,我覺得你肯定也耗費(fèi)了不少精力,畢竟打開、關(guān)閉這些app累計(jì)下來(lái)的時(shí)間也應(yīng)該有不少。所以,簡(jiǎn)化日常閱讀信息的流程是非常重要的,而且,更重要是我們要不忘初心,因?yàn)榧热荒阋呀?jīng)訂閱或關(guān)注了這些內(nèi)容,我覺得還是應(yīng)該花時(shí)間去看一看的,這也是對(duì)過(guò)去承諾的負(fù)責(zé)。
因此,最好的解決方法就是一站式閱讀,將所有自己關(guān)注的信息全部放在一處,而一站式閱讀的最好方法就是RSS——將自己關(guān)注的信息渠道都制作成一個(gè)個(gè)RSS源,然后在RSS閱讀器中集中閱讀,之前我在簡(jiǎn)書上寫過(guò)一篇文章【干貨】信息大爆炸時(shí)代,該如何高效閱讀,其中就有講到各種信息源的RSS解決方案,而Huginn就是該方案的終極工具。
信息終極解決方案
在日常生活中,信息有很多種,有比較隱私的,有比較零散的,有希望可以分享的,有希望能即時(shí)獲取的。。。而針對(duì)不同的信息,Huginn配合第三方應(yīng)用都有很好的解決方案,比如一些優(yōu)質(zhì)的博客,我們可以制作成RSS,集中在RSS閱讀器中閱讀,等等,除了RSS閱讀這種最佳的方式,下面我再介紹一些通過(guò)Huginn實(shí)現(xiàn)的信息解決方案。
1. Huginn與即刻配合使用(創(chuàng)建分享信息)
即刻通過(guò)人工和爬蟲的方式制作了很多有趣的主題,每個(gè)主題下的信息都可以點(diǎn)贊和評(píng)論,具備了很好的社交功能。最新版的即刻還推出了創(chuàng)建提醒的功能,通過(guò)app提供的機(jī)器人可以將微信公眾號(hào)、知乎、微博或RSS制作成主題,然后分享給其他人訂閱。但是,它并不能將任意網(wǎng)站制作成主題,不過(guò),因?yàn)樗梢詫SS制作成主題,那么這樣的話,借助Huginn制作RSS的強(qiáng)大功能,理論上就可以將絕大多數(shù)網(wǎng)站上的信息制作成主題。例如我有這樣一個(gè)需求,我想將七原罪的漫畫更新制作成即刻主題。首先,我需要尋找信息源,漫畫因?yàn)榘鏅?quán)的問(wèn)題,在很多主流網(wǎng)站上都找不到,只有萬(wàn)能的百度貼吧上有(而且更新是最快的)。有了信息渠道后,我在Huginn中建立了一連串的Agents,它的功能是分析貼吧中的熱門(置頂)帖子,一旦帖子中出現(xiàn)“東立漢化”并且是最新一話時(shí),就會(huì)生成RSS中的一個(gè)item,最后通過(guò)即刻機(jī)器人將RSS制作成主題。

2. Huginn與IFTTT配合使用(自動(dòng)發(fā)布信息)
IFTTT本身就是一款非常強(qiáng)大的云服務(wù),它可以將幾百種應(yīng)用組合在一起,它自身就有很多地玩法,不了解的可以看看少數(shù)派的這篇文章——觸發(fā)你的智能生活:IFTTT 入門。IFTTT可以接收RSS,因此可以先通過(guò)Huginn制作RSS,然后與IFTTT連接起來(lái),但是更好的方式是通過(guò)IFTTT提供的Maker服務(wù),這個(gè)Recipe可以接收或發(fā)起請(qǐng)求(Make/Receive a web request),而Huginn就有相對(duì)應(yīng)的接口(Webhook/Website Agent),因此,兩者之間是可以完全相互對(duì)接的。通過(guò)這樣的組合,就極大地?cái)U(kuò)展了Huginn的第三方應(yīng)用,也就是說(shuō),IFTTT上的幾百種第三方服務(wù)都可以為Huginn所用。
比如我想每天自動(dòng)在微博上發(fā)一張APOD提供的天文圖,就可以通過(guò)IFTTT將RSS源跟微博連接起來(lái)。但是,APOD官網(wǎng)提供的RSS源中的圖片尺寸太小,因此我不想使用該源,而是使用Huginn將官網(wǎng)上提供的大圖制作成RSS源,然后通過(guò)IFTTT將其發(fā)布到微博上。如果再結(jié)合使用即刻上的微博機(jī)器人的話,又可以在即刻上創(chuàng)建一個(gè)新的主題——每日一天文圖

3. Huginn配合Slack使用(零散私人信息)
Huginn沒(méi)有自己的app,也就沒(méi)有自己的信息接收端,因此,需要借助其他app來(lái)接收信息。如果是制作成RSS的話,RSS閱讀器就是接收端;如果是觸發(fā)郵件的話,郵箱就是接收端......但是,對(duì)于零散的信息,比如提醒你某個(gè)電視劇的更新,如果使用RSS或郵箱,顯然是很不方便的,而且,如果是將自己私人有關(guān)的信息制作成RSS的話,一旦RSS地址被其他人知道了,就很不安全,因此,在這里我推薦使用Slack這個(gè)工具。Slack是個(gè)非常強(qiáng)大的團(tuán)隊(duì)協(xié)作工具,它可以聚合非常多的第三方服務(wù),比如,Github、Wunderlist、Trello......Huginn可以借助Slack Agent將信息傳遞到Slack中的某個(gè)頻道里。Slack有自己的app,因此你就可以在手機(jī)端瀏覽Huginn推送的定制化信息。

4. Huginn配合Pushbullet使用(即時(shí)信息)
如果想利用Huginn發(fā)送即時(shí)(實(shí)時(shí))信息的話,經(jīng)常使用郵箱的人,可以直接通過(guò)Huginn的 Email Digest Agent發(fā)送到你的常用郵箱;如果你經(jīng)常使用微信,同時(shí)微信綁定了QQ郵箱,你可以發(fā)送到QQ郵箱,也能實(shí)現(xiàn)非??斓奶嵝选5?,通過(guò)郵箱來(lái)傳遞信息太過(guò)于傳統(tǒng),而且也不是完全的即時(shí),因此,在這里推薦大家使用Pushbullet,這是一款用于傳遞電腦PC與手機(jī)端信息的應(yīng)用工具,我在簡(jiǎn)書上的這篇文章中也有介紹-【干貨】信息(時(shí)間)管理之最強(qiáng)工具包(解決方案)。Huginn上有Pushbullet Agent,通過(guò)它,可以自動(dòng)地將處理好的信息傳遞到你的Pushbullet上,如果你的手機(jī)安裝了該應(yīng)用,就可以接收到Huginn傳遞的即時(shí)信息。

除了上面我介紹的這些信息解決方案以外,其實(shí)還有很多有意思的方案,比如,使用Huginn中的Wunderlist Agent自動(dòng)創(chuàng)建待辦事項(xiàng),使用Evernote Agent自動(dòng)生成筆記,使用郵件觸發(fā)Huginn處理信息,等等。有了Huginn,就像是有了一套萬(wàn)變的積木,通過(guò)它,你可以建造一個(gè)你自己想要的信息王國(guó),And You are the king !!!
總結(jié)
現(xiàn)在這個(gè)時(shí)代是一個(gè)發(fā)展特別迅速的信息大爆炸時(shí)代,然而,我們平時(shí)接收的信息大都來(lái)自于朋友圈或其他應(yīng)用的推薦,但是,我們不應(yīng)該忘了,真正了解你的人應(yīng)該是你自己,絕不是其他人或是什么亂七八糟的app。我們應(yīng)該從源頭上清楚自己需要看些什么,同時(shí),用最方便最高效的方式閱讀這些信息,這樣的話,我們才不會(huì)被時(shí)代所拋棄,也不會(huì)被信息的洪流所淹沒(méi)。Huginn, your agents are standing by!!!