1 votos

Aleatorizar tiempos de inicio de eventos ical

Tengo un evento en ical que se repite todos los días.

Me gustaría aleatorizar la hora de inicio de este evento (que programa un applescript) para que las horas de inicio sean aleatorias pero dentro de los 30 minutos entre sí.

He hecho búsquedas en google y duckduck para:

  • aleatorizar la hora de inicio del evento en ical;
  • aleatorizar eventos en ical por 5 minutos,

y no he encontrado nada relevante.

He echado un vistazo al diccionario de applescript para iCal pero no puedo encontrar una función útil.

No necesito todo el script, solo una pista en la dirección correcta o una función que podría usar para crear los eventos en lugar de modificarlos todos manualmente.

1voto

maxpenguin Puntos 1488

Encontré la respuesta buscando en applescript hacer hora de inicio aleatoria .

Usé el siguiente código de este hilo de la comunidad de soporte de Apple:

tell application "TextEdit"
lanzar
repetir
retraso (número aleatorio entre 2 y 8)
establecer texto a escribir como "texto" & algún elemento de {"hola", "adiós"} & texto
fin repetir
end tell

y para el texto:

algún elemento de {"azul", "rojo"}

Aquí está el script final que me funcionó:

tell application "iCal"

    establecer miCal en "Tareas programadas"
    activar
    establecer todos los eventos en cada evento en el calendario myCal
    repetir con unEvento en todos los eventos
        establecer modTiempo en (número aleatorio entre 0 y 30)
        mostrar diálogo modTiempo con título fecha de inicio de unEvento como texto
        establecer nuevaHoraInicio en (fecha de inicio de unEvento) + modTiempo * minutos
        establecer fecha de inicio de unEvento en nuevaHoraInicio
        establecer (fecha final de unEvento) en ((fecha final de unEvento) + modTiempo * minutos)
    fin repetir
end tell

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X