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