3

Google Apps スクリプト - Gmail

GmailMessage( GmailThread).getAsPdf()メソッドは実装されますか? 予想される出力は、Gmail で利用できる PDF への印刷と同じです。この機能は Web サイトで利用できるので、Script では利用できません。

これは、選択した Gmail の会話を他のユーザーや外部に PDF としてすばやく配布するために必要です。

また、GmailMessage.getAttachments()オンライン文書ではありますが、現実には存在しません。これは実装されますか?

ありがとう

4

1 に答える 1

2

私はこれを試してうまくいきました(それが唯一のアプローチであるかどうかはわかりません):

function getattach(){
var firstThread = GmailApp.getInboxThreads(0,1)[0];
var message = firstThread.getMessages()[0];
var attach = message.getAttachments();
Logger.log(attach[0].getDataAsString() )
if(attach.length>0){
var file=DocsList.createFile(attach[0])
var pdf=file.getAs('application/pdf').getBytes();
// for test purpose I send the pdf as attachment
var attach_to_send = {fileName: 'pdftest.pdf',content:pdf, mimeType:'application/pdf'};
   MailApp.sendEmail('emailadress@gmail.com', 'Your test as PDF ', 'see attachment', {attachments:[attach_to_send]});
file.setTrashed(true);// delete after use ;-)
}
}

編集1:削除

編集 2: これは本文が PDF に添付された新しいバージョンです。html もサポートされています (DocsList サービスを使用)。一時的なドキュメントは削除されます。一言で言えば、かなり満足です;-)

function getAttachAndBody(){
  var firstThread = GmailApp.getInboxThreads(0,1)[0];
  var message = firstThread.getMessages()[0];
  var attach = message.getAttachments();
  var body = message.getBody();//is a string
  var bodydochtml = DocsList.createFile('body.html', body, "text/html")
  var bodyId=bodydochtml.getId()
  var bodydocpdf = bodydochtml.getAs('application/pdf').getBytes();
  if(attach.length>0){
    var file=DocsList.createFile(attach[0])
    var pdf=file.getAs('application/pdf').getBytes();
    var attach_to_send = {fileName: 'pdftest.pdf',content:pdf, mimeType:'application/pdf'};
    var body_to_send = {fileName: 'body.pdf',content:bodydocpdf, mimeType:'application/pdf'};
    MailApp.sendEmail('emailadress@gmail.com', 'transfer email as pdf : body & attachment', 'see attachment', {attachments:[attach_to_send,body_to_send]});
    file.setTrashed(true);
    DocsList.getFileById(bodyId).setTrashed(true)
    }
}
于 2012-06-17T08:39:36.343 に答える