123456789101112131415161718192021222324252627282930313233343536 |
- const express = require('express')
- const app = express()
- app.use(express.json())
- app.use(express.static('public'));
- const port = 3104
- var chalk = require("chalk");
- var db = require("kairoscope-db-models");
- var e = chalk.red('ERROR:');
- db.start_database().then(() => {
- app.get('/', (req, res) => {
- res.send("Mail Analytics Service");
- })
- app.get('/track/:id/image.png', function(req, res, next){
- var id = req.params.id;
- res.sendFile('image.png', {root: './public'});
- db.SentMail.findOne({message_id: id}).then((message) => {
- if(message != undefined) {
- message.opened = true;
- message.save().then((message) => {
- console.log(`Tracking email ${chalk.italic(id)}`);
- }).catch((error) => { console.log(error); });
- } else {
- console.log(`${e} Tracking code not in database! (${chalk.italic(id)})`);
- }
- }).catch((error) => { console.log(error); });
- });
-
-
- app.listen(port, () => {
- console.log(`Mail Analytics Service listening at ${chalk.cyan(`http://localhost:${port}`)}`);
- })
- })
|