クラウドRPA Coopel でBitbucket データにアクセス
CData Connect Server を使ってBitbucket データのOData API エンドポイントを作成し、Coopel からBitbucket データにアクセスする方法。
杉本和也
リードエンジニア
最終更新日:2021-11-15
こんにちは!リードエンジニアの杉本です。
Coopel は DeNA社が提供するクラウドベースのRPAサービスです。WebブラウザやExcel、SaaSなどのクラウドサービスの操作の自動化が実現できます。この記事では、CData Connect Server を経由して Coopel からBitbucket データを取得し活用する方法を説明します。
CData Connect Server は、Bitbucket データのクラウド to クラウドの仮想OData インターフェースを提供し、Coopel からリアルタイムにBitbucket データへ連携することができます。
Bitbucket の仮想OData API エンドポイントを作成
まずCData Connect Server でデータソースへの接続およびOData API エンドポイント作成を行います。
- CData Connect Server にログインして、Databases をクリックします。
- 利用できるデータソースアイコンから"Bitbucket" を選択します。
-
Bitbucket に接続するために必要なプロパティを入力します。
ほとんどのクエリでは、ワークスペースを設定する必要があります。唯一の例外は、Workspacesテーブルです。このテーブルはこのプロパティの設定を必要とせず、クエリを実行すると、Workspaceの設定に使用できるワークスペーススラッグのリストが提供されます。このテーブルにクエリを実行するには、スキーマを'Information'に設定し、SELECT * FROM Workspacesクエリを実行する必要があります。
Schemaを'Information'に設定すると、一般的な情報が表示されます。Bitbucketに接続するには、以下のパラメータを設定してください。
- Schema: ワークスペースのユーザー、リポジトリ、プロジェクトなどの一般的な情報を表示するには、これを'Information'に設定します。それ以外の場合は、クエリを実行するリポジトリまたはプロジェクトのスキーマに設定します。利用可能なスキーマの完全なセットを取得するには、sys_schemasテーブルにクエリを実行してください。
- Workspace: Workspacesテーブルにクエリを実行する場合を除き、必須です。Workspacesテーブルへのクエリにはこのプロパティは必要ありません。そのクエリはWorkspaceの設定に使用できるワークスペーススラッグのリストのみを返すためです。
Bitbucketでの認証
BitbucketはOAuth認証のみをサポートしています。すべてのOAuthフローからこの認証を有効にするには、カスタムOAuthアプリケーションを作成し、AuthSchemeをOAuthに設定する必要があります。
特定の認証ニーズ(デスクトップアプリケーション、Webアプリケーション、ヘッドレスマシン)に必要な接続プロパティについては、ヘルプドキュメントを必ず確認してください。
カスタムOAuthアプリケーションの作成
Bitbucketアカウントから、以下のステップを実行します。
- 設定(歯車アイコン)に移動し、ワークスペース設定を選択します。
- アプリと機能セクションで、OAuthコンシューマーを選択します。
- コンシューマーを追加をクリックします。
- カスタムアプリケーションの名前と説明を入力します。
- コールバックURLを設定します。
- デスクトップアプリケーションとヘッドレスマシンの場合、http://localhost:33333または任意のポート番号を使用します。ここで設定するURIがCallbackURLプロパティになります。
- Webアプリケーションの場合、信頼できるリダイレクトURLにコールバックURLを設定します。このURLは、ユーザーがアプリケーションにアクセスが許可されたことを確認するトークンを持って戻るWebの場所です。
- クライアント認証情報を使用して認証する予定の場合、これはプライベートコンシューマーですを選択する必要があります。ドライバーでは、AuthSchemeをclientに設定する必要があります。
- OAuthアプリケーションに与える権限を選択します。これにより、読み取りおよび書き込みできるデータが決まります。
- 新しいカスタムアプリケーションを保存するには、保存をクリックします。
- アプリケーションが保存された後、それを選択して設定を表示できます。アプリケーションのKeyとSecretが表示されます。これらを将来の使用のために記録してください。Keyを使用してOAuthClientIdを設定し、Secretを使用してOAuthClientSecretを設定します。
-
Test Database をクリックします。
-
Permission -> Add をクリックして、新しいユーザーを追加し、適切な権限を指定します。
-
API タブをクリックして OData API エンドポイントが生成されていることを確認します。
Coopel でシナリオを作成する
CData Connect Server 側の準備が完了したら、早速Coopel側でシナリオの作成を開始します。
- まず、Coopelにログインし、必要に応じて新しいワークスペースを作成します。
- ワークスペースを作成後、CData Connect Server にアクセスするための認証情報をCoopel 上に保存しましょう。「シナリオアカウント設定」→「新規追加」→「その他のサービス」を選択します。
- ここで、CData Connect Server にアクセスするためのUserIDとPasswordを入力し、保存じます。Webサービス名には任意の名称を入力してください。
- 次にメインとなるシナリオを作成します。「シナリオ作成」をクリックし
- 任意の名称を入力します。
Bitbucket のデータを取得する処理を作成
シナリオを作成したらBitbucket のデータを取得する処理の作成を進めましょう。
- CoopelからBitbucket のデータを取得するためには、CData Connect Server を経由します。Coopelでは、ブラウザアクセスと同じような方法でCData Connect Server にアクセスするので、「URLにアクセス」のアクションを使って、データ取得を行います。Coopelのアクション一覧から「URLにアクセス」を配置し、先程検証した以下の「URL」および、「Basic認証アカウント」に指定します。
- 続いて、表示されたデータをCoopel上で扱いやすい形にするためにテーブルデータとして取得を行います。Coopelアクションの一覧から「テーブルデータを取得」を配置し、先程作成した「URLにアクセス」をブラウザへ指定。テーブルの要素として「table」を指定します。
- これで、Coopel上でCData Connect Server 経由で取得したデータを操作する準備が整いました。あとはCoopelの様々なアクションを駆使して、フローを作成していきます。
ファイル出力処理を作成
データを取得する処理が作成できたら、そのデータをExcel ファイルに出力してみましょう。
- 最初に「ファイルの新規作成」アクションを使って、Excel ファイルを作成します。任意の名称でファイル名とシート名を指定してください。
- 次に「シートをシート名で指定」のアクションを配置して、先程作成したExcelファイルのシートを参照します。
- シートを開いたら、取得したデータを「セルにペースト」アクションで貼り付けます。事前に作成した「対象シート」と、CData Connect Server から取得した「テーブルデータ」を指定します。書き込み対象セルは一番左上のセルから入力するので「A1」を指定しました。
- 最後に作成したExcelファイルを「ファイルを保存する」アクションで保存します。以上ですべてのシナリオが完成しました。
実行
それでは完成したシナリオを実行してみましょう。
- Coopelでは画面右上の「実行」ボタンでシナリオを試すことができます。正常に実行されると、以下のように「ファイルを保存する」アクションのダイアログに生成されたExcelファイルが表示されます。
- これをダウンロードして、Excelで開いてみると、以下のようにCData Connect Server 経由で取得したデータが入力されていることが確認できます。
このように、CData Connect Server を経由することで、API 側の複雑な仕様を意識せずにBitbucket と連携をしたRPA シナリオをCoopel で作成できます。他にも多くのデータソースに対応するCData Connect Server の詳細をこちらからご覧ください。