見出し画像

【Dify × Google Workspace】 カスタムノードを開発しました🔥

はじめに

Difyは、ノーコードでAIアプリを開発できるプラットフォームです。直感的な操作で、誰でも簡単にAIの力を活用した業務効率化を実現できます。

しかし、GoogleスプレッドシートをはじめとするGoogle Workspaceとの連携はデフォルトでは用意されていません。
そこで我々は、今回新たにGoogle Workspaceと連携できるカスタムノードを開発しました。

開発したカスタムノードについて

Google Workspaceとの連携を可能にするカスタムノードをこちらで販売しております。

パッケージに含まれるもの

  • カスタムノードのソースコード

  • カスタムノードの使い方マニュアル

  • 実装サンプル(下記画像のyamlファイル)

カスタムノードを用いたワークフローの紹介

サンプル1: スプレッドシート内の企業リストから企業情報を要約してGoogleドキュメントに書き出す

サンプル2: Googleカレンダーに登録されている今日の予定を自分にメールで送る

実装されているノードのご紹介

1. Googleスプレッドシート

  • sheets.get
    スプレッドシート全体の情報を取得する

  • sheets.create
    スプレッドシートを作成する

  • sheets.batchUpdate
    スプレッドシート全体の設定を更新する

  • sheets.copyTo
    スプレッドシートをコピーする

  • sheets.getByDataFilter
    スプレッドシートのデータをフィルターして取得する

  • sheets.values.append
    スプレッドシートの値を追加する

  • sheets.values.get
    スプレッドシートの値を取得する

  • sheets.values.clear
    スプレッドシートの値を削除する

  • sheets.values.update
    スプレッドシートの値を更新する

2. Google ドキュメント

  • documents.get
    ドキュメントの情報を取得する

  • documents.create
    ドキュメントを作成する

  • documents.batchUpdate
    ドキュメントを更新する

3. Google スライド

  • presentations.get
    スライドの情報を取得する

  • presentations.create
    スライドを作成する

  • presentations.batchUpdate
    スライドの情報を更新する

  • presentations.pages.get
    スライドのページを取得する

  • presentations.pages.getThumbnail
    スライドのページをサムネイルで取得する

4. Googleフォーム

  • forms.get
    フォームの情報を取得する

  • forms.create
    フォームを作成する

  • forms.batchUpdate
    フォームを更新する

5. Googleドライブ

  • drive.files.get
    ファイルのメタデータまたはコンテンツをIDで取得します。

  • drive.files.list
    ユーザーのファイルを一覧表示します。

  • drive.files.create
    新しいファイルを作成します。

  • drive.files.update
    ファイルのメタデータやコンテンツを更新します。

  • drive.files.delete
    ファイルを永久に削除します。

  • drive.files.copy
    ファイルのコピーを作成します。

  • drive.files.getPDFText
    PDFファイルのテキストを取得します。Googleの公式には実装されていないカスタムメソッドです。

6. Google カレンダー

  • calendar.calendarList.list
    ユーザーに紐づくカレンダーをリストします。

  • calendar.calendars.get
    カレンダーの情報を取得します。

  • calendar.calendars.insert
    カレンダーを作成します。

  • calendar.calendars.patch
    カレンダーの情報を取得します。

  • calendar.calendars.delete
    カレンダーを削除します。

  • calendar.events.get
    カレンダーのイベントの情報を取得します

  • calendar.events.list
    カレンダーのイベントをリストします

  • calendar.events.patch
    カレンダーのイベントを更新します

  • calendar.events.insert
    カレンダーのイベントを作成します

  • calendar.events.delete
    カレンダーのイベントを削除します

7. Gmailノード

  • gmail.users.messages.get
    メッセージを取得します。

  • gmail.users.messages.list
    メールボックス内のメッセージを一覧表示します。

  • gmail.users.messages.send
    メッセージを送信します。

  • gmail.users.messages.delete
    メッセージを永久に削除します。

  • gmail.users.messages.trash
    メッセージをゴミ箱に移動します。

  • gmail.users.messages.attachments.get
    メッセージの添付ファイルを取得します。

おわりに

今回開発したGoogle Workspaceのカスタムノードについてご紹介しました。ぜひ使ってみたいと思われた方は、ソースコードを取得してトライしてみてください。

株式会社Omlucでは、AI導入のコンサルティング、研修、受託開発などのサービスを提供しております。お気軽にご相談ください。

この記事が気に入ったらサポートをしてみませんか?