mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	While working on building client libraries from the Swagger API, I
noticed a problem with the nicknames.
    channel.deleteChannel()
    channel.answerChannel()
    channel.muteChannel()
Etc. We put the object name in the nickname (since we were generating C
code), but it makes OO generators redundant.
This patch makes the nicknames more OO friendly. This resulted in a lot
of name changing within the res_ari_*.so modules, but not much else.
There were a couple of other fixed I made in the process.
 * When reversible operations (POST /hold, POST /unhold) were made more
   RESTful (POST /hold, DELETE /unhold), the path for the second operation
   was left in the API declaration. This worked, but really the two
   operations should have been on the same API.
 * The POST /unmute operation had still not been REST-ified.
Review: https://reviewboard.asterisk.org/r/2940/
........
Merged revisions 402528 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402529 65c4cc65-6c06-0410-ace0-fbb531ad65f3
		
	
		
			
				
	
	
		
			100 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			100 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
| {
 | |
| 	"_copyright": "Copyright (C) 2012 - 2013, Digium, Inc.",
 | |
| 	"_author": "David M. Lee, II <dlee@digium.com>",
 | |
| 	"_svn_revision": "$Revision$",
 | |
| 	"apiVersion": "0.0.1",
 | |
| 	"swaggerVersion": "1.1",
 | |
| 	"basePath": "http://localhost:8088/stasis",
 | |
| 	"resourcePath": "/api-docs/sounds.{format}",
 | |
| 	"apis": [
 | |
| 		{
 | |
| 			"path": "/sounds",
 | |
| 			"description": "Sounds",
 | |
| 			"operations": [
 | |
| 				{
 | |
| 					"httpMethod": "GET",
 | |
| 					"summary": "List all sounds.",
 | |
| 					"nickname": "list",
 | |
| 					"responseClass": "List[Sound]",
 | |
| 					"parameters": [
 | |
| 						{
 | |
| 							"name": "lang",
 | |
| 							"description": "Lookup sound for a specific language.",
 | |
| 							"paramType": "query",
 | |
| 							"dataType": "string",
 | |
| 							"required": false
 | |
| 						},
 | |
| 						{
 | |
| 							"name": "format",
 | |
| 							"description": "Lookup sound in a specific format.",
 | |
| 							"paramType": "query",
 | |
| 							"dataType": "string",
 | |
| 							"required": false,
 | |
| 							"__note": "core show translation can show translation paths between formats, along with relative costs. so this could be just installed format, or we could follow that for transcoded formats."
 | |
| 						}
 | |
| 					]
 | |
| 				}
 | |
| 			]
 | |
| 		},
 | |
| 		{
 | |
| 			"path": "/sounds/{soundId}",
 | |
| 			"description": "Individual sound",
 | |
| 			"operations": [
 | |
| 				{
 | |
| 					"httpMethod": "GET",
 | |
| 					"summary": "Get a sound's details.",
 | |
| 					"nickname": "get",
 | |
| 					"responseClass": "Sound",
 | |
| 					"parameters": [
 | |
| 						{
 | |
| 							"name": "soundId",
 | |
| 							"description": "Sound's id",
 | |
| 							"paramType": "path",
 | |
| 							"required": true,
 | |
| 							"allowMultiple": false,
 | |
| 							"dataType": "string"
 | |
| 						}
 | |
| 					]
 | |
| 				}
 | |
| 			]
 | |
| 		}
 | |
| 	],
 | |
| 	"models": {
 | |
| 		"FormatLangPair": {
 | |
| 			"id": "FormatLangPair",
 | |
| 			"description": "Identifies the format and language of a sound file",
 | |
| 			"properties": {
 | |
| 				"language": {
 | |
| 					"required": true,
 | |
| 					"type": "string"
 | |
| 				},
 | |
| 				"format": {
 | |
| 					"required": true,
 | |
| 					"type": "string"
 | |
| 				}
 | |
| 			}
 | |
| 		},
 | |
| 		"Sound": {
 | |
| 			"id": "Sound",
 | |
| 			"description": "A media file that may be played back.",
 | |
| 			"properties": {
 | |
| 				"id": {
 | |
| 					"required": true,
 | |
| 					"description": "Sound's identifier.",
 | |
| 					"type": "string"
 | |
| 				},
 | |
| 				"text": {
 | |
| 					"required": false,
 | |
| 					"description": "Text description of the sound, usually the words spoken.",
 | |
| 					"type": "string"
 | |
| 				},
 | |
| 				"formats": {
 | |
| 					"required": true,
 | |
| 					"description": "The formats and languages in which this sound is available.",
 | |
| 					"type": "List[FormatLangPair]"
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 	}
 | |
| }
 |