将电子邮件链接到Google任务

时间:2013-06-05 05:31:51

标签: google-apps-script gmail task

我正在通过类似于this的电子邮件创建任务。此外,我想链接相应的消息,就像您手动从电子邮件创建任务时那样。

此示例创建具有正确标题和截止日期的任务,但不包含指向该消息的链接。

//new Task
var newTask = Tasks.newTask();

//set Title
newTask.setTitle("Task Title");

//set DueDate
var dueDate = new Date();
newTask.setDue = (dueDate.toISOString());

//set Link
var taskLink = Tasks.newTaskLinks()
.setType("email")
.setLink("https://url-to-my-message");
newTask.setLinks(taskLink);

//insert task
newTask = Tasks.Tasks.insert(newTask, "MyListID");

我注意到links属性是readonly(为什么???)。还有其他方法可以达到这个目的吗?

3 个答案:

答案 0 :(得分:0)

目前看来,无法通过API将电子邮件链接到任务。在Tasks API级别,它指出links参数是只读的,并且由于Google Apps Scripts使用API​​,因此无法设置此属性。可悲,我知道。您可能需要等到他们将Tasks API移出“实验”状态。

https://developers.google.com/google-apps/tasks/v1/reference/tasks#resource

答案 1 :(得分:0)

这是一个解决这个问题的方法,我一直在探索。

请注意LukeGT给出的答案是正确的,我在下面的回答是为了让您能够拥有目前Google尚未曝光的相同功能。

对于那些想要了解更多关于通过一组电子邮件创建Google任务的整个概念的人,我建议使用excellent tutorial来推动这一主题。

基本的想法是将电子邮件链接放入任务标题,而不是上面的电子邮件'链接。

为了使其更简洁,我使用Google Url Shortener服务,以便缩短任务标题。对我来说工作正常,这是代码...(请注意,您可以通过此example获取邮件链接,您还需要授权Url Shortener服务)。

var emailURL = "https://url-to-my-message";
var url = UrlShortener.Url.insert({
  longUrl: emailURL
});
var taskDetails = {
  title: 'My email task: '+url.id,
  notes: "Check the link for details",
};
Tasks.Tasks.insert(taskDetails, "MyListID");

这就是它的样子......(i.stack.imgur.com/hZWHF.png,对不起,但还不能发布图片)

答案 2 :(得分:0)

对于那些希望了解Aurovrata'是如何工作的人来说。将直接集成到twjstoll的帖子中链接的gmail任务解决方案,以下对我来说效果很好。

// Construct the url string
// Shorten the URL
var emailURL = "https://mail.google.com/mail/u/0/#inbox/"+thread.getId();
var url = UrlShortener.Url.insert({
  longUrl: emailURL
});

// Insert the task   
addTask_(taskTitle + " " + url.id, taskNote, TASKLIST);

感谢所有帮助过的人。