前提・実現したいこと
問い合わせフォームに入ってきた内容をgmailに転送し、それを氏名や住所などの項目ごとにスプレッドシートに自動転送するスクリプトを組み、問題なく入ってきていましたが、ある日を境に突然スプレッドシートに案件が入ってこなくなりました。
スクリプトを手動で実行すると、完了となりエラーにはなりませんが、実際のシートは何も更新されていません。
使用しているフォームはgoogleフォームではなく、当社独自のシステムになります。
その為、gmailに一旦転送し、そこから自動で拾ってきておりました。
問い合わせフォームなどの設定は変更しておりません。
お手数ですが原因をご教示しただけますと幸いです。
■実際の通知メール
【●●●●●サイト名】お問い合わせがありました
────────────────────────────────────
■お名前
●●●●●
■お名前 (フリガナ)
●●●●●
■会社名
●●●●●
■会社URL
●●●●●
■会社所在地
●●●●●
■メールアドレス
●●●●●@●●●●●.com
■お電話番号
●●●●●
■現在のご契約状況
●●●●●
■問い合わせ種別
●●●●●
■お問い合わせのサービス
●●●●●
■お問い合わせ内容
●●●●●
■個人情報の取り扱い
●●●●●
実際に組んでいるスクリプト
function getMail01() { var objSpreadsheet = SpreadsheetApp.getActiveSpreadsheet(); //var objSheet = objSpreadsheet.getSheetByName("問い合わせ管理"); //シート名をここに入力 var sheet = objSpreadsheet.getActiveSheet(); //GMAILから取得するものを指定 var start = 0; var max = 500; var threads = GmailApp.search(`label:お問い合わせ is:unread`, start, max); for (var n in threads) { var thd = threads[n]; var msgs = thd.getMessages(); for (m in msgs) { var msg = msgs[m]; var plain_body = msg.getPlainBody(); console.log(plain_body); var data = { お名前: plain_body .replace(/^[\s\S]*?■(\s+)?お名前/, ``) .replace(/■[\s\S]*/, ``) .trim(), フリガナ: plain_body .replace(/^[\s\S]*?■(\s+)?お名前 (フリガナ)/, ``) .replace(/■[\s\S]*/, ``) .trim(), 会社名: plain_body .replace(/^[\s\S]*?■(\s+)?会社名/, ``) .replace(/■[\s\S]*/, ``) .trim(), 会社URL: plain_body .replace(/^[\s\S]*?■(\s+)?会社URL/, ``) .replace(/■[\s\S]*/, ``) .trim(), 会社所在地: plain_body .replace(/^[\s\S]*?■(\s+)?会社所在地/, ``) .replace(/\n(\━){1,}/, ``) .trim(), メールアドレス: plain_body .replace(/^[\s\S]*?■(\s+)?メールアドレス/, ``) .replace(/\n(\━){1,}/, ``) .trim(), お電話番号: plain_body .replace(/^[\s\S]*?■(\s+)?お電話番号/, ``) .replace(/\n(\━){1,}/, ``) .trim(), 現在のご契約状況: plain_body .replace(/^[\s\S]*?■(\s+)?現在のご契約状況/, ``) .replace(/\n(\━){1,}/, ``) .trim(), 問い合わせ種別: plain_body .replace(/^[\s\S]*?■(\s+)?問い合わせ種別/, ``) .replace(/\n(\━){1,}/, ``) .trim(), お問い合わせのサービス: plain_body .replace(/^[\s\S]*?■(\s+)?お問い合わせのサービス/, ``) .replace(/\n(\━){1,}/, ``) .trim(), お問い合わせ内容: plain_body .replace(/^[\s\S]*?■(\s+)?お問い合わせ内容/, ``) .replace(/\n(\━){1,}/, ``) .trim(), }; var date = Utilities.formatDate(msg.getDate(), "Asia/Tokyo", "yyyy/MM/dd HH:mm"); console.log(data); console.log(msg.getDate()); console.log(date); sheet.appendRow([date, data.お名前, data.フリガナ, data.会社名, data.会社URL, data.会社所在地, data.メールアドレス, data.お電話番号, data.現在のご契約状況, data.問い合わせ種別, data.お問い合わせのサービス, data.お問い合わせ内容]); } thd.markRead(); Utilities.sleep(1000); } }
あなたの回答
tips
プレビュー