【Dify×GAS】値引き交渉を自動化!AIに営業メールを書かせて自動送信するシステムの作り方

DifyとGoogle Apps Script(GAS)を連携させ、値引き交渉の自動化や営業メールの自動送信システムを構築する方法を解説したブログ第109話のアイキャッチ画像。笑顔の49歳男性(Yasu)が親指を立てる横で、API連携の要となる「Body (JSON)」や「Headers」「Parameters」といった設定項目、そしてGASのコードを象徴するアイコンが光り輝くネットワークでつながっているイメージ図。 Uncategorized

皆さんこんにちは、横浜で清掃業を営む49歳、ヤスです。

前回は偉人10人が激論!イテレーションで作る「仮想国会

アプリを作りましたね

清掃業などの一人親方にとって、毎月大量に消費する洗剤やワックスの経費はバカになりません。「いつも頼んでる問屋さん、今回は少し安くしてくれないかな…」と思いつつも、忙しいし、角が立つのは嫌だから結局そのまま発注してしまう。そんな経験ありませんか?

今回は、そんな**「人間がやると気まずい値引き交渉」をAIに丸投げし、さらにGmailで自動送信までしてしまう**という、超実用的なアプリの作り方を大公開します!

DifyとGAS(Google Apps Script)を連携させれば、チャット画面を飛び出して「現実世界に直接メールを送る」ことができます。中学生でもわかるレベルで図解とコードを載せているので、ぜひ今日からAIを「凄腕の調達部長」として雇ってみましょう!

【結論】 このアプリの仕組みは、「Dify(頭脳)」が相手を不快にさせない丁寧な交渉メールを考え、「GAS(郵便屋さん)」がその文章をGmailで自動送信するという完璧な連携プレイです。

成功のカギは2つ。Dify側で「プロンプトエンジニアリング(AIへの上手な指示出し)」を使ってAI臭さを消すこと。そして、GAS側で「玄関の鍵(アクセス権限)」をしっかり開けておくことです。

【手順(ワークフローとGASの設定)】

全体の流れは、「GASの準備」→「Difyの設定」→「連携テスト」です。

ステップ1:GASで「自動メール送信所(郵便屋さん)」を作る まずは、Difyからの手紙を受け取ってGmailで送るプログラムを書きます。GASを開いて、以下のコードをコピペしてください。

JavaScript

// Difyからデータを受け取って、自動で問屋にメールを送るメインの窓口(関数)です
function doPost(e) {
  // Difyから送られてきた荷物(JSONというデータ形式)を開封して、中身を読み解きます
  const params = JSON.parse(e.postData.contents);
  
  // 読み解いたデータの中から、メールを送るために必要な3つの情報を取り出します
  // ※Dify側から、これら3つの名前でデータを送ってもらう約束にしておきます
  const toAddress = params.to_email; // 宛先:問屋さんのメールアドレス
  const subject = params.subject;    // 件名:メールのタイトル
  const body = params.body;          // 本文:Difyが一生懸命考えた丁寧な値切り交渉の文章
  
  // Gmailの機能を使って、指定したアドレスへ実際にメールを送信します!
  GmailApp.sendEmail(toAddress, subject, body);
  
  // 送り終わったら、Dify側に「無事に送信完了しました!」という報告を返します
  const result = { status: "success", message: "問屋へのメール送信が完了しました!" };
  return ContentService.createTextOutput(JSON.stringify(result)).setMimeType(ContentService.MimeType.JSON);
}

⚠️ 初心者の罠①:アクセス権限の設定 コードを貼り付けたら「デプロイ(公開)」をしてWebアプリのURLを発行しますが、この時「アクセスできるユーザー」を必ず**「全員」**にしてください。「自分のみ」だとDifyからの荷物を受け取れずエラーになります!

ステップ2:Difyの開始(Start)ブロック Difyに移り、受付窓口を作ります。

  • 変数1:item_name(テキスト型)… 例:「強力アルカリ洗剤 18L」
  • 変数2:target_price(テキスト型)… 例:「6,500円」

ステップ3:DifyのLLMブロック(プロンプトエンジニアリング)

ここでAIに「横浜で誠実に清掃業を営む義理堅い社長」を憑依させます。以下のプロンプトをワンクリックでコピーして、そのまま丸ごと貼り付けてください。

Plaintext

# 指示
あなたは誠実で義理人情を大切にする、清掃業の経営者です。
長年お世話になっている問屋の担当者へ、角を立てずに「今後も継続して取引すること」を前提とした、丁寧な値引き交渉のビジネスメールを作成してください。

# 注文内容
・対象商品:{{#start.item_name#}}
・希望価格:{{#start.target_price#}}

# 条件(絶対に守ること)
1. 【トーン&マナー】決して強引な要求はせず、あくまで「お願い」という低姿勢な敬語表現を徹底すること。
2. 【理由の添え方】「昨今の資材高騰で厳しい」「今後も御社から購入したいからこそ」といった、相手が値引きに応じやすくなる理由を自然に添えること。
3. 【禁止事項】「はい、作成しました」などのAI特有の返答は一切出力せず、以下の出力形式のテキストのみを厳格に返すこと。

# 出力形式
件名:[ここに件名を記載]
本文:
[ここに本文を記載]

※プロのコツは「禁止事項」です。これを入れないとAIが余計なおしゃべりをしてしまい、それがそのまま問屋にメール送信されてしまいます(笑)。

ステップ4:HTTPリクエストブロック(GASへの送信) LLMの右側に「HTTPリクエスト」ブロックを追加し、システム同士を繋ぎます。

  1. APIのURL: ステップ1で発行したGASのWebアプリURLを貼る。
  2. メソッド: POST を選択。
  3. ボディ(Body): 形式を「JSON」にして以下をコピペします。

JSON

{
  "to_email": "テスト用の自分のアドレス@gmail.com",
  "subject": "資材発注に関するご相談",
  "body": "{{#llm.text#}}"
}

⚠️ 初心者の罠②:変数の紐付けと余計な設定

  • {{#llm.text#}} の部分は、コピペ後に一度消して、半角の { を打ってメニューから確実にLLMの出力結果を選び直してください。
  • 下にある**「ヘッダー(Headers)」と「パラメータ(Parameters)」は両方とも空欄のままでOK**です!Difyが裏側で自動的に処理してくれます。

【まとめ】 お疲れ様でした!右上の「実行」ボタンを押して、自分のスマホに完璧なビジネスメールが届けば大成功です!

この「Difyで考えてGASで動かす」という仕組みが理解できると、もうチャット画面だけのAIには戻れません。本業の経費削減から、面倒な顧客対応まで、あらゆる業務を自動化する最強の武器になります。

49歳、IT完全未経験からの挑戦ですが、確実にシステムを組む力が

ついてきているのを実感しています。

同世代で「これからAIを始めてみようかな」と思っている方、

遅すぎることは絶対にありません。

X(旧Twitter)のアカウント(@yyyyss)でもDifyの発信していますので、ぜひフォローして一緒に泥臭く学んでいきましょう!

次回も面白いアプリが作れればと思います。

是非お楽しみに!

コメント

タイトルとURLをコピーしました