Funções do Dialplan do Asterisk 22
Descrição:A função
PRESENCE_STATE pode ser usada para recuperar a presença de qualquer provedor de presença. Por exemplo:
NoOp(SIP/mypeer has presence ${PRESENCE_STATE(SIP/mypeer,value)})
NoOp(Conference number 1234 has presence message ${PRESENCE_STATE(MeetMe:1234,message)})A função
PRESENCE_STATE também pode ser usada para definir um estado de presença personalizado a partir do dialplan. O prefixo
'CustomPresence:' deve ser utilizado. Por exemplo:
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)})
Você pode assinar o status de um estado de presença personalizado usando uma dica (
hint) no dialplan:
exten => 1234,hint,,CustomPresence:lamp1
Os valores possíveis para ambos os usos desta função são:
not_set | unavailable | available | away | xa | chat | dndSintaxe:PRESENCE_STATE(provider,field[,options])Parâmetros:- provider - O provedor da presença, como 'CustomPresence'
- field - Qual campo das informações de estado de presença é desejado:
- value - A presença atual, como 'away'
- subtype - Informações adicionais sobre a presença atual
- message - Uma mensagem personalizada que pode indicar detalhes adicionais sobre a presença
Opções:- e - Na gravação - Use esta opção quando o subtype e a message fornecidos estiverem codificados em Base64. Os valores serão armazenados codificados no Asterisk, mas todos os consumidores do estado de presença (por exemplo, o pacote de eventos SIP presence) receberão valores decodificados. Na leitura - Recupera message/subtype não codificados na forma codificada em Base64.