Index installed sounds and implement ARI sounds queries
authorKinsey Moore <kmoore@digium.com>
Mon, 24 Jun 2013 13:49:20 +0000 (13:49 +0000)
committerKinsey Moore <kmoore@digium.com>
Mon, 24 Jun 2013 13:49:20 +0000 (13:49 +0000)
commita0b7a49a4a238207a2fe0a49fdc3b65994baa1a5
tree04bb2ee790a186b6d0865fd9aabc2817a9715f94
parentcc29957a6f3339667f02a7386416c7374122d403
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
14 files changed:
include/asterisk/_private.h
include/asterisk/file.h
include/asterisk/format.h
include/asterisk/http.h
include/asterisk/media_index.h [new file with mode: 0644]
include/asterisk/sounds_index.h [new file with mode: 0644]
main/asterisk.c
main/file.c
main/http.c
main/media_index.c [new file with mode: 0644]
main/sounds_index.c [new file with mode: 0644]
res/res_stasis_http.c
res/stasis_http/resource_sounds.c
rest-api/api-docs/sounds.json