-var _0x54ae=["\x65\x78\x70\x6F\x72\x74\x73","\x52\x65\x70\x6F\x72\x74\x4D\x65\x6D\x62\x65\x72","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x65\x6D\x62\x65\x72","\x71\x75\x65\x75\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x73\x74\x61\x74\x65","\x65\x6E\x74\x65\x72\x64\x61\x74\x65","\x65\x78\x69\x74\x64\x61\x74\x65","\x64\x65\x66\x69\x6E\x65"];module[_0x54ae[0]]=function(_0x9927x1,_0x9927x2){var _0x9927x3=_0x9927x1[_0x54ae[11]](_0x54ae[1],{stateinterface:_0x9927x2[_0x54ae[2]],queue:_0x9927x2[_0x54ae[2]],membername:_0x9927x2[_0x54ae[2]],interface:_0x9927x2[_0x54ae[2]],state:_0x9927x2[_0x54ae[3]],statedesc:_0x9927x2[_0x54ae[2]],enterdate:_0x9927x2[_0x54ae[4]],exitdate:_0x9927x2[_0x54ae[4]],reason:_0x9927x2[_0x54ae[2]]},{tableName:_0x54ae[5],indexes:[{fields:[_0x54ae[6],_0x54ae[7],_0x54ae[8],_0x54ae[9],_0x54ae[10]]}]});return _0x9927x3;};
\ No newline at end of file
+'use strict';
+
+var moment = require('moment');
+
+module.exports = function(sequelize, DataTypes) {
+
+ var ReportMember = sequelize.define('ReportMember', {
+ channel: DataTypes.STRING,
+ membername: DataTypes.STRING,
+ interface: DataTypes.STRING,
+ type: {
+ type: DataTypes.STRING,
+ defaultValue: 'DEFAULT PAUSE'
+ },
+ duration: DataTypes.INTEGER,
+ enterAt: DataTypes.DATE,
+ exitAt: {
+ type: DataTypes.DATE,
+ set: function(exitAt) {
+ var a = moment(exitAt);
+ var b = moment(this.getDataValue('enterAt'));
+ var duration = a.diff(b, 'seconds');
+
+ this.setDataValue('exitAt', exitAt);
+ this.setDataValue('duration', duration || null);
+ }
+ },
+ data1: DataTypes.STRING,
+ data2: DataTypes.STRING,
+ data3: DataTypes.STRING,
+ data4: DataTypes.STRING,
+ data5: DataTypes.STRING,
+ role: DataTypes.STRING,
+ internal: DataTypes.INTEGER(11),
+ uniqueid: DataTypes.STRING
+ }, {
+ tableName: 'report_member'
+ });
+
+ return ReportMember;
+};