###### tags: `Line`,`C#`,`IFTTT` # C#-透過IFTTT送訊息到Line ## IFTTT設定 TODO: 設定步驟 到此為止,只要在任何一個可以連網的瀏覽器,輸入 ``` https://maker.ifttt.com/trigger/[事件名稱]/with/key/[金鑰]/?value1=[訊息內文] ``` 就能夠傳訊息到Line了。 ## C#程式設計 程式的目的就是要想辦法送出以上那個URL。 我查過方法有很多種,這裡使用其中一種,已實驗過沒問題。 ```csharp using System.Net; ``` ```csharp string EVENT = "line_msg"; //這是事件名稱,來自IFTTT string KEY = "xxxxxxxxxxxxxxxxxx"; //這是金鑰,來自IFTTT string sMessage = "訊息內文"; string url = "http://maker.ifttt.com/trigger/" + EVENT + "/with/key/" + KEY; var httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.ContentType = "application/json"; httpWebRequest.Method = "POST"; httpWebRequest.Timeout = 3000; httpWebRequest.ReadWriteTimeout = 3000; httpWebRequest.UseDefaultCredentials = true; httpWebRequest.Proxy.Credentials = CredentialCache.DefaultCredentials; using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream())) { string json = "{\"value1\":\"" + sMessage + "\"}"; streamWriter.Write(json); } var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse(); using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) { var result = streamReader.ReadToEnd(); if (result == "Congratulations! You've fired the " + EVENT + " event") { // 到這裡表示成功送出去了! } } ```