2013-04-22 14:58:53 +00:00
{
"_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/events.{format}" ,
"apis" : [
{
"path" : "/events" ,
"description" : "Events from Asterisk to applications" ,
"operations" : [
{
"httpMethod" : "GET" ,
"summary" : "WebSocket connection for events." ,
"nickname" : "eventWebsocket" ,
"responseClass" : "Event" ,
"parameters" : [
{
"name" : "app" ,
"description" : "Comma seperated list of applications to subscribe to." ,
"paramType" : "query" ,
"required" : true ,
"allowMultiple" : true ,
"dataType" : "string"
} ,
{
"name" : "Upgrade" ,
"description" : "RFC6455 header for upgrading a connection to a websocket." ,
"paramType" : "header" ,
"required" : true ,
"dataType" : "string" ,
"allowableValues" : {
"valueType" : "LIST" ,
"values" : [
"websocket"
]
}
}
]
}
]
}
] ,
"models" : {
"Event" : {
"id" : "Event" ,
"description" : "Asynchronous events from Asterisk. The non-required fields of this object are mutually exclusive." ,
"properties" : {
"application" : {
"type" : "string" ,
"description" : "Name of the application receiving the event." ,
"required" : true
} ,
"application_replaced" : { "type" : "ApplicationReplaced" } ,
2013-05-10 13:13:06 +00:00
"channel_created" : { "type" : "ChannelCreated" } ,
"channel_destroyed" : { "type" : "ChannelDestroyed" } ,
"channel_snapshot" : { "type" : "ChannelSnapshot" } ,
2013-04-22 14:58:53 +00:00
"channel_state_change" : { "type" : "ChannelStateChange" } ,
2013-05-10 13:13:06 +00:00
"channel_dtmf_received" : { "type" : "ChannelDtmfReceived" } ,
"channel_dialplan" : { "type" : "ChannelDialplan" } ,
"channel_caller_id" : { "type" : "ChannelCallerId" } ,
"channel_userevent" : { "type" : "ChannelUserevent" } ,
"channel_hangup_request" : { "type" : "ChannelHangupRequest" } ,
"channel_varset" : { "type" : "ChannelVarset" } ,
2013-04-22 14:58:53 +00:00
"stasis_end" : { "type" : "StasisEnd" } ,
"stasis_start" : { "type" : "StasisStart" }
}
} ,
"ApplicationReplaced" : {
"id" : "ApplicationReplaced" ,
"description" : "Notification that another WebSocket has taken over for an application." ,
"notes" : "An application may only be subscribed to by a single WebSocket at a time. If multiple WebSockets attempt to subscribe to the same application, the newer WebSocket wins, and the older one receives this event." ,
"properties" : {
"application" : {
2013-05-10 13:13:06 +00:00
"required" : true ,
2013-04-22 14:58:53 +00:00
"type" : "string"
}
}
} ,
2013-05-10 13:13:06 +00:00
"ChannelCreated" : {
"id" : "ChannelCreated" ,
"description" : "Notification that a channel has been created." ,
2013-04-22 14:58:53 +00:00
"properties" : {
2013-05-10 13:13:06 +00:00
"channel" : {
"required" : true ,
"type" : "Channel"
2013-04-22 14:58:53 +00:00
}
}
} ,
2013-05-10 13:13:06 +00:00
"ChannelSnapshot" : {
"id" : "ChannelSnapshot" ,
"description" : "Some part of channel state changed." ,
2013-04-22 14:58:53 +00:00
"properties" : {
"channel" : {
2013-05-10 13:13:06 +00:00
"required" : true ,
2013-04-22 14:58:53 +00:00
"type" : "Channel"
}
}
} ,
2013-05-10 13:13:06 +00:00
"ChannelDestroyed" : {
"id" : "ChannelDestroyed" ,
"description" : "Notification that a channel has been destroyed." ,
2013-04-22 14:58:53 +00:00
"properties" : {
2013-05-10 13:13:06 +00:00
"cause" : {
"required" : true ,
"description" : "Integer representation of the cause of the hangup" ,
"type" : "integer"
} ,
"cause_txt" : {
"required" : true ,
"description" : "Text representation of the cause of the hangup" ,
"type" : "string"
2013-04-22 14:58:53 +00:00
} ,
"channel" : {
2013-05-10 13:13:06 +00:00
"required" : true ,
2013-04-22 14:58:53 +00:00
"type" : "Channel"
}
}
} ,
"ChannelStateChange" : {
"id" : "ChannelStateChange" ,
"description" : "Notification of a channel's state change." ,
"properties" : {
2013-05-10 13:13:06 +00:00
"channel" : {
"required" : true ,
2013-04-22 14:58:53 +00:00
"type" : "Channel"
}
}
} ,
2013-05-10 13:13:06 +00:00
"ChannelDtmfReceived" : {
"id" : "ChannelDtmfReceived" ,
2013-04-22 14:58:53 +00:00
"description" : "DTMF received on a channel." ,
"notes" : "This event is sent when the DTMF ends. There is no notification about the start of DTMF" ,
"properties" : {
"digit" : {
2013-05-10 13:13:06 +00:00
"required" : true ,
2013-04-22 14:58:53 +00:00
"type" : "string" ,
"description" : "DTMF digit received (0-9, A-E, # or *)"
} ,
"channel" : {
2013-05-10 13:13:06 +00:00
"required" : true ,
2013-04-22 14:58:53 +00:00
"type" : "Channel" ,
"description" : "The channel on which DTMF was received"
}
}
} ,
2013-05-10 13:13:06 +00:00
"ChannelDialplan" : {
"id" : "ChannelDialplan" ,
"description" : "Channel changed location in the dialplan." ,
"properties" : {
"application" : {
"required" : true ,
"type" : "string" ,
"description" : "The application that the channel is currently in."
} ,
"application_data" : {
"required" : true ,
"type" : "string" ,
"description" : "The data that was passed to the application when it was invoked."
} ,
"channel" : {
"required" : true ,
"type" : "Channel" ,
"description" : "The channel that changed dialplan location."
}
}
} ,
"ChannelCallerId" : {
"id" : "ChannelCallerId" ,
"description" : "Channel changed Caller ID." ,
"properties" : {
"caller_presentation" : {
"required" : true ,
"type" : "integer" ,
"description" : "The integer representation of the Caller Presentation value."
} ,
"caller_presentation_txt" : {
"required" : true ,
"type" : "string" ,
"description" : "The text representation of the Caller Presentation value."
} ,
"channel" : {
"required" : true ,
"type" : "Channel" ,
"description" : "The channel that changed Caller ID."
}
}
} ,
"ChannelUserevent" : {
"id" : "ChannelUserevent" ,
"description" : "User-generated event with additional user-defined fields in the object." ,
"properties" : {
"eventname" : {
"required" : true ,
"type" : "string" ,
"description" : "The name of the user event."
} ,
"channel" : {
"required" : true ,
"type" : "Channel" ,
"description" : "The channel that signaled the user event."
}
}
} ,
"ChannelHangupRequest" : {
"id" : "ChannelHangupRequest" ,
"description" : "A hangup was requested on the channel." ,
"properties" : {
"cause" : {
"type" : "integer" ,
"description" : "Integer representation of the cause of the hangup."
} ,
"soft" : {
"type" : "boolean" ,
"description" : "Whether the hangup request was a soft hangup request."
} ,
"channel" : {
"required" : true ,
"type" : "Channel" ,
"description" : "The channel on which the hangup was requested."
}
}
} ,
"ChannelVarset" : {
"id" : "ChannelVarset" ,
"description" : "Channel variable changed." ,
"properties" : {
"variable" : {
"required" : true ,
"type" : "string" ,
"description" : "The variable that changed."
} ,
"value" : {
"required" : true ,
"type" : "string" ,
"description" : "The new value of the variable."
} ,
"channel" : {
"required" : true ,
"type" : "Channel" ,
"description" : "The channel on which the variable was set."
}
}
} ,
2013-04-22 14:58:53 +00:00
"StasisEnd" : {
"id" : "StasisEnd" ,
"description" : "Notification that a channel has left a Stasis appliction." ,
"properties" : {
2013-05-10 13:13:06 +00:00
"channel" : {
"required" : true ,
2013-04-22 14:58:53 +00:00
"type" : "Channel"
}
}
} ,
"StasisStart" : {
"id" : "StasisStart" ,
"description" : "Notification that a channel has entered a Stasis appliction." ,
"properties" : {
"args" : {
2013-05-10 13:13:06 +00:00
"required" : true ,
2013-04-22 14:58:53 +00:00
"type" : "List[string]" ,
"description" : "Arguments to the application"
} ,
2013-05-10 13:13:06 +00:00
"channel" : {
"required" : true ,
2013-04-22 14:58:53 +00:00
"type" : "Channel"
}
}
}
}
}