2017-10-15 6 views
0

AppScriptで現在の時刻のメールを送信する関数を作成する必要があります。後で、関数を1時間に1回実行させるトリガーを作成する必要があります。大部分の人にとっては非常に簡単だとわかっていますが、私はコーディングから始めています。私はこのエクササイズに悩まされています。Google App Script - 現在の時刻でメールを送信する

function sendemail(){ 

function getDate() { 
    var d = new Date(); 
    return (d.getMonth()+1) + "/" + d.getDate() + "/" + d.getFullYear(); 
} 

function getTime() { 
    var d = new Date(), 
     offset = -d.getTimezoneOffset()/60, 
     h = d.getUTCHours() + offset, 
     m = d.getMinutes(), 
     s = d.getSeconds(); 
    return h + ":" + m + ":" + s; 
} 

function getDateAndTime() { 
    return getDate() + " " + getTime(); 

    Gmail.sendEmail({ 
    to: "[email protected]", 
    subject: "Hora actual", 
    htmlBody: "La hora actual es +dateofDay <br/> Regards, Your robot", 
    }); 
} 

} 

しかし、それは動作しません:

これはI'veが書かれたものです。私は少し不満を抱いているし、同じエラーが常に表示されます: "スクリプト関数が見つかりません:doGet"。

誰もそれを見て助けてくれますか?

ありがとうございます、非常に感謝します。

敬具、 ルイス

+0

どのように 'sendemail()'を呼びますか - どのような種類のgoogle appsスクリプトでも[[standalone](https://developers.google.com/apps-script/guides/standalone)、[bound](https ://developers.google.com/apps-script/guides/bound)、[web app](https://developers.google.com/apps-script/guides/web)]? Web Appスクリプトの場合は、[要件はこちら](https://developers.google.com/apps-script/guides/web#requirements_for_web_apps)を参照してください。 –

答えて

0

Webアプリケーションは、URL(doGet())またはポストデータ(doPost())を介してウェブページからの入力を受け付けるようにdoGet(e)またはdoPost(e)機能を必要としています。これらの各機能のパラメータeは、URL /ポストデータが渡される 'event object'です。したがって、メールを送信する&日付生成関数をdoGet()から呼び出す必要があります。ここで

は、ロジックのハイレベルのビューです:

、あなたがはるかに効率的に Utilities.formatDate(new Date())documentation here)を使用して、タイムスタンプを取得し、正しいと正しいタイムゾーン&にあなたの日付&時間を得ることができると言いました
function doGet(e){ 
    var d = new Date(); 
    var date = getGate(d); // your getDate() function 
    var time = getTime(d); // your getTime() function 
    var datetime = date + " " + time; 
    sendEmail(datetime); // a new function to send an email 
} 

ロケールの書式設定。

電子メールを送信すると、あなたはあなたが&でbodyで指定されたメッセージを渡しsubjectと、recipientに電子メールを送り、基本Mail service機能MailApp.sendEmail(recipient, subject, body)を、使用することができます。これは、この文脈で必要なすべてであるように見えます。メールボックスと対話する必要がある場合は、Gmail serviceを使用する必要がありますが、私たちのアプリケーションを実行しているアカウントからメールを送信するだけであれば、メールサービスを利用してください。

関連する問題