サイトアイコン 国産RPAツール「JobAuto」のマニュアルサイト「Robo Technical」 です

【ROBOWEB】APIによるスケジュール即時実行機能

RoboWebへ登録したスケジュールをAPIで実行することができます。

1.ROBOWEBの起動を確認

APIを投げるまえにRoboServerが起動していることを確認しておきましょう。
※ブラウザでRoboWebが開けばOKです

2.概要

APIの投げる先のURLは以下です。
url = u’http://localhost:8080/api/run_schedule’
RoboWebからもどすメッセージは「success」か「error」です。

「localhost」の部分はRoboServerが起動しているPCのIPアドレスを設定してください。
たとえばPCのIPアドレスが「192.168.100.1」であれば、URLは「http://192.168.100.1:8080/api/run_schedule」です。

0.10.14から引数を渡して実行できるようになりました。
その場合、APIで即時実行するスケジュールには1つのロボットだけしか設定できないです。

3.以下サンプルとなります。

登録したスケジュールを実行し、RoboWebからもどってきたメッセージを表示しています。

3-1.APIの投げ先のURLを指定

url = http://localhost:8080/api/run_schedule

3-2.APIで投げる内容を作成

data={
‘username’: u’ユーザー名’,
‘password’: u’パスワード’,
‘project_name’: u’テスト’,
‘schedule_name’: u’サンプルスケ’,
}

headers = {“content-type”: “application/json”}

#APIを投げてもどりをうけとる
res=requests.post(url=url, headers=headers, json=data)

#エンコード
js = json.loads(res.text)
#もどってきたメッセージを表示
print js[‘status’],js[‘message’]

※対象のスケジュールが実行中だった場合は、エラーが返ってきます。0.10.13からスケジュールが実行中だったのでエラーになった場合は、そのようなメッセージが返ります

3-3.コマンドで実行

windowsのコマンドで実行することもできます。以下のようなコマンドを作り、バッチファイルへ保存、スタートメニューへ登録し、PCへログインしたときに自動実行される、という使い方もできます。

curl -X POST http://localhost:8080/api/run_schedule ^
  -H "Content-Type: application/json" ^
  -d "{\"username\":\"ユーザー名\",\"password\":\"パスワード\",\"project_name\":\"サンプル\",\"schedule_name\":\"API\"}"

3-4.コマンドで実行(引数付き)

以下のようなJsonファイルを作成して保存してください。
body.json
{
"username": "admin",
"password": "admin",
"project_name": "サンプル",
"schedule_name": "テスト",
"parameters": "引数1=こんにちは\n引数2=世界"
}

以下のようなコマンドを作り、バッチファイルへ保存して実行します。
body.jsonファイルはCドライブの中のtempフォルダへ保存しました。

cd C:\temp

curl -X POST http://localhost:8080/api/run_schedule ^
-H "Content-Type: application/json" ^
-d "@body.json"
モバイルバージョンを終了