16

我已同步 iCal 和 Google 日历,以便查看我的约会。但是,除非我去谷歌日历,否则我永远无法看到谷歌环聊链接。

是否有任何本机 OSX 应用程序支持 Google Hangout 链接的字段?

4

2 回答 2

9

多亏了 nempnett 的小脚本,我终于设法将它全部自动化到现在在 GitHub 上的一个工具中。我在这里写过:http: //yeraze.com/a-better-way-to-fix-osx-calendar-google-hangouts

您必须做一些终端魔术,然后它会自动将您的 Google Hangout 链接同步到日历 URL 字段中。

于 2013-12-23T16:22:04.143 回答
5

这让我很恼火多年。我有以下两种解决方案。一个可以让您轻松地从 iCal 事件发起环聊,另一个使用环聊详细信息更新 iCal 事件。

  1. 创建应用程序类型的 Automator
  2. 添加“GetSpecified Finder”项目步骤
  3. 添加“运行外壳脚本”步骤(更改外壳脚本块以接受输入“作为参数”)
  4. 将以下内容复制到文本框中:

    read url <<< $(cat "$1" | sed "s/$(printf '\r')\$//" | awk -F':' '/X-GOOGLE-HANGOUT/ {first = $2":"$3; getline rest; print (first)(substr(rest,2)); exit 1}';)
    open "$url"
    
  5. 保存应用程序并添加到您的扩展坞

现在您只需将一个事件拖到停靠项上,它就会解析 .ics 文件并在您的默认浏览器中启动环聊。

更新:扩展上述内容以更新日历条目,以在事件中添加环聊作为 URL:

  1. 创建应用程序类型的 Automator
  2. 添加“GetSpecified Finder”项目步骤
  3. 添加“运行外壳脚本”步骤(更改外壳脚本块以接受输入“作为参数”)
  4. 将以下内容复制到文本框中:

    read url <<< $(cat "$1" | sed "s/$(printf '\r')\$//" | awk -F':' '/X-GOOGLE-HANGOUT/ {first = $2":"$3; getline rest; print (first)(substr(rest,2)); exit 1}';)
    read uid <<< $(cat "$1" | sed "s/$(printf '\r')\$//" | awk -F':' '/UID/ {print $2; exit 1}';)
    echo "$url"
    echo "$uid"
    
  5. 添加“运行 Apple 脚本”类型的步骤
  6. 将以下内容复制到将“myCalendar”替换为您的日历名称的框中:

    on run {input, parameters}
    set myURL to input's item 1
    set myUID to input's item 2
    set myCal to "myCalendar"
    
    tell application "Calendar"
    tell calendar myCal
        set theEvent to first event whose uid = myUID
        set (url of theEvent) to myURL
    end tell
    end tell
    return input
    end run 
    
  7. 保存应用程序并添加到您的扩展坞

现在,当您将事件拖到停靠图标上时,它将通过将环聊 URL 添加到事件中来更新事件。

以上述为开始,如果有人想对每天早上运行的整个日历进行预定的批处理更新,那就太好了……

于 2013-10-31T16:32:04.410 回答