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