Git Product home page Git Product logo

Comments (13)

eulbat avatar eulbat commented on July 23, 2024

Hello @williamlimianto thank you for reaching out.
The notes and tags added on the phone are saved when you leave the call ended view. This is why they are not present in the call ended payload.

from aircall-everywhere.

williamlimianto avatar williamlimianto commented on July 23, 2024

Hi eulbat, thank you for your feedback.
Well noted for the notes and tags, However, how about the call_status? It should be 'completed' instead of still 'answered' right?

from aircall-everywhere.

eulbat avatar eulbat commented on July 23, 2024

Hi @williamlimianto
Apologies for the delay.

So if I understand correctly:

  • You listen to call_ended event in aircall-everywhere
  • When receiving this event, you query the public API to get the call data

And the status is not done if you've added comments or tags?

from aircall-everywhere.

williamlimianto avatar williamlimianto commented on July 23, 2024

Hi eulbat, Sorry for the delay as well.
Yes, that is correct.
Also, there is another flow that causing this issue.
Try to perform outbound call, and then try to compare the api result between user ended the call and agent (I mean the user of Aircall Everywhere) ended the call.

Somehow the status is different too. (Status still answered)

Thanks.

from aircall-everywhere.

eulbat avatar eulbat commented on July 23, 2024

@williamlimianto There might be a slight delay between the event being received in aircall-everywhere and the data being up to date in the API.
However, if you want to rely on events, you can check out the webhooks from our public api: https://developer.aircall.io/api-references/#webhook-usage

from aircall-everywhere.

williamlimianto avatar williamlimianto commented on July 23, 2024

Hi @eulbat, is there any alternative that I can take to keep using event from Aircall Everywhere combined with query to public API?

So for my case, I need to store log of the call status (From iniatiated until done) and link each of them with my project's transaction id.

If I use webhooks, perhaps I could store the log however I cannot pass my projects's transaction id with it.

Thanks.

from aircall-everywhere.

eulbat avatar eulbat commented on July 23, 2024

Hello @williamlimianto

Unfortunately, I don't think there's another solution.

I don't know your whole use case so I might be missing something, but would something like this be possible ?

  • When the aircall-everywhere event is triggered, save your transaction along with the call id.
  • When you receive the webhook events in your backend, find the transaction with the call id and enrich your log with the updated call data.

from aircall-everywhere.

williamlimianto avatar williamlimianto commented on July 23, 2024

Hi @eulbat,

Sorry for the delay, I also tried the Aircall webhook as you mentioned.
However when I tried to capture the result of call.ended event, I found the same issue.

Try to perform outbound calls using the SDK, and then try to store the result into a dummy file/database.
I found different results between the user ended the call and the agent (I mean the user of Aircall Everywhere) ended the call.
Somehow the status is still different and recording is still not available.

from aircall-everywhere.

williamlimianto avatar williamlimianto commented on July 23, 2024

Hi @eulbat ,
Is there any update regarding this case?

I just want to make sure because the Aircall Support team already set the ticket to "Resolved as Known Issue" due to the issue is handled here (Github) and not at the Aircall Support portal.

Thanks!
Screenshot_4

from aircall-everywhere.

eulbat avatar eulbat commented on July 23, 2024

Hello @williamlimianto

I have not been able to reproduce the issue.
I tried multiple cases:

  • outbound answered call from aircall everywhere SDK, ended by agent
  • outbound answered call from aircall everywhere SDK, ended by external
  • inbound answered call from aircall everywhere SDK, ended by agent
  • inbound answered call from aircall everywhere SDK, ended by external

In all these scenarios, when I receive the call.ended webhook, the status from the webhook payload (data.status) is done as expected.

from aircall-everywhere.

williamlimianto avatar williamlimianto commented on July 23, 2024

Hi @eulbat, sorry for the delay.
I already retested every scenario above and somehow the call status is already correct.
I'm not quite sure how.

However, I got another issue (hopefully this is last one) regarding calling to external.
So here's how to reproduce the issue :

  1. I call the external using Aircall Everywhere SDK.
    Note: The external number is actually a phone number.
  2. Then, the external rejects the phone call / ignores the phone call.
  3. The provider from the external number response with "The person you're trying to call is currently busy" and so on.
  4. Notice the call.ended webhook, the status is done (which is expected), however the answered_at is filled.

My question is, why is the answered_at field still filled even though the external is not answering the call?

Thanks.

from aircall-everywhere.

eulbat avatar eulbat commented on July 23, 2024

Hey @williamlimianto

This is not ideal but unfortunately it's normal.
When calling a number that has a voicemail, if you hit that voicemail, that call is considered as "answered" because it is answered by the voicemail "robot".
This is present throughout the product and isn't specific to aircall-everywhere.

from aircall-everywhere.

williamlimianto avatar williamlimianto commented on July 23, 2024

Hi @eulbat,
Ah well noted, then I guess this issue is resolved by using the Aircall Webhook :)
Thank you so much for your time and your help.

from aircall-everywhere.

Related Issues (17)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.