You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.8 KiB

/**
@module twilio
A helper library for interaction with the Twilio REST API,
generation of TwiML markup, and creation of capability tokens for
use with the Twilio Client SDK.
*/
var webhooks = require('./webhooks'),
RestClient = require('./RestClient'),
IpMessagingClient = require('./IpMessagingClient'),
PricingClient = require('./PricingClient'),
MonitorClient = require('./MonitorClient'),
TaskRouterClient = require('./TaskRouterClient'),
LookupsClient = require('./LookupsClient'),
TrunkingClient = require('./TrunkingClient');
//Shorthand to automatically create a RestClient
function initializer(sid, tkn, options) {
return new RestClient(sid, tkn, options);
}
//Main functional components of the Twilio module
initializer.RestClient = RestClient;
initializer.PricingClient = PricingClient;
initializer.MonitorClient = MonitorClient;
initializer.TaskRouterClient = TaskRouterClient;
initializer.IpMessagingClient = IpMessagingClient;
initializer.LookupsClient = LookupsClient;
initializer.TrunkingClient = TrunkingClient;
initializer.AccessToken = require('./AccessToken');
initializer.Capability = require('./Capability');
initializer.TaskRouterCapability = require('./TaskRouterCapability');
initializer.TaskRouterWorkerCapability = require('./TaskRouterWorkerCapability');
initializer.TaskRouterWorkspaceCapability = require('./TaskRouterWorkspaceCapability');
initializer.TaskRouterTaskQueueCapability = require('./TaskRouterTaskQueueCapability');
initializer.TwimlResponse = require('./TwimlResponse');
// Seup webhook helper functionality
initializer.validateRequest = webhooks.validateRequest;
initializer.validateExpressRequest = webhooks.validateExpressRequest;
initializer.webhook = webhooks.webhook;
//public module interface is a function, which passes through to RestClient constructor
module.exports = initializer;