今天是2020年的第一天,很高興能夠在今天開源一款管理企業(yè)微信機(jī)器人的小工具狐榔,我作為Insight的作者坛增,來(lái)為大家介紹一下Insight获雕,以及分享一些創(chuàng)作歷程。
GitHub地址:https://github.com/Elliottssu/insight
Demo地址:http://insight.charmculture.com
Insight是一個(gè)可以管理企業(yè)微信群機(jī)器人的小工具收捣,在這里添加一個(gè)機(jī)器人webhook地址届案,然后發(fā)布即時(shí)消息和定時(shí)消息,消息就會(huì)發(fā)送到企業(yè)微信中機(jī)器人所在的群里罢艾。
它具有下面幾個(gè)特色:
- 一鍵發(fā)布消息楣颠,支持@所有人、指定人昆婿,方便快捷球碉。
- 強(qiáng)大的定時(shí)功能,可以每天執(zhí)行并且智能跳過(guò)節(jié)假日仓蛆,徹底解放雙手睁冬。
- 簡(jiǎn)約的排版,科幻的風(fēng)格看疙,3分鐘內(nèi)輕松上手豆拨。
- 貼心的自定義套件,拓展代碼實(shí)現(xiàn)自定義文本內(nèi)容能庆。
- 完備的權(quán)限控制施禾,保證機(jī)器人運(yùn)行安全無(wú)憂。
- 支持移動(dòng)端布局搁胆,支持集成到企業(yè)微信控制臺(tái)弥搞。
為什么要做Insight?
Insight是我個(gè)人利用業(yè)余時(shí)間渠旁,大概花了四個(gè)周末完成攀例。已經(jīng)在公司內(nèi)部正常運(yùn)行4個(gè)月了,直到了解到很多周圍其他公司也在用企業(yè)微信顾腊,同時(shí)也有用到企業(yè)微信群機(jī)器人通知消息粤铭。所以決定將insight免費(fèi)開源,給更多公司使用杂靶,幫助使用企業(yè)微信群機(jī)器人梆惯,但有沒有開發(fā)相應(yīng)工具的人使用。
19年12月24日吗垮,企業(yè)微信3.0發(fā)布會(huì)中說(shuō)現(xiàn)在已經(jīng)接入250萬(wàn)家企業(yè)垛吗,6千萬(wàn)活躍用戶,立下了一個(gè)3-5年內(nèi)抱既,99%的企業(yè)都會(huì)使用企業(yè)微信的大目標(biāo)职烧。這個(gè)成績(jī)確實(shí)很棒,也看到企業(yè)微信生態(tài)越到越大防泵。這也堅(jiān)定了將此工具開源出去的信念蚀之,它雖然是一個(gè)其中很小的一個(gè)工具,但可以縮短消息傳遞的成本捷泞,提升溝通和工作效率足删,那么多企業(yè)一定有和我們有一樣的需求,是的锁右,你值得擁有失受。
看似很簡(jiǎn)單的工具,確往往是提升生產(chǎn)效率的關(guān)鍵咏瑟!
背景
企業(yè)SaaS軟件中拂到,IM聊天溝通軟件是最高頻使用的,我們每天處理很多個(gè)群里的消息码泞,有時(shí)候會(huì)忘記一些重要的事情兄旬,或者每天想固定的時(shí)間了解一些信息,所以需要手動(dòng)去記憶和通知余寥。使用企業(yè)微信的人應(yīng)該知道领铐,之前可以調(diào)用復(fù)雜的SDK,來(lái)完成自動(dòng)的消息推送宋舷。但對(duì)于非開發(fā)者绪撵,操作不是很友好。
在企業(yè)微信沒有更新機(jī)器人之前祝蝠,我們團(tuán)隊(duì)在群里會(huì)經(jīng)常忘記某些音诈,比如每個(gè)周五提醒寫周報(bào),每周提醒值日绎狭、技術(shù)分享细溅、監(jiān)控日志、發(fā)布計(jì)劃等等坟岔,這種操作非常頻繁谒兄,又容易忘記,經(jīng)常會(huì)分散一些精力社付。
2019年7月承疲,企業(yè)微信更新了機(jī)器人,這個(gè)正是我想要的鸥咖,只需要?jiǎng)?chuàng)建一個(gè)機(jī)器人燕鸽,然后對(duì)著機(jī)器人地址,發(fā)送一個(gè)請(qǐng)求啼辣,然后消息就通過(guò)機(jī)器人發(fā)到群里了啊研。然后我就立刻用代碼寫了幾個(gè)小的定時(shí)任務(wù),來(lái)代替手動(dòng)的、固定的消息推送党远。立馬省心多了
2019年8月削解,在機(jī)器人慢慢被周圍同事接觸后,發(fā)現(xiàn)對(duì)于非開發(fā)人員沟娱,想要用機(jī)器人比較困難氛驮,因?yàn)橐脵C(jī)器人完成發(fā)布消息,發(fā)布定時(shí)任務(wù)济似,@人需要代碼實(shí)現(xiàn)矫废。所以我就開始打算在業(yè)余時(shí)間做一個(gè)小工具供內(nèi)部使用。
2019年9月砰蠢,工具開發(fā)完成蓖扑,公司內(nèi)部開始使用這個(gè)小工具,來(lái)發(fā)布消息和定時(shí)消息台舱,將規(guī)范化律杠、統(tǒng)一化的消息內(nèi)容,都通過(guò)這個(gè)工具來(lái)完成柿赊,極大的解放生產(chǎn)力俩功,從而更好的將注意力集中在更關(guān)鍵的消息上。
目標(biāo)
在完成這個(gè)工具過(guò)程中碰声,雖然是業(yè)余時(shí)間想的一個(gè)工具诡蜓,但還是在思考如何把它做的好看又中用。最終目標(biāo)是解放記憶繁瑣重復(fù)的消息胰挑,提升生產(chǎn)力和效率蔓罚,讓人專注更重要事情上。這就需要在功能實(shí)際上盡量考慮充分瞻颂,同時(shí)在設(shè)計(jì)風(fēng)格上盡量保持簡(jiǎn)約豺谈,容易上手。
設(shè)計(jì)
現(xiàn)在就來(lái)聊一聊設(shè)計(jì)靈感把贡这。
先說(shuō)說(shuō)名字“insight”茬末,這個(gè)靈感洞察號(hào),18年底發(fā)射火星探測(cè)機(jī)器人盖矫,負(fù)責(zé)探測(cè)火星內(nèi)部結(jié)構(gòu)探索46億年前行星形成的原因丽惭。好吧說(shuō)了么多有啥關(guān)系?其實(shí)沒啥關(guān)系辈双,就是都是機(jī)器人哈哈责掏。所以就在登錄頁(yè)面,做了一個(gè)會(huì)旋轉(zhuǎn)的火星湃望。
然后說(shuō)說(shuō)“科幻”换衬,有人會(huì)說(shuō)痰驱,你這頁(yè)面和科幻沒啥關(guān)系呀,除了會(huì)轉(zhuǎn)的火星和暗黑主題稍微有點(diǎn)神秘感...
其實(shí)最開始的設(shè)計(jì)風(fēng)格很“賽博朋克”瞳浦,當(dāng)時(shí)賽博朋克2077游戲很火担映,我用了一個(gè)UI庫(kù)來(lái)讓整個(gè)頁(yè)面充滿那種后現(xiàn)代風(fēng)格(會(huì)顫抖的圖片、炫酷的按鈕术幔、奇怪的表單)另萤,但是后來(lái)別人看了說(shuō)不合適太前衛(wèi)湃密,就全部刪了诅挑,替換成暗黑風(fēng)格,然后頁(yè)面加了很多宇航員泛源、星星點(diǎn)綴拔妥,感覺很科幻。后來(lái)別人又說(shuō)搞這么花哨达箍,我覺得也是没龙。最后就把頁(yè)面無(wú)關(guān)元素全部刪除了,只保留登錄頁(yè)面的火星了缎玫。其實(shí)這樣也挺好硬纤,簡(jiǎn)單點(diǎn),看著舒服赃磨。
不過(guò)我還是覺得它很科幻筝家,工具嘛不一定要不管好看,也不用好看過(guò)度邻辉,最重要的是表達(dá)了某種思想溪王,對(duì)吧,看值骇,機(jī)器人莹菱,會(huì)自己動(dòng),很科幻(強(qiáng)烈說(shuō)服我自己)吱瘩。
技術(shù)
我工作是一名前端開發(fā)工程師道伟,所以技術(shù)也是普遍通用的React+Nodejs,上手也方便使碾。如果你之前對(duì)此框架不熟悉蜜徽,打算在此基礎(chǔ)上開發(fā),可以查看github地址部逮,找到“技術(shù)椖戎”查看學(xué)習(xí)路線,這里就不打算詳細(xì)介紹了兄朋。
當(dāng)然程序也有可能會(huì)有BUG掐禁,在項(xiàng)目首頁(yè)能看到社區(qū)和交流群怜械,我會(huì)在那里面,有任何問(wèn)題隨時(shí)溝通傅事。
功能
在你在企業(yè)微信中創(chuàng)建一個(gè)機(jī)器人后缕允,會(huì)有一個(gè)文檔群機(jī)器人配置說(shuō)明。你可以發(fā)現(xiàn)可以利用這個(gè)機(jī)器人發(fā)送四種類型的消息:文本蹭越、markdown障本、圖片、圖文响鹃。
Insight的核心功能就是發(fā)送這四種類型的消息驾霜,然后加上@提醒相關(guān)人。
同時(shí)為了可以讓消息定時(shí)執(zhí)行买置,可以通過(guò)定時(shí)器選擇要重復(fù)發(fā)送的周期粪糙,這個(gè)是官方文檔沒有的功能,做這個(gè)功能也是很有必要的忿项,這樣就可以滿足一些需要定時(shí)執(zhí)行的需求了蓉冈。
其他的就是對(duì)權(quán)限、任務(wù)轩触、日志還有機(jī)器人的管理了寞酿,更詳細(xì)的操作方法可以閱讀《產(chǎn)品使用文檔》。
常見問(wèn)題
下面列舉了幾個(gè)常見而又非常重要的問(wèn)題脱柱,在使用這個(gè)產(chǎn)品過(guò)程中伐弹,務(wù)必先了解一下,問(wèn)題的答案請(qǐng)點(diǎn)擊常見問(wèn)題褐捻。
- 如何找到我要添加的機(jī)器人掸茅?
- 怎樣將此工具添加到企業(yè)微信控制臺(tái)?
- 智能跳過(guò)節(jié)假日功能柠逞,每年假期不一樣昧狮,該如何更新?
- 怎樣才能成為超級(jí)管理員板壮,權(quán)限分配是怎樣的逗鸣?
- 自定義套件是什么?如何開啟绰精?
- 如何部署撒璧?
...
反饋
我們希望能夠和大家一起討論,改進(jìn)產(chǎn)品笨使、修復(fù)問(wèn)題以及探討技術(shù)卿樱,工具中一定會(huì)有些不足指出,很歡迎大家能夠提出想法硫椰。
您可以訪問(wèn)我們的官方社區(qū)繁调,或者在GitHub Issuse中提出問(wèn)題萨蚕。
結(jié)束
我的故事分享完了,感謝您的閱讀蹄胰,如果您也在使用企業(yè)微信岳遥,并且想在群里通過(guò)機(jī)器人發(fā)送一些消息,又不想寫代碼裕寨,那就試一試Insight的吧浩蓉。
訪問(wèn)GitHub,將代碼克隆到本地宾袜,或者部署到內(nèi)網(wǎng)(非技術(shù)同學(xué)可以讓公司開發(fā)同事幫忙部署捻艳,也可以找我?guī)兔Σ僮鳎纯砷_啟“科幻之旅”试和。
有問(wèn)題可以隨時(shí)聯(lián)系我讯泣。