1.0.1 • Published 8 years ago
hapi-km v1.0.1
hapi-km
Hapi plugin wrapping kilometer.io's REST api for easy access within the server. On successful registration, four new methods will be available on the server.methods object.
Installation:
npm install --save hapi-km
Example usage:
'use strict';
const Hapi = require('hapi');
// Create a server with a host and port
const server = new Hapi.Server();
server.connection({
host: 'localhost',
port: 8000
});
server.register({
register: require('hapi-km'),
options: {
app_id: require('./config').kilometerAppId
}
}, (err) => {
// Oops
});
// An example route using the plugin
server.route({
method: 'GET',
path: '/hello',
handler: (request, reply) => {
request.server.methods.km.trackIdentifiedEvent({
user_id: 'larry_potter',
event_name: 'some_event',
event_properties: {
event_property: 'some_property'
}
}, (err, res) => {
// This callback is optional
if (err) {
throw (err);
}
if (res.statusCode >= 400) {
console.log(res.statusMessage);
}
reply('hello there');
});
}
});
// Start the server
server.start((err) => {
if (err) {
throw err;
}
console.log('Server running at:', server.info.uri);
});
Methods
trackIdentifiedEvent(options, [callback])
Tracks an identified event at kilometer.io.
options
An object with the following keys:user_id
A kilometer.io user idevent_name
The name of the event_nameevent_properties
An object with one or more propertiesevent_property
A property on the event_propertyevent_property_2
Yet a property (opt.)
callback
A optional function with signaturefunction(err, res)
with status of the call to kilometer.io.
setUserProperty(options, [callback])
Sets one or more user properties.
options
An object with one or more properties and their values:foo_property
bar_property
callback
A optional function with signaturefunction(err, res)
with status of the call to kilometer.io.
increaseUserProperty(options, [callback])
Increases the value of a property.
options
An object with one property and a numerical value to increase it with:foo_property
callback
A optional function with signaturefunction(err, res)
with status of the call to kilometer.io.
decreaseUserProperty(options, [callback])
Decreases the value of a property.
options
An object with one property and a numerical value to decrease it with:foo_property
callback
A optional function with signaturefunction(err, res)
with status of the call to kilometer.io.