blog遅れてきたNotesエンジニアがクラウド活用について思いを巡らすブログこの広告は、90日以上更新していないブログに表示しています。前回は、WinSCPを使って統合サーバーにFTP接続するまでをみてきました。それでは、接続と転送処理の部分を自動化していきましょう。自動化、といってもそれほどたいしたことを実装していくわけではありません。要は、WinSCP経由でファイルをFTP転送する操作をバッチファイル化できればいいという考え方です。すれば、そのバッチファイルをWindowsのタスクスケジューラや、Notesのエージェントから定期的にキックすれば自動的にファイルを転送することが可能になります。本当の意味で自動化するには、この前段として、Dominoディレクトリや人事システムからユーザー情報を受け取り、統合サーバーが読み取れる形式でCSVファイル化し、FTP接続用のマシン上に配置する処理が必要になります。この方法は皆さんの環境によってさまざまでしょうから、割愛します。注意点としては、CSVのファイル名です。毎回同じファイル名ではだめで、シーケンス番号を更新していかなければいけません。エージェントの中でUNIX日付をファイル名に付与するか、カウンター文書などを駆使して連番で出力されるようにするか、このあたりはプログラム開発に詳しい方の方でがんばって作成してください。AdministratorやDJX管理ツールを使った従来の登録)が先に行われている前提となりますので、こちらも注意してください。バッチファイルでWinSCPを操作するコマンドベースでの使い方の詳細はWinSCPのサイトに記載されていますが、まず以下のような内容のバッチファイルを作成しました。C:\LLIS\csv\oldまずポータブル版WinSCPの配置先にカレントディレクトリを移動し、winscp.exeを引数付きで実行します。この時、引数で指定したテキストファイル「C:\LLIS\FTPSend.txt」の方にもう少し細かく転送処理を書きます。これについては後ほど見ていきます。最後に転送済のCSVファイルをOLDフォルダに移動させて終了です。CSVファイルをサブフォルダに移すかというと、統合サーバーのCSVファイル名の命名規則に関係してきます。先ほども触れたように、ファイル名は連番で変えていかないといけないので、FTP転送スクリプトの中でファイル名を固定で指定するわけにはいきません。しょうがないので、FTP転送スクリプト上は「*.csv」というように、ワイルドカード指定してファイルを転送します。このため、転送済のファイルは別のフォルダに移しておかないと毎回転送することになってしまいます。最後にMoveコマンドを入れているのです。参考までに、検証で使った環境でのファイル配置イメージは以下の通りです。C:\LLIS直下にスクリプトファイルを置き、その中にCSVフォルダを置きます。CSVフォルダの中は以下のような感じです。未実行のCSVファイルが直下に、実行済みのファイルが「old」フォルダに入っているというわけです。CSVファイルを作成・配置するエージェントはここに、毎回違うファイル名でCSVファイルを配置してくる、という前提になります。次に、先ほどのバッチファイルで引数に指定したファイルの中身を見ていきましょう。C:\LLIS\csv\*.csvcloseexit最初の2行は、バッチ処理用のおまじないです。3行目は、前回の記事で作成したプロファイルをもとに、統合サーバーとFTP接続を行う記述です。その後、サーバー上で「/」ルートディレクトリに移動し、putコマンドでCSVファイルを配置します。先ほども書いた通り、CSVファイル名が毎回変わるため、「*.csv」の形式でファイル転送を行っています。最後にセッションを切断して終了です。いかがでしょうか、思ったよりシンプルかと思います。試しに実行してみます。このようなウィンドウが立ち上がり、数秒で処理が終了します。試しにWinSCPで統合サーバーに接続してみます。統合サーバー側(右側)に、転送したファイルがあります。この状態で15分程度待つと、自動的にファイルがサーバー側で処理されます。前回も書いた通り、配置したCSVファイルは、エラーになると「_error」に、うまくいくと「_processed」に移動します。「_report」には処理結果の入ったテキストが入ります。今回転送したCSVファイルは、前回の記事に内容を書いたもので、1名ユーザーを新規でプロビジョニングするものでした。Cloudの管理画面から、新規ユーザーが登録されたか見てみましょう。無事登録されています。ちなみに、この環境はハイブリッド環境なので、オンプレミスのDominoディレクトリにもこのユーザーが存在する前提となりますが、そのユーザーのホームメールサーバーの設定もこの時点で書き換わります。以上、手軽に統合サーバーへの転送を自動化する方法について見てきました。実際の運用では、ログファイルをgetしてきて中身をみるとかもできると思いますが、まずはこのぐらいで勘弁していただければと思います。次回は、SCNotes環境で二次アドレス帳を使う方法について見ていきます。Kawakami)このサイトの掲載内容は私個人の見解であり、所属企業や製品ベンダーの立場、戦略、意見を代表するものではありません。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。