【バッチファイル】LINEへメッセージを送信する【文字化けしない】

バッチファイルから
 ・LINEへメッセージを送信
できます!

この記事では
 ・「グループ」へメッセージを送信する方法
を記載します。

コード自体は
非常にシンプルです!

ただ「準備」が少し面倒かもです…。
※少しだけです。

文字化けを防止するため
 ・VBScriptファイルを使用して実現
します。
※バッチファイルの中でVBScriptファイルを作成し実行します。
※Curlコマンドでやると文字化けしてしまうため。
※ただ「ではVBScriptのみでやれば良くない?」という話にはなりますが…。

準備

以下の記事の準備①~⑥を実施して「トークン」を発行します。

前提

VBScriptファイルを使用してLINEへメッセージを送信するために、コード内で以下の3つを実施します。

コード内で実施すること
  • VBScriptファイル作成
    ・LINEへメッセージを送信する処理を記載したファイルを作成します。

  • VBScriptファイル実行
    ・VBScriptファイルを実行します。

  • VBScriptファイル削除
    VBScriptファイルを削除します。

コード

@echo off

rem 発行したトークンを指定
set token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

rem Webサイト「LINE Notify」のURLを設定
set url=https://notify-api.line.me/api/notify

rem LINEへ送信するメッセージを指定
set messege=バッチファイル(VBScript)から送信しました。

rem VBScriptファイルのパスを指定
set vbsFile=C:\Users\user\Desktop\line.vbs

rem 既にVBScriptファイルが存在したら削除
if exist "%vbsFile%" (
	del /f "%vbsFile%"
)

rem VBScriptファイル作成
echo With CreateObject("MSXML2.XMLHTTP") >> "%vbsFile%"
echo .Open "POST", "%url%", False >> "%vbsFile%"
echo .setRequestHeader "Authorization", "Bearer %token%" >> "%vbsFile%"
echo .setRequestHeader "Content-Type", "application/x-www-form-urlencoded" >> "%vbsFile%"
echo .Send "message=%messege% ">> "%vbsFile%"
echo end With >> "%vbsFile%"

rem VBScriptファイル実行
"%vbsFile%"

rem VBScriptファイル削除
del /f "%vbsFile%"

echo.バッチファイルから(VBScriptファイルを使用して)LINEへメッセージを送信しました。

echo.
echo.
pause
exit

「トークン」を設定します(4行目)。
※「準備」で発行した「トークン」を指定してください。
※上記では仮で「XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX」としています。

「LINE NotifyのURL」を設定します(6行目)。

送信するメッセージを設定します(9行目)。
※送信したいメッセージを指定してください。
※日本語でも良いです。文字化けしません。

既に「VBScriptファイル」が存在したら削除します(15~17行目)。

「VBScriptファイル」を
 ・作成(20~25行目)。
 ・実行(28行目)。
 ・削除(31行目)
します。


上記で作成される「VBScriptファイル」は以下です。

With CreateObject("MSXML2.XMLHTTP") 
.Open "POST", "https://notify-api.line.me/api/notify", False 
.setRequestHeader "Authorization", "Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" 
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 
.Send "message=バッチファイル(VBScript)から送信しました。 "
end With 

実行結果

LINEへメッセージを送信できました。
※グループへ追加した「LINE Notify」からメッセージが届きます。

実行結果①
実行結果①
実行結果②
実行結果②

参考①

VBAでもLINEへメッセージを送信できます。

詳細は以下の記事をご確認ください。

参考②

PowerShellでもLINEへメッセージを送信できます。

タイトルとURLをコピーしました