Jump to content

abuzooz

Members
  • Posts

    97
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by abuzooz

  1. On 4/2/2023 at 12:06 AM, tomas_ said:

    Hi!

    I've just set up a new cluster with Kazoo 4.3 and encountered this issue also. I noticed that the /tmp folder of Freeswitch server was filling up with a lot of call recordings (mp3 files), and found the "Received HTTP error 0 trying to save" error in Freeswitch logs. Also "Error Storing File" in Kazoo console log.
    Also the recordings isn't found when trying to get them from recordings API.

    It started when adding another Kazoo / Ecallmgr server, before that there was no issue at all. And it's only when Freeswitch tries to save the media to the new, second Kazoo / Ecallmgr server, it works perfect to the first one.

    Somehow I noticed the "proxy_store_acls" setting in system_config/media (Bigcouch /_utils/document.html?system_config/media), and when adding the IP addresses for both Freeswitch servers there it seems that the problem is gone!
    Needs some more testing to be sure, but all it seems like every recording is saved properly.

    image.png.7da35b8ce2708eb954218e14333f8cee.png

    I haven't seen this in any docs or guides anywhere.

    Br - Tomas

     

    Well, we built a script to handle the stuck recordings under /tmp, will definitely give this a try! But how did you figure it out? 

     

    Thanks mate

  2. Hi @bpbp

     

    We tested both Announcement and Queue position, both are faulty and not reliable, will be happy to share some logs if someone could dig deeper into the code and fix it.

     

    On the other side, is ACDC queue working well for you? we encounter an issue that after a while, customers calls a queue number, they hear the music but agents devices are not ringing (they are not notified of the call), when we restart ACDC module and service, it works again!

    Thanks

    Yazan

  3. sHi All,

    We have multiple kazoo servers with Webhook enabled on them, we use this command sup kapps_config set_default ecallmgr restrict_channel_state_publisher true  to limit the handling ecallmger to only send the webhook call events,  and all is fine, but we noticed that for channel create,  channel bridge, channel answered, these type of webhooks are sent from all webhook kazoo servers, not restricted to the handling server, while channel destroy is following the restriction made by the command above and is being sent only by the handling server. This is causing that same call event (channel create. channel answered) being sent to the CRM or the Receiving server multiple time, which is causing a big issue.

     

    Any clue what would be the problem or if there is a command that we need to execute in order to avoid such duplicate events being sent by all Kazoo servers together?

     

    Thanks

    Yazan

  4. There is no problem with Kazoo, it is related to the carrier itself, you need to understand that ring groups are different than queues, where in ring groups you are streaming the media without the call being picked-up while in queues, the call will be connected then media is steamed, this is always supported by all carriers.

    We have music working on ring groups, but not all carriers play it, some does and others doesnt.

     

    @Sara

  5. Hi All

    We are testing ACDc queue, everything is fine so far, however, we are facing hard time to make recording work with queue, according to this documentation  we only have to set this flag "record_caller" to true, unfortunately, call recording is not working and nothing exist in kazoo logs, anyone faced same issue with ACDc queue?

    In addition, announcements like announce position and waiting time is behaving incorrectly, it only announce when the call is picked up by one of the agents not according to the set interval, following instructions in this documentation  

    Below you can find json body used to create the queue I am discussing above:

    {
    "data":{
    "name":"Support Queue",
    "record_caller":true,
    "strategy":"round_robin",
    "agent_wrapup_time":0,
    "max_queue_size":0,
    "connection_timeout":3600,
    "enter_when_empty":true,
    "agent_ring_timeout":15,
    "caller_exit_key":"#",
    "ring_simultaneously":1,
    "announcements":{
    "wait_time_announcements_enabled":true,
    "position_announcements_enabled":true,
    "interval":30}
            }
    }

     

  6. Hi All

    I noticed that every time I make a call I receive the following crash and error in Konami on my Kazoo applications server.  below are the logs after making a call:

     

    Dec 10 11:28:42 kz 2600hz[1418]: |0000000000|kz_hooks_util:166(<0.23256.9>) adding event CHANNEL_ANSWER to kz_hooks_listener
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_hooks_util:166(<0.23256.9>) adding event CHANNEL_ANSWER to kz_hooks_listener
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_util:97(<0.23256.9>) stacktrace:
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_util:106(<0.23256.9>) st: gproc:reg at 645
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_util:107(<0.23256.9>) args: {p,l,{kz_hook,<<"ba4774842e5840b29c5f6ab1784ad171">>,<<"CHANNEL_ANSWER">>}}
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_util:104(<0.23256.9>) st: kz_hooks_util:maybe_add_hook/1 at (144)
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_util:104(<0.23256.9>) st: konami_event_listener:handle_cast/2 at (343)
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_util:104(<0.23256.9>) st: gen_listener:handle_module_cast/2 at (1324)
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_util:104(<0.23256.9>) st: gen_server:try_dispatch/4 at (601)
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_util:104(<0.23256.9>) st: gen_server:handle_msg/5 at (667)
    Dec 10 11:29:48 kz 2600hz[1418]: |68d5d475-34f6-434a-bc54-fab495fc966b|kz_util:104(<0.23256.9>) st: proc_lib:init_p_do_apply/3 at (247)
    Dec 10 11:29:48 kz 2600hz[1418]: |0000000000|Undefined:Undefined(<0.23256.9>) gen_server konami_event_listener terminated with reason: badarg
    Dec 10 11:29:48 kz 2600hz[1418]: |0000000000|gen_server:812(<0.23256.9>) CRASH REPORT Process konami_event_listener with 0 neighbours exited with reason: bad argument in gen_server:terminate/7 line 812
    Dec 10 11:29:48 kz 2600hz[1418]: |0000000000|Undefined:Undefined(<0.24295.0>) Supervisor konami_sup had child konami_event_listener started with konami_event_listener:start_link() at <0.23256.9> exit with reason badarg in context child_terminated
    [root@kz ~]# tailf /var/log/kazoo/error.log | grep konami
    11:31:36.411 [error] |f9ca7ac85e6241b1b2412d5eb006269a|kz_util:104(<0.23719.9>) st: konami_event_listener:handle_cast/2 at (343)
    11:31:36.412 [error] |0000000000|Undefined:Undefined(<0.23719.9>) gen_server konami_event_listener terminated with reason: badarg
    11:31:36.412 [error] |0000000000|gen_server:812(<0.23719.9>) CRASH REPORT Process konami_event_listener with 0 neighbours exited with reason: bad argument in gen_server:terminate/7 line 812
    11:31:36.413 [error] |0000000000|Undefined:Undefined(<0.24295.0>) Supervisor konami_sup had child konami_event_listener started with konami_event_listener:start_link() at <0.23719.9> exit with reason badarg in context child_terminated
    11:31:36.414 [error] |0000000000|Undefined:Undefined(<0.140.0>) Lager event handler error_logger_lager_h exited with reason {'EXIT',{{case_clause,[<0.24439.9>,undefined,exit,{badarg,{gen_server,call,[konami_event_listener,{add_binding,<<"call">>,[{restrict_to,[<<"CHANNEL_ANSWER">>,<<"CHANNEL_BRIDGE">>,<<"CHANNEL_DESTROY">>,<<"CHANNEL_REPLACED">>,<<"CHANNEL_TRANSFEREE">>,<<"DTMF">>]},{callid,<<"f51dcfe404f9486183cde906aaf19852">>}]}]}},undefined,[{gen_server,call,2,[{file,"gen_server.erl"},{line,204}]},{konami_event_listener,add_call_binding,1,[{file,"src/konami_event_listener.erl"},{line,148}]},{konami_code_statem,...},...]]},...}}

     

    Am I doing something wrong or is it a bug?

  7. here is couchdb document for your reference, I can see that it says s3, so this means it is only stored on S3?

     

    {
       "_id": "202010-d471852c51ffad66d329649c6895684a",
       "_rev": "2-c66055d1bcdba32d469141db5c353afd",
       "pvt_document_hash": "558c42991392dc1d091f694152de7ad0",
       "pvt_node": "kazoo_apps@kz.xxxx.com",
       "pvt_type": "call_recording",
       "pvt_modified": 63771302492,
       "pvt_created": 63771302492,
       "pvt_account_db": "account%2Fba%2F47%2F74842e5840b29c5f6ab1784ad171-202010",
       "pvt_account_id": "ba4774842e5840b29c5f6ab1784ad171",
       "to": "972599796989@atlantic.xxxx.com",
       "start": 63771302488,
       "source_type": "kzc_recording",
       "request": "972599796989@xxxx.xxxx.com",
       "owner_id": "2399970e0db1a68698fd21ea0ec1999c",
       "origin": "outbound to offnet from endpoint",
       "name": "69ba68f484264a005a22eb49838bfce0.mp3",
       "media_type": "mp3",
       "media_source": "recorded",
       "interaction_id": "63771302480-fd575c22",
       "from": "1008@atlantic.deskwaves.com",
       "duration_ms": 3520,
       "duration": 3,
       "direction": "inbound",
       "description": "recording 69ba68f484264a005a22eb49838bfce0.mp3",
       "custom_channel_vars": {
           "Account-ID": "ba4774842e5840b29c5f6ab1784ad171",
           "Account-Name": "xxxx",
           "Account-Realm": "atlantic.xxxx.com",
           "Application-Name": "callflow",
           "Application-Node": "kazoo_apps@kz.xxxxx.com",
           "Authorizing-ID": "ed4421e3c7d6d66f303279edce5cd322",
           "Authorizing-Type": "device",
           "Bridge-ID": "169d74e3843f406bbd52a1e5490d54f1",
           "Call-Interaction-ID": "63771302480-fd575c22",
           "CallFlow-ID": "25178a8c5f2ad05d145e59f89835679d",
           "Channel-Authorized": "true",
           "Ecallmgr-Node": "ecallmgr@ecallmgr.xxxxx.com",
           "Fetch-ID": "5a3cff51-9776-4455-ab8f-3da35ef6bb58",
           "Media-Name": "69ba68f484264a005a22eb49838bfce0.mp3",
           "Media-Names": "69ba68f484264a005a22eb49838bfce0.mp3",
           "Media-Recorder": "kz_media_recording",
           "Media-Recording-ID": "202010-d471852c51ffad66d329649c6895684a",
           "Media-Recordings": "202010-d471852c51ffad66d329649c6895684a",
           "Owner-ID": "2399970e0db1a68698fd21ea0ec1999c",
           "Privacy-Hide-Name": "false",
           "Privacy-Hide-Number": "false",
           "Realm": "xxxxx.xxxxx.com",
           "Reseller-ID": "d751fcae7bebadcae4acfa188ca21939",
           "Username": "yazan"
       },
       "content_type": "audio/mpeg",
       "cdr_id": "202010-169d74e3843f406bbd52a1e5490d54f1",
       "caller_id_number": "1008",
       "caller_id_name": "Yazan Inaimss",
       "callee_id_number": "972599796989",
       "callee_id_name": "",
       "call_id": "169d74e3843f406bbd52a1e5490d54f1",
       "pvt_attachments": {
           "69ba68f484264a005a22eb49838bfce0.mp3": {
               "content_type": "audio/mpeg",
               "length": 30758,
               "stub": false,
               "handler": {
                   "kz_att_s3": {
                       "S3": "g2gCdAAAAAVkAAZidWNrZXRtAAAACXRhbGtjaGllZmQAFGJ1Y2tldF9hY2Nlc3NfbWV0aG9kbQAAAARhdXRvZAAKZmllbGRfbGlzdGwAAAAEdAAAAAFtAAAAA2FyZ20AAAAKYWNjb3VudF9pZHQAAAABbQAAAAVjb25zdG0AAAAKcmVjb3JkaW5nc3QAAAABbQAAAANhcmdtAAAAAmlkdAAAAAFtAAAAA2FyZ20AAAAKYXR0YWNobWVudGpkAANrZXltAAAAFEFLSUE0VDVUSktFQUlXNVZVVUlNZAAGc2VjcmV0bQAAAChOMml3WUhmVHZFOEFISXVXcTQvM3haWUpZRmVBcVdXS3Jpc1JKOEtKbQAAAHhiYTQ3NzQ4NDJlNTg0MGIyOWM1ZjZhYjE3ODRhZDE3MS9yZWNvcmRpbmdzLzIwMjAxMC1kNDcxODUyYzUxZmZhZDY2ZDMyOTY0OWM2ODk1Njg0YS82OWJhNjhmNDg0MjY0YTAwNWEyMmViNDk4MzhiZmNlMC5tcDM=",
                       "metadata": {
                           "etag": "170b49ee20700105af1e0ec2a850ce42",
                           "x-amz-request-id": "FDF91953B94C0266",
                           "x-amz-id-2": "FgwO599YIaz4c5D96A89hLaS4/pRg68jqQYA7OpFISk0smZ+mz6kxDPXaZHJ1HAb0Jb2zcAOYUc="
                       }
                   }
               }
           }
       }
    }
  8. @mc_

    on user level and  by using below API json payload. Call recording is sent successfully to S3 bucket with no issues, however, I feel that MODB is still saving a copy of that file.

     

    {  "auth_token""{AUTH_TOKEN}",
    "data":{
        "smartpbx":{"call_recording":{"enabled":true}},
    "call_recording":{
        "outbound":{
            "offnet":{"record_on_answer":true,"record_min_sec":1,"enabled":true,"time_limit":3600,"format":"mp3"},
            "onnet":{"enabled":false}},
        "inbound":{
            "offnet":{"record_on_answer":true,"record_min_sec":1,"enabled":true,"time_limit":3600,"format":"mp3"},
            "onnet":{"enabled":false}}}}
         }
         
         
  9. Hi All

    I am using S3 storage plan to save recordings, media and voice messages, however, I noticed that kazoo is only saving a copy of the file binary to S3 and keeping another copy in Couchdb, the local copy is used by Kazoo when once of these files is requested based on the logs.

    I was reading and I noticed that connection should be configured not to use local (couchdb), howver,  there is no documentation for that in the web that I can find to change the connection to s3, any advise? is there any drawbacks/concerns not saving a local copy of these binaries? like performance..etc?

     

    {
       "data":{
          "attachments":{
             "bb966f5b0af243bb835b6c07ca3120a7":{
                "handler":"s3",
                "name":"Kazoo S3",
                "settings":{
                   "bucket":"XX",
                   "key":"XXX",
                   "secret":"XXXXX/XXXXX",
                   "bucket_access_method":"auto",
                   "field_list":[
                      {
                         "arg":"account_id"
                      },
                      {
                         "const":"voicemail"
                      },
                      {
                         "arg":"attachment"
                      }
                   ]
                }
             },
             "2e878cb4a14a46d4abd35a9a3ce6ae8e":{
                "handler":"s3",
                "name":"Kazoo S3",
                "settings":{
                   "bucket":"XX",
                   "key":"XXX",
                   "secret":"XXXX/XXXXX",
                   "bucket_access_method":"auto",
                   "field_list":[
                      {
                         "arg":"account_id"
                      },
                      {
                         "const":"media"
                      },
                      {
                         "arg":"attachment"
                      }
                   ]
                }
             },
             "f8885bb42bdb4466a88847e2d6fbe1b2":{
                "handler":"s3",
                "name":"Kazoo S3",
                "settings":{
                   "bucket":"XX",
                   "key":"XXX",
                   "secret":"XXX/XXXX",
                   "bucket_access_method":"auto",
                   "field_list":[
                      {
                         "arg":"account_id"
                      },
                      {
                         "const":"recordings"
                      },
                      {
                         "arg":"attachment"
                      }
                   ]
                }
             }
          },
          "plan":{
             "modb":{
                "attachments":{
                   
                },
                "connection":"local",
                "types":{
                   "call_recording":{
                      "attachments":{
                         "handler":"f8885bb42bdb4466a88847e2d6fbe1b2"
                      }
                   },
                   "mailbox_message":{
                      "attachments":{
                         "handler":"bb966f5b0af243bb835b6c07ca3120a7"
                      }
                   },
                   "media":{
                      "attachments":{
                         "handler":"2e878cb4a14a46d4abd35a9a3ce6ae8e"
                      }
                   }
                }
             },
             "account":{
                "attachments":{
                   
                },
                "connection":"local",
                "types":{
                   "call_recording":{
                      "attachments":{
                         "handler":"f8885bb42bdb4466a88847e2d6fbe1b2"
                      }
                   },
                   "mailbox_message":{
                      "attachments":{
                         "handler":"bb966f5b0af243bb835b6c07ca3120a7"
                      }
                   },
                   "media":{
                      "attachments":{
                         "handler":"2e878cb4a14a46d4abd35a9a3ce6ae8e"
                      }
                   }
                }
             }
          }
       }
    }
×
×
  • Create New...