Built motion from commit 7afcba0.|0.0.74
[motion.git] / server / models / history / report_chat_room_history.js
1 /**
2  * Agent Log Model
3  */
4
5 var moment = require('moment');
6
7 module.exports = function(sequelize, DataTypes) {
8
9   var ReportChatRoomHistory = sequelize.define('ReportChatRoomHistory', {
10     uniqueid: {
11       type: DataTypes.STRING,
12       unique: true
13     },
14     websitename: DataTypes.STRING,
15     websiteaddress: DataTypes.STRING,
16     websiteid: DataTypes.INTEGER,
17     application: DataTypes.STRING,
18     visitorid: DataTypes.STRING,
19     visitorname: DataTypes.STRING,
20     visitoremail: DataTypes.STRING,
21     memberid: DataTypes.STRING,
22     membername: DataTypes.STRING,
23     queueid: DataTypes.INTEGER,
24     queuename: DataTypes.STRING,
25     roomid: DataTypes.INTEGER,
26     data1: DataTypes.STRING,
27     data2: DataTypes.STRING,
28     data3: DataTypes.STRING,
29     labelData1: DataTypes.STRING,
30     labelData2: DataTypes.STRING,
31     labelData3: DataTypes.STRING,
32     abandon: {
33       type: DataTypes.BOOLEAN,
34       defaultValue: 0
35     },
36     complete: {
37       type: DataTypes.BOOLEAN,
38       defaultValue: 0
39     },
40     completeReason: DataTypes.ENUM('agent', 'requester'),
41     completeAt: DataTypes.DATE,
42     joinAt: DataTypes.DATE,
43     leaveAt: DataTypes.DATE,
44     unmanaged: {
45       type: DataTypes.BOOLEAN,
46       defaultValue: 0
47     },
48     disposition: DataTypes.STRING,
49     note: DataTypes.TEXT,
50     urating: {
51       type: DataTypes.INTEGER,
52       defaultValue: 0,
53       validate: {
54         min: 0,
55         max: 10
56       }
57     },
58     crating: DataTypes.ENUM('good', 'bad'),
59     cratingMessage: DataTypes.TEXT
60   }, {
61     tableName: 'report_chat_room_history'
62   });
63
64   return ReportChatRoomHistory;
65 };