Questo mi ha annoiato per anni. Ho due soluzioni qui sotto. Uno che ti permetterà di avviare facilmente un hangout dall'evento iCal, l'altro aggiorna l'evento iCal con i dettagli del videoritrovo.
- Crea un Automator di applicazione tipo
- aggiungere elementi 'GetSpecified Finder' passo
- Aggiungi passaggio a 'Run Shell Script' (cambiare il blocco di shell script per accettare l'input "come argomenti")
Copiare il seguente nella casella di testo:
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"
- Salvare l'applicazione e aggiungere al dock
Ora sarà possibile trascinare un evento sull'elemento dock e analizzare il file .ics e avviare l'Hangout nel browser predefinito.
UPDATE: estensione quanto sopra per aggiornare la voce del calendario per aggiungere ritrovo come URL nel caso in:
- Crea un Automator di applicazione tipo
- aggiungere elementi 'GetSpecified Finder' passo
- Add un passaggio "Esegui script shell" (modificare il blocco Shell Script per accettare l'input "Come argomenti")
Copia quanto segue nella casella di testo:
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"
- Aggiungere un passo di tipo 'Run di Apple Script'
Copiare il seguente nella casella di sostituzione "myCalendar" con il nome del tuo calendario:
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
- Salvare l'applicazione e aggiungere al il tuo dock
Ora quando si trascina un evento sull'icona del dock, si aggiornerà l'evento aggiungendo l'URL di hangout all'evento.
Prendendo quanto sopra come un inizio sarebbe bene se qualcuno volesse fare un aggiornamento di elaborazione batch pianificato di tutto il calendario che passa ogni mattina dire ...
Ho appena ottenuto che funzioni. Ho dovuto modificare il blocco Shell Script per accettare l'input "As Arguments", dove è stato impostato su "As Stdin". – Yeraze
Grazie a @Yeraze - Ho avuto quel set nel mio automatore ma l'ho mancato nelle istruzioni sopra - Ho aggiornato per richiamarlo ora. – nempnett
Hai mai avuto fortuna con l'elaborazione di massa? Ho provato a utilizzare le nuove funzionalità di automazione per eseguire "Elaborazione batch", ma non sembra funzionare. È facile creare un compito di automazione per afferrare tutti gli eventi di oggi e quindi avviare un altro flusso di lavoro per ciascuno di essi. Semplicemente non riuscivo a capire come far passare i dati nel modo in cui ti stai aspettando (il materiale di awk del Terminale). – Yeraze