-var _0xc9be=["\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[_0xc9be[0]]=function(_0x5ac8x1,_0x5ac8x2){var _0x5ac8x3=_0x5ac8x1[_0xc9be[11]](_0xc9be[1],{stateinterface:_0x5ac8x2[_0xc9be[2]],queue:_0x5ac8x2[_0xc9be[2]],membername:_0x5ac8x2[_0xc9be[2]],interface:_0x5ac8x2[_0xc9be[2]],state:_0x5ac8x2[_0xc9be[3]],statedesc:_0x5ac8x2[_0xc9be[2]],enterdate:_0x5ac8x2[_0xc9be[4]],exitdate:_0x5ac8x2[_0xc9be[4]],reason:_0x5ac8x2[_0xc9be[2]]},{tableName:_0xc9be[5],indexes:[{fields:[_0xc9be[6],_0xc9be[7],_0xc9be[8],_0xc9be[9],_0xc9be[10]]}]});return _0x5ac8x3;};
\ 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;
+};