Asterisk ari-event

From 탱이의 잡동사니
Jump to navigation Jump to search

Overview

Asterisk ARI event 내용 정리

Channel

A specific communication connection between Asterisk and an Endpoint.

{
  "properties": {
    "accountcode": {
      "required": true,
      "type": "string"
    },
    "name": {
      "required": true,
      "type": "string",
      "description": "Name of the channel (i.e. SIP/foo-0000a7e3)"
    },
    "language": {
      "required": true,
      "type": "string",
      "description": "The default spoken language"
    },
    "channelvars": {
      "required": false,
      "type": "object",
      "description": "Channel variables"
    },
    "caller": {
      "required": true,
      "type": "CallerID"
    },
    "creationtime": {
      "required": true,
      "type": "Date",
      "description": "Timestamp when channel was created"
    },
    "state": {
      "allowableValues": {
        "valueType": "LIST",
        "values": [
          "Down",
          "Rsrved",
          "OffHook",
          "Dialing",
          "Ring",
          "Ringing",
          "Up",
          "Busy",
          "Dialing Offhook",
          "Pre-ring",
          "Unknown"
        ]
      },
      "required": true,
      "type": "string"
    },
    "connected": {
      "required": true,
      "type": "CallerID"
    },
    "dialplan": {
      "required": true,
      "type": "DialplanCEP",
      "description": "Current location in the dialplan"
    },
    "id": {
      "required": true,
      "type": "string",
      "description": "Unique identifier of the channel.\n\nThis is the same as the Uniqueid field in AMI."
    }
  },
  "id": "Channel",
  "description": "A specific communication connection between Asterisk and an Endpoint."
}
  • accountcode: string
  • caller: CallerID
  • channelvars: object(optional): Channel variables
  • connected: CallerID
  • creationtime: Date: Timestamp when channel was created.
  • dialplan: DialplanCEP: Current location in the dialplan.
  • id: string: Unique identifier of the channel.
This is the same as the Uniqueid filed in AMI

ChannelStateChange

Base type: Event

Notification of a channel's state change

{
  "properties": {
    "channel": {
      "required": true,
      "type": "Channel"
    }
  },
  "id": "ChannelStateChange",
  "description": "Notification of a channel's state change."
}
  • asterisk_id: string(optional): The unique ID for the Asterisk instance that raised this event.
  • type: string: Indicates the type of this message.
  • application: string: Name of the application receiving the event.
  • timestamp: Date(optional): Time at which this event was created.
  • channel: Channel

Example

{
	"type": "ChannelStateChange",
	"timestamp": "2018-10-23T12:36:07.628+0000",
	"channel": {
		"id": "pchero-462475.572686",
		"name": "PJSIP/pchero-voip-00001b1f",
		"state": "Ringing",
		"caller": {
			"name": "",
			"number": "1337"
		},
		"connected": {
			"name": "",
			"number": "1337"
		},
		"accountcode": "",
		"dialplan": {
			"context": "pchero-voip",
			"exten": "s",
			"priority": 1
		},
		"creationtime": "2018-10-23T12:36:02.671+0000",
		"language": "en"
	},
	"asterisk_id": "210445d7-73bd-456a-aef2-e0ef847bfa0f",
	"application": "pchero_voip"
}

ChannelVarset

Base type: Event

Channel variable changed

{
  "properties": {
    "variable": {
      "required": true,
      "type": "string",
      "description": "The variable that changed."
    },
    "channel": {
      "required": false,
      "type": "Channel",
      "description": "The channel on which the variable was set.\n\nIf missing, the variable is a global variable."
    },
    "value": {
      "required": true,
      "type": "string",
      "description": "The new value of the variable."
    }
  },
  "id": "ChannelVarset",
  "description": "Channel variable changed."
}
  • asterisk_id: string(optional): The unique ID for the Asterisk instance that raised this event.
  • type: string: Indicates the type of this message.
  • application: string: Name of the application receiving the event.
  • timestamp: Date(optional): Time at which this event was created.
  • channel: Channel(optional): The channel on which the variable was set.
If missing, the variable is a global variable.

Dial

Base type: Event

Dialing state has changed.

{
  "properties": {
    "forwarded": {
      "required": false,
      "type": "Channel",
      "description": "Channel that the caller has been forwarded to."
    },
    "caller": {
      "required": false,
      "type": "Channel",
      "description": "The calling channel."
    },
    "dialstatus": {
      "required": true,
      "type": "string",
      "description": "Current status of the dialing attempt to the peer."
    },
    "forward": {
      "required": false,
      "type": "string",
      "description": "Forwarding target requested by the original dialed channel."
    },
    "dialstring": {
      "required": false,
      "type": "string",
      "description": "The dial string for calling the peer channel."
    },
    "peer": {
      "required": true,
      "type": "Channel",
      "description": "The dialed channel."
    }
  },
  "id": "Dial",
  "description": "Dialing state has changed."
}
  • asterisk_id: string(optional): The unique ID for the Asterisk instance that raised this event.
  • type: string: Indicates the type of this message.
  • application: string: Name of the application receiving the event.
  • timestamp: Date(optional): Time at which this event was created.
  • caller: Channel(optional): The calling channel
  • dialstatus: string: Current status of the dialing attempt to the peer.
  • dialstring: string(optional): The dial string for calling the peer channel.
  • forward: string(optional): Forwarding target requested by the original dialed channel.
  • forwarded: Channel(optional): Channel that the caller has been forwared to.
  • peer: Channel: The dialed channel.

Example

{
	"type": "Dial",
	"timestamp": "2018-10-23T12:36:02.673+0000",
	"dialstatus": "",
	"forward": "",
	"dialstring": "pchero-voip/sip:284712939482@127.0.0.1",
	"peer": {
		"id": "pchero-462475.572686",
		"name": "PJSIP/pchero-voip-00001b1f",
		"state": "Down",
		"caller": {
			"name": "",
			"number": "1337"
		},
		"connected": {
			"name": "",
			"number": "1337"
		},
		"accountcode": "",
		"dialplan": {
			"context": "pchero-voip",
			"exten": "s",
			"priority": 1
		},
		"creationtime": "2018-10-23T12:36:02.671+0000",
		"language": "en"
	},
	"asterisk_id": "210445d7-73bd-456a-aef2-e0ef847bfa0f",
	"application": "pchero_voip"
}

See also