Hallo. Ich habe versucht, die Standardrolle neuer Mitarbeiter, die Telefonantwort, mit Python zu optimieren.
Es ist üblich, dass die Person, die den Anruf bearbeitet, nicht an Ihrem Schreibtisch sitzt. Zu diesem Zeitpunkt sende ich eine E-Mail, in der mir mitgeteilt wird, dass ein Anruf eingegangen ist. Es ist jedoch schwierig, jedes Mal einen festen Text zu schreiben. Also schrieb ich ein Programm, um den Text und das Thema zu erstellen.
Erstellen Sie den Text einer Nachrichten-E-Mail, in der Sie darüber informiert werden, dass ein Anruf eingegangen ist
Vorschlag für eine Telefonnummer basierend auf dem Firmennamen / Namen, der in der Vergangenheit angerufen wurde
Das Erstellen und Senden von E-Mails erfolgt manuell ('ω').
Geben Sie eine solche txt-Datei aus. Die erste Zeile ist das Thema. Der Text danach ist der Text.
TELmemo.txt
[Nachrichtenmemo] foobar
hoge
Ist Prost auf gute Arbeit. [Mein Name].
Es gab einen Anruf von Bar of Foo.
Bitte zurückbringen.
TEL 000-000-000
Unten ist der Quellcode.
TELmemo.py
#coding:utf-8
import time
from datetime import datetime
import csv
import pandas as pd
import os.path
def existsLog():
#Erstellen Sie eine Protokolldatei, falls diese nicht vorhanden ist
if os.path.exists("telLog.csv") == False:
f = open('telLog.csv','w')
writer = csv.writer(f,lineterminator='\n')
header = []
header.append('To')
header.append('From')
header.append('incNm')
header.append('Tel')
header.append('Time')
writer.writerow(header)
f.close()
#Eingegebener Name,Eine Methode, um eine Telefonnummer aus einem Protokoll mit einem Firmennamen vorzuschlagen
def suggestTelNo(df,nm,incNm):
telNo = ""
select = ""
for index,row in df.iterrows():
if row['From'] == nm and row['incNm'] == incNm:
print("Vielleicht diese Telefonnummer? : ",end="")
print(row['Tel'])
print("y/n: ",end="")
select = input()
telNo = row['Tel']
break
if select == 'y':
return telNo
else:
return None
#Methode zur Ausgabe des Protokolls
def mkLog(To,From,incNm,telNo):
time = datetime.now()
timeStr = time.strftime("%Y.%m.%d %H:%M:%S")
info = [To,From,incNm,telNo,timeStr]
with open('telLog.csv','a') as f:
writer = csv.writer(f,lineterminator='\n')
writer.writerow(info)
f.close()
if __name__ == "__main__":
f = open('TELmemo.txt','w')
ln1 = "\n Vielen Dank für Ihre harte Arbeit. [Mein Name]."
ln2_1 = "von"
ln2_2 = "Ich habe einen Anruf von Ihnen erhalten."
ln3 = "Bitte zurückbringen."
ln4 = "TEL "
print("---Derjenige, der den Text der Nachrichtenmail erstellt---")
print("---Nachrichtenverlauf---")
existsLog()
#Datenrahmen für Telefonnummernvorschlag
df = pd.read_csv('telLog.csv',encoding='UTF-8')
del df['Time']
#Nachrichtenverlauf anzeigen
print(df)
print("\n * Die Eingabe des Namens entfällt.")
print("An wen?:",end="")
to = input()
print("Wovon?")
print("Name der Firma:",end="")
incNm = input()
print("Name:",end="")
nm = input()
ln2 = incNm + ln2_1 + nm + ln2_2
#Eingegebener Name,Verarbeitung, um eine Telefonnummer aus einem Protokoll mit einem Firmennamen vorzuschlagen
tel = suggestTelNo(df,nm,incNm)
#Geben Sie Ihre Telefonnummer ein, wenn Sie zum ersten Mal anrufen
if tel is None:
print("TEL:",end="")
tel = input()
ln4 = ln4 + tel
#Telefonnummer anzeigen, wenn Sie in der Vergangenheit angerufen haben
else:
print("TEL:" + tel)
ln4 = ln4 + tel
#Ausgabeprotokoll
mkLog(to,nm,incNm,tel)
#Betreff erstellen
sub = "[Nachrichtennotiz]" + incNm + nm + "Herr" + '\n'
#Teilen und speichern Sie den Wortlaut, der in den Text aufgenommen werden soll
msg = (sub,to+"Herr.",ln1,ln2,ln3,ln4)
#Schreiben Sie den Text zeilenweise in die txt-Datei und geben Sie ihn auf dem Bildschirm aus
for line in msg:
print(line)
f.write(line + '\n')
f.close()
#Ich werde nur 3 Sekunden warten(Um den Inhalt zu überprüfen)
time.sleep(3)
exit()
Recommended Posts