messages-archive.js
1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
'use strict';
const logger = require('komodo-sdk/logger');
const db = require('./db-mysql');
const DIRECTION_INCOMING = 0;
const DIRECTION_OUTGOING = 1;
/**
* Menyimpan pesan ke dalam archive histori pesan di database
*
* @param {object} params - objek pesan yang akan disimpan
* @param {string} [params.origin_label] - label origin
* @param {string} [params.origin=UNKNOWN] - digunakan sebagai label origin jika tdk ditentukan
* @param {string} [params.origin_transport=UNKNOWN] - transport, misal SMS, TELEGRAM
* @param {string} params.partner - pengirim / penerima
* @param {string} [params.msg] - isi pesan
* @param {string} [params.message] - isi pesan, jika params.msg tidak terdefinisi
* @param {number} direction - 0: incoming, 1: outgoing
*/
function insert(params, direction) {
if (!db.pool) return;
const query = `INSERT INTO messages SET created = NOW(), ?`;
const values = [{
origin_label: (params.origin_label || params.origin || 'UNKNOWN').trim(),
origin_transport: (params.origin_transport || 'UNKNOWN').trim(),
direction,
partner: params.partner.trim(),
message: (params.msg || params.message).trim(),
}];
db.pool.query(query, values, (err) => {
if (err) {
logger.warn(`MESSAGES-ARCHIVE: DB ERROR on inserting message. ${err.toString()}`);
}
});
}
exports.insert = insert;
exports.DIRECTION_INCOMING = DIRECTION_INCOMING;
exports.DIRECTION_OUTGOING = DIRECTION_OUTGOING;