Jump to content
KAZOOcon: hackathon signup and details here! ×

FASTDEVICE

Members
  • Posts

    437
  • Joined

  • Days Won

    26

Everything posted by FASTDEVICE

  1. As @Baze mentioned, you can build callflows programmatically using the API. Callflows are comprised of JSON which can be templated and built on-demand. We offer template scripts that can assist with building callflows.
  2. @TJ Forsman Yes, we specialize in application development for Kazoo. Please message me to discuss.
  3. Probably need to test this but does anyone know if "Custom Application Variables" make their way into the CDR data or is that only for Pivot? Thinking that may be a way to avoid using pre-pended CallerID in a callflow. Update: I tested and CAVs are captured in the CDR. I see a lot of potential for this functionality.
  4. Thanks Brian. I want to avoid the prepend at all costs but need to know which ring-group. Any other thoughts on determining which ring-group since they are already named?
  5. Is there a way to determine if a call is being routed through a ring group or directly to an extension? I need to know (programmatically) if a user answered a call from their assigned ring group, or if they answered a call from their assigned DID. I may be missing it but I don't see anything in the CDR indicating such. Thanks.
  6. Please search the forum as this has been covered extensively with many examples. Here is one discussion that outlines the usage
  7. if I'm understanding your request properly, you want to blacklist certain DIDs at the account level? If so, there is a backlist feature in advanced callflows.
  8. Think I found the documentation. https://github.com/2600hz/kazoo/blob/91ca9c277aa0af6019b210e1d7124736fe4ec068/applications/pivot/doc/README.md Look for the section header Failback.
  9. Hey @mc_ I remember you pointing out the usage for the failure child but I seem to have lost my notes. Would you please refresh my memory and I'm sure others want to know as well, the JSON usage for the Pivot callflow failure? Big Thanks!
  10. @Darren Schreiber I agree with you ** mostly ** the issue with a Shoutcast stream is, a load balancer doesn't solve the issue entirely. Any interruption, regardless of the transition time causes the fault. With failover, the next set of callers will hear the stream but the current ones may or may not be lost. Therefore, there is no 100% way to be bulletproof using a streaming service. @esoare there is failover for Pivot.
  11. Here is a free link for testing shoutcast Use this link from your browser http://live.emusiconhold.com Use this link for testing in Monster shout://live.emusiconhold.com
  12. I hear that's on their backlog but currently you can use a shoutcast server. It provides looping and longer media runs. I have shoutcast servers if you are interested.
  13. I don't think Yealink's button type of URL supports a post. You probably don't need to send a POST for a disposition code but if required, you can send a post using a webhook callflow element. Instead of having the trigger be a button on the phone, the user dials an extension that correlates to the disposition code instead. 2600hz made configuring a callflow webhook rather easy with the inclusion of a new UI webhook widget under Advanced Callflows.
  14. Yealink can send an HTTP GET from a programmable button. Not sure how many disposition codes you have but if it's a few, you can program up buttons.
  15. I think 911 is handled in the "no_match" path, and from there not sure how it's further handled. However, it should be straight forward to add a webhook to the "no_match" path and use something like IFTT or Zapier to extract the variables and send an email. The only issue is testing, it's 911, you know.. police may arrive. @Baze that implementation is super cool!
  16. Provided you are on the 2600hz hosted environment, they offer a Call Recording Monster App. Alternatively, you can use URL based recording with a PHP script but that's more complicated. Here is a link to a free script I created https://github.com/fastdevice look under Call-Recording.
  17. If you want to do a proper branding, It's a bit more nuanced than that. The typical registrar is unable to handle all the record types and I'd suggest looking for a dedicated DNS service. As a suggestion, as I have no affiliation, https://dnsmadeeasy.com/ they support all record types. And, the ones not listed in their interface, simply email their support team and they will add for you.
  18. You should be able to flush the presence using the debug app. Under the top menu items select "Presence." A table of extensions should be listed with the option to "flush" to the far right.
  19. Apart from trunks, if you are using the API, there is a parameter called "max_participants." Perhaps you limited the number by using this parameter? https://github.com/2600hz/kazoo/blob/master/applications/crossbar/doc/conference.md
  20. Any thoughts on adding a failback field to the Advanced Call Flow Pivot element? Maybe a pulldown to select extension, user, device, media, TTS, or enter another Voice URL?
  21. I tested this and the Yealink directory entry overrides the alert-info header settings. In other words, the phone should be using the ring-tone of the directory entry not the ones configured using "Ring." Make sure that you have the phone number correct when entering the directory entry. I believe that's how it distinguishes the entry. @Baze having a customizable alert-info header in a callflow would be great. Thanks!
  22. For reference, there is a Polycom support doc titled, "Using Statically Configured Busy Lamp Field with Polycom..." aka "Static_BLF_TB62475.pdf" There may be something on disabling the pop-up screens but consider you may also lose the caller-ID info. Here is a link to the pdf. https://support.polycom.com/global/documents/support/technical/products/voice/Static_BLF_TB62475.pdf I'm flooding this thread with too many convenience links. As with any good forum, links are frowned on as they go stale over time. The right approach is to please search the Polycom support site.
  23. You can read more about directed call pickup here: Yealink http://support.yealink.com/faq/faqInfo?id=176 Polycom https://documents.polycom.com/bundle/ucs-ag-5-8/page/r_ucs_ag_directed_call_pickup_parameters.html
  24. From my testing the order of operation is: Initial configurations are sent to the phone by the Advanced Provisioner The phone then requests any additional configuration (custom) that was included in the initial configuration provided by the Advanced Provisioner. Custom configuration files that include more URLs to additional configuration files. What this means is, the phone is requesting the additional files, not Advanced Provisioner. All Advanced Provisioner does is include the URL to the additional files within the initial config files as a feature of the phone. (sometimes I complicate things, so sorry if it's confusing) What I have found is additional configurations can overwrite previous with the last being the final setting. Therefore, only include setting that you want changed. I.e. using my site.cfg XML settings, you will overwrite Advanced Provisioner digitmap with the XML digitmap settings. On another note, here are the optional settings in my example XML file: call.internationalDialing.enabled="0" dialplan.removeEndOfDial="0" attendant.ringType="ringer10" dialplan.digitmap="*xxT|xxxxT|[2-9]11|0T|011xxx.T|[1][2-9]xxxxxxxxx|[2-9]xxxxxxxxx|[2-9]xxxT|x.T|*xx.T|**xx.T"/> The rest are used to provide BLF and to steal incoming calls.
  25. For Polycom, place this in a file. In my case 'site.cfg'. Host the XML file on your webserver and include the url using Advanced Provisioner | Settings | Custom Config URL This should activate the phone's BLF and allow the user to steal any incoming call. <SITE_CONFIG> <ALL attendant.behaviors.display.spontaneousCallAppearances.normal="1" attendant.behaviors.display.spontaneousCallAppearances.automata="1" attendant.ringType="ringer10"call.directedCallPickupMethod="native" call.directedCallPickupString="" voIpProt.SIP.strictReplacesHeader="0" call.internationalDialing.enabled="0" dialplan.removeEndOfDial="0"dialplan.digitmap="*xxT|xxxxT|[2-9]11|0T|011xxx.T|[1][2-9]xxxxxxxxx|[2-9]xxxxxxxxx|[2-9]xxxT|x.T|*xx.T|**xx.T"/> </SITE_CONFIG>
×
×
  • Create New...