1. 程式人生 > >IFTTT實現新浪微博完美同步Twitter

IFTTT實現新浪微博完美同步Twitter

如果你看到這篇文章,那麼對IFTTT就應該不會陌生。IFTTT於2011年5月在美國上線,是“if this then that”的縮寫,具體到本文要實現的,this就是你在新浪微博發了一條訊息,that就是Twitter上同步發一條相同的訊息,也即當你在網站A上進行了一項操作,那麼就觸法網站B自動完成另一個指定的操作。IFTTT利用各種網站的開發API,讓網路操作能夠引起連鎖反應,並且通過對不同資訊進行的交叉串聯,讓網際網路的使用更加方便、智慧。

新浪微博頻道在2014年10月正式上線IFTTT,有兩個觸發器,一個是每新發佈一個微博,另一個是釋出指定標籤的微博。如果要求不高,要實現微博和Twitter的同步並不困難,因為在Twitter實現同步的操作裡面有兩條可以選擇:一個是傳送一條純文字的訊息,圖片以URL形式展示(注意:不是直接展示圖片);另一個是傳送一條帶圖片的微博,但這個有個問題,就是如果釋出的新浪微博沒有圖片,便不會同步成功。當然,你也可以同時建立這兩個同步操作,這樣對於文字是沒有問題的,唯一的困擾就是當傳送有圖片的新浪微博時,Twitter上會同時釋出兩條,一條圖片正常展示,另一條圖片以URL展示。所以這兩個同步操作都是湊合著用,不能算做完美。

Maker-Channel

上週末查了些資料,斷斷續續鼓搗了兩天,終於把這個問題搞定了。首先,引入實現這一功能的主角——Maker。Maker頻道是在2015年6月上線IFTTT的,它使得IFTTT可以接收或觸發一條外部的網頁請求(這條網頁請求就是我們實現所有操作的關鍵,此時可以對接收的網頁請求進行修改,然後觸法另一個Maker來完成接下來的操作),這對於DIYers和具有探索(折騰)精神的朋友們來說,無疑是一個強大的功能。但在國內,貌似很少看到Maker相關的訊息,這裡就拋磚引玉,開個頭了。

下面就來說一下實現新浪微博完美同步Twitter的步驟,總共需要有三個Recipes,我已經建立好釋出了。

1、點選下面的連線,連線Maker,複製頁面右側顯示的Your key is下面的字串;

2、新增“微博觸發Maker”的Recipe,將裡面URL中的YOUR-MAKER-KEY替換為上面複製的字串;

3、新增“Maker釋出Twitter(僅文字)”的Recipe,將裡面的Event Name填寫為makertext2twitter;

4、新增“Maker釋出Twitter(帶圖片)”的Recipe,將裡面的Event Name填寫為makerpic2twitter;

實現完成,如果只想要結果,到此為止,去同步下試試吧,如果想了解更多,請接著看。

最後,來簡單說一下這裡對Maker的利用。最關鍵的是在第二部操作中,我們定義了一個URL地址(見下面),這個地址不是隨便填的,而是我在GAE上搭建的一個可以實現文字和帶圖片微博分開處理的網頁程式,它在接收到新浪微博發出的文字或圖片資訊後,通過判斷來觸法後面第三或第四部中定義的Event。

https://maker-dot-feed4kindle.appspot.com/?key=YOUR-MAKER-KEY&value1=<<<{{Text}}>>> &value2=<<<{{PhotoURL}}>>>

原理不算複雜,但由於沒搞過網站開發,網頁程式都是一邊查一邊拼的,也不知道搭建在GAE上的服務能承受多少使用者,如果你有伺服器,可以自己搭建一個類似的服務來用。