Resource Lists
Overview
With Asterisk 13 comes the ability to use Resource Lists. This page covers the implementation of this feature and how it interacts with the "internal plumbing". The sales pitch for resource lists is to lighten the load on the system. In general hint subscriptions can be taxing on your PBX and on the network. The formula on the page suggest that each user adds n^2 subscriptions. At some point this stops scaling well and becomes limited. This should reduce that load and allow better scalability.
Asterisk centric notes
Configuration
This uses ini style configuration:
type
: Like with all items inpjsip.conf
, a type must be specified to indicate what type of configuration object is being used. A "resource_list" can be thought of as a narrowly-defined address of record. Like an AoR, it is addressable; SIP SUBSCRIBE messages are addressed to this resource.event
: The SIP event package that this resource list supplies state for. Providing the event package name is essential for understanding how to interpret list items.list_item
: Each of these is a resource in the list. In this case, each item is a dialplan extension and context in which to look up a hint. Note that list_items may be listed on separate lines or they may be comma-separated on a single line. The comma-separated option allows for configuration in realtime.full_state
: Indicates if notifications should contain the state of all list items. If set to "yes" then the full state of the list is sent on every state change. If set to "no" then only the resources whose states have changed will be sent in notifications. Note that RFC 4662 mandates certain times when a full state MUST be sent. Even if full_state is set to "no" we will still send full state at those mandated times.notification_batch_interval
: Indicates how many milliseconds to wait after an initial state change to accumulate further state changes before sending out a notification. In a very busy phone system, setting a reasonable interval will allow for multiple state changes to be sent to a subscriber at the same time. Setting the batch interval too high may result in seeing state changes too late or missing transient state changes altogether. Setting this to zero will cause notifications to be pushed out immediately when a state change occurs on a resource in the list.
[sales_team]
type = resource_list
event = presence
list_item = bob@default
list_item = alice@outgoing
list_item = carol@default,david@default
full_state = yes
notification_batch_interval = 2000 |
Misc Notes
This seems to be tied in to PJSIP. There is someone working to keep chan_sip alive but It is unclear if the support for this component will survive in chan_sip. (maybe we can get an opinion on this)
Endpoint Centric Notes
Phone support
Insert a list of phones that support this and gotchas
Misc Notes
End points subscribe to a single resource which gets mapped to the resource list via RFC 4662 Resource List Subscriptions
Module Centric Notes
End Point Manager