การทำให้ ArcGIS สำหรับเดสก์ท็อปเล่นเสียงบนลำโพงเมื่อรุ่นสมบูรณ์หรือไม่


16

ฉันอยากนอนในขณะที่รุ่นต่างๆกำลังใช้งานอยู่เป็นเวลานานใน ArcGIS for Desktop

ฉันต้องการให้ ArcGIS สำหรับเดสก์ท็อปเล่นเสียงเมื่อเสร็จสิ้นเพื่อปลุกฉัน

เป็นไปได้ไหม


3
ฉันต้องการส่งอีเมลถึงฉันดังนั้นบางทีคำตอบอาจรวมถึงทั้งสอง (เทเบียร์ก็ดีเช่นกัน) Great Q.
ถ้าคุณไม่รู้ - เพียง GIS

1
Chr (7) BEL เล่นเสียงลำโพง ... แต่ถ้าคุณสนใจงูหลามสักหน่อยฉันก็ช่วยได้ ไม่สามารถช่วยเรื่องเบียร์ได้
Michael Stimson

อา! อีเมลใช้งานได้ฉันสามารถทำให้โปรแกรมอีเมลของฉันไม่ทำงาน
แอรอน

5
ฉันนึกภาพ Rube Goldberg (sp?) เช่นวิธีแก้ปัญหาจะเหมาะสมที่สุด เมื่อแบบจำลองเสร็จสมบูรณ์แขนกลคอมพิวเตอร์จะชนกับประตูดักที่ปล่อยลูกบอลซึ่งในที่สุดก็หยดผ้าขนหนูเปียก ๆ บนใบหน้าของคุณหรือคล้ายกัน
หากคุณไม่ทราบ - เพียงแค่ GIS

คำตอบ:


18

ฉันชอบคำตอบของ Aarons จริงๆ แต่มีอะไรที่ง่ายและท้องถิ่นมากกว่า:

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"])

การใช้โมดูล subprocess ทำให้ windows media player เปิดไฟล์ ..

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])

แน่นอนว่าตัวอย่างเพลงมีแนวโน้มที่จะทำให้คุณหลับดังนั้นสิ่งที่คล้ายกับเสียงนาฬิกาปลุกของฉันอาจจะเหมาะสมกว่า

แต่แน่นอนว่าง่ายมากที่คุณสามารถทำได้ทั้งสองอย่าง


1
ความคิดที่ยอดเยี่ยม! สิ่งนี้สามารถรวมเข้ากับเครื่องมือสคริปต์ได้อย่างง่ายดาย
แอรอน

2
รักความคิดสคริปต์นี้ ฉันขอแนะนำ mp3 เช่นเพลงชุดรูปแบบNational GeographicหรือWhere in the World คือ Carmen Sandiegoแต่นั่นอาจเป็นเรื่องเล็กน้อยเกินกว่าที่ฉันจะรู้ได้ ...
Erica

รสนิยมทางดนตรีของทุกคนแตกต่างกัน ฉันเลือกเพลงที่ดังและน่ารำคาญเพราะมีแนวโน้มที่จะได้รับความสนใจมากกว่า เที่ยวบินของ Valkyries จะเป็นทางเลือกที่ยอดเยี่ยมหากคุณไม่ได้นอนแม้ว่ามันจะ หากคุณกระตือรือร้นจริง ๆ คุณสามารถใส่พารามิเตอร์ของไฟล์ที่จะเล่นและนำกลับมารายงานด้วยเสียงสั้นที่จุดวิกฤติเพื่อเป็นหลักฐานการใช้ชีวิต
Michael Stimson

และอีกครั้งฉันจองคำตอบของคุณล่วงหน้าด้วยAML ปี 1998ซึ่งจะส่งเสียงบี๊บที่น่ารำคาญ;)
Stephen Lead

ฮ่าฮ่า @StephenLead ใน ArcInfo ทุกอย่างทำเสียงบี๊บที่น่ารำคาญ คุณสามารถเดินออกไปทำกาแฟและรู้ว่ากระบวนการของคุณยังคงดำเนินต่อไปด้วยโซ่เสียงบี๊บ หลักสูตรนี้ถือว่าลำโพงของคุณได้รับการติดตั้ง
Michael Stimson

16

วิธีการเกี่ยวกับการส่งอีเมลด้วยตัวเองเมื่อแบบจำลองเสร็จสิ้น? อย่าลืมตั้งค่าโทรศัพท์ให้ส่งเสียงเมื่อคุณได้รับอีเมลที่ส่งผ่านสคริปต์ Python ที่แนบมา สิ่งนี้ถูกออกแบบมาให้ทำงานเป็นเครื่องมือสคริปต์ใน ModelBuilder ถ้าคุณไม่ได้ทำงานที่คุ้นเคยกับเครื่องมือสคริปต์เหล่านี้ทำตามคำแนะนำ โปรดอย่าตั้งค่านี้ให้ทำงานกับ gmail เครื่องมือดังกล่าวได้รับการออกแบบให้ทำงานดังต่อไปนี้ (โปรดทราบว่าการติดเงื่อนไขตัวแปร bufferedPoints และเครื่องมือสคริปต์ 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)

คำแนะนำสำหรับการสร้างเครื่องมือสคริปต์:

สร้างสคริปต์

  1. เปิดIDLE > ไฟล์> หน้าต่างใหม่
  2. คัดลอกและวางสคริปต์บนโพสต์นี้ไปที่หน้าต่างใหม่
  3. บันทึกเป็น> "SendEmail.py"

สร้างเครื่องมือสคริปต์

  1. คลิกขวาที่โฟลเดอร์> ใหม่> กล่องเครื่องมือ (นี่คือตำแหน่งที่เครื่องมือสคริปต์จะอยู่)
  2. คลิกขวากล่องเครื่องมือ> เพิ่ม> สคริปต์ ...
  3. กรอกชื่อ, ฉลาก, คำอธิบายและทำเครื่องหมาย "จัดเก็บเส้นทางสัมพัทธ์ .... "
  4. กดถัดไป
  5. เพิ่มสคริปต์ที่คุณสร้าง "SendEmail.py"
  6. กดถัดไป
  7. เติมพารามิเตอร์ให้ตรงกับรูปที่แนบมา
  8. กดปุ่ม Finish
  9. ค้นหาเครื่องมือใหม่ในกล่องเครื่องมือและใช้เช่นเดียวกับเครื่องมืออื่น ๆ ใน ModelBuilder

ป้อนคำอธิบายรูปภาพที่นี่


1
@ Michael Miles-Stimson เรื่องบังเอิญตลก ๆ มีแอรอนไม่มากเกินไป เครื่องมือสคริปต์นี้ทำงานโดยตรงผ่านบริการอีเมลและเป็นอิสระจากมุมมอง อย่างไรก็ตามหาก Outlook สามารถอ่านอีเมลของคุณและโทรศัพท์ของคุณสามารถแจ้งเตือนคุณเมื่อคุณได้รับอีเมลผ่าน Outlook ก็จะทำงานได้ดี
แอรอน

1
ฉันทำงานกับแอรอนเขาก็เท่ห์เหมือนกัน ฉันหมายถึงอีเมลขาออกหลักฉันจะส่งอีเมลตัวเอง .. ข้อความจากฉันไปฉันที่ส่งมาจากคอมพิวเตอร์ที่ทำงานและอ่าน / แจ้งบนคอมพิวเตอร์ที่บ้านบน VPN สามารถกำหนดค่า Outlook ให้เล่นเสียงเมื่อมีอีเมลเข้ามา
Michael Stimson

1
ตกลง. นี่เป็นสัญญาที่ดีมาก! ฉันไม่ค่อยเข้าใจว่าจะใส่ที่อยู่อีเมลจริงของฉันที่ไหน ฉันจะแทนที่ด้วยวลี "gmail_user" หรือไม่ หรือว่าเป็นตัวแปร สิ่ง "sys.argv [#]" คืออะไร ฉันจะใส่ข้อมูลของฉันอยู่ที่ไหน?
แอรอน

1
@Aaron sys.argv เป็นรายการที่มีอาร์กิวเมนต์ที่ส่งผ่านไปยังสคริปต์ Python จากบรรทัดคำสั่ง มันเทียบเท่ากับการใช้ arcpy.GetParameterAsText ( i )
om_henners

3
หากมันช่วยทุกคนฉันได้วางตัวอย่างส่วนสำคัญที่แสดงวิธีใช้คำตอบของ @Aaron เป็น wrapper เพื่อแจ้งความสำเร็จหรือความล้มเหลวของสคริปต์
om_henners
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.