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.
		
		
		
		
		
			
		
			
				
					52 lines
				
				1.7 KiB
			
		
		
			
		
	
	
					52 lines
				
				1.7 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 @module resources/Calls
							 | 
						||
| 
								 | 
							
								 The Twilio "Calls" Resource.
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								var generate = require('./generate');
							 | 
						||
| 
								 | 
							
								var ListInstanceResource = require('./ListInstanceResource');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								module.exports = function (client, accountSid) {
							 | 
						||
| 
								 | 
							
								    var baseResourceUrl = '/Accounts/' + accountSid + '/Calls';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    //Instance requests
							 | 
						||
| 
								 | 
							
								    function Calls(sid) {
							 | 
						||
| 
								 | 
							
								        var resourceApi = {};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        //Add standard instance resource functions
							 | 
						||
| 
								 | 
							
								        generate.restFunctions(resourceApi, client, ['GET', 'POST', 'DELETE', {update: 'POST'}], baseResourceUrl + '/' + sid);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        //Add in subresources
							 | 
						||
| 
								 | 
							
								        resourceApi.recordings = {
							 | 
						||
| 
								 | 
							
								            get: generate(client, 'GET', baseResourceUrl + '/' + sid + '/Recordings')
							 | 
						||
| 
								 | 
							
								        };
							 | 
						||
| 
								 | 
							
								        resourceApi.notifications = {
							 | 
						||
| 
								 | 
							
								            get: generate(client, 'GET', baseResourceUrl + '/' + sid + '/Notifications')
							 | 
						||
| 
								 | 
							
								        };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        resourceApi.recordings.list = resourceApi.recordings.get;
							 | 
						||
| 
								 | 
							
								        resourceApi.notifications.list = resourceApi.notifications.get;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        resourceApi.feedback = {
							 | 
						||
| 
								 | 
							
								            get: generate(client, 'GET', baseResourceUrl + '/' + sid + '/Feedback'),
							 | 
						||
| 
								 | 
							
								            post: generate(client, 'POST', baseResourceUrl + '/' + sid + '/Feedback'),
							 | 
						||
| 
								 | 
							
								            delete: generate(client, 'DELETE', baseResourceUrl + '/' + sid + '/Feedback')
							 | 
						||
| 
								 | 
							
								        };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        resourceApi.feedback.create = resourceApi.feedback.post;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        return resourceApi;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    //List requests
							 | 
						||
| 
								 | 
							
								    generate.restFunctions(Calls, client, ['GET', 'POST', {create: 'POST'}], baseResourceUrl);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    // Create ListInstanceResource for FeedbackSummary sub-resource
							 | 
						||
| 
								 | 
							
								    Calls.feedbackSummary = ListInstanceResource(client, accountSid,
							 | 
						||
| 
								 | 
							
								        'Calls/FeedbackSummary',
							 | 
						||
| 
								 | 
							
								        ['GET', 'DELETE'],
							 | 
						||
| 
								 | 
							
								        ['POST', {create:'POST'}]
							 | 
						||
| 
								 | 
							
								    );
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    return Calls;
							 | 
						||
| 
								 | 
							
								};
							 |