1. 程式人生 > >免費的午餐——程式設計利用Google日曆API發簡訊、Email

免費的午餐——程式設計利用Google日曆API發簡訊、Email

Google日曆是相當優秀的日程管理工具,可以方便的組織、分享各類日程,Google還提供了貼心而免費的手機簡訊、Email提示功能,真是非常的贊。

此外Google還公開了其API,使得我們可以通過各種語言程式設計訪問。

下面我們就要利用此類庫,及Google日曆的免費簡訊、Email提醒功能,實現程式控制提醒。

準備工作

首先你得有一個Google帳號,並開啟了日曆功能,然後在設定中配置好手機簡訊功能:

image

然後配置你要使用的日曆,設定預設支援的通知方式(一個日曆帳戶下,可以建立或匯入多個日曆,每個日曆的提醒策略都需要單獨配置):

image

這樣就OK了。

通過程式碼新增活動並用短訊息、郵件提醒

首先要按這篇教學文章的指導,安裝類庫,然後在專案中引入相關的DLL:

Google.GData.AccessControl.dll

Google.GData.Extensions.dll

Google.GData.Client.dll

Google.GData.Calendar.dll

然後編寫程式碼:

string calendarURI = "http://www.google.com/calendar/feeds/default/allcalendars/full";

string userName = "[email protected]";

string passWord = "123321";

//建立日曆服務物件

CalendarService service = new CalendarService("CalendarTestApp");

//設定使用者名稱密碼

service.

setUserCredentials(userName, passWord);

//查詢找到賬戶中的名為測試的日曆

var query = new CalendarQuery(calendarURI);

CalendarEntry c = null;

foreach (CalendarEntry f in service.Query(query).Entries)

{

if (f.Title.Text == "測試") c = f;

}

//構建新的活動

var q = new EventEntry("測試活動標題", "測試活動說明"n測試"n測試", "北京市朝陽區中央電視臺總部大樓大褲衩左褲管下

");

q.Times.Add(new When(DateTime.Now.AddMinutes(8), DateTime.Now.AddDays(3)));

//設定提前提醒時間及方式

q.Reminder = new Reminder { Minutes = 7, Method = Reminder.ReminderMethod.all };

//向日歷新增此活動

service.Insert(new Uri(c.Content.AbsoluteUri), q);

執行此段程式碼,即可向一個名為“測試”的日曆中,新增一個帶有全部提醒功能的活動,你將會在1分鐘後收到短訊息、Email提醒。

除此之外,我還簡單封裝了一個輔助類,以簡化整體操作流程,其傳送過程是這樣的:

image

是的,我又使用了神聖的中文來編寫程式碼,我將在文章末尾處提供其原始碼及DLL下載,類非常簡單,如果你不喜歡中文可以自行修改一下命名。

注意,那個1.2分鐘的提前提醒時間,提交後還是會被認為是1分鐘,因為這個引數不支援分鐘以下的單位。

建立的活動及其傳送通知的效果

執行後檢視日曆,活動就被新增進來了:

image

1分鐘過後,來看一下接收到的提醒吧,這是簡訊提醒:

image

簡訊提醒中只包含標題和地點兩個資訊屬性內容,沒有說明部分。

這是電子郵件提醒:

image

想想這能幹些什麼?

新郵件簡訊通知:有些專業郵箱有新郵件簡訊提醒功能,那麼我們只要通過程式定期檢查郵箱,然後將新郵件資訊用此方法提交,就可以實現免費的簡訊提醒功能啦,嘿嘿。(注意設定提醒的時候只設簡訊提醒,別把郵件提醒也弄上了,那Google就被你弄進死迴圈了~)

天氣預報通知:不怕氣象局見雲改口,隨時關注實時天氣動向,比每天一次的固定天氣預報簡訊服務要好。

網 站重要狀況通知:網站管理員都希望網站出現重要事件或異常時能收到郵件通知,而現在還能追加一個簡訊通知,這樣就可以近乎實時瞭解自己網站的狀況啦。不僅 如此,Google的日曆還支援分享,假如有多個管理員的話,就可以通過分享功能共享這一個伺服器狀況日曆,一有突發事件,所有管理員都將收到簡訊和郵件 通知!簡直就是太棒了。(別被DDOS攻擊的時候把移動伺服器也發爆了~Google簡訊賬戶赤字~)

RSS更新通知:讓RSS閱讀器追加上這個功能一定會備受好評哦。

計算機操作監控通知:不在辦公室時有沒有人偷偷開我電腦?弄個自動執行的程式在開機時發出通知就好,可以順道把他開啟什麼程式、讀了什麼檔案也都給記下來,呵呵。

行情走勢變動通知:可以通過程式監測某些易波動的商品報價資訊,在變化時發出通知,股票、外匯、黃金什麼的也適用。“Wroning!胡蘿蔔大跌!油麥菜漲停。”

團隊訊息通知:由軟體輸入併發送訊息,繼而通過日曆共享功能群發簡訊給團隊,省錢的小招:)

遊戲外掛通知:“你被一群牛頭人踩死了!”“GM正在注視著你!”“與伺服器斷開連線!”

Twitter發言通知:用程式關注你的目標MM的Twitter,她一說話你就收到簡訊,然後第一時間回覆她吧,那感情持續++。(使用前請確定目標不會在激動時刷版狂噴)

我想到的就這麼多了,應該還能發掘出很多不錯的點子的,大家一起來想吧。

但是千萬別濫用Google好心提供的這個服務,你被封了不要緊,就怕會影響別人的正常使用。

下載原始碼:









相關推薦

免費午餐——程式設計利用Google日曆API簡訊Email

Google日曆是相當優秀的日程管理工具,可以方便的組織、分享各類日程,Google還提供了貼心而免費的手機簡訊、Email提示功能,真是非常的贊。 此外Google還公開了其API,使得我們可以通過各種語言程式設計訪問。 下面我們就要利用此類庫,及Google日曆的免費

程式設計利用Google日曆API簡訊Email

Google日曆是相當優秀的日程管理工具,可以方便的組織、分享各類日程,Google還提供了貼心而免費的手機簡訊、Email提示功能,真是非常的贊。 此外Google還公開了其API,使得我們可以通過各種語言程式設計訪問。 下面我們就要利用此類庫,及Google日曆的免

利用阿里大於介面簡訊(Delphi版)

 阿里大於是阿里通訊旗下產品,融合了三大運營商的通訊能力,提供包括簡訊、語音、流量直充、私密專線、店鋪手機號等個性化服務。每條四分五,價錢還算公道,經老農測試,響應速度非常快,基本上是秒到。官方文件提供了JAVA、.NET、PHP、Python、C/C++、NodeJS 等語言的 Demo,唯獨沒有 Deph

Android html5 打電話簡訊郵箱等

TextView tv_html = (TextView) findViewById(R.id.tv_html); String str ="Html文字"; tv_html.setText(Htm

OCiOS開發:簡訊郵件打電話及搖一搖實現

簡介 在iOS開發中,可能會用到發簡訊、發郵件、打電話及搖一搖等功能,比如在應用程式的‘關於’介面,我們可能會留下電話號碼或郵箱等聯絡方式,為了方便使用者直接在應用程式中做操作,提升使用者體驗,我們會設計一些互動動作,讓使用者輕鬆的去發簡訊、打電話或發郵件等。

java分組批量執行,簡訊建立Lucene索引(應用場景)

//新聞總數public void method(){ int countNum = LuceneService.getMyLuceneInformationsCount(null); // int count = 100; int groupNum

iOS內嵌WKWebView撥打電話簡訊郵件沒反應

iOS內嵌WKWebView撥打電話沒反應 <a href="tel:13112345678">撥打號碼</a> 內嵌H5的傳送簡訊,打電話,傳送郵件程式碼的處理 實現

iOS開發:APP撥打電話簡訊郵件功能

在iOS開發過程中,經常會用到點選公司簡介的電話號碼,會直接撥打電話;或者點選網址連結發郵件,點擊發簡訊按鈕直接發簡訊等,這些功能雖小,但很實用。 一、撥打電話功能: 通過app撥打電話有三種方式,具體程式碼如下所示: 1.直接跳轉到撥打電話介面,不彈出撥打電話提示框,打完

Swift IOS中的常用操作(開啟網頁簡訊打電話郵件)

// // ViewController.swift // Other // // Created by 顧傑 on 15/11/26. // Copyright © 2015年 GuJie. All rights reserved. // import UIKit <span style="

iOS 打電話簡訊郵箱 跳轉網站 功能(系統方法)

//聯絡人:石虎  QQ: 1224614774暱稱:嗡嘛呢叭咪哄 /** 注意:打電話、發簡訊、發郵箱 、跳轉網站 功能(系統方法)---->要真機才有效果 */ 1.簡單實現效果圖:

利用Google API快速生成QR二維碼

int char 利用 utf return 包含 尺寸 ret pre //laravel public function index(){ $urlToEncode="http://www.baidu.com"; $this ->

利用Google免費GPU跑深度學習模型

還在為電腦沒有很好的GPU而煩惱麼,這個教程教你隨時利用Colab中的Tesla K80顯示卡跑深度學習模型 先從價格上感受下Tesla K80 首先想體驗Colab,必須先學會科學上網,可以利用VPS買國外結點的伺服器,利用Shadowsockes搭梯子,具體教程可以參考其他博主,在此不做贅述。

Google免費午餐

年時孟嚴寫過一篇很有意思的, 其中提到了C++大師的文章,因為CPU主頻的進一步發展受到制約,我們已經不能像從前幾個時代那樣期待軟體效能可以隨著CPU的效能水漲船高,從而,我們將不得不基於有限的CPU主頻來應對日趨複雜的應用,唯一解決之道就是改變我們的程式設計模型,面向多核多CPU甚至多機的硬體架構來實現並行

【教程】教你找到免費Google Translate API(谷歌翻譯介面)+C#版的Google翻譯函式

今日,在想要在C#中,利用google翻譯,實現把中文翻譯為英文。 然後就去找,對應翻譯的url和引數是如何使用的。 參考之前自己的的BlogsToWordpress中的Python版本的crifanLib:crifanLib.py中的translateString,然後去

在linux下利用Google的SMTP來郵件

在維護伺服器的時候,經常需要建立一個伺服器錯誤預警系統,而郵件是一個很好的途徑。 在linux下,一般是通過mail來寫郵件,而傳遞預設使用sendmail服務。這樣雖然能向外界傳送郵件,但郵件不能回覆,並且sendmail服務要求傳送方是系統可識別使用者,配置比較麻煩。

利用npm安裝/刪除/布/更新/撤銷布包 --社會我npm哥,好用話不多

javascrip blog 而且 ros ssa 關於 搜索引擎 兼容 重復 一.什麽是npm? npm是javascript的包管理工具,是前端模塊化下的一個標誌性產物 簡單地地說,就是通過npm下載模塊,復用已有的代碼,提高工作效率 1.從社區的角度:

利用BeEF REST API自動化控制僵屍主機

.... app https uri 應該 啟動 exception 但是 extension 本文已發布於Freebuf,屬於原創獎勵計劃,未經許可禁止轉載。 http://www.freebuf.com/articles/network/137662.html

Google Map Api 谷歌地圖接口整理

服務器 依次 wheel gets 並且 ast utf 整理 實例化 一:基本知識: 1. 使用谷歌地圖 API 的第一步就是要註冊一個 API 密鑰,需要註重一下兩點: 1.假如使用 API 的頁面還沒有發布,只是在本地調試,可以不用密鑰,隨便用個字符串代替就

在雲平臺上基於Go語言+Google圖表API提供二維碼生成應用

encode windows style 曾經 margin inf 64位操作系統 regular ipp 二維碼能夠說已經深深的融入了我們的生活其中。到處可見它的身影;但通常我們都是去掃二維碼,曾經我們分享給朋友一個網址直接把Url發過去,如今我們能夠把自己的信息

基於HTML5的Geolocation獲取地理位置,配合Google Map API反向地址解析(獲取用戶真實地址)

add current 經緯度 cati arr offset 類型 html maps 基於HTML5的Geolocation獲取地理位置,配合Google Map API反向地址解析(獲取用戶真實地址) html 1 <!DOCTYPE html>