Script started on Tue 31 Mar 2015 09:01:30 AM EDT
]0;root@privatepbx:/usr/local/fop2[?1034h[32mroot@privatepbx:/usr/local/fop2 $ (B[mservice fop2 start exit[K[K[K[K[K[K./fop2_server -X 511
Flash Operator Panel 2 - License file fop2.lic not found.
** COLLECT INCLUDES fop2.cfg , tipo server, nest level 1
** Executing config script /usr/local/fop2/autoconfig-users.sh
** Done executing script /usr/local/fop2/autoconfig-users.sh of type server
-- TIMER asterisk_ami_connect and async config check
** READ SERVER CONFIG
** PLUGIN: Loading server side plugin /var/www/html/fop2/admin/plugins/clock/clock.pl
** PLUGIN: Loading server side plugin /var/www/html/fop2/admin/plugins/conferencebutton/conferencebutton.pl
** PLUGIN: Loading server side plugin /var/www/html/fop2/admin/plugins/configonreload/configonreload.pl
** PLUGIN: Loading server side plugin /var/www/html/fop2/admin/plugins/holdreport/holdreport.pl
** PLUGIN: Loading server side plugin /var/www/html/fop2/admin/plugins/presencedndfpbx/presencedndfpbx.pl
** PLUGIN: Loading server side plugin /var/www/html/fop2/admin/plugins/presencepause/presencepause.pl
** PLUGIN: Loading server side plugin /var/www/html/fop2/admin/plugins/queuecounter/queuecounter.pl
** READ SERVER calling COLLECT INCLUDES archivo autobuttons.cfg context GENERAL!buttons
** COLLECT INCLUDES autobuttons.cfg , tipo buttons, nest level 1
** Executing config script /usr/local/fop2/autoconfig-buttons.sh
** VOICEMAIL PATH /var/spool/asterisk/voicemail
** Done executing script /usr/local/fop2/autoconfig-buttons.sh of type buttons
-- TIMER asterisk_ami_connect and async config check
** READ BUTTONS CONFIG buttons para contexto GENERAL
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
** GENERA CONFIG START
** GENERA CONFIG - GENERAL
** GENERA CONFIG END
Set doing hup to zero
** Starting Socket server for clients
** Asterisk Manager undefined, attempt connection
!! Attempting to connect to AMI on server localhost
127.0.0.1 -> AuthType: md5
127.0.0.1 -> Action: Challenge
127.0.0.1 -> ActionID: 1
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 1
127.0.0.1 <- Challenge: 185152175
127.0.0.1 -> AuthType: md5
127.0.0.1 -> Events: on
127.0.0.1 -> Username: admin
127.0.0.1 -> Action: login
127.0.0.1 -> Key: 754764b9dc453755dd8b3920e9c0c8b9
127.0.0.1 -> ActionID: 2
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 2
127.0.0.1 <- Message: Authentication accepted
** QUERY INITIAL STATUS START
It's blessed into class FOP2::Extension
++ GET SERVER for IAX2/5315 = localhost
** QUERY UNPOPULATED MAILBOX 5315@default
127.0.0.1 -> Mailbox: 5315@default
127.0.0.1 -> Action: MailboxCount
127.0.0.1 -> ActionID: 3
++ GET SERVER for SIP/5312 = localhost
** QUERY CUSTOM ASTDB 5312 CF para chan SIP/5312
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 5312
127.0.0.1 -> ActionID: 4
127.0.0.1 -> Action: Status
127.0.0.1 -> Action: QueueStatus
127.0.0.1 -> Action: Agents
127.0.0.1 -> Action: SipPeers
127.0.0.1 -> Action: IaxPeers
127.0.0.1 -> Action: ParkedCalls
Skipping user & device queries, not in user device mode
0
127.0.0.1 -> Command: meetme list 2664 concise
127.0.0.1 -> Action: Command
127.0.0.1 -> ActionID: 5
127.0.0.1 -> Conference: 2664
127.0.0.1 -> Action: ConfbridgeList
127.0.0.1 -> ActionID: 6
127.0.0.1 -> Command: meetme list 2663 concise
127.0.0.1 -> Action: Command
127.0.0.1 -> ActionID: 7
127.0.0.1 -> Conference: 2663
127.0.0.1 -> Action: ConfbridgeList
127.0.0.1 -> ActionID: 8
127.0.0.1 -> Command: database show fop2notes
127.0.0.1 -> Action: Command
127.0.0.1 -> ActionID: 9
127.0.0.1 -> Command: database show fop2state
127.0.0.1 -> Action: Command
127.0.0.1 -> ActionID: 10
127.0.0.1 -> Action: CoreSettings
127.0.0.1 -> ActionID: 11
127.0.0.1 <- Event: FullyBooted
127.0.0.1 <- Privilege: system,all
127.0.0.1 <- Status: Fully Booted
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 3
127.0.0.1 <- Message: Mailbox Message Count
127.0.0.1 <- Mailbox: 5315@default
127.0.0.1 <- UrgMessages: 0
127.0.0.1 <- NewMessages: 4
127.0.0.1 <- OldMessages: 0
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
++ GET SERVER for local/2517@outbound-allroutes = localhost
** QUERY UNPOPULATED MAILBOX 2517@default
127.0.0.1 -> Mailbox: 2517@default
127.0.0.1 -> Action: MailboxCount
127.0.0.1 -> ActionID: 12
FIN handle_ami_response canal IAX2/5315, comando voicemail, datos 1, slot
FIN handle_ami_response canal IAX2/5315, comando voicemailcount, datos &vmail_count!4!0, slot
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 4
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
++ GET SERVER for IAX2/5315 = localhost
** QUERY CUSTOM ASTDB 5315 CF para chan IAX2/5315
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 5315
127.0.0.1 -> ActionID: 13
127.0.0.1 <- Response: Success
127.0.0.1 <- Message: Channel status will follow
127.0.0.1 <- Event: StatusComplete
127.0.0.1 <- Items: 0
STATUS COMPLETE
127.0.0.1 <- Response: Success
127.0.0.1 <- Message: Queue status will follow
127.0.0.1 <- Event: QueueParams
127.0.0.1 <- Queue: default
127.0.0.1 <- Max: 0
127.0.0.1 <- Strategy: ringall
127.0.0.1 <- Calls: 0
127.0.0.1 <- Holdtime: 0
127.0.0.1 <- TalkTime: 0
127.0.0.1 <- Completed: 0
127.0.0.1 <- Abandoned: 0
127.0.0.1 <- ServiceLevel: 0
127.0.0.1 <- ServicelevelPerf: 0.0
127.0.0.1 <- Weight: 0
Not a reference at all
127.0.0.1 <- Event: QueueParams
127.0.0.1 <- Queue: testqueue
127.0.0.1 <- Max: 0
127.0.0.1 <- Strategy: ringall
127.0.0.1 <- Calls: 0
127.0.0.1 <- Holdtime: 0
127.0.0.1 <- TalkTime: 0
127.0.0.1 <- Completed: 0
127.0.0.1 <- Abandoned: 0
127.0.0.1 <- ServiceLevel: 0
127.0.0.1 <- ServicelevelPerf: 0.0
127.0.0.1 <- Weight: 0
Not a reference at all
127.0.0.1 <- Event: QueueParams
127.0.0.1 <- Queue: 5320
127.0.0.1 <- Max: 0
127.0.0.1 <- Strategy: ringall
127.0.0.1 <- Calls: 0
127.0.0.1 <- Holdtime: 0
127.0.0.1 <- TalkTime: 0
127.0.0.1 <- Completed: 0
127.0.0.1 <- Abandoned: 4
127.0.0.1 <- ServiceLevel: 60
127.0.0.1 <- ServicelevelPerf: 0.0
127.0.0.1 <- Weight: 0
It's blessed into class FOP2::Queue
127.0.0.1 <- Event: QueueMember
127.0.0.1 <- Queue: 5320
127.0.0.1 <- Name: Johann Remote Office
127.0.0.1 <- Location: Local/5313@from-queue/n
127.0.0.1 <- StateInterface: hint:5313@ext-local
127.0.0.1 <- Membership: static
127.0.0.1 <- Penalty: 0
127.0.0.1 <- CallsTaken: 0
127.0.0.1 <- LastCall: 0
127.0.0.1 <- Status: 1
127.0.0.1 <- Paused: 0
Executing AMI Event Handler in plugin conferencebutton for event QUEUEMEMBER
127.0.0.1 -> Event: QueueMember
127.0.0.1 -> Status: 1
127.0.0.1 -> Queue: 5320
127.0.0.1 -> Membership: static
127.0.0.1 -> Paused: 0
127.0.0.1 -> StateInterface: hint:5313@ext-local
127.0.0.1 -> Penalty: 0
127.0.0.1 -> CallsTaken: 0
127.0.0.1 -> LastCall: 0
127.0.0.1 -> Location: Local/5313@from-queue/n
127.0.0.1 -> Name: Johann Remote Office
127.0.0.1 -> ActionID: 14
Executing AMI Event Handler in plugin presencepause for event QUEUEMEMBER
It's blessed into class FOP2::Queue
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
++ SET STATUS for SIP/5313 = unpaused
END HANDLING AMI EVENT channel SIP/5313, command status, data unpaused, slot 0
END HANDLING AMI EVENT channel SIP/5313, command rename, data 5313 Johann Remote Office, slot
127.0.0.1 <- Event: QueueParams
127.0.0.1 <- Queue: 4443
127.0.0.1 <- Max: 0
127.0.0.1 <- Strategy: ringall
127.0.0.1 <- Calls: 0
127.0.0.1 <- Holdtime: 0
127.0.0.1 <- TalkTime: 0
127.0.0.1 <- Completed: 0
127.0.0.1 <- Abandoned: 0
127.0.0.1 <- ServiceLevel: 60
127.0.0.1 <- ServicelevelPerf: 0.0
127.0.0.1 <- Weight: 0
It's blessed into class FOP2::Queue
127.0.0.1 <- Event: QueueMember
127.0.0.1 <- Queue: 4443
127.0.0.1 <- Name: Johann Remote Office
127.0.0.1 <- Location: Local/5313@from-queue/n
127.0.0.1 <- StateInterface: hint:5313@ext-local
127.0.0.1 <- Membership: static
127.0.0.1 <- Penalty: 0
127.0.0.1 <- CallsTaken: 0
127.0.0.1 <- LastCall: 0
127.0.0.1 <- Status: 1
127.0.0.1 <- Paused: 0
Executing AMI Event Handler in plugin conferencebutton for event QUEUEMEMBER
127.0.0.1 -> Event: QueueMember
127.0.0.1 -> Status: 1
127.0.0.1 -> Queue: 4443
127.0.0.1 -> Membership: static
127.0.0.1 -> Paused: 0
127.0.0.1 -> StateInterface: hint:5313@ext-local
127.0.0.1 -> Penalty: 0
127.0.0.1 -> CallsTaken: 0
127.0.0.1 -> LastCall: 0
127.0.0.1 -> Location: Local/5313@from-queue/n
127.0.0.1 -> Name: Johann Remote Office
127.0.0.1 -> ActionID: 15
Executing AMI Event Handler in plugin presencepause for event QUEUEMEMBER
It's blessed into class FOP2::Queue
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
++ SET STATUS for SIP/5313 = unpaused
END HANDLING AMI EVENT channel SIP/5313, command status, data unpaused, slot 0
END HANDLING AMI EVENT channel SIP/5313, command rename, data 5313 Johann Remote Office, slot
127.0.0.1 <- Event: QueueStatusComplete
QUEUE STATUS COMPLETE
It's blessed into class FOP2::Queue
** QUEUE MEMBER LIST start for queue QUEUE/DEFAULT^LOCALHOST
** QUEUE MEMBER LIST devuelve [ ]
It's blessed into class FOP2::Queue
** QUEUE MEMBER LIST start for queue QUEUE/5320^LOCALHOST
** QUEUE MEMBER LIST devuelve [ { "paused": "0", "state": "free", "loc": "Local/5313@from-queue/n", "queue": "QUEUE/5320^LOCALHOST", "pty": "0", "name":"Johann Remote Office", "callstaken": "0" } ]
It's blessed into class FOP2::Queue
** QUEUE MEMBER LIST start for queue QUEUE/TESTQUEUE^LOCALHOST
** QUEUE MEMBER LIST devuelve [ ]
It's blessed into class FOP2::Queue
** QUEUE MEMBER LIST start for queue QUEUE/4443^LOCALHOST
** QUEUE MEMBER LIST devuelve [ { "paused": "0", "state": "free", "loc": "Local/5313@from-queue/n", "queue": "QUEUE/4443^LOCALHOST", "pty": "0", "name":"Johann Remote Office", "callstaken": "0" } ]
END HANDLING AMI EVENT channel QUEUE/DEFAULT^LOCALHOST, command queuemembers, data WyBd, slot
END HANDLING AMI EVENT channel QUEUE/5320^LOCALHOST, command queuemembers, data WyB7ICJwYXVzZWQiOiAiMCIsICJzdGF0ZSI6ICJmcmVlIiwgImxvYyI6ICJMb2NhbC81MzEzQGZyb20tcXVldWUvbiIsICJxdWV1ZSI6ICJRVUVVRS81MzIwXkxPQ0FMSE9TVCIsICJwdHkiOiAiMCIsICJuYW1lIjoiSm9oYW5uIFJlbW90ZSBPZmZpY2UiLCAiY2FsbHN0YWtlbiI6ICIwIiB9IF0=, slot
END HANDLING AMI EVENT channel QUEUE/TESTQUEUE^LOCALHOST, command queuemembers, data WyBd, slot
END HANDLING AMI EVENT channel QUEUE/4443^LOCALHOST, command queuemembers, data WyB7ICJwYXVzZWQiOiAiMCIsICJzdGF0ZSI6ICJmcmVlIiwgImxvYyI6ICJMb2NhbC81MzEzQGZyb20tcXVldWUvbiIsICJxdWV1ZSI6ICJRVUVVRS80NDQzXkxPQ0FMSE9TVCIsICJwdHkiOiAiMCIsICJuYW1lIjoiSm9oYW5uIFJlbW90ZSBPZmZpY2UiLCAiY2FsbHN0YWtlbiI6ICIwIiB9IF0=, slot
127.0.0.1 <- Response: Success
127.0.0.1 <- Message: Agents will follow
127.0.0.1 <- Event: AgentsComplete
127.0.0.1 <- Response: Success
127.0.0.1 <- EventList: start
127.0.0.1 <- Message: Peer status list will follow
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: 2250
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 10.1.9.29
127.0.0.1 <- IPport: 5060
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: no
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: no
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: yes
127.0.0.1 <- Status: OK (42 ms)
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/2250 to ok
++ GET QUALIFY for SIP/2250 = ok
END HANDLING AMI EVENT channel SIP/2250, command qualify, data ok, slot 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: 5201
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 10.1.9.131
127.0.0.1 <- IPport: 5060
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: no
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: no
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: yes
127.0.0.1 <- Status: OK (44 ms)
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
Not a reference at all
PEER ENTRY SIP/5201 no definido
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: 5202
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: -none-
127.0.0.1 <- IPport: 0
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: yes
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: yes
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: yes
127.0.0.1 <- Status: UNKNOWN
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
Not a reference at all
PEER ENTRY SIP/5202 no definido
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: 5203
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 90.124.123.123
127.0.0.1 <- IPport: 1832
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: yes
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: yes
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: yes
127.0.0.1 <- Status: OK (127 ms)
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/5203 to ok
++ GET QUALIFY for SIP/5203 = ok
END HANDLING AMI EVENT channel SIP/5203, command qualify, data ok, slot 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: 5296644656GW1
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 65.254.44.194
127.0.0.1 <- IPport: 5060
127.0.0.1 <- Dynamic: no
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: yes
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: yes
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: no
127.0.0.1 <- Status: OK (38 ms)
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/5296644656GW1 to ok
++ GET QUALIFY for SIP/5296644656GW1 = ok
END HANDLING AMI EVENT channel SIP/5296644656GW1, command qualify, data ok, slot 0
** DEMO MODE -- data discarded - 18 qualify ok 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: 5296644656GW2
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 74.81.71.18
127.0.0.1 <- IPport: 5060
127.0.0.1 <- Dynamic: no
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: yes
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: yes
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: no
127.0.0.1 <- Status: OK (52 ms)
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/5296644656GW2 to ok
++ GET QUALIFY for SIP/5296644656GW2 = ok
END HANDLING AMI EVENT channel SIP/5296644656GW2, command qualify, data ok, slot 0
** DEMO MODE -- data discarded - 17 qualify ok 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: 5312
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 90.124.123.123
127.0.0.1 <- IPport: 1851
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: yes
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: yes
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: yes
127.0.0.1 <- Status: OK (205 ms)
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/5312 to ok
++ GET QUALIFY for SIP/5312 = ok
END HANDLING AMI EVENT channel SIP/5312, command qualify, data ok, slot 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: 5313
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 90.124.123.123
127.0.0.1 <- IPport: 1844
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: yes
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: yes
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: yes
127.0.0.1 <- Status: OK (197 ms)
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/5313 to ok
++ GET QUALIFY for SIP/5313 = ok
END HANDLING AMI EVENT channel SIP/5313, command qualify, data ok, slot 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: G200AG
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 10.1.1.185
127.0.0.1 <- IPport: 5060
127.0.0.1 <- Dynamic: no
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: no
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: no
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: no
127.0.0.1 <- Status: Unmonitored
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/G200AG to ok
++ GET QUALIFY for SIP/G200AG = ok
END HANDLING AMI EVENT channel SIP/G200AG, command qualify, data ok, slot 0
** DEMO MODE -- data discarded - 19 qualify ok 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: SIP
127.0.0.1 <- ObjectName: G200AN
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 10.1.1.183
127.0.0.1 <- IPport: 5060
127.0.0.1 <- Dynamic: no
127.0.0.1 <- AutoForcerport: no
127.0.0.1 <- Forcerport: no
127.0.0.1 <- AutoComedia: no
127.0.0.1 <- Comedia: no
127.0.0.1 <- VideoSupport: yes
127.0.0.1 <- TextSupport: no
127.0.0.1 <- ACL: no
127.0.0.1 <- Status: Unmonitored
127.0.0.1 <- RealtimeDevice: no
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/G200AN to ok
++ GET QUALIFY for SIP/G200AN = ok
END HANDLING AMI EVENT channel SIP/G200AN, command qualify, data ok, slot 0
** DEMO MODE -- data discarded - 20 qualify ok 0
127.0.0.1 <- Event: PeerlistComplete
127.0.0.1 <- EventList: Complete
127.0.0.1 <- ListItems: 10
127.0.0.1 <- Response: Success
127.0.0.1 <- EventList: start
127.0.0.1 <- Message: Peer status list will follow
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: IAX2
127.0.0.1 <- ObjectName: 5315
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: (null)
127.0.0.1 <- IPport: 0
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- Trunk: no
127.0.0.1 <- Encryption: no
127.0.0.1 <- Status: UNKNOWN
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for IAX2/5315 to notok
++ GET QUALIFY for IAX2/5315 = notok
END HANDLING AMI EVENT channel IAX2/5315, command qualify, data notok, slot 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: IAX2
127.0.0.1 <- ObjectName: 5318
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 90.124.123.123
127.0.0.1 <- IPport: 1829
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- Trunk: no
127.0.0.1 <- Encryption: no
127.0.0.1 <- Status: OK (187 ms)
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for IAX2/5318 to ok
++ GET QUALIFY for IAX2/5318 = ok
END HANDLING AMI EVENT channel IAX2/5318, command qualify, data ok, slot 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: IAX2
127.0.0.1 <- ObjectName: 5319
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: (null)
127.0.0.1 <- IPport: 0
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- Trunk: no
127.0.0.1 <- Encryption: no
127.0.0.1 <- Status: UNKNOWN
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for IAX2/5319 to notok
++ GET QUALIFY for IAX2/5319 = notok
END HANDLING AMI EVENT channel IAX2/5319, command qualify, data notok, slot 0
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: IAX2
127.0.0.1 <- ObjectName: iax-fax0
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 127.0.0.1
127.0.0.1 <- IPport: 4570
127.0.0.1 <- Dynamic: no
127.0.0.1 <- Trunk: no
127.0.0.1 <- Encryption: no
127.0.0.1 <- Status: UNREACHABLE
127.0.0.1 <- Description:
Not a reference at all
PEER ENTRY IAX2/IAX-FAX0 no definido
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: IAX2
127.0.0.1 <- ObjectName: iax-fax1
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 127.0.0.1
127.0.0.1 <- IPport: 4571
127.0.0.1 <- Dynamic: no
127.0.0.1 <- Trunk: no
127.0.0.1 <- Encryption: no
127.0.0.1 <- Status: UNREACHABLE
127.0.0.1 <- Description:
Not a reference at all
PEER ENTRY IAX2/IAX-FAX1 no definido
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: IAX2
127.0.0.1 <- ObjectName: iax-fax2
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 127.0.0.1
127.0.0.1 <- IPport: 4572
127.0.0.1 <- Dynamic: no
127.0.0.1 <- Trunk: no
127.0.0.1 <- Encryption: no
127.0.0.1 <- Status: UNREACHABLE
127.0.0.1 <- Description:
Not a reference at all
PEER ENTRY IAX2/IAX-FAX2 no definido
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: IAX2
127.0.0.1 <- ObjectName: iax-fax3
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: 127.0.0.1
127.0.0.1 <- IPport: 4573
127.0.0.1 <- Dynamic: no
127.0.0.1 <- Trunk: no
127.0.0.1 <- Encryption: no
127.0.0.1 <- Status: UNREACHABLE
127.0.0.1 <- Description:
Not a reference at all
PEER ENTRY IAX2/IAX-FAX3 no definido
127.0.0.1 <- Event: PeerEntry
127.0.0.1 <- Channeltype: IAX2
127.0.0.1 <- ObjectName: 4000
127.0.0.1 <- ChanObjectType: peer
127.0.0.1 <- IPaddress: (null)
127.0.0.1 <- IPport: 0
127.0.0.1 <- Dynamic: yes
127.0.0.1 <- Trunk: no
127.0.0.1 <- Encryption: no
127.0.0.1 <- Status: UNKNOWN
127.0.0.1 <- Description:
It's blessed into class FOP2::Extension
++ SET QUALIFY for IAX2/4000 to notok
++ GET QUALIFY for IAX2/4000 = notok
END HANDLING AMI EVENT channel IAX2/4000, command qualify, data notok, slot 0
127.0.0.1 <- Event: PeerlistComplete
127.0.0.1 <- EventList: Complete
127.0.0.1 <- ListItems: 8
127.0.0.1 <- Response: Success
127.0.0.1 <- Message: Parked calls will follow
127.0.0.1 <- Event: ParkedCallsComplete
127.0.0.1 <- Total: 0
127.0.0.1 <- Response: Follows
127.0.0.1 <- Privilege: Command
127.0.0.1 <- ActionID: 5
127.0.0.1 <- No such command 'meetme list 2664 concise' (type 'core show help meetme list' for other possible commands)
--END COMMAND--
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 6
127.0.0.1 <- Message: No active conferences.
It's blessed into class FOP2::Conference
++ LETS FREFRESH CONFBRIDGE CONFERENCE/2664
** CONFERENCE MEMBER LIST start
** CONFERENCE MEMBER LIST devuelve [ ]
FIN handle_ami_response canal CONFERENCE/2664, comando members, datos WyBd, slot
127.0.0.1 <- Response: Follows
127.0.0.1 <- Privilege: Command
127.0.0.1 <- ActionID: 7
127.0.0.1 <- No such command 'meetme list 2663 concise' (type 'core show help meetme list' for other possible commands)
--END COMMAND--
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 8
127.0.0.1 <- Message: No active conferences.
It's blessed into class FOP2::Conference
++ LETS FREFRESH CONFBRIDGE CONFERENCE/2663
** CONFERENCE MEMBER LIST start
** CONFERENCE MEMBER LIST devuelve [ ]
FIN handle_ami_response canal CONFERENCE/2663, comando members, datos WyBd, slot
127.0.0.1 <- Response: Follows
127.0.0.1 <- Privilege: Command
127.0.0.1 <- ActionID: 9
127.0.0.1 <- 0 results found.
--END COMMAND--
127.0.0.1 <- Response: Follows
127.0.0.1 <- Privilege: Command
127.0.0.1 <- ActionID: 10
127.0.0.1 <- 0 results found.
--END COMMAND--
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 11
127.0.0.1 <- AMIversion: 1.3
127.0.0.1 <- AsteriskVersion: 11.9.0
127.0.0.1 <- SystemName:
127.0.0.1 <- CoreMaxCalls: 0
127.0.0.1 <- CoreMaxLoadAvg: 0.000000
127.0.0.1 <- CoreRunUser:
127.0.0.1 <- CoreRunGroup:
127.0.0.1 <- CoreMaxFilehandles: 0
127.0.0.1 <- CoreRealTimeEnabled: No
127.0.0.1 <- CoreCDRenabled: Yes
127.0.0.1 <- CoreHTTPenabled: No
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 12
127.0.0.1 <- Message: Mailbox Message Count
127.0.0.1 <- Mailbox: 2517@default
127.0.0.1 <- UrgMessages: 0
127.0.0.1 <- NewMessages: 27
127.0.0.1 <- OldMessages: 0
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
++ GET SERVER for SIP/2250 = localhost
** QUERY UNPOPULATED MAILBOX 2250@default
127.0.0.1 -> Mailbox: 2250@default
127.0.0.1 -> Action: MailboxCount
127.0.0.1 -> ActionID: 16
FIN handle_ami_response canal LOCAL/2517@OUTBOUND-ALLROUTES, comando voicemail, datos 1, slot
FIN handle_ami_response canal LOCAL/2517@OUTBOUND-ALLROUTES, comando voicemailcount, datos &vmail_count!27!0, slot
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 13
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
++ GET SERVER for IAX2/5318 = localhost
** QUERY CUSTOM ASTDB 5318 CF para chan IAX2/5318
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 5318
127.0.0.1 -> ActionID: 17
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 14
127.0.0.1 <- Message: Missing action in request
** Llego un response que falta configurar! MISSING ACTION IN REQUEST HASH(0x63011b0)
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 15
127.0.0.1 <- Message: Missing action in request
** Llego un response que falta configurar! MISSING ACTION IN REQUEST HASH(0x63c4370)
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 16
127.0.0.1 <- Message: Mailbox Message Count
127.0.0.1 <- Mailbox: 2250@default
127.0.0.1 <- UrgMessages: 0
127.0.0.1 <- NewMessages: 0
127.0.0.1 <- OldMessages: 0
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
++ GET SERVER for IAX2/4000 = localhost
** QUERY UNPOPULATED MAILBOX 4000@default
127.0.0.1 -> Mailbox: 4000@default
127.0.0.1 -> Action: MailboxCount
127.0.0.1 -> ActionID: 18
FIN handle_ami_response canal SIP/2250, comando voicemail, datos 0, slot
FIN handle_ami_response canal SIP/2250, comando voicemailcount, datos &vmail_count!0!0, slot
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 17
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
++ GET SERVER for local/2517@outbound-allroutes = localhost
** QUERY CUSTOM ASTDB 2517 CF para chan LOCAL/2517@OUTBOUND-ALLROUTES
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 2517
127.0.0.1 -> ActionID: 19
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 18
127.0.0.1 <- Message: Mailbox Message Count
127.0.0.1 <- Mailbox: 4000@default
127.0.0.1 <- UrgMessages: 0
127.0.0.1 <- NewMessages: 0
127.0.0.1 <- OldMessages: 0
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
++ GET SERVER for SIP/5313 = localhost
** QUERY UNPOPULATED MAILBOX 5313@default
127.0.0.1 -> Mailbox: 5313@default
127.0.0.1 -> Action: MailboxCount
127.0.0.1 -> ActionID: 20
FIN handle_ami_response canal IAX2/4000, comando voicemail, datos 0, slot
FIN handle_ami_response canal IAX2/4000, comando voicemailcount, datos &vmail_count!0!0, slot
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 19
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
++ GET SERVER for local/3100@outbound-allroutes = localhost
** QUERY CUSTOM ASTDB 3100 CF para chan LOCAL/3100@OUTBOUND-ALLROUTES
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 3100
127.0.0.1 -> ActionID: 21
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 20
127.0.0.1 <- Message: Mailbox Message Count
127.0.0.1 <- Mailbox: 5313@default
127.0.0.1 <- UrgMessages: 0
127.0.0.1 <- NewMessages: 0
127.0.0.1 <- OldMessages: 1
It's blessed into class FOP2::Extension
It's blessed into class FOP2::Extension
FIN handle_ami_response canal SIP/5313, comando voicemail, datos 2, slot
FIN handle_ami_response canal SIP/5313, comando voicemailcount, datos &vmail_count!0!1, slot
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 21
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
++ GET SERVER for SIP/2250 = localhost
** QUERY CUSTOM ASTDB 2250 CF para chan SIP/2250
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 2250
127.0.0.1 -> ActionID: 22
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 22
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
++ GET SERVER for SIP/5313 = localhost
** QUERY CUSTOM ASTDB 5313 CF para chan SIP/5313
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 5313
127.0.0.1 -> ActionID: 23
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 23
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
++ GET SERVER for SIP/5203 = localhost
** QUERY CUSTOM ASTDB 5203 CF para chan SIP/5203
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 5203
127.0.0.1 -> ActionID: 24
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 24
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
++ GET SERVER for IAX2/4000 = localhost
** QUERY CUSTOM ASTDB 4000 CF para chan IAX2/4000
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 4000
127.0.0.1 -> ActionID: 25
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 25
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
++ GET SERVER for IAX2/5319 = localhost
** QUERY CUSTOM ASTDB 5319 CF para chan IAX2/5319
127.0.0.1 -> Action: DBGet
127.0.0.1 -> Family: CF
127.0.0.1 -> Key: 5319
127.0.0.1 -> ActionID: 26
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 26
127.0.0.1 <- Message: Database entry not found
It's blessed into class FOP2::Extension
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 3 seconds (Tue Mar 31 09:02:19 2015)
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 6 seconds (Tue Mar 31 09:02:22 2015)
New client connection from socket AnyEvent::Handle=HASH(0x62406b0) - 192.168.1.253:54735
Flash clients connected: 1
--------------------------------------------------------------------------------------------------
[33;40mClient 192.168.1.253:54735, user: no user, type: no type
[0m--------------------------------------------------------------------------------------------------
192.168.1.253:54735 <=
-- PROCESS_FLASH_COMMAND origen GENERAL accion contexto destino 1 password
192.168.1.253:54735 => { "btn": "0", "cmd": "key", "data": "R8WAuwPYpdQBohf8Q2bXuVyXWY8wIU", "slot": "" }
192.168.1.253:54735 => { "btn": "0", "cmd": "version", "data": "2.29.00!!1", "slot": "" }
192.168.1.253:54735 <=
-- PROCESS_FLASH_COMMAND origen 1 accion auth destino 5313 password 71da90c984de996b59e39db4114d63ad
** RECEIVING AUTH REQUEST for 5313
TRYING TO VALIDATE USER 5313
VALIDAR USUARIO 5313@GENERAL
validate password using key R8WAuwPYpdQBohf8Q2bXuVyXWY8wIU
VALIDAR USUARIO 5313 OK con clave regular (192.168.1.253:54735)
192.168.1.253:54735 => { "btn": "0", "cmd": "correct", "data": "0", "slot": "" }
** SENDING BUTTONS from GENERAL to socket AnyEvent::Handle=HASH(0x62406b0) for client at 192.168.1.253:54735
** LITE VERSION limited to 15 buttons -- data discarded
** LITE VERSION limited to 15 buttons -- data discarded
** LITE VERSION limited to 15 buttons -- data discarded
** LITE VERSION limited to 15 buttons -- data discarded
** LITE VERSION limited to 15 buttons -- data discarded
192.168.1.253:54735 => { "btn": "0@GENERAL", "cmd": "preferences", "data": "eyAiYXV0b1BvcHVwIjogIiIsImRpc3BsYXlRdWV1ZSI6ICJtYXgiLCJkeW5hbWljTGluZURpc3BsYXkiOiAib24iLCJsYW5ndWFnZSI6ICJlbiIsImxlZnRDb2x1bW5PcmRlciI6ICJib3hfZ3JwMSxib3hfZ3JwMCxib3hfZXh0ZW5zaW9uYm94Iiwibm90aWZ5RHVyYXRpb24iOiAiNiIsInBvcHVwVXJsIjogIiIsInJpZ2h0Q29sdW1uT3JkZXIiOiAiYm94X2FzdGVybmljVGFnYm94LGJveF9zbXNib3gsYm94X3F1ZXVlYm94LGJveF9wYXJrYm94LGJveF9yaW5nZ3JvdXBib3gsYm94X2NvbmZlcmVuY2Vib3gsYm94X3NwZWVjaGJveCxib3hfdHJ1bmtib3giLCJzb3VuZENoYXQiOiAib24iLCJzb3VuZFF1ZXVlIjogIm9uIiwic291bmRSaW5nIjogIiJ9", "slot": "" }
192.168.1.253:54735 => { "btn": "0@GENERAL", "cmd": "vmailpath", "data": "/var/spool/asterisk/voicemail", "slot": "" }
192.168.1.253:54735 => { "btn": "0@GENERAL", "cmd": "permit", "data": "YWxs", "slot": "" }
mi perm all = 0 (0)
192.168.1.253:54735 => { "btn": "0@GENERAL", "cmd": "permitbtn", "data": "YWxsITA=", "slot": "" }
Trying to send plugin (configonreload) to user 5313 at context GENERAL
Sending plugin configonreload to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y29uZmlnb25yZWxvYWQhaWYodHlwZW9mIHBsdWdpbmNvbmZpZz09J3VuZGVmaW5lZCcpIHsgcGx1Z2luY29uZmlnID0ge319OwpwbHVnaW5jb25maWdbJ2NvbmZpZ29ucmVsb2FkJ109e307CmlmKHBsdWdpbmNvbmZpZ1snY29uZmlnb25yZWxvYWQnXVsnc2NyaXB0UmVsb2FkJ109PXVuZGVmaW5lZCkgeyBwbHVnaW5jb25maWdbJ2NvbmZpZ29ucmVsb2FkJ11bJ3NjcmlwdFJlbG9hZCddPXt9fTsKcGx1Z2luY29uZmlnWydjb25maWdvbnJlbG9hZCddWydzY3JpcHRSZWxvYWQnXVsnJ109Jy91c3IvYmluL3BocCAtZiAvdmFyL3d3dy9odG1sL2ZvcDIvYWRtaW4vdXBkYXRlX2NvbmYucGhwJzsKCnBsdWdpbnNbJ2NvbmZpZ29ucmVsb2FkJ10gPSAoZnVuY3Rpb24oKSB7CgogICAgcmV0dXJuIHsgCgogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICB9LAoKICAgICAgICBzZXRMYW5nOiBmdW5jdGlvbigpIHsKICAgICAgICB9LAoKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style configonreload to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "style", "data": "", "slot": "0" }
Trying to send plugin (presencedndfpbx) to user 5313 at context GENERAL
Sending plugin presencedndfpbx to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "cHJlc2VuY2VkbmRmcGJ4IQpwbHVnaW5zWydwcmVzZW5jZWRuZGZwYngnXSA9IChmdW5jdGlvbigpIHsKICAgIHJldHVybiB7IAogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICB9LAogICAgICAgIHNldExhbmc6IGZ1bmN0aW9uKCkgewogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgfQogICAgfQp9KCkpOwo=", "slot": "0" }
Sending style presencedndfpbx to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "style", "data": "", "slot": "0" }
Trying to send plugin (changepresence) to user 5313 at context GENERAL
Sending plugin changepresence to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y2hhbmdlcHJlc2VuY2UhCnBsdWdpbnNbJ2NoYW5nZXByZXNlbmNlJ10gPSAoZnVuY3Rpb24oKSB7CgogICAgLy8gUHJpdmF0ZSB2YXJpYWJsZXMKCiAgICB2YXIgbWVudU9wdGlvbiA9IHsKICAgICAgICAic2V0cHJlc2VuY2UiOiAgICB7IG5hbWU6ICdTZXQgUHJlc2VuY2UnLCBpY29uOiAncHJlc2VuY2UnLCBpdGVtczogeyB9IH0KICAgIH0KCiAgICByZXR1cm4geyAKCiAgICAgICAgbG9hZExhbmc6IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgICAgICB2YXIgaGFzaCA9IGhleF9tZDUoc2VjcmV0K2xhc3RrZXkpOwogICAgICAgICAgICBxdWV1ZWRjb21tYW5kID0gIjxtc2cgZGF0YT1cIiIgKyBteXBvc2l0aW9uICsgInxwbHVnaW5sYW5nfCIgKyBsYW5ndWFnZSArICJ+Y2hhbmdlcHJlc2VuY2UiICsgInwiICsgaGFzaCArICJcIiAvPiI7CiAgICAgICAgICAgIHNlbmRjb21tYW5kKCk7CiAgICAgICAgfSwKCiAgICAgICAgc2V0TGFuZzogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGRlYnVnKCdjaGFuZ2UgcHJlc2VuY2Ugc2V0bGFuZycpOwogICAgICAgICAgICAvLyBjaGFuZ2UgbGFuZ3VhZ2Ugc3RyaW5ncwogICAgICAgICAgICBtZW51T3B0aW9uWydzZXRwcmVzZW5jZSddWyduYW1lJ10gPSBsYW5nLnNldHByZXNlbmNlOwoKICAgICAgICAgICAgLy8gYWRkaW5nIHByZXNlbmNlIG9wdGlvbnMgdG8gdGhlIGNvbnRleHQgbWVudQogICAgICAgICAgICB2YXIgY29udD0wOwogICAgICAgICAgICBmb3IgKHZhciBpdGVtIGluIHByZXNlbmNlKSB7CiAgICAgICAgICAgICAgICBpZiAocHJlc2VuY2UuaGFzT3duUHJvcGVydHkoaXRlbSkpIHsKICAgICAgICAgICAgICAgICAgICBpZihpdGVtPT09IiIpIHsKICAgICAgICAgICAgICAgICAgICAgICBpdGVtUHJpbnQgPSBsYW5nWydhdmFpbGFibGUnXTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBpZihsYW5nLmhhc093blByb3BlcnR5KGl0ZW0pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtUHJpbnQgPSBsYW5nW2l0ZW1dOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVByaW50ID0gaXRlbTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBtZW51T3B0aW9uWyJzZXRwcmVzZW5jZSJdWyJpdGVtcyJdWyJzZXRQcmVzZW5jZV4iK2NvbnRdID0geyBuYW1lOiBpdGVtUHJpbnQgfTsKICAgICAgICAgICAgICAgICAgICBjb250Kys7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgfSwKICAgICAgICBzZXRFeHRlbnNpb25NZW51OiBmdW5jdGlvbihpdGVtcykgewogICAgICAgICAgICAvLyBjYWxsZWQgZnJvbSBidWlsZCBleHRlbnNpb24gbWVudSBhcyBjYWxsYmFjawogICAgICAgICAgICBqUXVlcnkuZXh0ZW5kKGl0ZW1zLG1lbnVPcHRpb24pOwogICAgICAgICAgICByZXR1cm4gaXRlbXM7CiAgICAgICAgfSwKICAgICAgICBzZXRQcmVzZW5jZTogZnVuY3Rpb24odGFyZ2V0LHNvdXJjZSkgewoKICAgICAgICAgICAgZGVidWcoInNldCBwcmVzZW5jZSIpOwogICAgICAgICAgICB2YXIgdGhpc2V4dGVuID0gYm90b25pdG9zW3NvdXJjZV1bJ0VYVEVOU0lPTiddOwogICAgICAgICAgICB2YXIgY29udD0wOwogICAgICAgICAgICB2YXIgdmFsdWU9JycKICAgICAgICAgICAgZm9yICh2YXIgaXRlbSBpbiBwcmVzZW5jZSkgewogICAgICAgICAgICAgICAgaWYoY29udCA9PSB0YXJnZXQpIHsKICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IGl0ZW07CiAgICAgICAgICAgICAgICAgICAgZGVidWcoJ3B1c28gcHJlc2VuY2lhIGVuICcrdmFsdWUpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY29udCsrOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZihqUXVlcnkuaW5BcnJheSgnMCcscGVybWlzb3NidG5bJ3ByZXNlbmNlbWFuYWdlciddKT49MCB8fCBqUXVlcnkuaW5BcnJheSgnMCcscGVybWlzb3NidG5bJ2FsbCddKT49MCkgewogICAgICAgICAgICAgICAgdmFyIGhhc2ggPSBoZXhfbWQ1KHNlY3JldCtsYXN0a2V5KTsKICAgICAgICAgICAgICAgIHZhciB2YWx1ZTY0ID0gQmFzZTY0LmVuY29kZSh2YWx1ZSk7CiAgICAgICAgICAgICAgICBxdWV1ZWRjb21tYW5kID0gIjxtc2cgZGF0YT1cIiIrc291cmNlKyJ8c2V0YXN0ZGJ8Zm9wMnN0YXRlfiIrdGhpc2V4dGVuKyJ+Iit2YWx1ZTY0KyJ8IitoYXNoKyJcIiAvPiI7CiAgICAgICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgICAgICB9CgogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIC8vIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uCiAgICAgICAgICAgIGRlYnVnKCdjaGFuZ2UgcHJlc2VuY2UgaW5pdCcpOwogICAgICAgIH0KICAgIH0KfSgpKTsK", "slot": "0" }
Sending style changepresence to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "style", "data": "LmNvbnRleHQtbWVudS1pdGVtLmljb24tcHJlc2VuY2UgIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4vaW1hZ2VzL3Nwcml0ZXMwMS5wbmcpO2JhY2tncm91bmQtcG9zaXRpb246MCAtMjQwcHg7YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDt9Cg==", "slot": "0" }
Trying to send plugin (clock) to user 5313 at context GENERAL
Sending plugin clock to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y2xvY2shCnBsdWdpbnNbJ2Nsb2NrJ10gPSAoZnVuY3Rpb24oKSB7CgogICAgcmV0dXJuIHsgCgogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICAgICAgdmFyIGhhc2ggPSBoZXhfbWQ1KHNlY3JldCtsYXN0a2V5KTsKICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgbXlwb3NpdGlvbiArICJ8cGx1Z2lubGFuZ3wiICsgbGFuZ3VhZ2UgKyAifmNsb2NrIiArICJ8IiArIGhhc2ggKyAiXCIgLz4iOwogICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgIH0sCgogICAgICAgIHNldExhbmc6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAvLyBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGFwcGx5IGEgbGFuZ3VhZ2Ugc3RyaW5ncyB0byBodG1sIGVsZW1lbnRzCiAgICAgICAgfSwKCiAgICAgICAgdXBkYXRlQ2xvY2s6IGZ1bmN0aW9uKCkgewoKICAgICAgICAgICAgdmFyIGN1cnJlbnRUaW1lID0gbmV3IERhdGUgKCApOwoKICAgICAgICAgICAgdmFyIGN1cnJlbnRIb3VycyA9IGN1cnJlbnRUaW1lLmdldEhvdXJzICggKTsKICAgICAgICAgICAgdmFyIGN1cnJlbnRNaW51dGVzID0gY3VycmVudFRpbWUuZ2V0TWludXRlcyAoICk7CiAgICAgICAgICAgIHZhciBjdXJyZW50U2Vjb25kcyA9IGN1cnJlbnRUaW1lLmdldFNlY29uZHMgKCApOwoKICAgICAgICAgICAgLy8gUGFkIHRoZSBtaW51dGVzIGFuZCBzZWNvbmRzIHdpdGggbGVhZGluZyB6ZXJvcywgaWYgcmVxdWlyZWQKICAgICAgICAgICAgY3VycmVudE1pbnV0ZXMgPSAoIGN1cnJlbnRNaW51dGVzIDwgMTAgPyAiMCIgOiAiIiApICsgY3VycmVudE1pbnV0ZXM7CiAgICAgICAgICAgIGN1cnJlbnRTZWNvbmRzID0gKCBjdXJyZW50U2Vjb25kcyA8IDEwID8gIjAiIDogIiIgKSArIGN1cnJlbnRTZWNvbmRzOwoKICAgICAgICAgICAgLy8gQ2hvb3NlIGVpdGhlciAiQU0iIG9yICJQTSIgYXMgYXBwcm9wcmlhdGUKICAgICAgICAgICAgdmFyIHRpbWVPZkRheSA9ICggY3VycmVudEhvdXJzIDwgMTIgKSA/ICJBTSIgOiAiUE0iOwoKICAgICAgICAgICAgLy8gQ29udmVydCB0aGUgaG91cnMgY29tcG9uZW50IHRvIDEyLWhvdXIgZm9ybWF0IGlmIG5lZWRlZAogICAgICAgICAgICBjdXJyZW50SG91cnMgPSAoIGN1cnJlbnRIb3VycyA+IDEyICkgPyBjdXJyZW50SG91cnMgLSAxMiA6IGN1cnJlbnRIb3VyczsKCiAgICAgICAgICAgIC8vIENvbnZlcnQgYW4gaG91cnMgY29tcG9uZW50IG9mICIwIiB0byAiMTIiCiAgICAgICAgICAgIGN1cnJlbnRIb3VycyA9ICggY3VycmVudEhvdXJzID09IDAgKSA/IDEyIDogY3VycmVudEhvdXJzOwoKICAgICAgICAgICAgLy8gQ29tcG9zZSB0aGUgc3RyaW5nIGZvciBkaXNwbGF5CiAgICAgICAgICAgIHZhciBjdXJyZW50VGltZVN0cmluZyA9IGN1cnJlbnRIb3VycyArICI6IiArIGN1cnJlbnRNaW51dGVzICsgIjoiICsgY3VycmVudFNlY29uZHMgKyAiICIgKyB0aW1lT2ZEYXk7CgogICAgICAgICAgICAvLyBVcGRhdGUgdGhlIHRpbWUgZGlzcGxheQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xvY2siKS5maXJzdENoaWxkLm5vZGVWYWx1ZSA9IGN1cnJlbnRUaW1lU3RyaW5nOwoKICAgICAgICB9LAogICAgICAgIGluaXQ6IGZ1bmN0aW9uKCkgewoKICAgICAgICAgICAgJCggIiNzZWNvbmR0b29sYmFyIiApLmJlZm9yZSggIjxzcGFuIGlkPSdjbG9jayc+Jm5ic3A7PC9zcGFuPiIgKTsKCiAgICAgICAgICAgIHdpbmRvdy5zZXRJbnRlcnZhbChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgcGx1Z2luc1snY2xvY2snXS51cGRhdGVDbG9jaygpOwogICAgICAgICAgICB9LCAxMDAwKTsKICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style clock to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "style", "data": "I2Nsb2NrIHsKcG9zaXRpb246YWJzb2x1dGU7CnRvcDoxMHB4Owp9Cg==", "slot": "0" }
Trying to send plugin (conferencebutton) to user 5313 at context GENERAL
Sending plugin conferencebutton to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y29uZmVyZW5jZWJ1dHRvbiEKcGx1Z2luc1snY29uZmVyZW5jZWJ1dHRvbiddID0gKGZ1bmN0aW9uKCkgewogICAgLy8gdmFyIHByaXZhdGUgPSBbXTsgCgogICAgcmV0dXJuIHsgCgogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICAgICAgdmFyIGhhc2ggPSBoZXhfbWQ1KHNlY3JldCtsYXN0a2V5KTsKICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgbXlwb3NpdGlvbiArICJ8cGx1Z2lubGFuZ3wiICsgbGFuZ3VhZ2UgKyAifmNvbmZlcmVuY2VidXR0b24iICsgInwiICsgaGFzaCArICJcIiAvPiI7CiAgICAgICAgICAgIHNlbmRjb21tYW5kKCk7CiAgICAgICAgfSwKCiAgICAgICAgc2V0TGFuZzogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIC8vIGNoYW5nZSBsYW5ndWFnZSBzdHJpbmdzCiAgICAgICAgICAgICQoJyNhY3Rpb25fY29uZmVyZW5jZWNhbGwnKS5hdHRyKCd0aXRsZScsbGFuZy5jb25mZXJlbmNlKTsKICAgICAgICAgICAgc2V0VGlwcygkKCcjYWN0aW9uX2NvbmZlcmVuY2VjYWxsJykpOwogICAgICAgIH0sCgogICAgICAgIGVtYmVkOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgLy8gZW1iZWQgZWxlbWVudHMgaW4gcGFnZSwgbG9hZCBzdHlsZSBmaWxlcwogICAgICAgICAgICBpZigkKCcjYWN0aW9uX2NvbmZlcmVuY2VjYWxsJykubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgICAgIHZhciBhY3Rpb25iYXIgPSAkKCcjY3VzdG9tYmFyJyk7CiAgICAgICAgICAgICAgICBidXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICAgICAgICAgICQoYnV0KS5hdHRyKHtpZDogJ2FjdGlvbl9jb25mZXJlbmNlY2FsbCcsIHRpdGxlOiAnQ29uZmVyZW5jZSd9KS5hZGRDbGFzcygnYWN0aW9uYnV0dG9uIG15Y2xpY2snKTsKICAgICAgICAgICAgICAgIGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2ltZycpOwogICAgICAgICAgICAgICAgJChpbWcpLmF0dHIoJ3NyYycsJy4vaW1hZ2VzL3Rvb2xiYXIvY29uZmVyZW5jZS5wbmcnKTsKICAgICAgICAgICAgICAgICQoYnV0KS5hcHBlbmQoaW1nKTsKICAgICAgICAgICAgICAgIGFjdGlvbmJhci5hcHBlbmQoYnV0KTsKICAgICAgICAgICAgfQogICAgICAgIH0sCgogICAgICAgIGFjdGlvbl9jb25mZXJlbmNlY2FsbDogZnVuY3Rpb24odGFyZ2V0KSB7CiAgICAgICAgICAgIGRlYnVnKCdkbyBjb25mZXJlbmNlIHdpdGggJyt0YXJnZXQpOwoKICAgICAgICAgICAgaWYgKG15cG9zaXRpb24gPiAwKSB7CiAgICAgICAgICAgICAgICB2YXIgYm90b24gPSAkKCcjYm90b24nICsgbXlwb3NpdGlvbik7CiAgICAgICAgICAgICAgICB2YXIgbnVtYmVyX3RvX2RpYWw7CiAgICAgICAgICAgICAgICAvLyBMb29rIGZvciB0eXBlZCBudW1iZXIgaW4gdGhlIGRpYWwgdGV4dGJveCBmaWVsZAogICAgICAgICAgICAgICAgaWYgKCQoJyNkaWFsdGV4dCcpWzBdLnZhbHVlLmluZGV4T2YobGFuZy5kaWFsKSA+PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgLy8gUGxhY2Vob2xkZXIgdGV4dCwgd2UgaGF2ZSB0byByZW1vdmUgaXQKICAgICAgICAgICAgICAgICAgICB2YXIgbGFyZ28gPSBsYW5nLmRpYWwubGVuZ3RoOwogICAgICAgICAgICAgICAgICAgIG51bWJlcl90b19kaWFsID0gJCgnI2RpYWx0ZXh0JylbMF0udmFsdWUuc3Vic3RyKGxhcmdvKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgbnVtYmVyX3RvX2RpYWwgPSAkKCcjZGlhbHRleHQnKVswXS52YWx1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIC8vIElmIHRoZSBkaWFsYm94IGlzIGVtcHR5LCBjaGVjayBpZiB3ZSBoYXZlIGEgdGFyZ2V0IHNlbGVjdGVkCiAgICAgICAgICAgICAgICAvLyBhbmQgdXNlIHRoZSB0YXJnZXQgZXh0ZW5zaW9uIG51bWJlcgogICAgICAgICAgICAgICAgaWYgKG51bWJlcl90b19kaWFsID09ICIiKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRhcmdldCA+IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyX3RvX2RpYWwgPSBib3Rvbml0b3NbdGFyZ2V0XVsnRVhURU5TSU9OJ107CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKG51bWJlcl90b19kaWFsID09ICIiKSB7CiAgICAgICAgICAgICAgICAgICAgZGVidWcoIldlIGRvIG5vdCBoYXZlIGEgdGFyZ2V0IG51bWJlciB0byBkaWFsLCBleGl0Iik7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGRlYnVnKG51bWJlcl90b19kaWFsKTsKCiAgICAgICAgICAgICAgICBpZiAoYm90b24uaGFzQ2xhc3MoJ2J1c3knKSkgewogICAgICAgICAgICAgICAgICAgIHZhciBoYXNoID0gaGV4X21kNShzZWNyZXQrbGFzdGtleSk7CiAgICAgICAgICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgbXlwb3NpdGlvbiArICJ8Y3VzdG9tY29uZmVyZW5jZXwiICsgbnVtYmVyX3RvX2RpYWwgKyAifCIgKyBoYXNoICsgIlwiIC8+IjsKICAgICAgICAgICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAvLyBXZSBhcmUgbm90IG9uIGEgY2FsbCwgbGV0cyB0cnkgdG8gYmFyZ2UgaW4KICAgICAgICAgICAgICAgICAgICBib3RvbiA9ICQoJyNib3RvbicgKyB0YXJnZXQpOwogICAgICAgICAgICAgICAgICAgIGlmIChib3Rvbi5oYXNDbGFzcygnYnVzeScpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG51bWJlcl90b19kaWFsID0gYm90b25pdG9zW215cG9zaXRpb25dWydFWFRFTlNJT04nXTsKICAgICAgICAgICAgICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgdGFyZ2V0ICsgInxjdXN0b21jb25mZXJlbmNlfCIgKyBudW1iZXJfdG9fZGlhbCArICJ8IiArIGhhc2ggKyAiXCIgLz4iOwogICAgICAgICAgICAgICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnKCJOb3Igc291cmNlIG9yIHRhcmdldCBleHRlbnNpb25zIGFyZSBidXN5LCBjb25mZXJlbmNlIGNhbiBiZSBkb25lIGlmIHNvbWVvbmUgaXMgb24gYSBjYWxsIG9ubHkiKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KIAogICAgICAgIH0sCgogICAgICAgIGluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAvLyBpbml0aWFsaXphdGlvbiBmdW5jdGlvbgogICAgICAgICAgICB0aGlzLmVtYmVkKCk7CiAgICAgICAgICAgIHRoaXMubG9hZExhbmcoKTsKICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style conferencebutton to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "style", "data": "", "slot": "0" }
Trying to send plugin (holdreport) to user 5313 at context GENERAL
Sending plugin holdreport to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "aG9sZHJlcG9ydCEKcGx1Z2luc1snaG9sZHJlcG9ydCddID0gKGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIHsgCiAgICAgICAgbG9hZExhbmc6IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgIH0sCiAgICAgICAgc2V0TGFuZzogZnVuY3Rpb24oKSB7CiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style holdreport to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "style", "data": "", "slot": "0" }
Trying to send plugin (presencepause) to user 5313 at context GENERAL
Sending plugin presencepause to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "cHJlc2VuY2VwYXVzZSEKcGx1Z2luc1sncHJlc2VuY2VwYXVzZSddID0gKGZ1bmN0aW9uKCkgewoKICAgIHJldHVybiB7IAoKICAgICAgICBsb2FkTGFuZzogZnVuY3Rpb24odmFsdWVzKSB7CiAgICAgICAgfSwKICAgICAgICBzZXRMYW5nOiBmdW5jdGlvbigpIHsKICAgICAgICB9LAogICAgICAgIGluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgIH0KICAgIH0KfSgpKTsK", "slot": "0" }
Sending style presencepause to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "style", "data": "Cg==", "slot": "0" }
Trying to send plugin (callforwardfpbx) to user 5313 at context GENERAL
Sending plugin callforwardfpbx to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y2FsbGZvcndhcmRmcGJ4IQpwbHVnaW5zWydjYWxsZm9yd2FyZGZwYngnXSA9IChmdW5jdGlvbigpIHsKCiAgICAvLyBQcml2YXRlIHZhcmlhYmxlcwoKICAgIHZhciBtZW51T3B0aW9uID0gewogICAgICAgICJzZXRDYWxsRm9yd2FyZCI6IHsgbmFtZTogJ1NldCBDYWxsIEZvcndhcmQnLCBpY29uOiAnc2V0Y2YnIH0sCiAgICB9CgogICAgcmV0dXJuIHsgCgogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICAgICAgdmFyIGhhc2ggPSBoZXhfbWQ1KHNlY3JldCtsYXN0a2V5KTsKICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgbXlwb3NpdGlvbiArICJ8cGx1Z2lubGFuZ3wiICsgbGFuZ3VhZ2UgKyAifmNhbGxmb3J3YXJkZnBieCIgKyAifCIgKyBoYXNoICsgIlwiIC8+IjsKICAgICAgICAgICAgc2VuZGNvbW1hbmQoKTsKICAgICAgICB9LAoKICAgICAgICBzZXRMYW5nOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZGVidWcoJ2NhbGwgZm9yd2FyZCBzZXRsYW5nJyk7CiAgICAgICAgICAgIC8vIGNoYW5nZSBsYW5ndWFnZSBzdHJpbmdzCiAgICAgICAgICAgIG1lbnVPcHRpb25bJ3NldENhbGxGb3J3YXJkJ11bJ25hbWUnXSA9IGxhbmcuc2V0Y2FsbGZvcndhcmQ7CiAgICAgICAgfSwKCiAgICAgICAgc2V0RXh0ZW5zaW9uTWVudTogZnVuY3Rpb24oaXRlbXMpIHsKICAgICAgICAgICAgLy8gY2FsbGVkIGZyb20gYnVpbGQgZXh0ZW5zaW9uIG1lbnUgYXMgY2FsbGJhY2sKICAgICAgICAgICAgalF1ZXJ5LmV4dGVuZChpdGVtcyxtZW51T3B0aW9uKTsKICAgICAgICAgICAgcmV0dXJuIGl0ZW1zOwogICAgICAgIH0sCgogICAgICAgIHNldENhbGxGb3J3YXJkOiBmdW5jdGlvbih0YXJnZXQsc291cmNlKSB7CgogICAgICAgICAgICBkZWJ1Zygnc2V0IGNhbGwgZm9yd2FyZCcpOwogICAgICAgICAgICB2YXIgdGhpc2V4dGVuID0gYm90b25pdG9zW3NvdXJjZV1bJ0VYVEVOU0lPTiddOwogICAgICAgICAgICB2YXIgY3VycmVudHZhbHVlID0gJCgnI2V4dHJhaW5mbycrc291cmNlKS5hdHRyKCdvbGR0aXRsZScpOwogICAgICAgICAgICBhbGVydGlmeS5wcm9tcHQobGFuZy5lbnRlcmNhbGxmb3J3YXJkKycgJyt0aGlzZXh0ZW4sIGZ1bmN0aW9uIChlLCBzdHIpIHsKICAgICAgICAgICAgICAgIC8vIHN0ciBpcyB0aGUgaW5wdXQgdGV4dAogICAgICAgICAgICAgICAgaWYgKGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaGFzaCA9IGhleF9tZDUoc2VjcmV0K2xhc3RrZXkpOwogICAgICAgICAgICAgICAgICAgIHZhciBzdHJlbmNvZGVkID0gQmFzZTY0LmVuY29kZShzdHIpOwogICAgICAgICAgICAgICAgICAgIHF1ZXVlZGNvbW1hbmQgPSAiPG1zZyBkYXRhPVwiIitzb3VyY2UrInxzZXRhc3RkYnxDRn4iK3RoaXNleHRlbisifiIrc3RyZW5jb2RlZCsifCIraGFzaCsiXCIgLz4iOwogICAgICAgICAgICAgICAgICAgIHNlbmRjb21tYW5kKCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIC8vIHVzZXIgY2xpY2tlZCAiY2FuY2VsIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LGN1cnJlbnR2YWx1ZSk7CiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgLy8gaW5pdGlhbGl6YXRpb24gZnVuY3Rpb24KICAgICAgICAgICAgZGVidWcoJ2NhbGwgZm9yd2FyZCBpbml0Jyk7CiAgICAgICAgfQogICAgfQp9KCkpOwo=", "slot": "0" }
Sending style callforwardfpbx to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "style", "data": "LmNvbnRleHQtbWVudS1pdGVtLmljb24tc2V0Y2YgIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4vaW1hZ2VzL3Nwcml0ZXMwMS5wbmcpO2JhY2tncm91bmQtcG9zaXRpb246MCAtMjcycHg7YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDt9Cg==", "slot": "0" }
Trying to send plugin (speech) to user 5313 at context GENERAL
Sending plugin speech to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "c3BlZWNoIWlmKHR5cGVvZiBwbHVnaW5jb25maWc9PSd1bmRlZmluZWQnKSB7IHBsdWdpbmNvbmZpZyA9IHt9fTsKcGx1Z2luY29uZmlnWydzcGVlY2gnXT17fTsKaWYocGx1Z2luY29uZmlnWydzcGVlY2gnXVsnaGFuZ3VwX3dvcmQnXT09dW5kZWZpbmVkKSB7IHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2hhbmd1cF93b3JkJ109e319OwpwbHVnaW5jb25maWdbJ3NwZWVjaCddWydoYW5ndXBfd29yZCddWycnXT0naGFuZ3VwJzsKaWYocGx1Z2luY29uZmlnWydzcGVlY2gnXVsnbGFuZ3VhZ2UnXT09dW5kZWZpbmVkKSB7IHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2xhbmd1YWdlJ109e319OwpwbHVnaW5jb25maWdbJ3NwZWVjaCddWydsYW5ndWFnZSddWycnXT0nZW4tRU4nOwppZihwbHVnaW5jb25maWdbJ3NwZWVjaCddWydhdmFpbGFibGVfd29yZCddPT11bmRlZmluZWQpIHsgcGx1Z2luY29uZmlnWydzcGVlY2gnXVsnYXZhaWxhYmxlX3dvcmQnXT17fX07CnBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2F2YWlsYWJsZV93b3JkJ11bJyddPSdhdmFpbGFibGUnOwppZihwbHVnaW5jb25maWdbJ3NwZWVjaCddWyd0cmFuc2Zlcl93b3JkJ109PXVuZGVmaW5lZCkgeyBwbHVnaW5jb25maWdbJ3NwZWVjaCddWyd0cmFuc2Zlcl93b3JkJ109e319OwpwbHVnaW5jb25maWdbJ3NwZWVjaCddWyd0cmFuc2Zlcl93b3JkJ11bJyddPSd0cmFuc2Zlcic7CmlmKHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2Rvbm90ZGlzdHVyYl93b3JkJ109PXVuZGVmaW5lZCkgeyBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydkb25vdGRpc3R1cmJfd29yZCddPXt9fTsKcGx1Z2luY29uZmlnWydzcGVlY2gnXVsnZG9ub3RkaXN0dXJiX3dvcmQnXVsnJ109J2RvIG5vdCBkaXN0dXJiJzsKaWYocGx1Z2luY29uZmlnWydzcGVlY2gnXVsnZGlhbF93b3JkJ109PXVuZGVmaW5lZCkgeyBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydkaWFsX3dvcmQnXT17fX07CnBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2RpYWxfd29yZCddWycnXT0nZGlhbCc7CgpwbHVnaW5zWydzcGVlY2gnXSA9IChmdW5jdGlvbigpIHsKCiAgICB2YXIgc3BlZWNobGFuZ3VhZ2UgPSBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydsYW5ndWFnZSddWycnXTsKICAgIHZhciBkaWFsX3dvcmQgPSBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydkaWFsX3dvcmQnXVsnJ107CiAgICB2YXIgdHJhbnNmZXJfd29yZCA9IHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ3RyYW5zZmVyX3dvcmQnXVsnJ107CiAgICB2YXIgaGFuZ3VwX3dvcmQgPSBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydoYW5ndXBfd29yZCddWycnXTsKICAgIHZhciBkb25vdGRpc3R1cmJfd29yZCA9IHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2Rvbm90ZGlzdHVyYl93b3JkJ11bJyddOwogICAgdmFyIGF2YWlsYWJsZV93b3JkID0gcGx1Z2luY29uZmlnWydzcGVlY2gnXVsnYXZhaWxhYmxlX3dvcmQnXVsnJ107CiAgICB2YXIgcmVjb2duaXRpb247CiAgICB2YXIgcmVjb2duaXppbmc9MDsKCiAgICByZXR1cm4geyAKCiAgICAgICAgbG9hZExhbmc6IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgICAgICB2YXIgaGFzaCA9IGhleF9tZDUoc2VjcmV0K2xhc3RrZXkpOwogICAgICAgICAgICBxdWV1ZWRjb21tYW5kID0gIjxtc2cgZGF0YT1cIiIgKyBteXBvc2l0aW9uICsgInxwbHVnaW5sYW5nfCIgKyBsYW5ndWFnZSArICJ+c3BlZWNoIiArICJ8IiArIGhhc2ggKyAiXCIgLz4iOwogICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgIH0sCgogICAgICAgIHNldExhbmc6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZigkKCcjc3BlZWNoVGl0bGUnKS5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICAkKCcjc3BlZWNoVGl0bGUnKS5odG1sKGxhbmdbJ3NwZWVjaF9pbnB1dCddKTsKICAgICAgICAgICAgICAgICQoJyNzcGVlY2gtaW5wdXQtZmllbGQnKS5hdHRyKCdsYW5nJyxzcGVlY2hsYW5ndWFnZSk7CiAgICAgICAgICAgIH0KICAgICAgICB9LAoKICAgICAgICBlbWJlZDogZnVuY3Rpb24oKSB7CgogICAgICAgICAgICBpZigkKCcjYm94X3NwZWVjaGJveCcpLmxlbmd0aDw9MCkgewogICAgICAgICAgICAgICAgdmFyIGtsb24gPSAkKCAnI2JveF9hc3Rlcm5pY1RhZ2JveCcgKTsKICAgICAgICAgICAgICAgIHZhciBuZXdrbG9uID0ga2xvbi5jbG9uZSgpLmF0dHIoIHsgaWQ6ICdib3hfc3BlZWNoYm94JyB9KS5jc3Moe2Rpc3BsYXk6ICdibG9jayd9KS5pbnNlcnRCZWZvcmUoIGtsb24gKTsKICAgICAgICAgICAgICAgIG5ld2tsb24uZmluZCgnKicpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICBpZih0eXBlb2YgJCh0aGlzKS5hdHRyKCdpZCcpID09ICd1bmRlZmluZWQnKSB7CiAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgIGlmKCQodGhpcykuYXR0cignaWQnKT09J3RhZ2NhbGwnKSB7ICQodGhpcykuYXR0cignaWQnLCdzcGVlY2hUaXRsZScpLmh0bWwobGFuZy5zcGVlY2hfaW5wdXQpOyB9CiAgICAgICAgICAgICAgICAgICAgICAgaWYoJCh0aGlzKS5hdHRyKCdpZCcpPT0ndG9nZ2xlLWFzdGVybmljVGFnJykgeyAkKHRoaXMpLmF0dHIoJ2lkJywndG9nZ2xlLXNwZWVjaCcpOyB9CiAgICAgICAgICAgICAgICAgICAgICAgaWYoJCh0aGlzKS5hdHRyKCdpZCcpPT0nYXN0ZXJuaWNUYWcnKSB7ICQodGhpcykuYXR0cignaWQnLCdzcGVlY2gnKS5jc3MoJ3RleHQtYWxpZ24nLCdjZW50ZXInKTsgfQogICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8qJCgnI3NwZWVjaCcpLmh0bWwoIjxpbnB1dCBpZD0nc3BlZWNoLWlucHV0LWZpZWxkJyBzcGVlY2ggdHlwZT0ndGV4dCcgeC13ZWJraXQtc3BlZWNoIC8+Iik7Ki8KICAgICAgICAgICAgJCgnI3NwZWVjaCcpLmh0bWwoIjxpbnB1dCBpZD0nc3BlZWNoLWlucHV0LWZpZWxkJyB0eXBlPSd0ZXh0JyAvPjxidXR0b24gdHlwZT0nYnV0dG9uJyBpZD0nc3BlZWNoLW1pYycgY2xhc3M9J3NwZWVjaHJlY29mZicgLz4iKTsKCiAgICAgICAgICAgICQoIiNzcGVlY2gtbWljIikub24oICJjbGljayIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaWYocmVjb2duaXppbmc9PTApIHsKICAgICAgICAgICAgICAgICAgICByZWNvZ25pdGlvbi5zdGFydCgpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24uc3RvcCgpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CgogICAgICAgICAgICBtYWtlU29ydGFibGUoJ3JpZ2h0Jyk7CgogICAgICAgICAgICBpZih0eXBlb2YobXlwcmVmZXJlbmNlcy5yaWdodENvbHVtbk9yZGVyKT09J3N0cmluZycpIHsKICAgICAgICAgICAgICAgIG9yZGVuYXJEaXYoJ3JpZ2h0X2NvbHVtbicsbXlwcmVmZXJlbmNlcy5yaWdodENvbHVtbk9yZGVyKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdGhpcy5sb2FkTGFuZygpOwogICAgICAgIH0sCgogICAgICAgIGlucHV0Q2hhbmdlOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIGlmIChlLnJlc3VsdHMpIHsgCiAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgcmVzdWx0OyByZXN1bHQgPSBlLnJlc3VsdHNbaV07ICsraSkgewogICAgICAgICAgICAgICAgICAgIGRlYnVnKHJlc3VsdC51dHRlcmFuY2UsIHJlc3VsdC5jb25maWRlbmNlKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGRlYnVnKCdCZXN0IHJlc3VsdDogJyArIHRoaXMudmFsdWUpOwoKICAgICAgICAgICAgICAgIGlmKHRoaXMudmFsdWUuaW5kZXhPZih0cmFuc2Zlcl93b3JkKT49MCkgewogICAgICAgICAgICAgICAgICAgIHZhciBkZXN0aW5vID0gc3RyaXBOb25OdW1lcmljKHRoaXMudmFsdWUpOwogICAgICAgICAgICAgICAgICAgIGRlYnVnKCJ0cmFuc2ZpZXJvIGEgIitkZXN0aW5vKTsKICAgICAgICAgICAgICAgICAgICBkaWFsKGRlc3Rpbm8pOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYodGhpcy52YWx1ZS5pbmRleE9mKGRpYWxfd29yZCk+PTApIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZGVzdGlubyA9IHN0cmlwTm9uTnVtZXJpYyh0aGlzLnZhbHVlKTsKICAgICAgICAgICAgICAgICAgICBkZWJ1ZygidHJhbnNmaWVybyBhICIrZGVzdGlubyk7CiAgICAgICAgICAgICAgICAgICAgZGlhbChkZXN0aW5vKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmKHRoaXMudmFsdWUuaW5kZXhPZihkb25vdGRpc3R1cmJfd29yZCk+PTApIHsKICAgICAgICAgICAgICAgICAgc2V0aW5mbygiRG8gbm90IERpc3R1cmIiKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmKHRoaXMudmFsdWUuaW5kZXhPZihhdmFpbGFibGVfd29yZCk+PTApIHsKICAgICAgICAgICAgICAgICAgc2V0aW5mbygnJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZih0aGlzLnZhbHVlLmluZGV4T2YoaGFuZ3VwX3dvcmQpPj0wKSB7CiAgICAgICAgICAgICAgICAgICBoYW5ndXAobXlwb3NpdGlvbik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAoKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYoJCgnI2JveF9zcGVlY2hib3gnKS5sZW5ndGg9PTApIHsKICAgICAgICAgICAgICAgIGlmICgnd2Via2l0U3BlZWNoUmVjb2duaXRpb24nIGluIHdpbmRvdykgewogICAgICAgICAgICAgICAgICAgIHJlY29nbml0aW9uID0gbmV3IHdlYmtpdFNwZWVjaFJlY29nbml0aW9uKCk7CiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24uY29udGludW91cyA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24uaW50ZXJpbVJlc3VsdHMgPSBmYWxzZTsKCiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24ub25zdGFydCA9IGZ1bmN0aW9uKCkgeyAKICAgICAgICAgICAgICAgICAgICAgICAgZGVidWcoJ3NwZWVjaCBzdGFydCcpOyAKICAgICAgICAgICAgICAgICAgICAgICAgcmVjb2duaXppbmc9MTsKICAgICAgICAgICAgICAgICAgICAgICAgJCgnI3NwZWVjaC1taWMnKS5hZGRDbGFzcygnc3BlZWNocmVjb24nKS5yZW1vdmVDbGFzcygnc3BlZWNocmVjb2ZmJyk7IAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZWNvZ25pdGlvbi5vbnJlc3VsdCA9IGZ1bmN0aW9uKGV2ZW50KSB7IAogICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IGV2ZW50LnJlc3VsdEluZGV4OyBpIDwgZXZlbnQucmVzdWx0cy5sZW5ndGg7ICsraSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50LnJlc3VsdHNbaV0uaXNGaW5hbCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnKCdmaW5hbCA9ICcgKyBldmVudC5yZXN1bHRzW2ldWzBdLnRyYW5zY3JpcHQpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBiZXN0bWF0Y2ggPSBldmVudC5yZXN1bHRzW2ldWzBdLnRyYW5zY3JpcHQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnI3NwZWVjaC1pbnB1dC1maWVsZCcpLnZhbChiZXN0bWF0Y2gpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGJlc3RtYXRjaC5pbmRleE9mKHRyYW5zZmVyX3dvcmQpPj0wKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZXN0aW5vID0gc3RyaXBOb25OdW1lcmljKGJlc3RtYXRjaCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnKCJ0cmFuc2ZlciB0byAiK2Rlc3Rpbm8pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWFsKGRlc3Rpbm8pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZihiZXN0bWF0Y2guaW5kZXhPZihkaWFsX3dvcmQpPj0wKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZXN0aW5vID0gc3RyaXBOb25OdW1lcmljKGJlc3RtYXRjaCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnKCJkaWFsICIrZGVzdGlubyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpYWwoZGVzdGlubyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGJlc3RtYXRjaC5pbmRleE9mKGRvbm90ZGlzdHVyYl93b3JkKT49MCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRpbmZvKCJEbyBub3QgRGlzdHVyYiIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZihiZXN0bWF0Y2guaW5kZXhPZihhdmFpbGFibGVfd29yZCk+PTApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0aW5mbygnJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGJlc3RtYXRjaC5pbmRleE9mKGhhbmd1cF93b3JkKT49MCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5ndXAobXlwb3NpdGlvbik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVidWcoJ2ludGVyaW0gPSAnICsgZXZlbnQucmVzdWx0c1tpXVswXS50cmFuc2NyaXB0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgIH0gCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHJlY29nbml0aW9uLm9uZXJyb3IgPSBmdW5jdGlvbihldmVudCkgeyAKICAgICAgICAgICAgICAgICAgICAgICAgZGVidWcoJ2Vycm9yJyk7IAogICAgICAgICAgICAgICAgICAgICAgICAkKCcjc3BlZWNoLW1pYycpLnJlbW92ZUNsYXNzKCdzcGVlY2hyZWNvbicpLmFkZENsYXNzKCdzcGVlY2hyZWNvZmYnKTsgCiAgICAgICAgICAgICAgICAgICAgICAgIHJlY29nbml6aW5nPTA7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHJlY29nbml0aW9uLm9uZW5kID0gZnVuY3Rpb24oKSB7IAogICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zygnc3BlZWNoIGVuZCcpOyAKICAgICAgICAgICAgICAgICAgICAgICAgJCgnI3NwZWVjaC1taWMnKS5yZW1vdmVDbGFzcygnc3BlZWNocmVjb24nKS5hZGRDbGFzcygnc3BlZWNocmVjb2ZmJyk7IAogICAgICAgICAgICAgICAgICAgICAgICByZWNvZ25pemluZz0wOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZWNvZ25pdGlvbi5sYW5nID0gc3BlZWNobGFuZ3VhZ2U7CiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24uc3RhcnQoKTsKCiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbWJlZCgpOwoKICAgICAgICAgICAgICAgICAgICAvL3ZhciBpbnB1dCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1t4LXdlYmtpdC1zcGVlY2hdJyk7CiAgICAgICAgICAgICAgICAgICAgLy9pbnB1dC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCB0aGlzLmlucHV0Q2hhbmdlLCBmYWxzZSk7CiAgICAgICAgICAgICAgICAgICAgLy9pbnB1dC5hZGRFdmVudExpc3RlbmVyKCd3ZWJraXRzcGVlY2hjaGFuZ2UnLCB0aGlzLmlucHV0Q2hhbmdlLCBmYWxzZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style speech to 5313
192.168.1.253:54735 => { "btn": "7@GENERAL", "cmd": "style", "data": "I3NwZWVjaC1pbnB1dC1maWVsZCB7CndpZHRoOiA3MCU7CmhlaWdodDogMjBweDsKcGFkZGluZzogMTBweCAxNXB4Owpmb250LXNpemU6IDEyMCU7CmJvcmRlci1yYWRpdXM6IDEwcHg7CmJvcmRlcjogMXB4IHNvbGlkICNjY2M7Cm91dGxpbmU6IDA7Cn0KCiNzcGVlY2gtbWljIHsKd2lkdGg6NTBweDsKaGVpZ2h0OjQwcHg7CmJvcmRlci1yYWRpdXM6IDEwcHg7CmJhY2tncm91bmQtY29sb3I6ICNGRkY7CmJvcmRlcjogMXB4IHNvbGlkICNjY2M7Cm91dGxpbmU6MDsKZmxvYXQ6cmlnaHQ7CmJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDsKYmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodDsKY3Vyc29yOiBwb2ludGVyOwp9Cgouc3BlZWNocmVjb24gewpiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoTWdBeUFLVXpBSm1abVpxYW1wdWJtNXljbkoyZG5aNmVucCtmbjZDZ29LR2hvYUtpb3FPam82U2twS1dscGFhbXBxZW5wNm1wcWFxcXFxdXJxNnlzcksydHJhNnVyckd4c2JLeXNyT3pzN1cxdGJhMnRybTV1YnE2dXJ5OHZMMjl2YjYrdnIrL3Y4REF3TUhCd2NiR3hzckt5czdPenMvUHo5SFIwZExTMHRQVDA5VFUxTnJhMnR6YzNON2UzdC9mMytEZzRPTGk0dVRrNU9YbDVlZm41Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL3lINUJBRVVBRDhBTEFBQUFBQXlBRElBQUFiK3dKOXdTQ3dhajhpa2NzbHNPcC9RcUhSS3JWcXYyS3gyeSsxNnYrQ3dlRXcreWthZVV4bHBNaVFPQzhlNktETU1CSUtCUWpJZmloUURBWUlDQlRKOVB4MElBb0tDQml1SGlZRUJlWTZRaW93Q2xYMkppNE1HTEphZGphQ2JsNTZrYzV5TUFRV29heDBIb2dDZlpDY2RLa0lkQ2FJQkJpMUNJaHlHWGg4WEhVSWxDNklEQTBNRUV5NWZLQThRUXcyN2VRNGdRakVHQjJFRUNLZ1ZCUVlFMjBJZkR4VmhIQTRSUkRLdUxRVUl1R0VLQ2haSUxBY05HV05hSEdEQWdBUVJHQjhDT0poUTVvVUVCZzBHTEhpZzZNRUJEWDFJVUFoQWdJQUJBeGZ1SGVxR0FNTWhJd2NVZkRoWkJNR0NZeXlIQ0lpd0llYVFFQjFTMk56SnM2Y0t6NTlBZ3dvZFN2UktFQUE3KTsKfQoKLnNwZWVjaHJlY29mZiB7CmJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhNZ0F5QU1aZ0FQc0RRL29FUlBzRlJQa0dSZnNHUmZvSFJ2Y0pSdnNJUi9zSlIvc0tTUHNMU2ZzTlN2c1FUZnNUVC9zZFZ1SXFXdndqVzl3MFgvd3ladFEvWnVRN1ovdzFhZGRDYU10T2J1Sk5kTUZkZC94T2U4Umdlc1ZoZThaaWZQeFVmOVZ4aTZ4K2l2MW9qcVNMa2FTTWt2MTBsK3A5bWFxU21KbVptWnFhbXEyVm01dWJtNXljbkoyZG5lcUduLzJCb1o2ZW5wK2ZuNkNnb0tHaG9hS2lvcU9qbzZTa3BLV2xwYWFtcHFlbnA2bXBxZjJRcktxcXFxdXJxNnlzcksydHJhNnVydjJaczdHeHNiT3pzN1cxdGJhMnRybTV1YnE2dXJ5OHZMMjl2YjYrdnIrL3YvNnR3c0RBd01IQndjYkd4c3JLeXM3T3p2N0EwTkhSMGRMUzB0UFQwOVRVMVA3TzJ0cmEydDdlM3QvZjMrRGc0T0xpNHVUazVPWGw1ZWZuNS8vbTdmLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL3lINUJBRVVBSDhBTEFBQUFBQXlBRElBQUFmK2dIK0NnNFNGaG9lSWlZcUxqSTJPajVDUmtwT1VsWmFYbUptYW01eWRucCtnb1poZlZsK2lqRkVPQUJxblhrOUpVNFk2RFFBQURLSlNNRE14TlRpRVVRcTFDQ1NoWGpBcktpb3JORDJDczdVS1VhSk9OQ3NvMXlvdlhsRzBBQTA2cDBneUt0ZlhNQ1hCM3RMaE10WW95aHNFdFEzcjdPUW9JQkVEdFFuZ3A0TGl5SWw0VUl0QWhTWC9CZ1ZFTWFGV2dCWUpDWWtiTVNFQWdBRWJzRVJVYUNKQ0xRTVpYbWpjK0FlSmhWb0RNcHlBTVZMVUZDUlgvbnpCVUF0QUJuTlpCRGs1NHVXVEVpRkkvb1NvZWVIYWloV0RXUGpROG9sS2poMUFhblpJdGdJSEUwRmRZTVFJeFlKRGdWb2hncnlBd2VLcUlDVTVnb1Q2c0ErQUIxT0ZYbHIreWZKQ1JzeFBRQmJVb21ES0VKWVlONGlBY2xGTGdJVVVOcUFRNHFJRUJRNGZuNzRNQmJ1bGg0MGJLMnJrR0pjalJwSElIbXFHNkF2bEJ3b1dMR0RBRUhLM1U1UUtOVjBZeWlwalNLZ29FR29kQUlJb0JnMGxvTGpWWXNBYmtZd2FRVDhSVnFkSUJROGp3U1ZBOEplb0NaSXFKTE5yMzg2OXUvZnY0TU9MSDc4cEVBQTcpOwp9Cg==", "slot": "0" }
192.168.1.253:54735 => { "btn": "21@GENERAL", "cmd": "zbuttons", "data": "MUBHRU5FUkFMfGJ1dHRvbnwhRVhURU5TSU9OPTI2NjQhUFJJVkFDWT1OT05FIUxBQkVMPUNvbmZlcmVuY2UhTUFJTkNIQU5ORUw9Q09ORkVSRU5DRS8yNjY0IUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIVRZUEU9Y29uZmVyZW5jZSFDT05URVhUPWV4dC1tZWV0bWUKMkBHRU5FUkFMfGJ1dHRvbnwhRVhURU5TSU9OPTI2NjMhUFJJVkFDWT1OT05FIUxBQkVMPUNPTkYhTUFJTkNIQU5ORUw9Q09ORkVSRU5DRS8yNjYzIUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIVRZUEU9Y29uZmVyZW5jZSFDT05URVhUPWV4dC1tZWV0bWUKM0BHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUVYVEVOVk9JQ0VNQUlMPSMyMjUxN0Bmcm9tLWludGVybmFsIUxBQkVMPUpvaGFubiFNQUlOQ0hBTk5FTD1sb2NhbC8yNTE3QG91dGJvdW5kLWFsbHJvdXRlcyFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi8yNTE3IVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC8yNTE3QGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1Kb2hhbm58U3RhdGVJbnRlcmZhY2U9bG9jYWwvMjUxN0BvdXRib3VuZC1hbGxyb3V0ZXMhRU1BSUw9am9oYW5uLnp1cm5lckBzeWRhLm9yZyFFWFRFTlNJT049MjUxNyFFWFRFUk5BTD05ODY2MjQwMiFNQUlMQk9YPTI1MTdAZGVmYXVsdCFBVVRPQU5TV0VSSEVBREVSPV9fU0lQQURESEVBREVSNTE9Q2FsbC1JbmZvPWFuc3dlci1hZnRlcj0wLjAwMSFDT05URVhUPWZyb20taW50ZXJuYWwKNEBHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUxBQkVMPXRlc3QhTUFJTkNIQU5ORUw9bG9jYWwvMzEwMEBvdXRib3VuZC1hbGxyb3V0ZXMhUVVFVUVDT05URVhUPWZyb20tcXVldWUhQ1VTVE9NQVNUREI9Q0YvMzEwMCFUWVBFPWV4dGVuc2lvbiFRVUVVRUNIQU5ORUw9TG9jYWwvMzEwMEBmcm9tLXF1ZXVlL258UGVuYWx0eT0wfE1lbWJlck5hbWU9dGVzdHxTdGF0ZUludGVyZmFjZT1sb2NhbC8zMTAwQG91dGJvdW5kLWFsbHJvdXRlcyFFWFRFTlNJT049MzEwMCFBVVRPQU5TV0VSSEVBREVSPV9fU0lQQURESEVBREVSNTE9Q2FsbC1JbmZvPWFuc3dlci1hZnRlcj0wLjAwMSFDT05URVhUPWZyb20taW50ZXJuYWwKNUBHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUdST1VQPUFzdGVyaXNrIUxBQkVMPUpvaGFubiFNQUlOQ0hBTk5FTD1TSVAvNTMxMiFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi81MzEyIVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC81MzEyQGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1Kb2hhbm58U3RhdGVJbnRlcmZhY2U9U0lQLzUzMTIhRVhURU5TSU9OPTUzMTIhQVVUT0FOU1dFUkhFQURFUj1fX1NJUEFEREhFQURFUjUxPUNhbGwtSW5mbz1hbnN3ZXItYWZ0ZXI9MC4wMDEhQ09OVEVYVD1mcm9tLWludGVybmFsCjZAR0VORVJBTHxidXR0b258IVBSSVZBQ1k9Tk9ORSFHUk9VUD1Bc3RlcmlzayFMQUJFTD1Kb2hhbm4gTW9iaWxlIU1BSU5DSEFOTkVMPUlBWDIvNTMxOCFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi81MzE4IVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC81MzE4QGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1Kb2hhbm4gTW9iaWxlfFN0YXRlSW50ZXJmYWNlPUlBWDIvNTMxOCFFTUFJTD1Kb2hhbm4uWnVybmVyQHN5ZGEub3JnIUVYVEVOU0lPTj01MzE4IUVYVEVSTkFMPTk4NjYyNDAyIUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIU9SSUdJTkFURUNIQU5ORUw9TG9jYWwvKjgwNTMxOEBmcm9tLWludGVybmFsIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAo3QEdFTkVSQUx8YnV0dG9ufCFQUklWQUNZPU5PTkUhTEFCRUw9Sm9oYW5uIFJlbW90ZSBPZmZpY2UhTUFJTkNIQU5ORUw9U0lQLzUzMTMhUVVFVUVDT05URVhUPWZyb20tcXVldWUhQ1VTVE9NQVNUREI9Q0YvNTMxMyFRVUVVRUNIQU5ORUw9TG9jYWwvNTMxM0Bmcm9tLXF1ZXVlL258UGVuYWx0eT0wfE1lbWJlck5hbWU9Sm9oYW5uIFJlbW90ZSBPZmZpY2V8U3RhdGVJbnRlcmZhY2U9U0lQLzUzMTMmTG9jYWwvNTMxM0Bmcm9tLXF1ZXVlL258UGVuYWx0eT0wfE1lbWJlck5hbWU9Sm9oYW5uIFJlbW90ZSBPZmZpY2V8U3RhdGVJbnRlcmZhY2U9U0lQLzUzMTN8UXVldWU9NDQ0MyZMb2NhbC81MzEzQGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1Kb2hhbm4gUmVtb3RlIE9mZmljZXxTdGF0ZUludGVyZmFjZT1TSVAvNTMxM3xRdWV1ZT01MzIwIUVYVEVSTkFMPTk0MzQyMDAwIUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIU9SSUdJTkFURUNIQU5ORUw9TG9jYWwvKjgwNTMxM0Bmcm9tLWludGVybmFsIUdST1VQPUFzdGVyaXNrIUVYVEVOVk9JQ0VNQUlMPSMyNTMxM0Bmcm9tLWludGVybmFsIVRZUEU9ZXh0ZW5zaW9uIUVNQUlMPUpvaGFubi5adXJuZXJAc3lkYS5vcmchRVhURU5TSU9OPTUzMTMhTUFJTEJPWD01MzEzQGRlZmF1bHQhQ09OVEVYVD1mcm9tLWludGVybmFsCjhAR0VORVJBTHxidXR0b258IVBSSVZBQ1k9Tk9ORSFHUk9VUD1Bc3RlcmlzayFFWFRFTlZPSUNFTUFJTD0jMjIyNTBAZnJvbS1pbnRlcm5hbCFMQUJFTD1NYXR0IE9mZmljZSFNQUlOQ0hBTk5FTD1TSVAvMjI1MCFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi8yMjUwIVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC8yMjUwQGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1PIE1hdHR8U3RhdGVJbnRlcmZhY2U9U0lQLzIyNTAhRU1BSUw9bWF0dGJAc3lkYS5vcmchRVhURU5TSU9OPTIyNTAhTUFJTEJPWD0yMjUwQGRlZmF1bHQhQVVUT0FOU1dFUkhFQURFUj1fX1NJUEFEREhFQURFUjUxPUNhbGwtSW5mbz1hbnN3ZXItYWZ0ZXI9MC4wMDEhQ09OVEVYVD1mcm9tLWludGVybmFsCjlAR0VORVJBTHxidXR0b258IVBSSVZBQ1k9Tk9ORSFHUk9VUD1Bc3RlcmlzayFMQUJFTD1Qb2x5Y29tIDMhTUFJTkNIQU5ORUw9U0lQLzUyMDMhUVVFVUVDT05URVhUPWZyb20tcXVldWUhQ1VTVE9NQVNUREI9Q0YvNTIwMyFUWVBFPWV4dGVuc2lvbiFRVUVVRUNIQU5ORUw9TG9jYWwvNTIwM0Bmcm9tLXF1ZXVlL258UGVuYWx0eT0wfE1lbWJlck5hbWU9UG9seWNvbSAzfFN0YXRlSW50ZXJmYWNlPVNJUC81MjAzIUVYVEVOU0lPTj01MjAzIUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAoxMEBHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUdST1VQPUFzdGVyaXNrIUVYVEVOVk9JQ0VNQUlMPSMyNTMxNUBmcm9tLWludGVybmFsIUxBQkVMPVNlYW4gTW9iaWxlIU1BSU5DSEFOTkVMPUlBWDIvNTMxNSFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi81MzE1IVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC81MzE1QGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1TZWFuIE1vYmlsZXxTdGF0ZUludGVyZmFjZT1JQVgyLzUzMTUhRU1BSUw9U2Vhbi5aaWdtdW5kQHN5ZGEub3JnIUVYVEVOU0lPTj01MzE1IU1BSUxCT1g9NTMxNUBkZWZhdWx0IUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAoxMUBHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUdST1VQPUFzdGVyaXNrIUVYVEVOVk9JQ0VNQUlMPSMyNDAwMEBmcm9tLWludGVybmFsIUxBQkVMPVNoZWtoYXIgU3RvbGxlciBNb2JpbGUhTUFJTkNIQU5ORUw9SUFYMi80MDAwIVFVRVVFQ09OVEVYVD1mcm9tLXF1ZXVlIUNVU1RPTUFTVERCPUNGLzQwMDAhVFlQRT1leHRlbnNpb24hUVVFVUVDSEFOTkVMPUxvY2FsLzQwMDBAZnJvbS1xdWV1ZS9ufFBlbmFsdHk9MHxNZW1iZXJOYW1lPVNoZWtoYXIgU3RvbGxlciBNb2JpbGV8U3RhdGVJbnRlcmZhY2U9SUFYMi80MDAwIUVNQUlMPVNoZWtoYXJAc3lkYS5vcmchRVhURU5TSU9OPTQwMDAhTUFJTEJPWD00MDAwQGRlZmF1bHQhQVVUT0FOU1dFUkhFQURFUj1fX1NJUEFEREhFQURFUjUxPUNhbGwtSW5mbz1hbnN3ZXItYWZ0ZXI9MC4wMDEhQ09OVEVYVD1mcm9tLWludGVybmFsCjEyQEdFTkVSQUx8YnV0dG9ufCFQUklWQUNZPU5PTkUhR1JPVVA9QXN0ZXJpc2shTEFCRUw9Wm9pcGVyIFBDIU1BSU5DSEFOTkVMPUlBWDIvNTMxOSFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi81MzE5IVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC81MzE5QGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1ab2lwZXIgUEN8U3RhdGVJbnRlcmZhY2U9SUFYMi81MzE5IUVYVEVOU0lPTj01MzE5IUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAoxM0BHRU5FUkFMfGJ1dHRvbnwhRVhURU5TSU9OPTcwIVBSSVZBQ1k9Tk9ORSFMQUJFTD1Td2l0Y2hib2FyZCBDYWxsIFBhcmshTUFJTkNIQU5ORUw9UEFSSy9kZWZhdWx0IUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIVRZUEU9cGFyayFDT05URVhUPXBhcmtlZGNhbGxzCjE0QEdFTkVSQUx8YnV0dG9ufCFFWFRFTlNJT049NTMyMCFQUklWQUNZPU5PTkUhTEFCRUw9UmVndWxhciBDYWxscyB0byBBdHRlbmRhbnQhTUFJTkNIQU5ORUw9UVVFVUUvNTMyMF5MT0NBTEhPU1QhQVVUT0FOU1dFUkhFQURFUj1fX1NJUEFEREhFQURFUjUxPUNhbGwtSW5mbz1hbnN3ZXItYWZ0ZXI9MC4wMDEhVFlQRT1xdWV1ZSFDT05URVhUPWZyb20taW50ZXJuYWwKMTVAR0VORVJBTHxidXR0b258IUVYVEVOU0lPTj00NDQzIVBSSVZBQ1k9Tk9ORSFMQUJFTD1TZWN1cml0eSFNQUlOQ0hBTk5FTD1RVUVVRS80NDQzXkxPQ0FMSE9TVCFBVVRPQU5TV0VSSEVBREVSPV9fU0lQQURESEVBREVSNTE9Q2FsbC1JbmZvPWFuc3dlci1hZnRlcj0wLjAwMSFUWVBFPXF1ZXVlIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAo=", "slot": "" }
Send status notification to AnyEvent::Handle=HASH(0x62406b0), user: 5313
192.168.1.253:54735 => { "btn": "0@GENERAL", "cmd": "notionline", "data": "7", "slot": "0" }
192.168.1.253:54735 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~conferencebutton password 71da90c984de996b59e39db4114d63ad
Change language for plugin conferencebutton to en
Language file found /var/www/html/fop2/admin/plugins/conferencebutton/lang/en.js
192.168.1.253:54735 => { "btn": "0", "cmd": "setpluginlang", "data": "conferencebutton!bGFuZ1snY29uZmVyZW5jZSddPSdDb25mZXJlbmNlJzsK", "slot": "0" }
New client connection from socket AnyEvent::Handle=HASH(0x78bfd30) - 127.0.0.1:44998
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
[33;40mClient 127.0.0.1:44998, user: no user, type: no type
[0mClient 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
127.0.0.1:44998 <=
-- PROCESS_FLASH_COMMAND origen GENERAL accion checkauth destino 5313 password 71da90c984de996b59e39db4114d63ad
Check Auth ok for 5313 from 127.0.0.1:44998
Client Disconnection - remove client on error from socket AnyEvent::Handle=HASH(0x78bfd30) (127.0.0.1:44998)
192.168.1.253:54735 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~changepresence password 71da90c984de996b59e39db4114d63ad
Change language for plugin changepresence to en
Language file found /var/www/html/fop2/admin/plugins/changepresence/lang/en.js
192.168.1.253:54735 => { "btn": "0", "cmd": "setpluginlang", "data": "changepresence!bGFuZ1snc2V0cHJlc2VuY2UnXT0nU2V0IFByZXNlbmNlJzsK", "slot": "0" }
192.168.1.253:54735 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~clock password 71da90c984de996b59e39db4114d63ad
Change language for plugin clock to en
Language file found /var/www/html/fop2/admin/plugins/clock/lang/en.js
192.168.1.253:54735 => { "btn": "0", "cmd": "setpluginlang", "data": "clock!bGFuZ1snY2xvY2snXT0nQ2xvY2snOwoK", "slot": "0" }
192.168.1.253:54735 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~conferencebutton password 71da90c984de996b59e39db4114d63ad
Change language for plugin conferencebutton to en
Language file found /var/www/html/fop2/admin/plugins/conferencebutton/lang/en.js
192.168.1.253:54735 => { "btn": "0", "cmd": "setpluginlang", "data": "conferencebutton!bGFuZ1snY29uZmVyZW5jZSddPSdDb25mZXJlbmNlJzsK", "slot": "0" }
192.168.1.253:54735 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~callforwardfpbx password 71da90c984de996b59e39db4114d63ad
Change language for plugin callforwardfpbx to en
Language file found /var/www/html/fop2/admin/plugins/callforwardfpbx/lang/en.js
192.168.1.253:54735 => { "btn": "0", "cmd": "setpluginlang", "data": "callforwardfpbx!bGFuZ1snc2V0Y2FsbGZvcndhcmQnXT0nU2V0IENhbGwgRm9yd2FyZCc7CmxhbmdbJ2VudGVyY2FsbGZvcndhcmQnXT0nRW50ZXIgQ2FsbCBGb3J3YXJkIE51bWJlciBmb3InOwo=", "slot": "0" }
192.168.1.253:54735 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~speech password 71da90c984de996b59e39db4114d63ad
Change language for plugin speech to en
Language file found /var/www/html/fop2/admin/plugins/speech/lang/en.js
192.168.1.253:54735 => { "btn": "0", "cmd": "setpluginlang", "data": "speech!bGFuZ1snc3BlZWNoX2lucHV0J109J1NwZWVjaCBJbnB1dCc7Cg==", "slot": "0" }
192.168.1.253:54735 <= �
-- PROCESS_FLASH_COMMAND No destination in command. Ignoring.
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 9 seconds (Tue Mar 31 09:02:25 2015)
Flash clients connected: 1
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 12 seconds (Tue Mar 31 09:02:28 2015)
Flash clients connected: 1
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
New client connection from socket AnyEvent::Handle=HASH(0x7711500) - 192.168.1.253:54796
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
[33;40mClient 192.168.1.253:54796, user: no user, type: no type
[0mClient 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen GENERAL accion contexto destino 1 password
192.168.1.253:54796 => { "btn": "0", "cmd": "key", "data": "XNGBz3LCEEHQquHcjgWsEIZT96dslI", "slot": "" }
192.168.1.253:54796 => { "btn": "0", "cmd": "version", "data": "2.29.00!!1", "slot": "" }
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 1 accion auth destino 5313 password 4aacc06cabbceff30e8bdefb1b58cb5f
** RECEIVING AUTH REQUEST for 5313
TRYING TO VALIDATE USER 5313
VALIDAR USUARIO 5313@GENERAL
validate password using key XNGBz3LCEEHQquHcjgWsEIZT96dslI
VALIDAR USUARIO 5313 OK con clave regular (192.168.1.253:54796)
192.168.1.253:54796 => { "btn": "0", "cmd": "correct", "data": "0", "slot": "" }
** SENDING BUTTONS from GENERAL to socket AnyEvent::Handle=HASH(0x7711500) for client at 192.168.1.253:54796
** LITE VERSION limited to 15 buttons -- data discarded
** LITE VERSION limited to 15 buttons -- data discarded
** LITE VERSION limited to 15 buttons -- data discarded
** LITE VERSION limited to 15 buttons -- data discarded
** LITE VERSION limited to 15 buttons -- data discarded
192.168.1.253:54796 => { "btn": "0@GENERAL", "cmd": "preferences", "data": "eyAiYXV0b1BvcHVwIjogIiIsImRpc3BsYXlRdWV1ZSI6ICJtYXgiLCJkeW5hbWljTGluZURpc3BsYXkiOiAib24iLCJsYW5ndWFnZSI6ICJlbiIsImxlZnRDb2x1bW5PcmRlciI6ICJib3hfZ3JwMSxib3hfZ3JwMCxib3hfZXh0ZW5zaW9uYm94Iiwibm90aWZ5RHVyYXRpb24iOiAiNiIsInBvcHVwVXJsIjogIiIsInJpZ2h0Q29sdW1uT3JkZXIiOiAiYm94X2FzdGVybmljVGFnYm94LGJveF9zbXNib3gsYm94X3F1ZXVlYm94LGJveF9wYXJrYm94LGJveF9yaW5nZ3JvdXBib3gsYm94X2NvbmZlcmVuY2Vib3gsYm94X3NwZWVjaGJveCxib3hfdHJ1bmtib3giLCJzb3VuZENoYXQiOiAib24iLCJzb3VuZFF1ZXVlIjogIm9uIiwic291bmRSaW5nIjogIiJ9", "slot": "" }
192.168.1.253:54796 => { "btn": "0@GENERAL", "cmd": "vmailpath", "data": "/var/spool/asterisk/voicemail", "slot": "" }
192.168.1.253:54796 => { "btn": "0@GENERAL", "cmd": "permit", "data": "YWxs", "slot": "" }
mi perm all = 0 (0)
192.168.1.253:54796 => { "btn": "0@GENERAL", "cmd": "permitbtn", "data": "YWxsITA=", "slot": "" }
Trying to send plugin (configonreload) to user 5313 at context GENERAL
Sending plugin configonreload to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y29uZmlnb25yZWxvYWQhaWYodHlwZW9mIHBsdWdpbmNvbmZpZz09J3VuZGVmaW5lZCcpIHsgcGx1Z2luY29uZmlnID0ge319OwpwbHVnaW5jb25maWdbJ2NvbmZpZ29ucmVsb2FkJ109e307CmlmKHBsdWdpbmNvbmZpZ1snY29uZmlnb25yZWxvYWQnXVsnc2NyaXB0UmVsb2FkJ109PXVuZGVmaW5lZCkgeyBwbHVnaW5jb25maWdbJ2NvbmZpZ29ucmVsb2FkJ11bJ3NjcmlwdFJlbG9hZCddPXt9fTsKcGx1Z2luY29uZmlnWydjb25maWdvbnJlbG9hZCddWydzY3JpcHRSZWxvYWQnXVsnJ109Jy91c3IvYmluL3BocCAtZiAvdmFyL3d3dy9odG1sL2ZvcDIvYWRtaW4vdXBkYXRlX2NvbmYucGhwJzsKCnBsdWdpbnNbJ2NvbmZpZ29ucmVsb2FkJ10gPSAoZnVuY3Rpb24oKSB7CgogICAgcmV0dXJuIHsgCgogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICB9LAoKICAgICAgICBzZXRMYW5nOiBmdW5jdGlvbigpIHsKICAgICAgICB9LAoKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style configonreload to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "style", "data": "", "slot": "0" }
Trying to send plugin (presencedndfpbx) to user 5313 at context GENERAL
Sending plugin presencedndfpbx to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "cHJlc2VuY2VkbmRmcGJ4IQpwbHVnaW5zWydwcmVzZW5jZWRuZGZwYngnXSA9IChmdW5jdGlvbigpIHsKICAgIHJldHVybiB7IAogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICB9LAogICAgICAgIHNldExhbmc6IGZ1bmN0aW9uKCkgewogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgfQogICAgfQp9KCkpOwo=", "slot": "0" }
Sending style presencedndfpbx to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "style", "data": "", "slot": "0" }
Trying to send plugin (changepresence) to user 5313 at context GENERAL
Sending plugin changepresence to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y2hhbmdlcHJlc2VuY2UhCnBsdWdpbnNbJ2NoYW5nZXByZXNlbmNlJ10gPSAoZnVuY3Rpb24oKSB7CgogICAgLy8gUHJpdmF0ZSB2YXJpYWJsZXMKCiAgICB2YXIgbWVudU9wdGlvbiA9IHsKICAgICAgICAic2V0cHJlc2VuY2UiOiAgICB7IG5hbWU6ICdTZXQgUHJlc2VuY2UnLCBpY29uOiAncHJlc2VuY2UnLCBpdGVtczogeyB9IH0KICAgIH0KCiAgICByZXR1cm4geyAKCiAgICAgICAgbG9hZExhbmc6IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgICAgICB2YXIgaGFzaCA9IGhleF9tZDUoc2VjcmV0K2xhc3RrZXkpOwogICAgICAgICAgICBxdWV1ZWRjb21tYW5kID0gIjxtc2cgZGF0YT1cIiIgKyBteXBvc2l0aW9uICsgInxwbHVnaW5sYW5nfCIgKyBsYW5ndWFnZSArICJ+Y2hhbmdlcHJlc2VuY2UiICsgInwiICsgaGFzaCArICJcIiAvPiI7CiAgICAgICAgICAgIHNlbmRjb21tYW5kKCk7CiAgICAgICAgfSwKCiAgICAgICAgc2V0TGFuZzogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGRlYnVnKCdjaGFuZ2UgcHJlc2VuY2Ugc2V0bGFuZycpOwogICAgICAgICAgICAvLyBjaGFuZ2UgbGFuZ3VhZ2Ugc3RyaW5ncwogICAgICAgICAgICBtZW51T3B0aW9uWydzZXRwcmVzZW5jZSddWyduYW1lJ10gPSBsYW5nLnNldHByZXNlbmNlOwoKICAgICAgICAgICAgLy8gYWRkaW5nIHByZXNlbmNlIG9wdGlvbnMgdG8gdGhlIGNvbnRleHQgbWVudQogICAgICAgICAgICB2YXIgY29udD0wOwogICAgICAgICAgICBmb3IgKHZhciBpdGVtIGluIHByZXNlbmNlKSB7CiAgICAgICAgICAgICAgICBpZiAocHJlc2VuY2UuaGFzT3duUHJvcGVydHkoaXRlbSkpIHsKICAgICAgICAgICAgICAgICAgICBpZihpdGVtPT09IiIpIHsKICAgICAgICAgICAgICAgICAgICAgICBpdGVtUHJpbnQgPSBsYW5nWydhdmFpbGFibGUnXTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBpZihsYW5nLmhhc093blByb3BlcnR5KGl0ZW0pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtUHJpbnQgPSBsYW5nW2l0ZW1dOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVByaW50ID0gaXRlbTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBtZW51T3B0aW9uWyJzZXRwcmVzZW5jZSJdWyJpdGVtcyJdWyJzZXRQcmVzZW5jZV4iK2NvbnRdID0geyBuYW1lOiBpdGVtUHJpbnQgfTsKICAgICAgICAgICAgICAgICAgICBjb250Kys7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgfSwKICAgICAgICBzZXRFeHRlbnNpb25NZW51OiBmdW5jdGlvbihpdGVtcykgewogICAgICAgICAgICAvLyBjYWxsZWQgZnJvbSBidWlsZCBleHRlbnNpb24gbWVudSBhcyBjYWxsYmFjawogICAgICAgICAgICBqUXVlcnkuZXh0ZW5kKGl0ZW1zLG1lbnVPcHRpb24pOwogICAgICAgICAgICByZXR1cm4gaXRlbXM7CiAgICAgICAgfSwKICAgICAgICBzZXRQcmVzZW5jZTogZnVuY3Rpb24odGFyZ2V0LHNvdXJjZSkgewoKICAgICAgICAgICAgZGVidWcoInNldCBwcmVzZW5jZSIpOwogICAgICAgICAgICB2YXIgdGhpc2V4dGVuID0gYm90b25pdG9zW3NvdXJjZV1bJ0VYVEVOU0lPTiddOwogICAgICAgICAgICB2YXIgY29udD0wOwogICAgICAgICAgICB2YXIgdmFsdWU9JycKICAgICAgICAgICAgZm9yICh2YXIgaXRlbSBpbiBwcmVzZW5jZSkgewogICAgICAgICAgICAgICAgaWYoY29udCA9PSB0YXJnZXQpIHsKICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IGl0ZW07CiAgICAgICAgICAgICAgICAgICAgZGVidWcoJ3B1c28gcHJlc2VuY2lhIGVuICcrdmFsdWUpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY29udCsrOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZihqUXVlcnkuaW5BcnJheSgnMCcscGVybWlzb3NidG5bJ3ByZXNlbmNlbWFuYWdlciddKT49MCB8fCBqUXVlcnkuaW5BcnJheSgnMCcscGVybWlzb3NidG5bJ2FsbCddKT49MCkgewogICAgICAgICAgICAgICAgdmFyIGhhc2ggPSBoZXhfbWQ1KHNlY3JldCtsYXN0a2V5KTsKICAgICAgICAgICAgICAgIHZhciB2YWx1ZTY0ID0gQmFzZTY0LmVuY29kZSh2YWx1ZSk7CiAgICAgICAgICAgICAgICBxdWV1ZWRjb21tYW5kID0gIjxtc2cgZGF0YT1cIiIrc291cmNlKyJ8c2V0YXN0ZGJ8Zm9wMnN0YXRlfiIrdGhpc2V4dGVuKyJ+Iit2YWx1ZTY0KyJ8IitoYXNoKyJcIiAvPiI7CiAgICAgICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgICAgICB9CgogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIC8vIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uCiAgICAgICAgICAgIGRlYnVnKCdjaGFuZ2UgcHJlc2VuY2UgaW5pdCcpOwogICAgICAgIH0KICAgIH0KfSgpKTsK", "slot": "0" }
Sending style changepresence to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "style", "data": "LmNvbnRleHQtbWVudS1pdGVtLmljb24tcHJlc2VuY2UgIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4vaW1hZ2VzL3Nwcml0ZXMwMS5wbmcpO2JhY2tncm91bmQtcG9zaXRpb246MCAtMjQwcHg7YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDt9Cg==", "slot": "0" }
Trying to send plugin (clock) to user 5313 at context GENERAL
Sending plugin clock to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y2xvY2shCnBsdWdpbnNbJ2Nsb2NrJ10gPSAoZnVuY3Rpb24oKSB7CgogICAgcmV0dXJuIHsgCgogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICAgICAgdmFyIGhhc2ggPSBoZXhfbWQ1KHNlY3JldCtsYXN0a2V5KTsKICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgbXlwb3NpdGlvbiArICJ8cGx1Z2lubGFuZ3wiICsgbGFuZ3VhZ2UgKyAifmNsb2NrIiArICJ8IiArIGhhc2ggKyAiXCIgLz4iOwogICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgIH0sCgogICAgICAgIHNldExhbmc6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAvLyBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGFwcGx5IGEgbGFuZ3VhZ2Ugc3RyaW5ncyB0byBodG1sIGVsZW1lbnRzCiAgICAgICAgfSwKCiAgICAgICAgdXBkYXRlQ2xvY2s6IGZ1bmN0aW9uKCkgewoKICAgICAgICAgICAgdmFyIGN1cnJlbnRUaW1lID0gbmV3IERhdGUgKCApOwoKICAgICAgICAgICAgdmFyIGN1cnJlbnRIb3VycyA9IGN1cnJlbnRUaW1lLmdldEhvdXJzICggKTsKICAgICAgICAgICAgdmFyIGN1cnJlbnRNaW51dGVzID0gY3VycmVudFRpbWUuZ2V0TWludXRlcyAoICk7CiAgICAgICAgICAgIHZhciBjdXJyZW50U2Vjb25kcyA9IGN1cnJlbnRUaW1lLmdldFNlY29uZHMgKCApOwoKICAgICAgICAgICAgLy8gUGFkIHRoZSBtaW51dGVzIGFuZCBzZWNvbmRzIHdpdGggbGVhZGluZyB6ZXJvcywgaWYgcmVxdWlyZWQKICAgICAgICAgICAgY3VycmVudE1pbnV0ZXMgPSAoIGN1cnJlbnRNaW51dGVzIDwgMTAgPyAiMCIgOiAiIiApICsgY3VycmVudE1pbnV0ZXM7CiAgICAgICAgICAgIGN1cnJlbnRTZWNvbmRzID0gKCBjdXJyZW50U2Vjb25kcyA8IDEwID8gIjAiIDogIiIgKSArIGN1cnJlbnRTZWNvbmRzOwoKICAgICAgICAgICAgLy8gQ2hvb3NlIGVpdGhlciAiQU0iIG9yICJQTSIgYXMgYXBwcm9wcmlhdGUKICAgICAgICAgICAgdmFyIHRpbWVPZkRheSA9ICggY3VycmVudEhvdXJzIDwgMTIgKSA/ICJBTSIgOiAiUE0iOwoKICAgICAgICAgICAgLy8gQ29udmVydCB0aGUgaG91cnMgY29tcG9uZW50IHRvIDEyLWhvdXIgZm9ybWF0IGlmIG5lZWRlZAogICAgICAgICAgICBjdXJyZW50SG91cnMgPSAoIGN1cnJlbnRIb3VycyA+IDEyICkgPyBjdXJyZW50SG91cnMgLSAxMiA6IGN1cnJlbnRIb3VyczsKCiAgICAgICAgICAgIC8vIENvbnZlcnQgYW4gaG91cnMgY29tcG9uZW50IG9mICIwIiB0byAiMTIiCiAgICAgICAgICAgIGN1cnJlbnRIb3VycyA9ICggY3VycmVudEhvdXJzID09IDAgKSA/IDEyIDogY3VycmVudEhvdXJzOwoKICAgICAgICAgICAgLy8gQ29tcG9zZSB0aGUgc3RyaW5nIGZvciBkaXNwbGF5CiAgICAgICAgICAgIHZhciBjdXJyZW50VGltZVN0cmluZyA9IGN1cnJlbnRIb3VycyArICI6IiArIGN1cnJlbnRNaW51dGVzICsgIjoiICsgY3VycmVudFNlY29uZHMgKyAiICIgKyB0aW1lT2ZEYXk7CgogICAgICAgICAgICAvLyBVcGRhdGUgdGhlIHRpbWUgZGlzcGxheQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xvY2siKS5maXJzdENoaWxkLm5vZGVWYWx1ZSA9IGN1cnJlbnRUaW1lU3RyaW5nOwoKICAgICAgICB9LAogICAgICAgIGluaXQ6IGZ1bmN0aW9uKCkgewoKICAgICAgICAgICAgJCggIiNzZWNvbmR0b29sYmFyIiApLmJlZm9yZSggIjxzcGFuIGlkPSdjbG9jayc+Jm5ic3A7PC9zcGFuPiIgKTsKCiAgICAgICAgICAgIHdpbmRvdy5zZXRJbnRlcnZhbChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgcGx1Z2luc1snY2xvY2snXS51cGRhdGVDbG9jaygpOwogICAgICAgICAgICB9LCAxMDAwKTsKICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style clock to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "style", "data": "I2Nsb2NrIHsKcG9zaXRpb246YWJzb2x1dGU7CnRvcDoxMHB4Owp9Cg==", "slot": "0" }
Trying to send plugin (conferencebutton) to user 5313 at context GENERAL
Sending plugin conferencebutton to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y29uZmVyZW5jZWJ1dHRvbiEKcGx1Z2luc1snY29uZmVyZW5jZWJ1dHRvbiddID0gKGZ1bmN0aW9uKCkgewogICAgLy8gdmFyIHByaXZhdGUgPSBbXTsgCgogICAgcmV0dXJuIHsgCgogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICAgICAgdmFyIGhhc2ggPSBoZXhfbWQ1KHNlY3JldCtsYXN0a2V5KTsKICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgbXlwb3NpdGlvbiArICJ8cGx1Z2lubGFuZ3wiICsgbGFuZ3VhZ2UgKyAifmNvbmZlcmVuY2VidXR0b24iICsgInwiICsgaGFzaCArICJcIiAvPiI7CiAgICAgICAgICAgIHNlbmRjb21tYW5kKCk7CiAgICAgICAgfSwKCiAgICAgICAgc2V0TGFuZzogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIC8vIGNoYW5nZSBsYW5ndWFnZSBzdHJpbmdzCiAgICAgICAgICAgICQoJyNhY3Rpb25fY29uZmVyZW5jZWNhbGwnKS5hdHRyKCd0aXRsZScsbGFuZy5jb25mZXJlbmNlKTsKICAgICAgICAgICAgc2V0VGlwcygkKCcjYWN0aW9uX2NvbmZlcmVuY2VjYWxsJykpOwogICAgICAgIH0sCgogICAgICAgIGVtYmVkOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgLy8gZW1iZWQgZWxlbWVudHMgaW4gcGFnZSwgbG9hZCBzdHlsZSBmaWxlcwogICAgICAgICAgICBpZigkKCcjYWN0aW9uX2NvbmZlcmVuY2VjYWxsJykubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgICAgIHZhciBhY3Rpb25iYXIgPSAkKCcjY3VzdG9tYmFyJyk7CiAgICAgICAgICAgICAgICBidXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICAgICAgICAgICQoYnV0KS5hdHRyKHtpZDogJ2FjdGlvbl9jb25mZXJlbmNlY2FsbCcsIHRpdGxlOiAnQ29uZmVyZW5jZSd9KS5hZGRDbGFzcygnYWN0aW9uYnV0dG9uIG15Y2xpY2snKTsKICAgICAgICAgICAgICAgIGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2ltZycpOwogICAgICAgICAgICAgICAgJChpbWcpLmF0dHIoJ3NyYycsJy4vaW1hZ2VzL3Rvb2xiYXIvY29uZmVyZW5jZS5wbmcnKTsKICAgICAgICAgICAgICAgICQoYnV0KS5hcHBlbmQoaW1nKTsKICAgICAgICAgICAgICAgIGFjdGlvbmJhci5hcHBlbmQoYnV0KTsKICAgICAgICAgICAgfQogICAgICAgIH0sCgogICAgICAgIGFjdGlvbl9jb25mZXJlbmNlY2FsbDogZnVuY3Rpb24odGFyZ2V0KSB7CiAgICAgICAgICAgIGRlYnVnKCdkbyBjb25mZXJlbmNlIHdpdGggJyt0YXJnZXQpOwoKICAgICAgICAgICAgaWYgKG15cG9zaXRpb24gPiAwKSB7CiAgICAgICAgICAgICAgICB2YXIgYm90b24gPSAkKCcjYm90b24nICsgbXlwb3NpdGlvbik7CiAgICAgICAgICAgICAgICB2YXIgbnVtYmVyX3RvX2RpYWw7CiAgICAgICAgICAgICAgICAvLyBMb29rIGZvciB0eXBlZCBudW1iZXIgaW4gdGhlIGRpYWwgdGV4dGJveCBmaWVsZAogICAgICAgICAgICAgICAgaWYgKCQoJyNkaWFsdGV4dCcpWzBdLnZhbHVlLmluZGV4T2YobGFuZy5kaWFsKSA+PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgLy8gUGxhY2Vob2xkZXIgdGV4dCwgd2UgaGF2ZSB0byByZW1vdmUgaXQKICAgICAgICAgICAgICAgICAgICB2YXIgbGFyZ28gPSBsYW5nLmRpYWwubGVuZ3RoOwogICAgICAgICAgICAgICAgICAgIG51bWJlcl90b19kaWFsID0gJCgnI2RpYWx0ZXh0JylbMF0udmFsdWUuc3Vic3RyKGxhcmdvKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgbnVtYmVyX3RvX2RpYWwgPSAkKCcjZGlhbHRleHQnKVswXS52YWx1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIC8vIElmIHRoZSBkaWFsYm94IGlzIGVtcHR5LCBjaGVjayBpZiB3ZSBoYXZlIGEgdGFyZ2V0IHNlbGVjdGVkCiAgICAgICAgICAgICAgICAvLyBhbmQgdXNlIHRoZSB0YXJnZXQgZXh0ZW5zaW9uIG51bWJlcgogICAgICAgICAgICAgICAgaWYgKG51bWJlcl90b19kaWFsID09ICIiKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRhcmdldCA+IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyX3RvX2RpYWwgPSBib3Rvbml0b3NbdGFyZ2V0XVsnRVhURU5TSU9OJ107CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKG51bWJlcl90b19kaWFsID09ICIiKSB7CiAgICAgICAgICAgICAgICAgICAgZGVidWcoIldlIGRvIG5vdCBoYXZlIGEgdGFyZ2V0IG51bWJlciB0byBkaWFsLCBleGl0Iik7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGRlYnVnKG51bWJlcl90b19kaWFsKTsKCiAgICAgICAgICAgICAgICBpZiAoYm90b24uaGFzQ2xhc3MoJ2J1c3knKSkgewogICAgICAgICAgICAgICAgICAgIHZhciBoYXNoID0gaGV4X21kNShzZWNyZXQrbGFzdGtleSk7CiAgICAgICAgICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgbXlwb3NpdGlvbiArICJ8Y3VzdG9tY29uZmVyZW5jZXwiICsgbnVtYmVyX3RvX2RpYWwgKyAifCIgKyBoYXNoICsgIlwiIC8+IjsKICAgICAgICAgICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAvLyBXZSBhcmUgbm90IG9uIGEgY2FsbCwgbGV0cyB0cnkgdG8gYmFyZ2UgaW4KICAgICAgICAgICAgICAgICAgICBib3RvbiA9ICQoJyNib3RvbicgKyB0YXJnZXQpOwogICAgICAgICAgICAgICAgICAgIGlmIChib3Rvbi5oYXNDbGFzcygnYnVzeScpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG51bWJlcl90b19kaWFsID0gYm90b25pdG9zW215cG9zaXRpb25dWydFWFRFTlNJT04nXTsKICAgICAgICAgICAgICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgdGFyZ2V0ICsgInxjdXN0b21jb25mZXJlbmNlfCIgKyBudW1iZXJfdG9fZGlhbCArICJ8IiArIGhhc2ggKyAiXCIgLz4iOwogICAgICAgICAgICAgICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnKCJOb3Igc291cmNlIG9yIHRhcmdldCBleHRlbnNpb25zIGFyZSBidXN5LCBjb25mZXJlbmNlIGNhbiBiZSBkb25lIGlmIHNvbWVvbmUgaXMgb24gYSBjYWxsIG9ubHkiKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KIAogICAgICAgIH0sCgogICAgICAgIGluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAvLyBpbml0aWFsaXphdGlvbiBmdW5jdGlvbgogICAgICAgICAgICB0aGlzLmVtYmVkKCk7CiAgICAgICAgICAgIHRoaXMubG9hZExhbmcoKTsKICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style conferencebutton to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "style", "data": "", "slot": "0" }
Trying to send plugin (holdreport) to user 5313 at context GENERAL
Sending plugin holdreport to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "aG9sZHJlcG9ydCEKcGx1Z2luc1snaG9sZHJlcG9ydCddID0gKGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIHsgCiAgICAgICAgbG9hZExhbmc6IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgIH0sCiAgICAgICAgc2V0TGFuZzogZnVuY3Rpb24oKSB7CiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style holdreport to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "style", "data": "", "slot": "0" }
Trying to send plugin (presencepause) to user 5313 at context GENERAL
Sending plugin presencepause to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "cHJlc2VuY2VwYXVzZSEKcGx1Z2luc1sncHJlc2VuY2VwYXVzZSddID0gKGZ1bmN0aW9uKCkgewoKICAgIHJldHVybiB7IAoKICAgICAgICBsb2FkTGFuZzogZnVuY3Rpb24odmFsdWVzKSB7CiAgICAgICAgfSwKICAgICAgICBzZXRMYW5nOiBmdW5jdGlvbigpIHsKICAgICAgICB9LAogICAgICAgIGluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgIH0KICAgIH0KfSgpKTsK", "slot": "0" }
Sending style presencepause to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "style", "data": "Cg==", "slot": "0" }
Trying to send plugin (callforwardfpbx) to user 5313 at context GENERAL
Sending plugin callforwardfpbx to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "Y2FsbGZvcndhcmRmcGJ4IQpwbHVnaW5zWydjYWxsZm9yd2FyZGZwYngnXSA9IChmdW5jdGlvbigpIHsKCiAgICAvLyBQcml2YXRlIHZhcmlhYmxlcwoKICAgIHZhciBtZW51T3B0aW9uID0gewogICAgICAgICJzZXRDYWxsRm9yd2FyZCI6IHsgbmFtZTogJ1NldCBDYWxsIEZvcndhcmQnLCBpY29uOiAnc2V0Y2YnIH0sCiAgICB9CgogICAgcmV0dXJuIHsgCgogICAgICAgIGxvYWRMYW5nOiBmdW5jdGlvbih2YWx1ZXMpIHsKICAgICAgICAgICAgdmFyIGhhc2ggPSBoZXhfbWQ1KHNlY3JldCtsYXN0a2V5KTsKICAgICAgICAgICAgcXVldWVkY29tbWFuZCA9ICI8bXNnIGRhdGE9XCIiICsgbXlwb3NpdGlvbiArICJ8cGx1Z2lubGFuZ3wiICsgbGFuZ3VhZ2UgKyAifmNhbGxmb3J3YXJkZnBieCIgKyAifCIgKyBoYXNoICsgIlwiIC8+IjsKICAgICAgICAgICAgc2VuZGNvbW1hbmQoKTsKICAgICAgICB9LAoKICAgICAgICBzZXRMYW5nOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZGVidWcoJ2NhbGwgZm9yd2FyZCBzZXRsYW5nJyk7CiAgICAgICAgICAgIC8vIGNoYW5nZSBsYW5ndWFnZSBzdHJpbmdzCiAgICAgICAgICAgIG1lbnVPcHRpb25bJ3NldENhbGxGb3J3YXJkJ11bJ25hbWUnXSA9IGxhbmcuc2V0Y2FsbGZvcndhcmQ7CiAgICAgICAgfSwKCiAgICAgICAgc2V0RXh0ZW5zaW9uTWVudTogZnVuY3Rpb24oaXRlbXMpIHsKICAgICAgICAgICAgLy8gY2FsbGVkIGZyb20gYnVpbGQgZXh0ZW5zaW9uIG1lbnUgYXMgY2FsbGJhY2sKICAgICAgICAgICAgalF1ZXJ5LmV4dGVuZChpdGVtcyxtZW51T3B0aW9uKTsKICAgICAgICAgICAgcmV0dXJuIGl0ZW1zOwogICAgICAgIH0sCgogICAgICAgIHNldENhbGxGb3J3YXJkOiBmdW5jdGlvbih0YXJnZXQsc291cmNlKSB7CgogICAgICAgICAgICBkZWJ1Zygnc2V0IGNhbGwgZm9yd2FyZCcpOwogICAgICAgICAgICB2YXIgdGhpc2V4dGVuID0gYm90b25pdG9zW3NvdXJjZV1bJ0VYVEVOU0lPTiddOwogICAgICAgICAgICB2YXIgY3VycmVudHZhbHVlID0gJCgnI2V4dHJhaW5mbycrc291cmNlKS5hdHRyKCdvbGR0aXRsZScpOwogICAgICAgICAgICBhbGVydGlmeS5wcm9tcHQobGFuZy5lbnRlcmNhbGxmb3J3YXJkKycgJyt0aGlzZXh0ZW4sIGZ1bmN0aW9uIChlLCBzdHIpIHsKICAgICAgICAgICAgICAgIC8vIHN0ciBpcyB0aGUgaW5wdXQgdGV4dAogICAgICAgICAgICAgICAgaWYgKGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaGFzaCA9IGhleF9tZDUoc2VjcmV0K2xhc3RrZXkpOwogICAgICAgICAgICAgICAgICAgIHZhciBzdHJlbmNvZGVkID0gQmFzZTY0LmVuY29kZShzdHIpOwogICAgICAgICAgICAgICAgICAgIHF1ZXVlZGNvbW1hbmQgPSAiPG1zZyBkYXRhPVwiIitzb3VyY2UrInxzZXRhc3RkYnxDRn4iK3RoaXNleHRlbisifiIrc3RyZW5jb2RlZCsifCIraGFzaCsiXCIgLz4iOwogICAgICAgICAgICAgICAgICAgIHNlbmRjb21tYW5kKCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIC8vIHVzZXIgY2xpY2tlZCAiY2FuY2VsIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LGN1cnJlbnR2YWx1ZSk7CiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgLy8gaW5pdGlhbGl6YXRpb24gZnVuY3Rpb24KICAgICAgICAgICAgZGVidWcoJ2NhbGwgZm9yd2FyZCBpbml0Jyk7CiAgICAgICAgfQogICAgfQp9KCkpOwo=", "slot": "0" }
Sending style callforwardfpbx to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "style", "data": "LmNvbnRleHQtbWVudS1pdGVtLmljb24tc2V0Y2YgIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4vaW1hZ2VzL3Nwcml0ZXMwMS5wbmcpO2JhY2tncm91bmQtcG9zaXRpb246MCAtMjcycHg7YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDt9Cg==", "slot": "0" }
Trying to send plugin (speech) to user 5313 at context GENERAL
Sending plugin speech to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "plugin", "data": "c3BlZWNoIWlmKHR5cGVvZiBwbHVnaW5jb25maWc9PSd1bmRlZmluZWQnKSB7IHBsdWdpbmNvbmZpZyA9IHt9fTsKcGx1Z2luY29uZmlnWydzcGVlY2gnXT17fTsKaWYocGx1Z2luY29uZmlnWydzcGVlY2gnXVsnaGFuZ3VwX3dvcmQnXT09dW5kZWZpbmVkKSB7IHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2hhbmd1cF93b3JkJ109e319OwpwbHVnaW5jb25maWdbJ3NwZWVjaCddWydoYW5ndXBfd29yZCddWycnXT0naGFuZ3VwJzsKaWYocGx1Z2luY29uZmlnWydzcGVlY2gnXVsnbGFuZ3VhZ2UnXT09dW5kZWZpbmVkKSB7IHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2xhbmd1YWdlJ109e319OwpwbHVnaW5jb25maWdbJ3NwZWVjaCddWydsYW5ndWFnZSddWycnXT0nZW4tRU4nOwppZihwbHVnaW5jb25maWdbJ3NwZWVjaCddWydhdmFpbGFibGVfd29yZCddPT11bmRlZmluZWQpIHsgcGx1Z2luY29uZmlnWydzcGVlY2gnXVsnYXZhaWxhYmxlX3dvcmQnXT17fX07CnBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2F2YWlsYWJsZV93b3JkJ11bJyddPSdhdmFpbGFibGUnOwppZihwbHVnaW5jb25maWdbJ3NwZWVjaCddWyd0cmFuc2Zlcl93b3JkJ109PXVuZGVmaW5lZCkgeyBwbHVnaW5jb25maWdbJ3NwZWVjaCddWyd0cmFuc2Zlcl93b3JkJ109e319OwpwbHVnaW5jb25maWdbJ3NwZWVjaCddWyd0cmFuc2Zlcl93b3JkJ11bJyddPSd0cmFuc2Zlcic7CmlmKHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2Rvbm90ZGlzdHVyYl93b3JkJ109PXVuZGVmaW5lZCkgeyBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydkb25vdGRpc3R1cmJfd29yZCddPXt9fTsKcGx1Z2luY29uZmlnWydzcGVlY2gnXVsnZG9ub3RkaXN0dXJiX3dvcmQnXVsnJ109J2RvIG5vdCBkaXN0dXJiJzsKaWYocGx1Z2luY29uZmlnWydzcGVlY2gnXVsnZGlhbF93b3JkJ109PXVuZGVmaW5lZCkgeyBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydkaWFsX3dvcmQnXT17fX07CnBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2RpYWxfd29yZCddWycnXT0nZGlhbCc7CgpwbHVnaW5zWydzcGVlY2gnXSA9IChmdW5jdGlvbigpIHsKCiAgICB2YXIgc3BlZWNobGFuZ3VhZ2UgPSBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydsYW5ndWFnZSddWycnXTsKICAgIHZhciBkaWFsX3dvcmQgPSBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydkaWFsX3dvcmQnXVsnJ107CiAgICB2YXIgdHJhbnNmZXJfd29yZCA9IHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ3RyYW5zZmVyX3dvcmQnXVsnJ107CiAgICB2YXIgaGFuZ3VwX3dvcmQgPSBwbHVnaW5jb25maWdbJ3NwZWVjaCddWydoYW5ndXBfd29yZCddWycnXTsKICAgIHZhciBkb25vdGRpc3R1cmJfd29yZCA9IHBsdWdpbmNvbmZpZ1snc3BlZWNoJ11bJ2Rvbm90ZGlzdHVyYl93b3JkJ11bJyddOwogICAgdmFyIGF2YWlsYWJsZV93b3JkID0gcGx1Z2luY29uZmlnWydzcGVlY2gnXVsnYXZhaWxhYmxlX3dvcmQnXVsnJ107CiAgICB2YXIgcmVjb2duaXRpb247CiAgICB2YXIgcmVjb2duaXppbmc9MDsKCiAgICByZXR1cm4geyAKCiAgICAgICAgbG9hZExhbmc6IGZ1bmN0aW9uKHZhbHVlcykgewogICAgICAgICAgICB2YXIgaGFzaCA9IGhleF9tZDUoc2VjcmV0K2xhc3RrZXkpOwogICAgICAgICAgICBxdWV1ZWRjb21tYW5kID0gIjxtc2cgZGF0YT1cIiIgKyBteXBvc2l0aW9uICsgInxwbHVnaW5sYW5nfCIgKyBsYW5ndWFnZSArICJ+c3BlZWNoIiArICJ8IiArIGhhc2ggKyAiXCIgLz4iOwogICAgICAgICAgICBzZW5kY29tbWFuZCgpOwogICAgICAgIH0sCgogICAgICAgIHNldExhbmc6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZigkKCcjc3BlZWNoVGl0bGUnKS5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICAkKCcjc3BlZWNoVGl0bGUnKS5odG1sKGxhbmdbJ3NwZWVjaF9pbnB1dCddKTsKICAgICAgICAgICAgICAgICQoJyNzcGVlY2gtaW5wdXQtZmllbGQnKS5hdHRyKCdsYW5nJyxzcGVlY2hsYW5ndWFnZSk7CiAgICAgICAgICAgIH0KICAgICAgICB9LAoKICAgICAgICBlbWJlZDogZnVuY3Rpb24oKSB7CgogICAgICAgICAgICBpZigkKCcjYm94X3NwZWVjaGJveCcpLmxlbmd0aDw9MCkgewogICAgICAgICAgICAgICAgdmFyIGtsb24gPSAkKCAnI2JveF9hc3Rlcm5pY1RhZ2JveCcgKTsKICAgICAgICAgICAgICAgIHZhciBuZXdrbG9uID0ga2xvbi5jbG9uZSgpLmF0dHIoIHsgaWQ6ICdib3hfc3BlZWNoYm94JyB9KS5jc3Moe2Rpc3BsYXk6ICdibG9jayd9KS5pbnNlcnRCZWZvcmUoIGtsb24gKTsKICAgICAgICAgICAgICAgIG5ld2tsb24uZmluZCgnKicpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICBpZih0eXBlb2YgJCh0aGlzKS5hdHRyKCdpZCcpID09ICd1bmRlZmluZWQnKSB7CiAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgIGlmKCQodGhpcykuYXR0cignaWQnKT09J3RhZ2NhbGwnKSB7ICQodGhpcykuYXR0cignaWQnLCdzcGVlY2hUaXRsZScpLmh0bWwobGFuZy5zcGVlY2hfaW5wdXQpOyB9CiAgICAgICAgICAgICAgICAgICAgICAgaWYoJCh0aGlzKS5hdHRyKCdpZCcpPT0ndG9nZ2xlLWFzdGVybmljVGFnJykgeyAkKHRoaXMpLmF0dHIoJ2lkJywndG9nZ2xlLXNwZWVjaCcpOyB9CiAgICAgICAgICAgICAgICAgICAgICAgaWYoJCh0aGlzKS5hdHRyKCdpZCcpPT0nYXN0ZXJuaWNUYWcnKSB7ICQodGhpcykuYXR0cignaWQnLCdzcGVlY2gnKS5jc3MoJ3RleHQtYWxpZ24nLCdjZW50ZXInKTsgfQogICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8qJCgnI3NwZWVjaCcpLmh0bWwoIjxpbnB1dCBpZD0nc3BlZWNoLWlucHV0LWZpZWxkJyBzcGVlY2ggdHlwZT0ndGV4dCcgeC13ZWJraXQtc3BlZWNoIC8+Iik7Ki8KICAgICAgICAgICAgJCgnI3NwZWVjaCcpLmh0bWwoIjxpbnB1dCBpZD0nc3BlZWNoLWlucHV0LWZpZWxkJyB0eXBlPSd0ZXh0JyAvPjxidXR0b24gdHlwZT0nYnV0dG9uJyBpZD0nc3BlZWNoLW1pYycgY2xhc3M9J3NwZWVjaHJlY29mZicgLz4iKTsKCiAgICAgICAgICAgICQoIiNzcGVlY2gtbWljIikub24oICJjbGljayIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaWYocmVjb2duaXppbmc9PTApIHsKICAgICAgICAgICAgICAgICAgICByZWNvZ25pdGlvbi5zdGFydCgpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24uc3RvcCgpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CgogICAgICAgICAgICBtYWtlU29ydGFibGUoJ3JpZ2h0Jyk7CgogICAgICAgICAgICBpZih0eXBlb2YobXlwcmVmZXJlbmNlcy5yaWdodENvbHVtbk9yZGVyKT09J3N0cmluZycpIHsKICAgICAgICAgICAgICAgIG9yZGVuYXJEaXYoJ3JpZ2h0X2NvbHVtbicsbXlwcmVmZXJlbmNlcy5yaWdodENvbHVtbk9yZGVyKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdGhpcy5sb2FkTGFuZygpOwogICAgICAgIH0sCgogICAgICAgIGlucHV0Q2hhbmdlOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIGlmIChlLnJlc3VsdHMpIHsgCiAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgcmVzdWx0OyByZXN1bHQgPSBlLnJlc3VsdHNbaV07ICsraSkgewogICAgICAgICAgICAgICAgICAgIGRlYnVnKHJlc3VsdC51dHRlcmFuY2UsIHJlc3VsdC5jb25maWRlbmNlKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGRlYnVnKCdCZXN0IHJlc3VsdDogJyArIHRoaXMudmFsdWUpOwoKICAgICAgICAgICAgICAgIGlmKHRoaXMudmFsdWUuaW5kZXhPZih0cmFuc2Zlcl93b3JkKT49MCkgewogICAgICAgICAgICAgICAgICAgIHZhciBkZXN0aW5vID0gc3RyaXBOb25OdW1lcmljKHRoaXMudmFsdWUpOwogICAgICAgICAgICAgICAgICAgIGRlYnVnKCJ0cmFuc2ZpZXJvIGEgIitkZXN0aW5vKTsKICAgICAgICAgICAgICAgICAgICBkaWFsKGRlc3Rpbm8pOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYodGhpcy52YWx1ZS5pbmRleE9mKGRpYWxfd29yZCk+PTApIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZGVzdGlubyA9IHN0cmlwTm9uTnVtZXJpYyh0aGlzLnZhbHVlKTsKICAgICAgICAgICAgICAgICAgICBkZWJ1ZygidHJhbnNmaWVybyBhICIrZGVzdGlubyk7CiAgICAgICAgICAgICAgICAgICAgZGlhbChkZXN0aW5vKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmKHRoaXMudmFsdWUuaW5kZXhPZihkb25vdGRpc3R1cmJfd29yZCk+PTApIHsKICAgICAgICAgICAgICAgICAgc2V0aW5mbygiRG8gbm90IERpc3R1cmIiKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmKHRoaXMudmFsdWUuaW5kZXhPZihhdmFpbGFibGVfd29yZCk+PTApIHsKICAgICAgICAgICAgICAgICAgc2V0aW5mbygnJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZih0aGlzLnZhbHVlLmluZGV4T2YoaGFuZ3VwX3dvcmQpPj0wKSB7CiAgICAgICAgICAgICAgICAgICBoYW5ndXAobXlwb3NpdGlvbik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAoKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYoJCgnI2JveF9zcGVlY2hib3gnKS5sZW5ndGg9PTApIHsKICAgICAgICAgICAgICAgIGlmICgnd2Via2l0U3BlZWNoUmVjb2duaXRpb24nIGluIHdpbmRvdykgewogICAgICAgICAgICAgICAgICAgIHJlY29nbml0aW9uID0gbmV3IHdlYmtpdFNwZWVjaFJlY29nbml0aW9uKCk7CiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24uY29udGludW91cyA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24uaW50ZXJpbVJlc3VsdHMgPSBmYWxzZTsKCiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24ub25zdGFydCA9IGZ1bmN0aW9uKCkgeyAKICAgICAgICAgICAgICAgICAgICAgICAgZGVidWcoJ3NwZWVjaCBzdGFydCcpOyAKICAgICAgICAgICAgICAgICAgICAgICAgcmVjb2duaXppbmc9MTsKICAgICAgICAgICAgICAgICAgICAgICAgJCgnI3NwZWVjaC1taWMnKS5hZGRDbGFzcygnc3BlZWNocmVjb24nKS5yZW1vdmVDbGFzcygnc3BlZWNocmVjb2ZmJyk7IAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZWNvZ25pdGlvbi5vbnJlc3VsdCA9IGZ1bmN0aW9uKGV2ZW50KSB7IAogICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IGV2ZW50LnJlc3VsdEluZGV4OyBpIDwgZXZlbnQucmVzdWx0cy5sZW5ndGg7ICsraSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50LnJlc3VsdHNbaV0uaXNGaW5hbCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnKCdmaW5hbCA9ICcgKyBldmVudC5yZXN1bHRzW2ldWzBdLnRyYW5zY3JpcHQpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBiZXN0bWF0Y2ggPSBldmVudC5yZXN1bHRzW2ldWzBdLnRyYW5zY3JpcHQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnI3NwZWVjaC1pbnB1dC1maWVsZCcpLnZhbChiZXN0bWF0Y2gpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGJlc3RtYXRjaC5pbmRleE9mKHRyYW5zZmVyX3dvcmQpPj0wKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZXN0aW5vID0gc3RyaXBOb25OdW1lcmljKGJlc3RtYXRjaCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnKCJ0cmFuc2ZlciB0byAiK2Rlc3Rpbm8pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWFsKGRlc3Rpbm8pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZihiZXN0bWF0Y2guaW5kZXhPZihkaWFsX3dvcmQpPj0wKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZXN0aW5vID0gc3RyaXBOb25OdW1lcmljKGJlc3RtYXRjaCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnKCJkaWFsICIrZGVzdGlubyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpYWwoZGVzdGlubyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGJlc3RtYXRjaC5pbmRleE9mKGRvbm90ZGlzdHVyYl93b3JkKT49MCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRpbmZvKCJEbyBub3QgRGlzdHVyYiIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZihiZXN0bWF0Y2guaW5kZXhPZihhdmFpbGFibGVfd29yZCk+PTApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0aW5mbygnJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGJlc3RtYXRjaC5pbmRleE9mKGhhbmd1cF93b3JkKT49MCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5ndXAobXlwb3NpdGlvbik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVidWcoJ2ludGVyaW0gPSAnICsgZXZlbnQucmVzdWx0c1tpXVswXS50cmFuc2NyaXB0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgIH0gCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHJlY29nbml0aW9uLm9uZXJyb3IgPSBmdW5jdGlvbihldmVudCkgeyAKICAgICAgICAgICAgICAgICAgICAgICAgZGVidWcoJ2Vycm9yJyk7IAogICAgICAgICAgICAgICAgICAgICAgICAkKCcjc3BlZWNoLW1pYycpLnJlbW92ZUNsYXNzKCdzcGVlY2hyZWNvbicpLmFkZENsYXNzKCdzcGVlY2hyZWNvZmYnKTsgCiAgICAgICAgICAgICAgICAgICAgICAgIHJlY29nbml6aW5nPTA7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHJlY29nbml0aW9uLm9uZW5kID0gZnVuY3Rpb24oKSB7IAogICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zygnc3BlZWNoIGVuZCcpOyAKICAgICAgICAgICAgICAgICAgICAgICAgJCgnI3NwZWVjaC1taWMnKS5yZW1vdmVDbGFzcygnc3BlZWNocmVjb24nKS5hZGRDbGFzcygnc3BlZWNocmVjb2ZmJyk7IAogICAgICAgICAgICAgICAgICAgICAgICByZWNvZ25pemluZz0wOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZWNvZ25pdGlvbi5sYW5nID0gc3BlZWNobGFuZ3VhZ2U7CiAgICAgICAgICAgICAgICAgICAgcmVjb2duaXRpb24uc3RhcnQoKTsKCiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbWJlZCgpOwoKICAgICAgICAgICAgICAgICAgICAvL3ZhciBpbnB1dCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1t4LXdlYmtpdC1zcGVlY2hdJyk7CiAgICAgICAgICAgICAgICAgICAgLy9pbnB1dC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCB0aGlzLmlucHV0Q2hhbmdlLCBmYWxzZSk7CiAgICAgICAgICAgICAgICAgICAgLy9pbnB1dC5hZGRFdmVudExpc3RlbmVyKCd3ZWJraXRzcGVlY2hjaGFuZ2UnLCB0aGlzLmlucHV0Q2hhbmdlLCBmYWxzZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0oKSk7Cg==", "slot": "0" }
Sending style speech to 5313
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "style", "data": "I3NwZWVjaC1pbnB1dC1maWVsZCB7CndpZHRoOiA3MCU7CmhlaWdodDogMjBweDsKcGFkZGluZzogMTBweCAxNXB4Owpmb250LXNpemU6IDEyMCU7CmJvcmRlci1yYWRpdXM6IDEwcHg7CmJvcmRlcjogMXB4IHNvbGlkICNjY2M7Cm91dGxpbmU6IDA7Cn0KCiNzcGVlY2gtbWljIHsKd2lkdGg6NTBweDsKaGVpZ2h0OjQwcHg7CmJvcmRlci1yYWRpdXM6IDEwcHg7CmJhY2tncm91bmQtY29sb3I6ICNGRkY7CmJvcmRlcjogMXB4IHNvbGlkICNjY2M7Cm91dGxpbmU6MDsKZmxvYXQ6cmlnaHQ7CmJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDsKYmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodDsKY3Vyc29yOiBwb2ludGVyOwp9Cgouc3BlZWNocmVjb24gewpiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoTWdBeUFLVXpBSm1abVpxYW1wdWJtNXljbkoyZG5aNmVucCtmbjZDZ29LR2hvYUtpb3FPam82U2twS1dscGFhbXBxZW5wNm1wcWFxcXFxdXJxNnlzcksydHJhNnVyckd4c2JLeXNyT3pzN1cxdGJhMnRybTV1YnE2dXJ5OHZMMjl2YjYrdnIrL3Y4REF3TUhCd2NiR3hzckt5czdPenMvUHo5SFIwZExTMHRQVDA5VFUxTnJhMnR6YzNON2UzdC9mMytEZzRPTGk0dVRrNU9YbDVlZm41Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL3lINUJBRVVBRDhBTEFBQUFBQXlBRElBQUFiK3dKOXdTQ3dhajhpa2NzbHNPcC9RcUhSS3JWcXYyS3gyeSsxNnYrQ3dlRXcreWthZVV4bHBNaVFPQzhlNktETU1CSUtCUWpJZmloUURBWUlDQlRKOVB4MElBb0tDQml1SGlZRUJlWTZRaW93Q2xYMkppNE1HTEphZGphQ2JsNTZrYzV5TUFRV29heDBIb2dDZlpDY2RLa0lkQ2FJQkJpMUNJaHlHWGg4WEhVSWxDNklEQTBNRUV5NWZLQThRUXcyN2VRNGdRakVHQjJFRUNLZ1ZCUVlFMjBJZkR4VmhIQTRSUkRLdUxRVUl1R0VLQ2haSUxBY05HV05hSEdEQWdBUVJHQjhDT0poUTVvVUVCZzBHTEhpZzZNRUJEWDFJVUFoQWdJQUJBeGZ1SGVxR0FNTWhJd2NVZkRoWkJNR0NZeXlIQ0lpd0llYVFFQjFTMk56SnM2Y0t6NTlBZ3dvZFN2UktFQUE3KTsKfQoKLnNwZWVjaHJlY29mZiB7CmJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhNZ0F5QU1aZ0FQc0RRL29FUlBzRlJQa0dSZnNHUmZvSFJ2Y0pSdnNJUi9zSlIvc0tTUHNMU2ZzTlN2c1FUZnNUVC9zZFZ1SXFXdndqVzl3MFgvd3ladFEvWnVRN1ovdzFhZGRDYU10T2J1Sk5kTUZkZC94T2U4Umdlc1ZoZThaaWZQeFVmOVZ4aTZ4K2l2MW9qcVNMa2FTTWt2MTBsK3A5bWFxU21KbVptWnFhbXEyVm01dWJtNXljbkoyZG5lcUduLzJCb1o2ZW5wK2ZuNkNnb0tHaG9hS2lvcU9qbzZTa3BLV2xwYWFtcHFlbnA2bXBxZjJRcktxcXFxdXJxNnlzcksydHJhNnVydjJaczdHeHNiT3pzN1cxdGJhMnRybTV1YnE2dXJ5OHZMMjl2YjYrdnIrL3YvNnR3c0RBd01IQndjYkd4c3JLeXM3T3p2N0EwTkhSMGRMUzB0UFQwOVRVMVA3TzJ0cmEydDdlM3QvZjMrRGc0T0xpNHVUazVPWGw1ZWZuNS8vbTdmLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL3lINUJBRVVBSDhBTEFBQUFBQXlBRElBQUFmK2dIK0NnNFNGaG9lSWlZcUxqSTJPajVDUmtwT1VsWmFYbUptYW01eWRucCtnb1poZlZsK2lqRkVPQUJxblhrOUpVNFk2RFFBQURLSlNNRE14TlRpRVVRcTFDQ1NoWGpBcktpb3JORDJDczdVS1VhSk9OQ3NvMXlvdlhsRzBBQTA2cDBneUt0ZlhNQ1hCM3RMaE10WW95aHNFdFEzcjdPUW9JQkVEdFFuZ3A0TGl5SWw0VUl0QWhTWC9CZ1ZFTWFGV2dCWUpDWWtiTVNFQWdBRWJzRVJVYUNKQ0xRTVpYbWpjK0FlSmhWb0RNcHlBTVZMVUZDUlgvbnpCVUF0QUJuTlpCRGs1NHVXVEVpRkkvb1NvZWVIYWloV0RXUGpROG9sS2poMUFhblpJdGdJSEUwRmRZTVFJeFlKRGdWb2hncnlBd2VLcUlDVTVnb1Q2c0ErQUIxT0ZYbHIreWZKQ1JzeFBRQmJVb21ES0VKWVlONGlBY2xGTGdJVVVOcUFRNHFJRUJRNGZuNzRNQmJ1bGg0MGJLMnJrR0pjalJwSElIbXFHNkF2bEJ3b1dMR0RBRUhLM1U1UUtOVjBZeWlwalNLZ29FR29kQUlJb0JnMGxvTGpWWXNBYmtZd2FRVDhSVnFkSUJROGp3U1ZBOEplb0NaSXFKTE5yMzg2OXUvZnY0TU9MSDc4cEVBQTcpOwp9Cg==", "slot": "0" }
192.168.1.253:54796 => { "btn": "21@GENERAL", "cmd": "zbuttons", "data": "MUBHRU5FUkFMfGJ1dHRvbnwhRVhURU5TSU9OPTI2NjQhUFJJVkFDWT1OT05FIUxBQkVMPUNvbmZlcmVuY2UhTUFJTkNIQU5ORUw9Q09ORkVSRU5DRS8yNjY0IUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIVRZUEU9Y29uZmVyZW5jZSFDT05URVhUPWV4dC1tZWV0bWUKMkBHRU5FUkFMfGJ1dHRvbnwhRVhURU5TSU9OPTI2NjMhUFJJVkFDWT1OT05FIUxBQkVMPUNPTkYhTUFJTkNIQU5ORUw9Q09ORkVSRU5DRS8yNjYzIUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIVRZUEU9Y29uZmVyZW5jZSFDT05URVhUPWV4dC1tZWV0bWUKM0BHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUVYVEVOVk9JQ0VNQUlMPSMyMjUxN0Bmcm9tLWludGVybmFsIUxBQkVMPUpvaGFubiFNQUlOQ0hBTk5FTD1sb2NhbC8yNTE3QG91dGJvdW5kLWFsbHJvdXRlcyFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi8yNTE3IVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC8yNTE3QGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1Kb2hhbm58U3RhdGVJbnRlcmZhY2U9bG9jYWwvMjUxN0BvdXRib3VuZC1hbGxyb3V0ZXMhRU1BSUw9am9oYW5uLnp1cm5lckBzeWRhLm9yZyFFWFRFTlNJT049MjUxNyFFWFRFUk5BTD05ODY2MjQwMiFNQUlMQk9YPTI1MTdAZGVmYXVsdCFBVVRPQU5TV0VSSEVBREVSPV9fU0lQQURESEVBREVSNTE9Q2FsbC1JbmZvPWFuc3dlci1hZnRlcj0wLjAwMSFDT05URVhUPWZyb20taW50ZXJuYWwKNEBHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUxBQkVMPXRlc3QhTUFJTkNIQU5ORUw9bG9jYWwvMzEwMEBvdXRib3VuZC1hbGxyb3V0ZXMhUVVFVUVDT05URVhUPWZyb20tcXVldWUhQ1VTVE9NQVNUREI9Q0YvMzEwMCFUWVBFPWV4dGVuc2lvbiFRVUVVRUNIQU5ORUw9TG9jYWwvMzEwMEBmcm9tLXF1ZXVlL258UGVuYWx0eT0wfE1lbWJlck5hbWU9dGVzdHxTdGF0ZUludGVyZmFjZT1sb2NhbC8zMTAwQG91dGJvdW5kLWFsbHJvdXRlcyFFWFRFTlNJT049MzEwMCFBVVRPQU5TV0VSSEVBREVSPV9fU0lQQURESEVBREVSNTE9Q2FsbC1JbmZvPWFuc3dlci1hZnRlcj0wLjAwMSFDT05URVhUPWZyb20taW50ZXJuYWwKNUBHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUdST1VQPUFzdGVyaXNrIUxBQkVMPUpvaGFubiFNQUlOQ0hBTk5FTD1TSVAvNTMxMiFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi81MzEyIVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC81MzEyQGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1Kb2hhbm58U3RhdGVJbnRlcmZhY2U9U0lQLzUzMTIhRVhURU5TSU9OPTUzMTIhQVVUT0FOU1dFUkhFQURFUj1fX1NJUEFEREhFQURFUjUxPUNhbGwtSW5mbz1hbnN3ZXItYWZ0ZXI9MC4wMDEhQ09OVEVYVD1mcm9tLWludGVybmFsCjZAR0VORVJBTHxidXR0b258IVBSSVZBQ1k9Tk9ORSFHUk9VUD1Bc3RlcmlzayFMQUJFTD1Kb2hhbm4gTW9iaWxlIU1BSU5DSEFOTkVMPUlBWDIvNTMxOCFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi81MzE4IVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC81MzE4QGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1Kb2hhbm4gTW9iaWxlfFN0YXRlSW50ZXJmYWNlPUlBWDIvNTMxOCFFTUFJTD1Kb2hhbm4uWnVybmVyQHN5ZGEub3JnIUVYVEVOU0lPTj01MzE4IUVYVEVSTkFMPTk4NjYyNDAyIUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIU9SSUdJTkFURUNIQU5ORUw9TG9jYWwvKjgwNTMxOEBmcm9tLWludGVybmFsIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAo3QEdFTkVSQUx8YnV0dG9ufCFQUklWQUNZPU5PTkUhTEFCRUw9Sm9oYW5uIFJlbW90ZSBPZmZpY2UhTUFJTkNIQU5ORUw9U0lQLzUzMTMhUVVFVUVDT05URVhUPWZyb20tcXVldWUhQ1VTVE9NQVNUREI9Q0YvNTMxMyFRVUVVRUNIQU5ORUw9TG9jYWwvNTMxM0Bmcm9tLXF1ZXVlL258UGVuYWx0eT0wfE1lbWJlck5hbWU9Sm9oYW5uIFJlbW90ZSBPZmZpY2V8U3RhdGVJbnRlcmZhY2U9U0lQLzUzMTMmTG9jYWwvNTMxM0Bmcm9tLXF1ZXVlL258UGVuYWx0eT0wfE1lbWJlck5hbWU9Sm9oYW5uIFJlbW90ZSBPZmZpY2V8U3RhdGVJbnRlcmZhY2U9U0lQLzUzMTN8UXVldWU9NDQ0MyZMb2NhbC81MzEzQGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1Kb2hhbm4gUmVtb3RlIE9mZmljZXxTdGF0ZUludGVyZmFjZT1TSVAvNTMxM3xRdWV1ZT01MzIwIUVYVEVSTkFMPTk0MzQyMDAwIUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIU9SSUdJTkFURUNIQU5ORUw9TG9jYWwvKjgwNTMxM0Bmcm9tLWludGVybmFsIUdST1VQPUFzdGVyaXNrIUVYVEVOVk9JQ0VNQUlMPSMyNTMxM0Bmcm9tLWludGVybmFsIVRZUEU9ZXh0ZW5zaW9uIUVNQUlMPUpvaGFubi5adXJuZXJAc3lkYS5vcmchRVhURU5TSU9OPTUzMTMhTUFJTEJPWD01MzEzQGRlZmF1bHQhQ09OVEVYVD1mcm9tLWludGVybmFsCjhAR0VORVJBTHxidXR0b258IVBSSVZBQ1k9Tk9ORSFHUk9VUD1Bc3RlcmlzayFFWFRFTlZPSUNFTUFJTD0jMjIyNTBAZnJvbS1pbnRlcm5hbCFMQUJFTD1NYXR0IE9mZmljZSFNQUlOQ0hBTk5FTD1TSVAvMjI1MCFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi8yMjUwIVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC8yMjUwQGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1PIE1hdHR8U3RhdGVJbnRlcmZhY2U9U0lQLzIyNTAhRU1BSUw9bWF0dGJAc3lkYS5vcmchRVhURU5TSU9OPTIyNTAhTUFJTEJPWD0yMjUwQGRlZmF1bHQhQVVUT0FOU1dFUkhFQURFUj1fX1NJUEFEREhFQURFUjUxPUNhbGwtSW5mbz1hbnN3ZXItYWZ0ZXI9MC4wMDEhQ09OVEVYVD1mcm9tLWludGVybmFsCjlAR0VORVJBTHxidXR0b258IVBSSVZBQ1k9Tk9ORSFHUk9VUD1Bc3RlcmlzayFMQUJFTD1Qb2x5Y29tIDMhTUFJTkNIQU5ORUw9U0lQLzUyMDMhUVVFVUVDT05URVhUPWZyb20tcXVldWUhQ1VTVE9NQVNUREI9Q0YvNTIwMyFUWVBFPWV4dGVuc2lvbiFRVUVVRUNIQU5ORUw9TG9jYWwvNTIwM0Bmcm9tLXF1ZXVlL258UGVuYWx0eT0wfE1lbWJlck5hbWU9UG9seWNvbSAzfFN0YXRlSW50ZXJmYWNlPVNJUC81MjAzIUVYVEVOU0lPTj01MjAzIUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAoxMEBHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUdST1VQPUFzdGVyaXNrIUVYVEVOVk9JQ0VNQUlMPSMyNTMxNUBmcm9tLWludGVybmFsIUxBQkVMPVNlYW4gTW9iaWxlIU1BSU5DSEFOTkVMPUlBWDIvNTMxNSFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi81MzE1IVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC81MzE1QGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1TZWFuIE1vYmlsZXxTdGF0ZUludGVyZmFjZT1JQVgyLzUzMTUhRU1BSUw9U2Vhbi5aaWdtdW5kQHN5ZGEub3JnIUVYVEVOU0lPTj01MzE1IU1BSUxCT1g9NTMxNUBkZWZhdWx0IUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAoxMUBHRU5FUkFMfGJ1dHRvbnwhUFJJVkFDWT1OT05FIUdST1VQPUFzdGVyaXNrIUVYVEVOVk9JQ0VNQUlMPSMyNDAwMEBmcm9tLWludGVybmFsIUxBQkVMPVNoZWtoYXIgU3RvbGxlciBNb2JpbGUhTUFJTkNIQU5ORUw9SUFYMi80MDAwIVFVRVVFQ09OVEVYVD1mcm9tLXF1ZXVlIUNVU1RPTUFTVERCPUNGLzQwMDAhVFlQRT1leHRlbnNpb24hUVVFVUVDSEFOTkVMPUxvY2FsLzQwMDBAZnJvbS1xdWV1ZS9ufFBlbmFsdHk9MHxNZW1iZXJOYW1lPVNoZWtoYXIgU3RvbGxlciBNb2JpbGV8U3RhdGVJbnRlcmZhY2U9SUFYMi80MDAwIUVNQUlMPVNoZWtoYXJAc3lkYS5vcmchRVhURU5TSU9OPTQwMDAhTUFJTEJPWD00MDAwQGRlZmF1bHQhQVVUT0FOU1dFUkhFQURFUj1fX1NJUEFEREhFQURFUjUxPUNhbGwtSW5mbz1hbnN3ZXItYWZ0ZXI9MC4wMDEhQ09OVEVYVD1mcm9tLWludGVybmFsCjEyQEdFTkVSQUx8YnV0dG9ufCFQUklWQUNZPU5PTkUhR1JPVVA9QXN0ZXJpc2shTEFCRUw9Wm9pcGVyIFBDIU1BSU5DSEFOTkVMPUlBWDIvNTMxOSFRVUVVRUNPTlRFWFQ9ZnJvbS1xdWV1ZSFDVVNUT01BU1REQj1DRi81MzE5IVRZUEU9ZXh0ZW5zaW9uIVFVRVVFQ0hBTk5FTD1Mb2NhbC81MzE5QGZyb20tcXVldWUvbnxQZW5hbHR5PTB8TWVtYmVyTmFtZT1ab2lwZXIgUEN8U3RhdGVJbnRlcmZhY2U9SUFYMi81MzE5IUVYVEVOU0lPTj01MzE5IUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAoxM0BHRU5FUkFMfGJ1dHRvbnwhRVhURU5TSU9OPTcwIVBSSVZBQ1k9Tk9ORSFMQUJFTD1Td2l0Y2hib2FyZCBDYWxsIFBhcmshTUFJTkNIQU5ORUw9UEFSSy9kZWZhdWx0IUFVVE9BTlNXRVJIRUFERVI9X19TSVBBRERIRUFERVI1MT1DYWxsLUluZm89YW5zd2VyLWFmdGVyPTAuMDAxIVRZUEU9cGFyayFDT05URVhUPXBhcmtlZGNhbGxzCjE0QEdFTkVSQUx8YnV0dG9ufCFFWFRFTlNJT049NTMyMCFQUklWQUNZPU5PTkUhTEFCRUw9UmVndWxhciBDYWxscyB0byBBdHRlbmRhbnQhTUFJTkNIQU5ORUw9UVVFVUUvNTMyMF5MT0NBTEhPU1QhQVVUT0FOU1dFUkhFQURFUj1fX1NJUEFEREhFQURFUjUxPUNhbGwtSW5mbz1hbnN3ZXItYWZ0ZXI9MC4wMDEhVFlQRT1xdWV1ZSFDT05URVhUPWZyb20taW50ZXJuYWwKMTVAR0VORVJBTHxidXR0b258IUVYVEVOU0lPTj00NDQzIVBSSVZBQ1k9Tk9ORSFMQUJFTD1TZWN1cml0eSFNQUlOQ0hBTk5FTD1RVUVVRS80NDQzXkxPQ0FMSE9TVCFBVVRPQU5TV0VSSEVBREVSPV9fU0lQQURESEVBREVSNTE9Q2FsbC1JbmZvPWFuc3dlci1hZnRlcj0wLjAwMSFUWVBFPXF1ZXVlIUNPTlRFWFQ9ZnJvbS1pbnRlcm5hbAo=", "slot": "" }
Send status notification to AnyEvent::Handle=HASH(0x7711500), user: 5313
192.168.1.253:54796 => { "btn": "0@GENERAL", "cmd": "notionline", "data": "7", "slot": "0" }
Send status notification to AnyEvent::Handle=HASH(0x62406b0), user: 5313
192.168.1.253:54735 => { "btn": "0@GENERAL", "cmd": "notionline", "data": "7", "slot": "0" }
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 0 accion pluginlang destino en~conferencebutton password 4aacc06cabbceff30e8bdefb1b58cb5f
Change language for plugin conferencebutton to en
Language file found /var/www/html/fop2/admin/plugins/conferencebutton/lang/en.js
192.168.1.253:54796 => { "btn": "0", "cmd": "setpluginlang", "data": "conferencebutton!bGFuZ1snY29uZmVyZW5jZSddPSdDb25mZXJlbmNlJzsK", "slot": "0" }
New client connection from socket AnyEvent::Handle=HASH(0x7711af0) - 127.0.0.1:45000
Flash clients connected: 3
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
[33;40mClient 127.0.0.1:45000, user: no user, type: no type
[0mClient 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
127.0.0.1:45000 <=
-- PROCESS_FLASH_COMMAND origen GENERAL accion checkauth destino 5313 password 4aacc06cabbceff30e8bdefb1b58cb5f
Check Auth ok for 5313 from 127.0.0.1:45000
Client Disconnection - remove client on error from socket AnyEvent::Handle=HASH(0x7711af0) (127.0.0.1:45000)
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 0 accion pluginlang destino en~speech password 4aacc06cabbceff30e8bdefb1b58cb5f
Change language for plugin speech to en
Language file found /var/www/html/fop2/admin/plugins/speech/lang/en.js
192.168.1.253:54796 => { "btn": "0", "cmd": "setpluginlang", "data": "speech!bGFuZ1snc3BlZWNoX2lucHV0J109J1NwZWVjaCBJbnB1dCc7Cg==", "slot": "0" }
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 1 accion initState destino password 4aacc06cabbceff30e8bdefb1b58cb5f
** FIRST CLIENT STATUS for client at 192.168.1.253:54796
192.168.1.253:54796 => { "btn": "0@GENERAL", "cmd": "demo", "data": "2", "slot": "0" }
192.168.1.253:54796 => { "btn": "0", "cmd": "pong", "data": "CiAgICAgICAgdmFyIHpoID0gZmluZEhpZ2hlc3RaKCk7CiAgICAgICAgdmFyIGZvb3QgPSAkKCJmb290ZXIiKTsKICAgICAgICB2YXIgdGVtcGxhdGUgPSBCYXNlNjQuZGVjb2RlKCJQR1JwZGlCcFpEMGlJM3RwWkgwaVBqeGhJSFJoY21kbGREMGlYMkpzWVc1cklpQm9jbVZtUFNKb2RIUndPaTh2ZDNkM0xtWnZjREl1WTI5dElqNUdUMUF5UEM5aFBpQXRJRlpsY25OcGIyNGdQSE53WVc0Z2FXUTlJbVp2Y0habGNuTnBiMjRpUGlON2RtVnljMmx2Ym4wOEwzTndZVzQrSUMwZ1RHbDBaU0JXWlhKemFXOXVJQzBnVEdsdGFYUmxaQ0IwYnlBeE5TQmxlSFJsYm5OcGIyNXpJQzRnUW5WNUlHbDBJRHhoSUdoeVpXWTlJbWgwZEhBNkx5OTNkM2N1Wm05d01pNWpiMjB2WW5WNUxuQm9jQ0krYm05M1BDOWhQaUJtYjNJZ2RXNXNhVzFwZEdWa0lHVjRkR1Z1YzJsdmJuTXVJRWxtSUhsdmRTQmhiSEpsWVdSNUlHaGhkbVVnWVNCamIyUmxJR1Z1ZEdWeUlHbDBJRHhoSUdoeVpXWTlJaU1pSUc5dVEyeHBZMnM5SW1admNESmZjbVZuYVhOMFpYSW9LVHNnY21WMGRYSnVJR1poYkhObE95SSthR1Z5WlR3dllUNDhMMlJwZGo0PSIpOwoKICAgICAgICBpZihjdXJyZW50cmVsZWFzZSAhPT0gIiIpIHsKICAgICAgICAgICAgaWYoZGVtb3ZlcnNpb24gPT0gIjAiKSB7CiAgICAgICAgICAgICAgICBkb2N1bWVudC50aXRsZSA9ICJGbGFzaCBPcGVyYXRvciBQYW5lbCAyIjsKICAgICAgICAgICAgICAgIGZvb3QudXBkYXRlKG5ldyBUZW1wbGF0ZSh0ZW1wbGF0ZSkuZXZhbHVhdGUoe3ZlcnNpb246IGN1cnJlbnRyZWxlYXNlLCBsaWNlbnNlOiBjdXJyZW50bGljZW5zZX0pLCAiYWZ0ZXIiICk7CiAgICAgICAgICAgIH0gZWxzZQogICAgICAgICAgICBpZihkZW1vdmVyc2lvbiA9PSAiMSIpIHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnRpdGxlID0gIkZsYXNoIE9wZXJhdG9yIFBhbmVsIDIiOwogICAgICAgICAgICAgICAgZm9vdC51cGRhdGUobmV3IFRlbXBsYXRlKHRlbXBsYXRlKS5ldmFsdWF0ZSh7dmVyc2lvbjogY3VycmVudHJlbGVhc2UsIGxpY2Vuc2U6IGN1cnJlbnRsaWNlbnNlfSksICJhZnRlciIgKTsKICAgICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgIGlmKGRlbW92ZXJzaW9uID09ICIyIikgewogICAgICAgICAgICAgICAgZG9jdW1lbnQudGl0bGUgPSAiRmxhc2ggT3BlcmF0b3IgUGFuZWwgMiI7CiAgICAgICAgICAgICAgICBmb290LnVwZGF0ZShuZXcgVGVtcGxhdGUodGVtcGxhdGUpLmV2YWx1YXRlKHt2ZXJzaW9uOiBjdXJyZW50cmVsZWFzZSwgbGljZW5zZTogY3VycmVudGxpY2Vuc2V9KSwgImFmdGVyIiApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvb3Quc3R5bGUudmlzaWJpbGl0eSA9ICJ2aXNpYmxlIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5iYWNrZ3JvdW5kID0gIiNBQUEiOwogICAgICAgICAgICBmb290LnN0eWxlLmNvbG9yID0gIiMwMDAiOwogICAgICAgICAgICBmb290LnN0eWxlLmJvdHRvbSA9ICIwIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5sZWZ0ID0gIjAiOwogICAgICAgICAgICBmb290LnN0eWxlLnBhZGRpbmdUb3AgPSAiM3B4IjsKICAgICAgICAgICAgZm9vdC5zdHlsZS53aWR0aCA9ICIxMDAlIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5wb3NpdGlvbiA9ICJmaXhlZCI7CiAgICAgICAgICAgIGZvb3Quc3R5bGUuekluZGV4ID0gIiIremg7CiAgICAgICAgfQogICAg", "slot": "" }
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Conference
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Conference
Not a reference at all
It's blessed into class FOP2::Extension
192.168.1.253:54796 => { "btn": "3@GENERAL", "cmd": "voicemail", "data": "1", "slot": "" }
192.168.1.253:54796 => { "btn": "3@GENERAL", "cmd": "voicemailcount", "data": "&vmail_count!27!0", "slot": "" }
no qualify info for LOCAL/2517@OUTBOUND-ALLROUTES 3@GENERAL
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
no qualify info for LOCAL/3100@OUTBOUND-ALLROUTES 4@GENERAL
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
++ GET IP for SIP/5312 = 90.124.123.123
++ GET QUALIFY for SIP/5312 = ok
192.168.1.253:54796 => { "btn": "5@GENERAL", "cmd": "qualify", "data": "ok", "slot": "0" }
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
++ GET IP for IAX2/5318 = 90.124.123.123
++ GET QUALIFY for IAX2/5318 = ok
192.168.1.253:54796 => { "btn": "6@GENERAL", "cmd": "qualify", "data": "ok", "slot": "0" }
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
++ GET STATUS for SIP/5313 = unpaused
++ GET IP for SIP/5313 = 90.124.123.123
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "status", "data": "unpaused", "slot": "0" }
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "rename", "data": "5313 Johann Remote Office", "slot": "" }
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "voicemail", "data": "2", "slot": "" }
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "voicemailcount", "data": "&vmail_count!0!1", "slot": "" }
++ GET QUALIFY for SIP/5313 = ok
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "qualify", "data": "ok", "slot": "0" }
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
++ GET IP for SIP/2250 = 10.1.9.29
++ GET QUALIFY for SIP/2250 = ok
192.168.1.253:54796 => { "btn": "8@GENERAL", "cmd": "qualify", "data": "ok", "slot": "0" }
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
++ GET IP for SIP/5203 = 90.124.123.123
++ GET QUALIFY for SIP/5203 = ok
192.168.1.253:54796 => { "btn": "9@GENERAL", "cmd": "qualify", "data": "ok", "slot": "0" }
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
++ GET IP for IAX2/5315 = (null)
192.168.1.253:54796 => { "btn": "10@GENERAL", "cmd": "voicemail", "data": "1", "slot": "" }
192.168.1.253:54796 => { "btn": "10@GENERAL", "cmd": "voicemailcount", "data": "&vmail_count!4!0", "slot": "" }
++ GET QUALIFY for IAX2/5315 = notok
192.168.1.253:54796 => { "btn": "10@GENERAL", "cmd": "qualify", "data": "notok", "slot": "0" }
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
++ GET IP for IAX2/4000 = (null)
++ GET QUALIFY for IAX2/4000 = notok
192.168.1.253:54796 => { "btn": "11@GENERAL", "cmd": "qualify", "data": "notok", "slot": "0" }
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
++ GET IP for IAX2/5319 = (null)
++ GET QUALIFY for IAX2/5319 = notok
192.168.1.253:54796 => { "btn": "12@GENERAL", "cmd": "qualify", "data": "notok", "slot": "0" }
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Park
It's blessed into class FOP2::Park
192.168.1.253:54796 => { "btn": "13@GENERAL", "cmd": "details", "data": "WyBd", "slot": "0" }
Not a reference at all
It's blessed into class FOP2::Queue
It's blessed into class FOP2::Queue
** QUEUE MEMBER LIST start for queue QUEUE/5320^LOCALHOST
** QUEUE MEMBER LIST devuelve [ { "paused": "0", "state": "free", "loc": "Local/5313@from-queue/n", "queue": "QUEUE/5320^LOCALHOST", "pty": "0", "name":"Johann Remote Office", "callstaken": "0" } ]
192.168.1.253:54796 => { "btn": "14@GENERAL", "cmd": "queuemembers", "data": "WyB7ICJwYXVzZWQiOiAiMCIsICJzdGF0ZSI6ICJmcmVlIiwgImxvYyI6ICJMb2NhbC81MzEzQGZyb20tcXVldWUvbiIsICJxdWV1ZSI6ICJRVUVVRS81MzIwXkxPQ0FMSE9TVCIsICJwdHkiOiAiMCIsICJuYW1lIjoiSm9oYW5uIFJlbW90ZSBPZmZpY2UiLCAiY2FsbHN0YWtlbiI6ICIwIiB9IF0=", "slot": "" }
It's blessed into class FOP2::Queue
Not a reference at all
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Queue
It's blessed into class FOP2::Queue
** QUEUE MEMBER LIST start for queue QUEUE/4443^LOCALHOST
** QUEUE MEMBER LIST devuelve [ { "paused": "0", "state": "free", "loc": "Local/5313@from-queue/n", "queue": "QUEUE/4443^LOCALHOST", "pty": "0", "name":"Johann Remote Office", "callstaken": "0" } ]
192.168.1.253:54796 => { "btn": "15@GENERAL", "cmd": "queuemembers", "data": "WyB7ICJwYXVzZWQiOiAiMCIsICJzdGF0ZSI6ICJmcmVlIiwgImxvYyI6ICJMb2NhbC81MzEzQGZyb20tcXVldWUvbiIsICJxdWV1ZSI6ICJRVUVVRS80NDQzXkxPQ0FMSE9TVCIsICJwdHkiOiAiMCIsICJuYW1lIjoiSm9oYW5uIFJlbW90ZSBPZmZpY2UiLCAiY2FsbHN0YWtlbiI6ICIwIiB9IF0=", "slot": "" }
It's blessed into class FOP2::Queue
Not a reference at all
Not a reference at all
It's blessed into class FOP2::Extension
** DEMO MODE -- data discarded - 16
It's blessed into class FOP2::Extension
++ GET IP for SIP/5296644656GW2 = 74.81.71.18
** DEMO MODE -- data discarded - 17
It's blessed into class FOP2::Extension
++ GET IP for SIP/5296644656GW1 = 65.254.44.194
** DEMO MODE -- data discarded - 18
It's blessed into class FOP2::Extension
++ GET IP for SIP/G200AG = 10.1.1.185
** DEMO MODE -- data discarded - 19
It's blessed into class FOP2::Extension
++ GET IP for SIP/G200AN = 10.1.1.183
** DEMO MODE -- data discarded - 20
192.168.1.253:54796 => { "btn": "7@GENERAL", "cmd": "usersonline", "data": "Nyw3", "slot": "0" }
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~changepresence password 4aacc06cabbceff30e8bdefb1b58cb5f
Change language for plugin changepresence to en
Language file found /var/www/html/fop2/admin/plugins/changepresence/lang/en.js
192.168.1.253:54796 => { "btn": "0", "cmd": "setpluginlang", "data": "changepresence!bGFuZ1snc2V0cHJlc2VuY2UnXT0nU2V0IFByZXNlbmNlJzsK", "slot": "0" }
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~clock password 4aacc06cabbceff30e8bdefb1b58cb5f
Change language for plugin clock to en
Language file found /var/www/html/fop2/admin/plugins/clock/lang/en.js
192.168.1.253:54796 => { "btn": "0", "cmd": "setpluginlang", "data": "clock!bGFuZ1snY2xvY2snXT0nQ2xvY2snOwoK", "slot": "0" }
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~conferencebutton password 4aacc06cabbceff30e8bdefb1b58cb5f
Change language for plugin conferencebutton to en
Language file found /var/www/html/fop2/admin/plugins/conferencebutton/lang/en.js
192.168.1.253:54796 => { "btn": "0", "cmd": "setpluginlang", "data": "conferencebutton!bGFuZ1snY29uZmVyZW5jZSddPSdDb25mZXJlbmNlJzsK", "slot": "0" }
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~callforwardfpbx password 4aacc06cabbceff30e8bdefb1b58cb5f
Change language for plugin callforwardfpbx to en
Language file found /var/www/html/fop2/admin/plugins/callforwardfpbx/lang/en.js
192.168.1.253:54796 => { "btn": "0", "cmd": "setpluginlang", "data": "callforwardfpbx!bGFuZ1snc2V0Y2FsbGZvcndhcmQnXT0nU2V0IENhbGwgRm9yd2FyZCc7CmxhbmdbJ2VudGVyY2FsbGZvcndhcmQnXT0nRW50ZXIgQ2FsbCBGb3J3YXJkIE51bWJlciBmb3InOwo=", "slot": "0" }
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 7 accion pluginlang destino en~speech password 4aacc06cabbceff30e8bdefb1b58cb5f
Change language for plugin speech to en
Language file found /var/www/html/fop2/admin/plugins/speech/lang/en.js
192.168.1.253:54796 => { "btn": "0", "cmd": "setpluginlang", "data": "speech!bGFuZ1snc3BlZWNoX2lucHV0J109J1NwZWVjaCBJbnB1dCc7Cg==", "slot": "0" }
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 7 accion autoanswer destino 0 password
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 1 accion ping destino password
Executing Client Pre Command Handler for ping
pong pong conferencebutton!
127.0.0.1 -> ActionID: 27
Executing Client Pre Command Handler for ping
pong pong queuecounter!
192.168.1.253:54796 => { "btn": "0", "cmd": "pong", "data": "CiAgICAgICAgdmFyIHpoID0gZmluZEhpZ2hlc3RaKCk7CiAgICAgICAgdmFyIGZvb3QgPSAkKCJmb290ZXIiKTsKICAgICAgICB2YXIgdGVtcGxhdGUgPSBCYXNlNjQuZGVjb2RlKCJQR1JwZGlCcFpEMGlJM3RwWkgwaVBqeGhJSFJoY21kbGREMGlYMkpzWVc1cklpQm9jbVZtUFNKb2RIUndPaTh2ZDNkM0xtWnZjREl1WTI5dElqNUdUMUF5UEM5aFBpQXRJRlpsY25OcGIyNGdQSE53WVc0Z2FXUTlJbVp2Y0habGNuTnBiMjRpUGlON2RtVnljMmx2Ym4wOEwzTndZVzQrSUMwZ1RHbDBaU0JXWlhKemFXOXVJQzBnVEdsdGFYUmxaQ0IwYnlBeE5TQmxlSFJsYm5OcGIyNXpJQzRnUW5WNUlHbDBJRHhoSUdoeVpXWTlJbWgwZEhBNkx5OTNkM2N1Wm05d01pNWpiMjB2WW5WNUxuQm9jQ0krYm05M1BDOWhQaUJtYjNJZ2RXNXNhVzFwZEdWa0lHVjRkR1Z1YzJsdmJuTXVJRWxtSUhsdmRTQmhiSEpsWVdSNUlHaGhkbVVnWVNCamIyUmxJR1Z1ZEdWeUlHbDBJRHhoSUdoeVpXWTlJaU1pSUc5dVEyeHBZMnM5SW1admNESmZjbVZuYVhOMFpYSW9LVHNnY21WMGRYSnVJR1poYkhObE95SSthR1Z5WlR3dllUNDhMMlJwZGo0PSIpOwoKICAgICAgICBpZihjdXJyZW50cmVsZWFzZSAhPT0gIiIpIHsKICAgICAgICAgICAgaWYoZGVtb3ZlcnNpb24gPT0gIjAiKSB7CiAgICAgICAgICAgICAgICBkb2N1bWVudC50aXRsZSA9ICJGbGFzaCBPcGVyYXRvciBQYW5lbCAyIjsKICAgICAgICAgICAgICAgIGZvb3QudXBkYXRlKG5ldyBUZW1wbGF0ZSh0ZW1wbGF0ZSkuZXZhbHVhdGUoe3ZlcnNpb246IGN1cnJlbnRyZWxlYXNlLCBsaWNlbnNlOiBjdXJyZW50bGljZW5zZX0pLCAiYWZ0ZXIiICk7CiAgICAgICAgICAgIH0gZWxzZQogICAgICAgICAgICBpZihkZW1vdmVyc2lvbiA9PSAiMSIpIHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnRpdGxlID0gIkZsYXNoIE9wZXJhdG9yIFBhbmVsIDIiOwogICAgICAgICAgICAgICAgZm9vdC51cGRhdGUobmV3IFRlbXBsYXRlKHRlbXBsYXRlKS5ldmFsdWF0ZSh7dmVyc2lvbjogY3VycmVudHJlbGVhc2UsIGxpY2Vuc2U6IGN1cnJlbnRsaWNlbnNlfSksICJhZnRlciIgKTsKICAgICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgIGlmKGRlbW92ZXJzaW9uID09ICIyIikgewogICAgICAgICAgICAgICAgZG9jdW1lbnQudGl0bGUgPSAiRmxhc2ggT3BlcmF0b3IgUGFuZWwgMiI7CiAgICAgICAgICAgICAgICBmb290LnVwZGF0ZShuZXcgVGVtcGxhdGUodGVtcGxhdGUpLmV2YWx1YXRlKHt2ZXJzaW9uOiBjdXJyZW50cmVsZWFzZSwgbGljZW5zZTogY3VycmVudGxpY2Vuc2V9KSwgImFmdGVyIiApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvb3Quc3R5bGUudmlzaWJpbGl0eSA9ICJ2aXNpYmxlIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5iYWNrZ3JvdW5kID0gIiNBQUEiOwogICAgICAgICAgICBmb290LnN0eWxlLmNvbG9yID0gIiMwMDAiOwogICAgICAgICAgICBmb290LnN0eWxlLmJvdHRvbSA9ICIwIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5sZWZ0ID0gIjAiOwogICAgICAgICAgICBmb290LnN0eWxlLnBhZGRpbmdUb3AgPSAiM3B4IjsKICAgICAgICAgICAgZm9vdC5zdHlsZS53aWR0aCA9ICIxMDAlIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5wb3NpdGlvbiA9ICJmaXhlZCI7CiAgICAgICAgICAgIGZvb3Quc3R5bGUuekluZGV4ID0gIiIremg7CiAgICAgICAgfQogICAg", "slot": "" }
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 27
127.0.0.1 <- Message: Missing action in request
** Llego un response que falta configurar! MISSING ACTION IN REQUEST HASH(0x766fa00)
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 15 seconds (Tue Mar 31 09:02:31 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
127.0.0.1 -> Action: Ping
127.0.0.1 -> ActionID: 28
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 28
127.0.0.1 <- Ping: Pong
127.0.0.1 <- Timestamp: 1427806951.003985
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 18 seconds (Tue Mar 31 09:02:34 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 21 seconds (Tue Mar 31 09:02:37 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 24 seconds (Tue Mar 31 09:02:40 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 27 seconds (Tue Mar 31 09:02:43 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 1 accion dial destino 5203 password 4aacc06cabbceff30e8bdefb1b58cb5f
VALIDAR USUARIO 5313@GENERAL
validate password using key XNGBz3LCEEHQquHcjgWsEIZT96dslI
VALIDAR USUARIO 5313 OK con clave regular (192.168.1.253:54796)
Validation ok, have all permissions for 0
Not a reference at all
127.0.0.1 -> Action: Originate
127.0.0.1 -> Channel: Local/2664@ext-meetme
127.0.0.1 -> Exten: 5203
127.0.0.1 -> Context: ext-meetme
127.0.0.1 -> Priority: 1
127.0.0.1 -> Variable: FOP2DIALCONFERENCE=5203
127.0.0.1 -> CallerID: Conference <5203>
127.0.0.1 -> Async: True
127.0.0.1 <- Response: Error
127.0.0.1 <- Message: Extension does not exist.
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 30 seconds (Tue Mar 31 09:02:46 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
127.0.0.1 -> Action: Ping
127.0.0.1 -> ActionID: 29
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 29
127.0.0.1 <- Ping: Pong
127.0.0.1 <- Timestamp: 1427806966.003744
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 33 seconds (Tue Mar 31 09:02:49 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
127.0.0.1 <- Event: PeerStatus
127.0.0.1 <- Privilege: system,all
127.0.0.1 <- ChannelType: SIP
127.0.0.1 <- Peer: SIP/5312
127.0.0.1 <- PeerStatus: Registered
127.0.0.1 <- Address: 90.124.123.123:1851
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/5312 lo dejo como estaba ok
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 36 seconds (Tue Mar 31 09:02:52 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 39 seconds (Tue Mar 31 09:02:55 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
127.0.0.1 <- Event: PeerStatus
127.0.0.1 <- Privilege: system,all
127.0.0.1 <- ChannelType: SIP
127.0.0.1 <- Peer: SIP/5203
127.0.0.1 <- PeerStatus: Registered
127.0.0.1 <- Address: 90.124.123.123:1832
It's blessed into class FOP2::Extension
++ SET QUALIFY for SIP/5203 lo dejo como estaba ok
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 42 seconds (Tue Mar 31 09:02:58 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
192.168.1.253:54796 <=
-- PROCESS_FLASH_COMMAND origen 1 accion ping destino password
Executing Client Pre Command Handler for ping
pong pong conferencebutton!
127.0.0.1 -> ActionID: 30
Executing Client Pre Command Handler for ping
pong pong queuecounter!
192.168.1.253:54796 => { "btn": "0", "cmd": "pong", "data": "CiAgICAgICAgdmFyIHpoID0gZmluZEhpZ2hlc3RaKCk7CiAgICAgICAgdmFyIGZvb3QgPSAkKCJmb290ZXIiKTsKICAgICAgICB2YXIgdGVtcGxhdGUgPSBCYXNlNjQuZGVjb2RlKCJQR1JwZGlCcFpEMGlJM3RwWkgwaVBqeGhJSFJoY21kbGREMGlYMkpzWVc1cklpQm9jbVZtUFNKb2RIUndPaTh2ZDNkM0xtWnZjREl1WTI5dElqNUdUMUF5UEM5aFBpQXRJRlpsY25OcGIyNGdQSE53WVc0Z2FXUTlJbVp2Y0habGNuTnBiMjRpUGlON2RtVnljMmx2Ym4wOEwzTndZVzQrSUMwZ1RHbDBaU0JXWlhKemFXOXVJQzBnVEdsdGFYUmxaQ0IwYnlBeE5TQmxlSFJsYm5OcGIyNXpJQzRnUW5WNUlHbDBJRHhoSUdoeVpXWTlJbWgwZEhBNkx5OTNkM2N1Wm05d01pNWpiMjB2WW5WNUxuQm9jQ0krYm05M1BDOWhQaUJtYjNJZ2RXNXNhVzFwZEdWa0lHVjRkR1Z1YzJsdmJuTXVJRWxtSUhsdmRTQmhiSEpsWVdSNUlHaGhkbVVnWVNCamIyUmxJR1Z1ZEdWeUlHbDBJRHhoSUdoeVpXWTlJaU1pSUc5dVEyeHBZMnM5SW1admNESmZjbVZuYVhOMFpYSW9LVHNnY21WMGRYSnVJR1poYkhObE95SSthR1Z5WlR3dllUNDhMMlJwZGo0PSIpOwoKICAgICAgICBpZihjdXJyZW50cmVsZWFzZSAhPT0gIiIpIHsKICAgICAgICAgICAgaWYoZGVtb3ZlcnNpb24gPT0gIjAiKSB7CiAgICAgICAgICAgICAgICBkb2N1bWVudC50aXRsZSA9ICJGbGFzaCBPcGVyYXRvciBQYW5lbCAyIjsKICAgICAgICAgICAgICAgIGZvb3QudXBkYXRlKG5ldyBUZW1wbGF0ZSh0ZW1wbGF0ZSkuZXZhbHVhdGUoe3ZlcnNpb246IGN1cnJlbnRyZWxlYXNlLCBsaWNlbnNlOiBjdXJyZW50bGljZW5zZX0pLCAiYWZ0ZXIiICk7CiAgICAgICAgICAgIH0gZWxzZQogICAgICAgICAgICBpZihkZW1vdmVyc2lvbiA9PSAiMSIpIHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnRpdGxlID0gIkZsYXNoIE9wZXJhdG9yIFBhbmVsIDIiOwogICAgICAgICAgICAgICAgZm9vdC51cGRhdGUobmV3IFRlbXBsYXRlKHRlbXBsYXRlKS5ldmFsdWF0ZSh7dmVyc2lvbjogY3VycmVudHJlbGVhc2UsIGxpY2Vuc2U6IGN1cnJlbnRsaWNlbnNlfSksICJhZnRlciIgKTsKICAgICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgIGlmKGRlbW92ZXJzaW9uID09ICIyIikgewogICAgICAgICAgICAgICAgZG9jdW1lbnQudGl0bGUgPSAiRmxhc2ggT3BlcmF0b3IgUGFuZWwgMiI7CiAgICAgICAgICAgICAgICBmb290LnVwZGF0ZShuZXcgVGVtcGxhdGUodGVtcGxhdGUpLmV2YWx1YXRlKHt2ZXJzaW9uOiBjdXJyZW50cmVsZWFzZSwgbGljZW5zZTogY3VycmVudGxpY2Vuc2V9KSwgImFmdGVyIiApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvb3Quc3R5bGUudmlzaWJpbGl0eSA9ICJ2aXNpYmxlIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5iYWNrZ3JvdW5kID0gIiNBQUEiOwogICAgICAgICAgICBmb290LnN0eWxlLmNvbG9yID0gIiMwMDAiOwogICAgICAgICAgICBmb290LnN0eWxlLmJvdHRvbSA9ICIwIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5sZWZ0ID0gIjAiOwogICAgICAgICAgICBmb290LnN0eWxlLnBhZGRpbmdUb3AgPSAiM3B4IjsKICAgICAgICAgICAgZm9vdC5zdHlsZS53aWR0aCA9ICIxMDAlIjsKICAgICAgICAgICAgZm9vdC5zdHlsZS5wb3NpdGlvbiA9ICJmaXhlZCI7CiAgICAgICAgICAgIGZvb3Quc3R5bGUuekluZGV4ID0gIiIremg7CiAgICAgICAgfQogICAg", "slot": "" }
127.0.0.1 <- Response: Error
127.0.0.1 <- ActionID: 30
127.0.0.1 <- Message: Missing action in request
** Llego un response que falta configurar! MISSING ACTION IN REQUEST HASH(0x766fbb0)
-- TIMER asterisk_ami_connect and async config check
Set doing hup to zero
** Asterisk Manager logged in localhost for 45 seconds (Tue Mar 31 09:03:01 2015)
Flash clients connected: 2
--------------------------------------------------------------------------------------------------
Client 192.168.1.253:54796, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x7711500))
Client 192.168.1.253:54735, user: 5313@GENERAL, type: websocket (AnyEvent::Handle=HASH(0x62406b0))
--------------------------------------------------------------------------------------------------
127.0.0.1 -> Action: Ping
127.0.0.1 -> ActionID: 31
127.0.0.1 <- Response: Success
127.0.0.1 <- ActionID: 31
127.0.0.1 <- Ping: Pong
127.0.0.1 <- Timestamp: 1427806981.003201
^C127.0.0.1 -> Action: Logoff
127.0.0.1 -> ActionID: 32
Removing /var/www/html/fop2/fop2-variablesGENERAL.txt...
Disconnecting from settings DB
Exiting...
++ QUEUE OBJECT DESTROYED FOP2::Queue=HASH(0x6011f70)
++ QUEUE OBJECT DESTROYED FOP2::Queue=HASH(0x6011910)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x56fe220)
++ QUEUE OBJECT DESTROYED FOP2::Queue=HASH(0x5bbee90)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5c71160)
++ QUEUE OBJECT DESTROYED FOP2::Queue=HASH(0x5bbf2a0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5bbf820)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5c70c00)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5c70460)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5a5efd0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5a5ef30)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5b10f70)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x599a360)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x599acc0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x599a2f0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x599acd0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x53b7990)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x53b7860)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x53b8600)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x53b8f70)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x58da2b0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x53b8ea0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x58da2c0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5622af0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x56ebd10)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5622a70)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x56ebd20)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x556d510)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x556e110)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x556d460)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x556e170)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x54d0510)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x4f4e810)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x4f4eff0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x4f4ef80)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5343160)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x5343090)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x527bf50)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x527be60)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x53429e0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x527b880)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x52507d0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x52507c0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x359bbc0)
++ EXTENSION OBJECT DESTROYED FOP2::Extension=HASH(0x3737920)
]0;root@privatepbx:/usr/local/fop2[32mroot@privatepbx:/usr/local/fop2 $ (B[mexit
exit
Script done on Tue 31 Mar 2015 09:03:05 AM EDT