-var _0xf6c0=["\x63\x72\x79\x70\x74\x6F","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x52\x45\x43\x45\x49\x56\x45\x44","\x4E\x4F\x54\x20\x53\x45\x4E\x54","\x53\x45\x4E\x44\x49\x4E\x47","\x53\x45\x4E\x54","\x46\x41\x49\x4C\x45\x44","\x42\x4F\x4F\x4C\x45\x41\x4E","\x54\x45\x58\x54","\x66\x61\x78\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x62\x65\x6C\x6F\x6E\x67\x73\x54\x6F","\x46\x72\x6F\x6D","\x54\x6F","\x64\x65\x66\x69\x6E\x65"];var crypto=require(_0xf6c0[0]);module[_0xf6c0[1]]=function(_0xa37ex2,_0xa37ex3){var _0xa37ex4=_0xa37ex2[_0xf6c0[16]](_0xf6c0[2],{actionid:_0xa37ex3[_0xf6c0[3]],channel:_0xa37ex3[_0xf6c0[3]],channelstate:_0xa37ex3[_0xf6c0[4]],channelstatedesc:_0xa37ex3[_0xf6c0[3]],calleridnum:_0xa37ex3[_0xf6c0[3]],calleridname:_0xa37ex3[_0xf6c0[3]],connectedlinenum:_0xa37ex3[_0xf6c0[3]],connectedlinename:_0xa37ex3[_0xf6c0[3]],status:{type:_0xa37ex3.ENUM(_0xf6c0[5],_0xf6c0[6],_0xf6c0[7],_0xf6c0[8],_0xf6c0[9]),allowNull:true},read:{type:_0xa37ex3[_0xf6c0[10]],defaultValue:false},favorite:{type:_0xa37ex3[_0xf6c0[10]],defaultValue:false},language:_0xa37ex3[_0xf6c0[3]],accountcode:_0xa37ex3[_0xf6c0[3]],context:_0xa37ex3[_0xf6c0[3]],exten:_0xa37ex3[_0xf6c0[3]],priority:_0xa37ex3[_0xf6c0[4]],uniqueid:_0xa37ex3[_0xf6c0[3]],localstationid:_0xa37ex3[_0xf6c0[3]],remotestationid:_0xa37ex3[_0xf6c0[3]],pagestransferred:_0xa37ex3[_0xf6c0[4]],resolution:_0xa37ex3[_0xf6c0[3]],transferrate:_0xa37ex3[_0xf6c0[3]],filename:_0xa37ex3[_0xf6c0[3]],filenamePDF:_0xa37ex3[_0xf6c0[3]],operation:_0xa37ex3[_0xf6c0[3]],uuid:_0xa37ex3[_0xf6c0[3]],laststatus:_0xa37ex3[_0xf6c0[3]],error:_0xa37ex3[_0xf6c0[3]],body:_0xa37ex3[_0xf6c0[11]]},{tableName:_0xf6c0[12],associate:function(_0xa37ex5){_0xa37ex4[_0xf6c0[13]](_0xa37ex5.FaxRoom);_0xa37ex4[_0xf6c0[13]](_0xa37ex5.Contact,{as:_0xf6c0[14]});_0xa37ex4[_0xf6c0[13]](_0xa37ex5.Contact,{as:_0xf6c0[15]});}});return _0xa37ex4;};
\ No newline at end of file
+'use strict';
+
+const _ = require('lodash');
+
+module.exports = function(sequelize, DataTypes) {
+
+ var FaxMessage = sequelize.define('FaxMessage', {
+ from: DataTypes.STRING,
+ to: DataTypes.STRING,
+ status: {
+ type: DataTypes.ENUM('SENT', 'SENDING', 'RECEIVED', 'FAILED', 'NOTE'),
+ defaultValue: 'SENDING'
+ },
+ // actionid: DataTypes.STRING,
+ channel: DataTypes.STRING,
+ channelstate: DataTypes.INTEGER,
+ channelstatedesc: DataTypes.STRING,
+ calleridnum: DataTypes.STRING,
+ calleridname: DataTypes.STRING,
+ connectedlinenum: DataTypes.STRING,
+ connectedlinename: DataTypes.STRING,
+ accountcode: DataTypes.STRING,
+ context: DataTypes.STRING,
+ exten: DataTypes.STRING,
+ priority: DataTypes.INTEGER,
+ uniqueid: DataTypes.STRING,
+ linkedid: DataTypes.STRING,
+ localstationid: DataTypes.STRING,
+ remotestationid: DataTypes.STRING,
+ pagestransferred: {
+ type: DataTypes.INTEGER,
+ defaultValue: 0
+ },
+ resolution: DataTypes.STRING,
+ transferrate: DataTypes.STRING,
+ filename: DataTypes.STRING,
+ lastStatus: DataTypes.STRING,
+ error: DataTypes.STRING,
+ // body: DataTypes.TEXT,
+ text: {
+ type: DataTypes.BLOB,
+ get: function() {
+ if (this.getDataValue('text')) {
+ return _.toString(this.getDataValue('text'));
+ }
+ }
+ },
+ retry: {
+ type: DataTypes.INTEGER,
+ defaultValue: 0
+ }
+ }, {
+ tableName: 'fax_messages',
+ paranoid: true,
+ associate: function(models) {
+ FaxMessage.belongsTo(models.FaxRoom, {
+ onDelete: 'cascade'
+ });
+ FaxMessage.belongsTo(models.User);
+ FaxMessage.hasMany(models.FaxAttachment);
+ }
+ });
+
+ return FaxMessage;
+};