¿Está haciendo ArcGIS for Desktop reproducir el sonido en el altavoz cuando se completa el modelo?

15

Me gustaría poder dormir mientras los modelos se ejecutan durante gran parte de la noche en ArcGIS for Desktop.

Me gustaría que ArcGIS for Desktop reproduzca un sonido cuando termine, para despertarme.

¿Es esto posible?

    
pregunta Aaron 26.06.2014 - 23:50

2 respuestas

17

Me gusta mucho la respuesta de Aaron, pero algo más simple y local:

subprocess.Popen([r"C:\Program Files (x86)\Windows Media Player\wmplayer.exe",r"C:\Users\Public\Music\Sample Music\Maid with the Flaxen Hair.mp3"])

el uso del módulo de subproceso hace que Windows Media Player abra un archivo.

import subprocess

wmPlay = r"C:\Program Files (x86)\Windows Media Player\wmplayer.exe"
PlayFile= r"C:\Users\Public\Music\Sample Music\Maid with the Flaxen Hair.mp3"
subprocess.Popen([wmPlay,PlayFile])

Por supuesto, la música de muestra es más probable que te ponga a dormir, así que algo más como mi tono de alarma del reloj podría ser más adecuado.

Pero, por supuesto, es tan simple que podría hacer ambas cosas, simplemente agregue eso al final del código de Aarons.

    
respondido por el Michael Stimson 27.06.2014 - 00:25
15

¿Qué tal si te envías un correo electrónico cuando se termina el modelo? Asegúrese de configurar su teléfono para que emita un tono cuando reciba el correo electrónico enviado a través del script Python adjunto. Está diseñado para ejecutarse como una herramienta de script en ModelBuilder. Si no está familiarizado con las herramientas de script, siga estas instrucciones . Tenga en cuenta que esto está configurado para funcionar con gmail. La herramienta está diseñada para funcionar de la siguiente manera (tenga en cuenta la condición previa que une la variable bufferedPoints y la herramienta de script sendEmail):

import smtplib, os, arcpy from email.MIMEMultipart import MIMEMultipart from email.MIMEBase import MIMEBase from email.MIMEText import MIMEText from email import Encoders # Fill in the necessary blanks here gmail_user = sys.argv[1] gmail_pwd = sys.argv[2] # The parameters to = sys.argv[3] subject = sys.argv[4] text = sys.argv[5] def mail(to, subject, text): msg = MIMEMultipart() msg['From'] = gmail_user msg['To'] = to msg['Subject'] = subject # Attaches a text message to the e-mail msg.attach(MIMEText(text)) mailServer =smtplib.SMTP("smtp.gmail.com", 587) mailServer.ehlo() mailServer.starttls() mailServer.ehlo() mailServer.login(gmail_user, gmail_pwd) mailServer.sendmail(gmail_user, to, msg.as_string()) mailServer.close() mail(to, subject, text)

Instrucciones para crear la herramienta de script:

Crear el script

  1. Abra IDLE > Archivo > Nueva ventana
  2. Copie y pegue el script en esta publicación en la nueva ventana
  3. Guardar como > "SendEmail.py"

Crea la herramienta de script

  1. Haz clic derecho en una carpeta > Nuevo > Caja de herramientas (Aquí es donde el script se ubicará la herramienta)
  2. Haga clic con el botón derecho en la caja de herramientas > Añadir > Script ...
  3. Rellene Nombre, Lable, Descripción y marque "Almacenar ruta relativa ...."
  4. pulsa siguiente
  5. Agregue el script que creó "SendEmail.py"
  6. pulsa siguiente
  7. Rellene los parámetros exactamente como se muestra en la figura adjunta.
  8. pulsa Finalizar
  9. Localice la nueva herramienta en la caja de herramientas y úsela como lo haría con cualquier otra herramienta en ModelBuilder

    
respondido por el Aaron 26.06.2014 - 23:59

Lea otras preguntas en las etiquetas