(BluePrism)ポケモン図鑑を作る ~Part12 プロセスのAPI公開と呼び出し編~
どうも、おむおむです。
大学時代のバイト先の店長から
大量のハイボールが送られてきました。
ステイホーム太りが加速しそう(´ω`)
さて、今回はGASの続き、、、
と思いましたが、その前に大事なことが。
タイトルの通り、作成したプロセスを
APIとして公開します!
プロセスのAPIを公開
まず、これまでで作成したプロセスを
APIとして公開します。
newgraduate19-rpa.hatenablog.com
「システム」→「プロセス」→
「公開」→「プロセスを公開」を選択します。
次の画面では、
APIとして公開するプロセスの名前を選択します。
こういうのは、エンコードで問題が出そうなので
何となく英語の方がいい気がしますね。
そしてオプションについては、
リリースノート以外に記述を見つけられなかったので
詳しい説明は省きます。
知りたい方はBPサポートへ☆(ぶん投げ)
もしくは、ドキュメント読んでね☆(ぶん投げ)
portal.blueprism.com
で、「終了」をクリックして完了です。
WSDLを読んでみる
ご存じの通り、
硬派で勤勉なBlue Prismは、
プロセスを古の技術SOAP APIとして公開します。
APIとしてプロセスを公開すると、
SOAP APIの要である
WSDLを自動的に作成してくれます。
bpdocs.blueprism.com
WSDLは、アプリケーションサーバ.....
ではなく、なぜかランタイムリソースが
エンドポイントになって公開されます。
これはマジで謎仕様です。。。
完全にLAN内でのみのデプロイを想定している気が。。。
今回はGASから起動指示をPOSTするので、
グローバルIPを取ってあげる必要があります。
AWS上にサーバを立ててElastic IPを割り与えようと思いますが、
この辺は今後の記事で書きます。
で、本題に戻ります。
WSDLの確認方法は、ブラウザのアドレスバーに
http://<ホスト名>:<RRのポート番号>/ws/
とアクセスすると見れます。
WSDLが何か、については
これを読めば何となくわかります。
何となくで大丈夫です。
www.atmarkit.co.jp
では実際にPOSTするときに
リクエストのbodyをどうすればよいか、
具体的に調べていきましょう。
SoapUIで調べよう
SOAP APIのテストツールといえば、
やはりSoapUIでしょう。
以下のリンクからダウンロードできます。
www.soapui.org
この記事を書いた日(2020/07/09)の段階では
バージョン5.5.0でした。
インストール、起動したら
New SOAP Projectをクリックします。
次に、テキトーなプロジェクト名をつけて、
「Initial WSDL」には先ほどブラウザに表示されていた
WSDLのURLを入力します。
すると、画面左ペインにWSDLを良い感じに読み取って
階層が表示されます。
そして、右クリックメニューからNew Requestを選択して
テキトーなリクエスト名を付けます。
すると、SOAPメッセージのやり取りに必要な
エンベロープがまるっと自動的に作成されます。
※SOAP Message Envelopeについてはこちら↓
www.atmarkit.co.jp
あとは、Nameの中に
ポケモンの名前を入力してPOSTしたら、
上手いこと動いてくれるはず・・・
と思うじゃん?
レスポンス(右ペイン)のRawを見てみると...
下の方は文字化けして読めませんが、
HTTPステータスコードは401になっている、
ということは認証が必要というわけですね。
この辺上に貼ったドキュメントにも
しっかりと記載されているわけではないんですが、
どうやらBasic認証を使って
Blue Prismのユーザ名とパスワードで認証をする必要があるみたいです。
SoapUIでBasic認証を使用するには、
画面下部の「Auth」を選択して、
「Add New Authorization」を選択して、
「Basic」を選択します。
あとはそれぞれBlue Prismのユーザ名とパスワードを入れます。
この状態で再度実行すると・・・
やったぜ☆
あとは、GASでこれを実行するようなスクリプトを書いていきます!
まとめ
・SoapUIマジ便利☆
・SOAP APIとBasic認証という素敵な()技術!
今日誕生日です!
16進数で表すと18歳になりました☆
永遠の18歳です、ご主人様☆
www3.nhk.or.jp