fix: add parsing income message
This commit is contained in:
52
src/index.ts
52
src/index.ts
@@ -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)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user