  Release Summary for 4.3-91
  [![Generic badge](https://img.shields.io/badge/release_status-building-lightgrey.svg)](https://shields.io/)
  Changes to branch `4.3` after version `4.3.90`.
  * [add qubicle webhooks modules](https://github.com/2600hz/kazoo/pull/6321) - _by Mark Magnusson_
  * [HELP-13212: Document vmboxes.include_message_on_notify field](https://github.com/2600hz/kazoo/pull/6361) - _by Harenson Henao_
      Missing change for https://github.com/2600hz/kazoo/pull/6339
  * [validate token term in blackhole](https://github.com/2600hz/kazoo/pull/6368) - _by lazedo_
  * [KQUB-56: update quantifiers to support pro and basic](https://github.com/2600hz/kazoo/pull/6346) - _by Mark Magnusson_
      this will require a &quot;sup qubicle_maintenance update_offering&quot; after upgrade to correctly set the offering levels on existing qubicle entities
  * [KCRO-17: skip some routines during user creation if there were errors](https://github.com/2600hz/kazoo/pull/6365) - _by lazedo_
      Addresses payloads that fail validation but continue to execute routines that expected valid data:
      01:00:29.333 error kazoo_bindings.690 unable to find function clause for kz_json:no_prune([&lt;&lt;&quot;pvt_sha1_auth&quot;&gt;&gt;], undefined) in src/kz_json.erl:1369
      01:00:29.334 error kazoo_bindings.696 as part of cb_users_v2:validate/2
      01:00:29.334 error kazoo_bindings.697 st: {lists,foldr,3,[{file,&quot;lists.erl&quot;},{line,1276}]}
      01:00:29.334 error kazoo_bindings.697 st: {cb_users_v2,remove_creds,1,[{file,&quot;src/modules_v2/cb_users_v2.erl&quot;},{line,770}]}
      01:00:29.334 error kazoo_bindings.697 st: {lists,foldl,3,[{file,&quot;lists.erl&quot;},{line,1263}]}
      01:00:29.334 error kazoo_bindings.697 st: {kazoo_bindings,fold_bind_results,5,[{file,&quot;src/kazoo_bindings.erl&quot;},{line,632}]}
      01:00:29.334 error kazoo_bindings.697 st: {lists,foldl,3,[{file,&quot;lists.erl&quot;},{line,1263}]}
      01:00:29.334 error kazoo_bindings.697 st: {kazoo_bindings,fold_processor,3,[{file,&quot;src/kazoo_bindings.erl&quot;},{line,860}]}
      01:00:29.334 error kazoo_bindings.697 st: {api_util,validate_data,2,[{file,&quot;src/api_util.erl&quot;},{line,1077}]}
  * [KCRO-14: emit the billing_seconds for the reduce](https://github.com/2600hz/kazoo/pull/6367) - _by lazedo_
      The reduce view for user interactions uses the billing seconds but it is not emitted from the map function.
  * [[PROD-157] - 4.3](https://github.com/2600hz/kazoo/pull/6348) - _by John White_
      Adding telemetry capabilities, see the`doc/announcements.md` for details.
  * [Harden blackhole against high connection rates](https://github.com/2600hz/kazoo/pull/6323) - _by James Aimonetti_
      Prior, blackhole had no effective tracking of connection count
      per-IP or globally. Errant clients were terminating their connection
      but not closing the TCP socket, reconnecting, and causing accidental
      DoS of the blackhole server.
      This PR creates a websocket client in the `kazoo_proper` app to test
      pings and &quot;high&quot; connection attempts. The PR introduces a
      `system_config` flag to allow system administrators the ability to
      limit concurrent connections per IP address to help limit impact of an
      IP creating large amounts of connections quickly.
      Additionally, update blackhole to return an error when no auth token
      is present.
      The kz_cache is updated to allow higher-level apps to associate a
      cache key with a PID, flushing the entry on the PID&#039;s exit. A helpful
      feature is to also allow some exposure to match specs for the purposes
      of counting cache entries. Instead of having to fetch a list and
      filter in the higher-level code (incurring copying / memory usage),
      the `count` API allows the filtering criteria to be specified using
      match spec grammar and done in ETS via `select_count`.
  * [[PROD-170]:  Announcement Only Mode for vmboxes - 4.3](https://github.com/2600hz/kazoo/pull/6349) - _by John White_
      This PR adds new functionality to a voicemail box, enabling a mailbox to only play the greeting and advance to the next node of the current callflow.
      Announcement only mode can be controlled with the `announcement_only` boolean in the vmbox schema or by the mailbox owner via the voicemail config menu.  This default setting for this feature&#039;s is disabled or `false`.
      Mailbox owners will now hear new options in the voicemail configuration menu as two new prompts have been added to [Kazoo Core Media](https://github.com/2600hz/kazoo-sounds/tree/master/kazoo-core#importing-prompts-for-a-language).
      Two new en-US prompts have been added to handle this feature and should be imported in conjunction with the upgrade of KAZOO.
      * vm-settings\_menu
      * vm-settings\_menu\_announcement_on
      For instructions on how to import prompts, please consult the [Kazoo Core Media documentation](https://github.com/2600hz/kazoo-sounds/tree/master/kazoo-core#importing-prompts-for-a-language).
  * [KZOO-45: Filter just empty strings when normalizing CDRs](https://github.com/2600hz/kazoo/pull/6355) - _by James Aimonetti_
      An addition to filter_empty fields from the CDR summary response is
      causing expected fields like `cost` to be stripped when they are
      0. The intent of the change was to filter keys with empty strings (&quot;&quot;)
      to reduce payload size.
      Instead, let&#039;s add a `filter_empty_strings` to narrow down what is
      removed from the payload.
  -- 2600Hz Official <packages@2600hz.com> +Mon, 09 Mar 2020 19:19:48 
