powershell chatwork用 2.0系とそれ以上対応
9120 ワード
Chatworkにメッセージ投げる関数
Invoke-WebRequest 使えない2系にも一応対応した。
やっつけでやってる部分も有るので、汚い所はスルーで。
## Chatwork用
$apitoken = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
$roomid = "12345678"
$toAddress = "[To:XXXX] てすとさん"
$chatworkUri = "https://api.chatwork.com/v2/rooms/{0}/messages" -f $roomid
# chatwork通知
function SendChatworkMsg([string] $title, [string] $msg){
# powershell 2.0 対応
if($PSVersionTable.PSVersion.Major -ge 2){
SendChatworkMsg_2 -title $title -msg $msg
return
}
$toAddress = setToMsg
if(![string]::IsNullOrEmpty($toAddress)){
$msg = $toAddress + "`n" + $msg
}
$r = Invoke-WebRequest -Uri $chatworkUri `
-Method POST `
-Body @{"body" = "[info][title]$title[/title]$msg[/info]"} `
-Headers @{"X-ChatWorkToken" = $apitoken}
}
# PS 2.0向け
function SendChatworkMsg_2{
param(
[string] $title, [string] $msg
)
$toAddress = setToMsg
if(![string]::IsNullOrEmpty($toAddress)){
$msg = $toAddress + "`n" + $msg
}
$fields=new-object System.Collections.Specialized.NameValueCollection
$fields.Add("body","[info][title]$title[/title]$msg[/info]")
$wc = new-object System.Net.WebClient
$wc.Headers.Add("X-ChatWorkToken",$apitoken)
Try{
#$wc.UploadValues($chatworkUri, $fields)
$res = $wc.UploadValues($chatworkUri, "POST", $fields)
#Write-Host $res
}
Catch{
throw $_ #rethrow the exception
}
}
function setToMsg{
return $toAddress
}
#TEST
#SendChatworkMsg "TEST" "MSG"
#SendChatworkMsg_2 "TEST" "MSG"
Author And Source
この問題について(powershell chatwork用 2.0系とそれ以上対応), 我々は、より多くの情報をここで見つけました https://qiita.com/nagamoo/items/32b8bacfc2fd37840f03著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .