皆さまこんにちは。WinActor(Ver.7.1.0)とBluePrism(Ver.6.9.0)の比較5回目「ロボ実行方法の違い」です。
今回は、完成したロボットの実行方法という観点から両者を比較します。
▼前回の記事
現在RPAツールご利用の方、ご検討中の方皆様に参考になれば幸いです。
比較結果は下記のようになります。
ロボットが完成したらいよいよ実行ですよね。
ロボットの実行は、WinActorではWindowsにログインしている状態が必須ですが、Blue PrismはLogin Agent機能を使えばログイン/ログアウトも自動で行えます。
また、Blue Prismでは、空いているリソース(実行端末)を自動で選んで実行できます。
今回のテーマでも両者の違いが顕著にあらわれます。
では、順に実行方法について見ていきましょう。
1.WinActor
まずはWinActorから見ていきます。大別して3つの方法で実行可能です。
①実行ボタンをクリックする
②コマンドライン(コマンドプロンプト等)から実行する
③Windowsのタスクスケジューラ*に登録して、定期的に実行する
タスクスケジューラ:Windowsの標準機能で、決められた時間または一定間隔でプログラムやスクリプトを実行する機能。
1-1.実行ボタンをクリックして実行
手動で実行する一番オーソドックスな方法です。該当のシナリオを開き、実行ボタン(F5)をクリックします。
1-2.コマンドラインで実行
起動オプション*を使用して、読み込むシナリオファイルや投入データ*ファイルを指定して実行します。
起動オプション:Windowsのソフトウェア起動時に、設定を切り替えて実行するための仕組み。
投入データ:データ一覧画面でExcel、CSV*、データベースと連携できます。データ一覧を利用するシナリオでは、投入データ(処理対象のデータ)を自動または手動で取り込んでから実行する必要があります。
csvファイル:カンマ区切りのテキストデータ。拡張子「.csv」
WinActorには、起動ショートカットとvbsファイル*を作成するツールが用意されています。
vbsファイル:VBScript(スクリプト言語)のソースファイル。拡張子「.vbs」。
vbsファイルはプログラムファイルで、ダブルクリックして実行できます。
メニューバー[ツール]⇒[起動ショートカット作成]でツールを呼び出せます。
シナリオにパスワードを設定している、投入データがある等、適宜この「WinActor 起動ショートカット作成」画面で指定して「作成」をクリックします。ショートカットまたはvbsファイルが作れます。
このようにして作成したショートカットやvbsファイルをダブルクリックで実行、コマンドプロント上で実行することもできますし、下記のように直接コマンドを打って実行していただくこともできます。
上記は一例です。WinActor を起動する際に指定できる起動オプションは、上記以外にも複数用意されています。詳細はマニュアルをご覧ください。
1-3.タスクスケジューラから実行
作成したvbsファイルをタスクスケジューラに登録することで、シナリオをスケジュール実行することができます。
2.Blue Prism
続いてBlue Prismを見ていきましょう。
WinActorの「実行ボタンをクリックして実行」に近いものとしてプロセス スタジオからの実行がありますが、Blue Prismでは これは開発/テスト時のみ利用し、本稼働環境下では使用しません。
Blue Prismの本番環境での実行方法は、下記4つとなります。
①コントロールルームから実行する
②コマンドライン(コマンドプロンプト等)から実行する
③スケジューラを利用して実行する
④Web Serviceとして公開し外部から実行する
2-1.コントロールルームから実行
■プロセスの公開
コントロールルームから実行可能にするためには、完成したプロセスを公開する必要があります。
(未完成プロセスが誤って実行されないよう、安全措置が取られています)
■コントロールルームから実行
公開後のプロセスは、コントロールルームから見ることができます。
実行したいリソースにプロセスを割り当て(ドラッグ&ドロップ)、「選択したセッションを開始」をクリックすると実行できます。
このとき、「プール機能」を用いると負荷分散が可能となります。
プール機能では、複数のランタイムリソース*を束ねられます。予めプールを設定しておき、実行したいプロセスをプールへ割り当てると、「アイドル」状態のランタイムリソースにリクエストが自動的に振り分けられます。
ランタイムリソース:Blue Prismをインストールした物理マシン(または仮想マシン)。Blue Prismの実行環境のこと。
同一物理マシン(または仮想マシン)上に、ランタイムリソースは 同時に複数 起動できます。
下記の要領でプールを設定し、コントロールルームで実行したいプールにプロセスを割り当て(ドラッグ&ドロップ)、実行します。
2個のプロセスを順に「管理部」プールに割り当て実行すると、下記のように1個ずつ自動的にランタイムリソースに割り当てられました。
💡≪参考記事≫Enterprise Blue Ocean💡
Blue Prism のプール機能を用いると負荷分散が可能です
【参考情報】オブジェクトの実行モードには「排他的」「フォアグラウンド」「バックグラウンド」の3種類があります。
「フォアグラウンド」「バックグラウンド」のオブジェクトのみを利用したプロセスの場合、実行モードの組み合わせによっては、1つのランタイムリソースで複数セッションの実行が可能となります。
オブジェクト/プロセス設計時にこの点も十分に考慮して作成すると、ロボの稼働率を上げることができます。
2-2.コマンドラインで実行
AutomateC.exeというプログラムを使ってプロセスを実行できます(ランタイムリソースが起動している必要があります)。
■ランタイムリソースの起動
ランタイムリソースを起動するときは、Automate.exeというプログラムを使います。下記はポート8182番での起動例です。
■コマンドラインで実行
AutomateC.exeというプログラムを使ってプロセスを実行します。ここでもプール機能を使った負荷分散が可能です。
プール「管理部」を指定して実行すると、今回はポート8183で実行されました。
ここで注意していただきたいのが、「/user <ユーザ名> <パスワード>」と指定する部分です。(上の画像では読めないよう消しています。)
「/sso」オプション使用時(シングルサインオン*)以外は 平文で記載しなければならず、セキュリティ上 好ましくありません。
対策としては、コマンドライン実行専用のユーザアカウントを準備し、このユーザをコマンドライン実行用に公開するのがお勧めです。
2-3.スケジュール実行
続いてスケジュール実行する方法を見ていきましょう。
■Blue Prism Serverサービス、ランタイムリソースの起動
スケジュール実行時は、ランタイムリソースだけでなく、Blue Prism Serverサービスも起動している必要があります。
■スケジュール実行
スケジューラを使って設定します。ここでもプール機能が利用できます。
スケジュール、タスクを作成し、リソースを指定します。
下記は、プール「管理部」を指定した例です。
コントロールルームでスケジュールが登録されていることが確認できます。
時間になると、スケジュール実行されました。
2-4.Web Serviceとして公開し外部から実行
Blue PrismのプロセスはWeb Services APIとして呼び出せます。
つまり、ランタイムリソースに対してHTTPで指示を送ることができます。
(前提としてBlue Prism Serverサービス、ランタイムリソースが起動している必要があります。)
まず、 プロセスを公開します。
公開したプロセスの WSDL* は、下記の要領で確認できます。(下記はランタイムリソース ポート:8182の例)
WSDL(Web Services Description Language):ウィズダル。SOAP*によるXML Webサービスのインタフェースを記述するインタフェース記述言語。
SOAP:ソープ。SOAPを利用すると、ウェブサービスを起動してレスポンスを受け取ることができます。HTTPでの通信を行うのに、プロトコルとしてXMLを使って通信します。
このWSDLファイルを取得し、Webサービスクライアントアプリケーションを別途作成すると、ユーザからのアクションをトリガーとして実行する リアルタイム実行が可能になります。
Blue Prism社から、Web API(SOAP/WSDL)をインターフェースとしたリアルタイム起動方式のサンプル実装が提供されています。
2-5.Login Agentについて
ランタイムリソース上でプロセスを実行するには、Windowsにログインし、ロックされていない状態でなければなりません。
Login Agentは これを実現させるため、Windowsマシンのログインプロセスを自動化するものです。
つまり、PCに電源が入っている状態からWindowsにログインし、Blue Prismランタイムリソースを起動し、プロセスが実行可能状態になるまでの 一連の過程を自動化できる機能となります。
2-6.シングルサインオン(SSO)について
シングルサインオン(SSO)とは、1回の認証で複数のシステムに認証できる機能のことです。
Blue PrismとActive Directoryを統合してSSOを有効にすることで、ログインプロセスをシンプルに、また 既存のネットワークセキュリティポリシーと整合性のとれたユーザアクセス制御も実現できます。
今回は、ロボの実行方法に焦点をあてた比較を行いました。
次回は、初期設定、環境構築作業について比較します。
最後までお読みいただきありがとうございました。
また次回をお楽しみに!
▼次回