Jump to content
Vodia PBX forum


  • Content Count

  • Joined

  • Last visited

Everything posted by voltier

  1. voltier


    Hi there - we are wanting to provide an interface on our own portal which will allow the end customer to add/delete/manage the Address Book. Will there be any plans to have Address Book via your API?
  2. Hi Devs/Admin, With the release of 57.0, can you point us in the right direction in terms of how to use some of these features. I found Pickup Group under buttons but it isnt exactly intuitive to figure out how to use. Same thing with the Call Back function within ACD. Possibly if you can provide a sample tied to a scenario, that would be great.
  3. Hi Support - any update on this? (Pick up group) I still cant see any documentation and would really like to test this
  4. Anybody know how long is it before the session key times out or expires?
  5. Since upgrading to version 57 (from 56), it appears the ability to reboot phones via the console no longer works.
  6. voltier

    webcdr/mongodb DTMF max array value

    Anybody know what the maximum number of objects are in the new DTMF array? (v57)
  7. voltier

    webcdr/mongodb DTMF max array value

    The construct for DMTF elements is horrible IMHO. Is it possible to have the array represented in the same way as extensionlegs or trunklegs?
  8. voltier

    "reboot selected accounts" broken

    @Ahennis - Referring to the WebUI @Admin - does this mean you will be reverting the behavior to what it was previously and the Polycom use case will be managed seperately?
  9. voltier

    "reboot selected accounts" broken

    Ok, turns out that the 'resync the selected accounts' function does the job for me. I was making changes to the custom config files and wanted to apply some changes and couldnt figure out how to do it.
  10. voltier

    "reboot selected accounts" broken

    any way around this? Most of our customers are either on Snom or Yealink handsets. Touchless provisioning is somewhat useless if we cant reboot the device remotely.
  11. Just wondering if anybody out there has working code for Web Sockets that they could share. We have looked at Vodia's latest php sample, along with some samples found in the forum e.g. (http://forum.vodia.com/index.php/topic/14660-rest-api-calls-from-javascript/?hl=websocket&do=findComment&comment=42175) however they do not appear to work. We are currently sitting on 5.5.4 of the pbx. Edit: I am expecting to get this: {"action":"call-state","calls":[{"id":85895,"from":"\"AUTO PARTS\" But, instead, I am getting the following: {"action":"user-state","type":"","account":"","domain":"","chatstatus":"online"} {"action":"user-state","type":"attendants"," Which is not consistent with the REST API documentation.
  12. voltier

    Scheduled Announcement

    Thanks admin. Anything more specific? There aren't many options. Where do you get the playback.wav file and how do you use it?
  13. voltier

    Scheduled Announcement

    Hi, I was just looking at Vodia's site and it appears scheduled announcement is possible. That being said i cannot find how from the portal. Any idea how this can be done? e.g. We want to page that the store will be closing at 6pm etc. Is this something available from a specific firmware version onwards?
  14. voltier

    Understanding unusual CDR records

    I have a usual situation where caller reaches the Auto Attendant, Connects to Agent, Agent Transfers to another Agent. Typically under states, this would be represented as: Attendant > ACD > Attendant That being said, I have a number of records that show: Attendant > Attendant (which at a glance appears to be an internal call) - I dont understand why it is represented this way because clearly under the Trunglegs there is clearly records of an calling dialing the ACD first. I have pasted the CDR example below: { "_id" : ObjectId("5898fd2af15419f58ea30d82"), "domain" : "example.com", "callid" : "0_2827520363@", "from" : "\"Hugh Boss\" <sip:519@example.com>", "to" : "\"John Smith\" <sip:504@example.com>", "start" : ISODate("2017-02-06T22:47:39.419Z"), "connect" : ISODate("2017-02-06T22:47:40.990Z"), "end" : ISODate("2017-02-06T22:48:24.533Z"), "trunklegs" : [ { "direction" : "I", "from" : "\"Hugh Boss\" <sip:519@example.com>", "to" : "\"John Smith\" <sip:504@example.com>", "remoteparty" : "\"XXXXXXXXXXX\" <sip:XXXXXXXXXXX@example.com>", "localparty" : "\"ACD Inbound\" <sip:YYYYYYYYYYY@example.com>", "trunk" : "6", "cost" : "", "start" : ISODate("2017-02-06T22:45:48.579Z"), "connect" : ISODate("2017-02-06T22:45:49.581Z"), "end" : ISODate("2017-02-06T22:48:24.498Z"), "ipadr" : "udp:", "quality" : "essionReport: CallTerm\r\nLocalMetrics:\r\nTimestamps:START=2017-02-06T22:45:49Z STOP=2017-02-06T22:48:24Z\r\nCallID:3c46-439-162017224535-img02-fme1-1-\r\nFromID:\"XXXXXXXXXXX\"<sip:XXXXXXXXXXX@;user=phone;noa=national>;tag=28528693-co6045-INS001\r\nToID:<sip:YYYYYYYYYYY@;user=phone>;tag=843c4cbd84\r\nSessionDesc:PT=8 PD=PCMA SR=8000 FD=20 FO=160 FPP=1 PPS=50 PLC=3\r\nLocalAddr:IP= PORT=41796 SSRC=0x43c20cdb\r\nRemoteAddr:IP= PORT=18626 SSRC=0x09965046\r\nx-UserAgent:Vodia-PBX/5.5.4\r\nx-SIPterm:SDC=OK SDR=AN\r\nPacketLoss:NLR=0.0 JDR=0.0\r\nBurstGapLoss:BLD=0.0 BD=0 GLD=0.0 GD=0 GMIN=16\r\nDelay:RTD=13 ESD=0 IAJ=2\r\nQualityEst:MOSLQ=4.1 MOSCQ=4.1\r\nPCM", "cmc" : "", "extension" : "", "extension-name" : "", "codec" : "A/8000", "mos" : "41" } ], "extensionlegs" : [ undefined, { "callid" : "3c46-439-162017224535-img02-fme1-1-", "from" : "\"XXXXXXXXXXX\" <sip:XXXXXXXXXXX@example.com>", "to" : "\"ACD Inbound\" <sip:YYYYYYYYYYY@example.com>", "direction" : "O", "extension" : "519", "extension-name" : "Hugh Boss", "redirect" : "\"ACD Inbound\" <sip:YYYYYYYYYYY@example.com>", "idle" : 0, "start" : ISODate("2017-02-06T22:46:20.959Z"), "connect" : ISODate("2017-02-06T22:46:23.004Z"), "end" : ISODate("2017-02-06T22:47:43.330Z"), "ipadr" : "udp:", "quality" : "VQSessionReport: CallTerm\r\nLocalMetrics:\r\nTimestamps:START=2017-02-06T22:46:23Z STOP=2017-02-06T22:47:43Z\r\nCallID:0926a994@pbx\r\nFromID:\"ACD Inbound\" <sip:YYYYYYYYYYY@example.com>;tag=1728609211\r\nToID:\"Ext Conv [1] (XXXXXXXXXXX)\" <sip:XXXXXXXXXXX@example.com>;tag=995201706\r\nSessionDesc:PT=8 PD=PCMA SR=8000 FD=20 FO=0 FPP=1 PPS=50 PLC=3\r\nLocalAddr:IP= PORT=26368 SSRC=0x694e5c89\r\nRemoteAddr:IP= PORT=11900 SSRC=0x7664a04f\r\nx-UserAgent:Vodia-PBX/5.5.4\r\nx-SIPmetrics:SVA=RG SRD=51\r\nx-SIPterm:SDC=OK SDD=35 SDR=OR\r\nPacketLoss:NLR=0.0 JDR=0.0\r\nBurstGapLoss:BLD=0.0 BD=0 GLD=0.0 GD=0 GMIN=16\r\nDelay:RTD=24 ESD=0 IAJ=1\r\nQualityEst:MOSLQ=4.1 MOSCQ=4.1\r\n", "type" : "r", "cmc" : "", "codec" : "PCMA/8000" }, { "callid" : "0_2827520363@", "from" : "\"Hugh Boss\" <sip:519@example.com>", "to" : "\"John Smith\" <sip:504@example.com>", "direction" : "I", "extension" : "519", "extension-name" : "Hugh Boss", "redirect" : "\"John Smith\" <sip:504@example.com>", "idle" : 121, "start" : ISODate("2017-02-06T22:47:39.419Z"), "connect" : ISODate("2017-02-06T22:47:40.992Z"), "end" : ISODate("2017-02-06T22:47:43.312Z"), "ipadr" : "tcp:", "quality" : "VQSessionReport: CallTerm\r\nLocalMetrics:\r\nTimestamps:START=2017-02-06T22:47:41Z STOP=2017-02-06T22:47:43Z\r\nCallID:0_2827520363@\r\nFromID:\"Hugh Boss\" <sip:519@example.com:5060>;tag=2396606693\r\nToID:<sip:504@example.com:5060;user=phone>;tag=5d60bc39d1\r\nSessionDesc:PT=8 PD=PCMA SR=8000 FD=20 FO=160 FPP=1 PPS=50 PLC=3\r\nLocalAddr:IP= PORT=18424 SSRC=0x9c8fea84\r\nRemoteAddr:IP= PORT=11902 SSRC=0x72e95452\r\nx-UserAgent:Vodia-PBX/5.5.4\r\nx-SIPterm:SDC=OK SDD=18 SDR=OR\r\n", "type" : "d", "cmc" : "", "codec" : "PCMA/8000" }, { "callid" : "0_2827520363@", "from" : "\"Hugh Boss\" <sip:519@example.com>", "to" : "\"John Smith\" <sip:504@example.com>", "direction" : "O", "extension" : "504", "extension-name" : "John Smith", "redirect" : "\"John Smith\" <sip:504@example.com>", "idle" : 217, "start" : ISODate("2017-02-06T22:47:39.421Z"), "connect" : ISODate("2017-02-06T22:47:40.990Z"), "end" : ISODate("2017-02-06T22:48:24.517Z"), "ipadr" : "udp:", "quality" : "essionReport: CallTerm\r\nLocalMetrics:\r\nTimestamps:START=2017-02-06T22:47:43Z STOP=2017-02-06T22:48:24Z\r\nCallID:48fef2b8@pbx\r\nFromID:\"John Smith\" <sip:504@example.com>;tag=4285727097\r\nToID:\"Hugh Boss\" <sip:519@example.com>;tag=1469755171\r\nSessionDesc:PT=8 PD=PCMA SR=8000 FD=20 FO=160 FPP=1 PPS=50 PLC=3\r\nLocalAddr:IP= PORT=36148 SSRC=0x3f89d61a\r\nRemoteAddr:IP= PORT=11964 SSRC=0x5e240c56\r\nx-UserAgent:Vodia-PBX/5.5.4\r\nx-SIPmetrics:SVA=RG SRD=61\r\nx-SIPterm:SDC=OK SDD=18 SDR=OR\r\nPacketLoss:NLR=0.0 JDR=0.0\r\nBurstGapLoss:BLD=0.0 BD=0 GLD=0.0 GD=0 GMIN=16\r\nDelay:RTD=25 ESD=0 IAJ=0\r\nQualityEst:MOSLQ=4.1 MOSCQ=4.1\r\nPCM", "type" : "r", "cmc" : "", "codec" : "A/8000" } ], "states" : [ { "type" : "attendant", "from" : "\"Hugh Boss\" <sip:519@example.com>", "to" : "\"John Smith\" <sip:504@example.com>", "language" : "", "start" : ISODate("2017-02-06T22:47:43.315Z"), "durationivr" : 0, "durationring" : 1568, "durationtalk" : 2325, "durationhold" : 0, "durationidle" : 221507, "reason" : "", "account" : "", "extension" : "504", "extension-name" : "John Smith" }, { "type" : "attendant", "from" : "\"Hugh Boss\" <sip:519@example.com>", "to" : "\"John Smith\" <sip:504@example.com>", "language" : "", "start" : ISODate("2017-02-06T22:48:24.533Z"), "durationivr" : 0, "durationring" : 1568, "durationtalk" : 43543, "durationhold" : 0, "durationidle" : 1584, "reason" : "", "account" : "", "extension" : "504", "extension-name" : "John Smith" } ]
  15. voltier

    Understanding unusual CDR records

    Ahh sorry root. is just the way I'm declaring my variable. Please see example below: "_id" : ObjectId("58a37b44f15415a52070"), "domain" : "example.com", "callid" : "6090-11e5-1142017214721-bn01", "from" : "\"61421790068\" <sip:XXXXXX@example.com", "to" : "<sip:XXXXXXXXXX@example.com>", "wuc" : "", "start" : ISODate("2017-02-14T21:47:22.222Z"), "connect" : ISODate("2017-02-14T21:47:22.223Z"), "end" : ISODate("2017-02-14T21:48:53.619Z"),
  16. voltier

    Understanding unusual CDR records

    Looks like there is a new parameter called root.wuc. Im assuming this is Wake Up Call?
  17. voltier

    Understanding unusual CDR records

    Thanks Admin, will update and report my findings (we are currently on Centos64 so that works well)
  18. voltier

    Understanding unusual CDR records

    I have many of these types of records, and they all contain 'undefined'. Its definitely connecting to an ACD. Even on the PBX UI under call logs, its showing as an attendant call between two extension, but the fact is, it was actually an inbound ACD call. I dont quite know how to resolve this as it is incorrectly reporting ACD calls as Attendant. To be more precise, this is the behavior i have noticed: Scenario: Caller > Auto Attendant > Agent > Transfer >> Agent root.from = Caller Number root.to = DID (connected to ACD) No trunk legs The state array is not generating state for ACD. All i have is state for attendant. (where it would typically show 'attendant > ACD > XXX' I am currently on 5.5.4, do you know if this is potentially a bug for this version, or if upgrading to the latest version will resolve the issue?
  19. voltier

    internal billing between extensions

    Hi Admin, Based on the CDR, what would the best logic be to determine what is internal and what isn't? Would you go by trunk legs/extension legs? etc
  20. Hi, We are currently trying to determine what API to call in order to get a Call State. Right now we are are able to get a 'connected' and 'alerting' state however there is no information coming through the API which indicates a call is 'holding'. Currently getting information using GET /rest/user/101%40ncoc.mycompany.us/wallboard HTTP/1.1 - to get a number of data about the call We can get some of this information through a websocket session, that being said, we cannot solve the following scenario purely via websocket: (hence why we are using a combination of REST and Websocket) We have 3 callers calling to ACD 123: Caller 1 Connected - ACD 123 Caller 2 Connected - ACD 123 Caller 3 Connected - ACD 123 Given that an Agent can only have 1 Connected state against a Caller i.e. Agent can only speak to one person at at time, it means the other 2 Calls would be in a Holding State - which we cannot find a reliable method to establish. Any thoughts?
  21. voltier

    Evaluation/Test License

    Is this still available? (I remember this use to be available and registered to 1 domain and a few extensions). Reason is I want to spin up another test environment using later firmware.
  22. voltier

    Queue position announce

    Just wanting to know if there is anyway to have the queue announce message in a loop/interval, as right now the announcement is only made once at the start. If a user has been waiting for some time on the phone, the function becomes moot as they do not know how far they have progressed.
  23. voltier

    Randomizing Announcements

    As always, I appreciate the prompt responses!
  24. It appears that you can only set audio announcements in a static sequence. Just wondering if there was a way to randomise this as, statistically, callers are more likely to listen to the first few recordings as opposed to the last few, unless there is a way to randomise the sequence
  25. voltier

    Get CDR Records (Rest API)

    There is an example in there that involves getting 50 records. Is it possible to use Rest as a replacement to JSON to get full CDR records from server?