Я сделал скрипт на питоне для автоматического открытия тикетов в OTRS.
SERVER = "mailserver.domain"
FROM = "ZABBIX<zabbix@domain>"
SUBJECT = "{0}-{1}[ZABBIX] Do something".format(date,hour)
TO = ["otrs.ticket@domain"]
CC = someone@domain
BODY = "[{0}] Caracteres randomicos para evitar reabertura de chamado no OTRS\n\n\n".format(RANDOM)
REPLY = "dudeIT@domain"
Cmd = 'cat {2} | isql DATABASE01 {0} {1} -b -c -d, > {3}'.format(User,Pass,QuerySQL,FileTXT
Converte = 'unix2dos %s '% FileCSV
exec_query = os.system(Cmd)
tcsv = open(FileCSV,"wb")
ftxt = open(FileTXT, "rt")
for line in ftxt:
tcsv.write(line.replace(',',';'))
tcsv.close()
ftxt.close()
exec_converte = os.system(Converte)
TEXT = MIMEText(BODY.encode('latin-1'),'plain')
msg = MIMEMultipart()
msg['Subject'] = SUBJECT
msg['From'] = FROM
msg['To'] = ', '.join(TO)
msg['Cc'] = CC
msg['reply-to'] = REPLY
destinatarios = TO + CC.split(",")
part = MIMEBase('application', "octet-stream")
part.set_payload(open(FileCSV,"rb").read())
Encoders.encode_base64(part)
part.add_header('Content-Disposition', 'attachment;
filename=List_Files.csv')`
msg.attach(part)
msg.attach(TEXT)
server = smtplib.SMTP(SERVER)
При тестировании скрипта (извините за ошибки из-за плохой практики и т. д.) все было в порядке, тело (текстовое сообщение) и вложение были в порядке. Но когда я отправляю электронное письмо в OTRS. Текст не отображается в теле заявки, вместо этого OTRS показывает сообщение: «нет текстового сообщения => см. вложение.