原來實現釘釘自動簽到如此簡單,天天準時上下班不是夢

本文主要介紹瞭如何利用現成軟件快速實現釘釘自動簽到功能,核心思路很是簡單,甚至無任何編程基礎的小白也能輕鬆實現定時自動打卡功能.html

經過本節課程,你將學習到如下內容:linux

  • 怎麼開啓釘釘極速打卡功能;
  • 如何喚醒手機中的知名軟件;
  • 如何本身給本身發推送提醒;
  • 怎麼運行24h不間判定時程序.

大綱

dingtalk-reminder-simple-mind-map.png

前言

關鍵詞git

+ 提醒鬧鐘
+ 極速打卡
複製代碼

現在釘釘早已經成爲全國性的 app,不只正在工做中的上班族離不開就連小學生也不逃不開被操控的宿命,不得不說釘釘真的是讓人又愛又恨!github

例如: 功能很是簡單也是使用頻率至關高的打卡簽到功能就讓我忍不住吐槽,提醒方式只有兩種並且仍是單選,要麼設置鬧鐘要麼設置極速打卡!編程

固然還有第三種方式: 你也能夠選擇關閉提醒,呵呵.api

dingtalk-reminder-setting-preview.png

因此最簡單操做流程以下:瀏覽器

dingtalk-reminder-before-flow.png

上述流程中讓我以爲不爽的是每次除了打開 app 響應時間過長以外,還有就是每次打卡都要本身內心盤算着打卡時間,浪費了爲數很少的腦細胞.bash

所以須要一種更加傻瓜式操做流程來解放大腦,最好能實現自動打卡或者去掉打卡功能也能夠,讓我沉浸在工做的海洋中吧!服務器

效果

上下班時間定時推送打卡通知,點擊確認後自動完成打卡操做,省心省力不用記憶打卡時間,交給程序處理吧!markdown

dingtalk-reminder-dingtalk-preview.gif

原理

關鍵詞

+ 極速打卡
+ URL Scheme
+ 定時喚醒
複製代碼

因爲釘釘簽到打卡只有兩種快捷方式可供選擇,相比於提醒鬧鐘我的更偏心極速打卡方式,所以開啓極速打卡功能後,只要在打卡時間段內打開 app 就會自動打卡,因此只要簡化某些流程就能實現傻瓜式打卡簽到.

在衆多喚醒手機中知名 app 的解決方案中有一種比較簡單的方式,那就是 URL Scheme 方案.

自定義 URL Scheme 協議

經常使用的URL Scheme

URL Scheme 是一種頁面跳轉協議,相似於網頁中的 url 連接,經常使用於 h5 網站引流到 app 應用的跳轉訪問,不一樣於普通 urlhttp/https 協議,URL Scheme 通常由 app 自定義協議頭,例如 dingtalk .

例如: 釘釘的跳轉協議是 dingtalk://具體什麼內容由釘釘自主規定 ,若是是普通的 url 連接用戶點擊就會跳轉到指定網頁,而 URL Scheme 連接點擊後就會跳轉到相應的 app 界面.

因此只要在瀏覽器中訪問到相似於 dingtalk://snowdreams1006.tech/ 這樣的連接就能實現自動跳轉到釘釘 app 中,既然已經解決了如何打開 app 的問題,那麼接下來的事情就是何時訪問連接的問題了.

不知疲倦的crontab定時程序

Linux crontab 命令

對於編程開發者來講,實現定時程序的最簡單方式之一當屬於 crontab 命令了,屬於 linux 環境的基本命令之一,可用來執行定時程序,相似於平常生活中的日程表的功能.

# 早上 8 點半和下午 5 點半運行 dingtalk.sh 腳本文件並將運行結果寫入到 dingtalk.log 文件
30 08,17 * * * sudo ~/reminder/dingtalk.sh >> ~/reminder/dingtalk.log
複製代碼

如今搞定了定時運行腳本程序的問題,接下來的事情就比較簡單了,在 24h 不間斷運行的服務器上須要定時執行什麼命令才能實現用戶實現訪問到自定義連接呢?

狗吠狼吼bark給本身推送通知

Bark is an iOS App which allows you to push customed notifications to your iPhone : github.com/Finb/Bark

很顯然,咱們須要一款推送服務,服務器定時下發推送通知給註冊手機用戶,由用戶主動點擊確認後跳轉到自定義協議網頁,緊接着就會觸發釘釘 app 的喚醒操做,從而實現自動打卡功能.

正常來講,手機上的 app 應用絕大多數都具有推送功能,然而推送內容都是由 app 自主控制,用戶只能選擇開啓或關閉通知功能,並不能決定通知內容,而 bark 倒是一款本身給本身發推送通知的軟件,簡單且開源.

# 點擊推送將跳轉到url的地址(發送時,URL參數須要編碼)
https://api.day.app/yourkey/百度網址?url=https://www.baidu.com 
複製代碼

dingtalk-reminder-bark-preview.png

只要訪問指定連接就能發送推送通知給用戶手機,進而用戶主動點擊通知就能跳轉到指定網頁,從而實現喚醒釘釘 app 的目的.

# bark 客戶端和服務器均開源,能夠獨立部署也可使用默認服務.
https://api.day.app/yourkey/釘釘打卡提醒/帶我去極速打卡?url=dingtalk://snowdreams1006.tech
複製代碼

命令行curl網絡請求神器

curl 的用法指南

如今已經構造出推送通知請求連接,只須要訪問該連接就能完成推送通知,由用戶直接操做的話能夠複製到瀏覽器直接回車,可是若是要用程序運行的話就須要使用腳本命令 curl 神器.

curl -i -X GET \
 "https://api.day.app/yourkey/%E9%92%89%E9%92%89%E6%89%93%E5%8D%A1%E6%8F%90%E9%86%92/%E5%B8%A6%E6%88%91%E5%8E%BB%E6%9E%81%E9%80%9F%E6%89%93%E5%8D%A1?url=dingtalk://snowdreams1006.tech"
複製代碼

dingtalk-reminder-bark-push.png

如今總算實現了定時推送通知打開釘釘 app 實現自動簽到的功能,其實整個流程並不複雜,解決的是釘釘 app 並無提供定時自動簽到的功能這一問題.

總結

關鍵詞

+ 前提條件
+ 核心重點
+ 實現步驟
+ 主要技術
+ 感謝支持
複製代碼

本文的主要目的是解決釘釘上下班簽到打卡問題,提醒鬧鐘和極速打開只能兩者選其一,而且也沒有定時自動簽到功能,因此本文的解決思路是利用 URL Scheme 定時喚醒 app,而後藉助極速打卡實現自動簽到功能.

前提條件

  • 支持固定上下班時間且開啓極速打卡功能

只有固定上下班時間才支持極速打卡功能,不然喚醒 app 後仍是須要手動打卡豈不是畫蛇添足?

  • 擁有至少一臺 24h 不間斷運行的服務器

用於提供定時推送服務,若是有其餘手段完成定時訪問喚醒連接的任務也能夠不須要服務器.

  • 下載並註冊 bark 軟件或者其餘相似軟件

用於接收推送通知,點擊推送通知內容確認後進而自動完成簽到打卡操做,省去了勞心費神的記憶時間.

核心重點

瀏覽器打開相似於 dingtalk://snowdreams1006.tech/ 這樣的帶有 dingtalk:// 協議的自定義連接便可實現打開釘釘 app 操做.

實現步驟

crontab 定時推送喚醒連接到註冊手機,用戶點擊推送通知確認後自動打開釘釘 app 進行極速簽到,從而變相實現了自動簽到的目的.

因爲不須要內心暗自計算上下班時間,只須要接收到推送後手動點擊進行簽到確認,因此大大節省了很多腦細胞,剩下的時間又能夠愉快敲代碼了!

dingtalk-reminder-after-flow.png

主要技術

  • 高度自定義的網頁跳轉協議 : dingtalk
  • 不知疲倦的定時任務命令: crontab
  • 命令行下的網絡請求命令: curl
  • 本身給本身發推送通知軟件: bark

感謝支持

若是本文對你有所幫助,歡迎點贊留言告訴我一聲,你的支持和鼓勵將會是我繼續創做的動力!

雪之夢技術驛站
相關文章
相關標籤/搜索