Index installed sounds and implement ARI sounds queries

This adds support for stasis/sounds and stasis/sounds/{ID} queries via
the Asterisk RESTful Interface (ARI, formerly Stasis-HTTP).

The following changes have been made to accomplish this:
* A modular indexer was created for local media.
* A new function to get an ast_format associated with a file extension
  was added.  
* Modifications were made to the built-in HTTP server so that URI
  decoding could be deferred to the URI handler when necessary.
* The Stasis-HTTP sounds JSON documentation was modified to handle
  cases where multiple languages are installed in different formats.
* Register and Unregister events for formats were added to the system
  topic.

(closes issue ASTERISK-21584)
(closes issue ASTERISK-21585)
Review: https://reviewboard.asterisk.org/r/2507/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@392700 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Kinsey Moore
2013-06-24 13:49:20 +00:00
parent cc29957a6f
commit a0b7a49a4a
14 changed files with 1402 additions and 9 deletions

View File

@@ -101,6 +101,8 @@ struct ast_http_uri {
unsigned int mallocd:1;
/*! Data structure is malloc'd */
unsigned int dmallocd:1;
/*! Don't automatically decode URI before passing it to the callback */
unsigned int no_decode_uri:1;
/*! Data to bind to the uri if needed */
void *data;
/*! Key to be used for unlinking if multiple URIs registered */