fix: add parsing income message

This commit is contained in:
2024-05-16 23:03:09 +03:00
parent dd4d14c100
commit 4cc2b8d098
2 changed files with 54 additions and 8 deletions

View File

@@ -36,13 +36,59 @@ const main = async () => {
source: true
})) {
if (message.envelope.subject.includes(MARK_STRING)) {
if (message.envelope.subject && message.envelope.subject.includes(MARK_STRING)) {
let email = Buffer.from(message.source).toString()
const parsed = await simpleParser(email)
console.log('📌', chalk.cyan('Message:'), chalk.yellow(parsed.text));
//console.log('📌', chalk.cyan('Message:'), chalk.yellow(parsed.text));
let messageArr = parsed.text.slice().split('\n').filter((el: string) => el !== '')
const title =
messageArr[1]
.slice()
.split(' ')
.at(-1)
const groupName =
messageArr[1]
.slice()
.replace('В АС СТП на Вашу группу Адлер ', '')
.replace(' назначено обращение', '')
.split(' ')
.slice(0, -1)
.join(' ')
const user = messageArr[4]
const subject = messageArr[6]
const estimatedDate =
messageArr[7]
.slice()
.split(' ')[3]
const estimatedTime =
messageArr[7]
.slice()
.split(' ')[4]
console.log(
`📌 Новое обращение: ${title}`, '\n',
`Группа: ${groupName}`, '\n',
`${user}`, '\n',
`${subject}`, '\n',
`Время выполнения: ${estimatedDate} ${estimatedTime}`, '\n'
)
const preparedMessage =
`📌 Новое обращение: ${title}\n` +
`Группа: ${groupName}\n` +
`${user}\n` +
`${subject}\n` +
`Время выполнения: ${estimatedDate} ${estimatedTime}\n`
if (parsed.text) {
bot.telegram.sendMessage(process.env.TELEGRAM_GROUP_ID, parsed.text)
bot.telegram.sendMessage(process.env.TELEGRAM_GROUP_ID, preparedMessage)
.then()
.catch(console.error)
}