У меня есть схемы:Как обновить объект в mongodb с помощью мангуста?
exports.participant = function(mongodb){
var participantSchema = new mongoose.Schema({
uniqueid: {type: String, unique: true},
channel: String,
conference: String,
calleridnum: String,
calleridname: String,
event: String,
status : { type: Boolean, default: 0 }
},{ collection: 'participants'});
var participant = mongodb.model('Participant', participantSchema);
return participant;
}
Я уже пробовал how to update a object in mongodb via mongoose, но до сих пор она не работает для меня.
Я хочу, чтобы обновить статус 1
Я зову код обновления здесь. ,
файл расположение моей схемы является: ../models/app.js
файл расположение моего обновления является: ../lib/update.js
Это мой код обновления. ,
var appInit = require('../app');
var logger = appInit.logger;
var basedir = appInit.basedir;
var connection = appInit.connection;
var mongodb = appInit.mongodb;
var handleAsteriskAmi = require(basedir+'/lib/handleasteriskami');
var asteriskAmi = new handleAsteriskAmi();
var handleHttpProc = require(basedir+'/lib/handlehttpproc');
var httpProc = new handleHttpProc();
function handleSocketio(){
this.init = function(io){
io.sockets.on('connection',function(socket){
if(socket){
logger.info("socket.io is connected");
}
socket.on('disconnect', function() {
logger.error("Socket.io is disconnected");
});
socket.on('action', function(data){
var result = JSON.parse(JSON.stringify(data));
asteriskAmi.listenActionConfbridge(result,function(response){
logger.info(JSON.stringify(response));
if(response.event=="originate"){
io.sockets.emit("response",response);
}
if(response.event=="confbridgemute" || response.event=="confbridgeunmute"){
io.sockets.emit("response",response);
mongodb.model("Participant").update(
{channel: response.channel},
{$set: {status: 1}}
);
}
if(response.event=="confbridgelock" || response.event=="confbridgeunlock"){
io.sockets.emit("response",response);
}
});
});
});
Можете ли вы показать нам, где вы вызываете код обновления, где вы создаете 'mongodb' mongoose объект? – chridam
Здравствуйте @chridam. Я обновляю свой вопрос. , –