Built motion from commit 27af9f03b.|1.0.28
[motion.git] / server / models / sms_message.js
1 'use strict';
2
3
4 module.exports = function(sequelize, DataTypes) {
5   var SmsMessage = sequelize.define('SmsMessage', {
6     from: {
7       type: DataTypes.STRING,
8       allowNull: false,
9       validate: {
10         notEmpty: true,
11         is: /^[\+]?[0-9]+$/
12       }
13     },
14     to: {
15       type: DataTypes.STRING,
16       allowNull: false,
17       validate: {
18         notEmpty: true,
19         is: /^[\+]?[0-9]+$/
20       }
21     },
22     body: {
23       type: DataTypes.BLOB,
24       get: function() {
25         return this.getDataValue('body').toString();
26       }
27     },
28     status: {
29       type: DataTypes.STRING,
30       defaultValue: 'SENDING'
31     },
32     errorcode: DataTypes.STRING,
33     skebby_message_id: DataTypes.STRING,
34     res_data: DataTypes.STRING,
35     source: DataTypes.STRING,
36     auto: {
37       type: DataTypes.BOOLEAN,
38       defaultValue: false
39     },
40   }, {
41     tableName: 'sms_messages',
42     associate: function(models) {
43       SmsMessage.belongsTo(models.User);
44       SmsMessage.belongsTo(models.SmsRoom, {
45         onDelete: 'cascade'
46       });
47       SmsMessage.belongsTo(models.SmsAccount);
48     }
49   })
50   return SmsMessage;
51 };