mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-23 14:44:28 +00:00
Add channel events for res_stasis apps
This change adds a framework in res_stasis for handling events from channel topics. JSON event generation and validation code is created from event documentation in rest-api/api-docs/events.json to assist in JSON event generation, ensure consistency, and ensure that accurate documentation is available for ALL events that are received by res_stasis applications. The userevent application has been refactored along with the code that handles userevent channel blob events to pass the headers as key/value pairs in the JSON blob. As a side-effect, app_userevent now handles duplicate keys by overwriting the previous value. Review: https://reviewboard.asterisk.org/r/2428/ (closes issue ASTERISK-21180) Patch-By: Kinsey Moore <kmoore@digium.com> git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@388275 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -295,13 +295,17 @@ class Model(Stringify):
|
||||
|
||||
def __init__(self):
|
||||
self.id = None
|
||||
self.notes = None
|
||||
self.description = None
|
||||
self.properties = None
|
||||
|
||||
def load(self, id, model_json, processor, context):
|
||||
context = add_context(context, model_json, 'id')
|
||||
# This arrangement is required by the Swagger API spec
|
||||
self.id = model_json.get('id')
|
||||
if id != self.id:
|
||||
raise SwaggerError("Model id doesn't match name", c)
|
||||
self.description = model_json.get('description')
|
||||
props = model_json.get('properties').items() or []
|
||||
self.properties = [
|
||||
Property(k).load(j, processor, context) for (k, j) in props]
|
||||
|
Reference in New Issue
Block a user