PRESENCE_STATE()
Synopsis
Get or Set a presence state.
Description
The PRESENCE_STATE function can be used to retrieve the presence from any presence provider. For example:
NoOp(SIP/mypeer has presence ${PRESENCE_STATE(SIP/mypeer,value)})
NoOp(Conference number 1234 has presence message ${PRESENCE_STATE(MeetMe:1234,message)})
The PRESENCE_STATE function can also be used to set custom presence state from the dialplan. The CustomPresence:
prefix must be used. For example:
Set(PRESENCE_STATE(CustomPresence:lamp1)=away,temporary,Out to lunch)
Set(PRESENCE_STATE(CustomPresence:lamp2)=dnd,,Trying to get work done)
Set(PRESENCE_STATE(CustomPresence:lamp3)=xa,T24gdmFjYXRpb24=,,e)
Set(BASE64_LAMP3_PRESENCE=${PRESENCE_STATE(CustomPresence:lamp3,subtype,e)})
You can subscribe to the status of a custom presence state using a hint in the dialplan:
exten => 1234,hint,CustomPresence:lamp1
The possible values for both uses of this function are:
not_set | unavailable | available | away | xa | chat | dnd
Syntax
No Format |
---|
PRESENCE_STATE(provider,field[,options]) |
Arguments
provider
- The provider of the presence, such asCustomPresence
field
- Which field of the presence state information is wanted.value
- The current presence, such asaway
subtype
- Further information about the current presencemessage
- A custom message that may indicate further details about the presence
options
e
- On Write - Use this option when the subtype and message provided are Base64 encoded. On Read - Retrieves message/subtype in Base64 encoded form.
Import Version
This documentation was imported from Asterisk Version SVN-branch-11-r381702