File: routes/lib/api/apiFunctions.js
/**
* This module gives CORE API to the applications.
@module API
*/
module.exports.ApiFunctions = {
/**
* Provides basic api functions.
@class ApiFunctions
*/
getVisitors :{
mandatoryFields: ['__pId']
,
method:function(req, res){
/**
* To get the visitor details.
@method getVisitors
@params profileId {String}
@return {Array} array of visitor details
*/
var JSONStream = require('JSONStream');
var db= require('../db').getDb();
var util= require('util');
var __Profile = req.param('__pId');
var r = db.collection('visitors.'+__Profile).find();
res.status(200);
r.pipe(JSONStream.stringify()).pipe(res);
}
},
getVisitorActivities:{
mandatory:['id'],
method:function(req,res){
/**
* To get the visitor activity details.
@method getVisitorActivities
@params profileId {String}
@return {Array} array of visitor activity details.
*/
res.end('not implimented');
}
},
getVisitorTimeLine:{
mandatory:['profile_id','id'],
method:function(req,res){
/**
* To get the visitor activity Time line.
@method getVisitorTimeLine
@params profileId{Number}
@params id {String} sessionid
@return {Array} array of visitor activity details.
*/
res.end('not implimented');
}
},
getVisitorSession:{
mandatory:['__pId','sessionId'],
method:function(req,res){
/**
* To get the visitor activity of entire visitor session.
@method getVisitorSession
@params profileId{Number}
@params session_id {String} sessionid
@return {Array} array of visitor activity details.
*/
var JSONStream = require('JSONStream');
var db= require('../db').getDb();
var util= require('util');
//accssing parameters.
var __Profile = req.param('__pId');
var __session = req.param('sessionId');
var r = db.collection('visitors.'+__Profile).find({_track:__session,idsite:__Profile});
res.status(200);
r.pipe(JSONStream.stringify()).pipe(res);
}
},
undefined:function(req,res){
/**
* Traping undefined method
@method undefined
*/
res.end('not implimented');
}
};