Git Product home page Git Product logo

aircall-everywhere's People

Contributors

alanchauchet avatar alex-aircall avatar dependabot[bot] avatar hereismass avatar joeldarling avatar litil avatar paulsouche avatar quentin-sommer avatar rmnbrd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aircall-everywhere's Issues

Call object from Aircall API is not updated yet when call_end event (with added note) is invoked.

Hi, so I think I found another issue but I'm not sure how to put it.

I was trying to observe the Call Object data by adding AJAX to the List of Call API using the call_id from callInfos at the call_ended event.
(I added console.log to show data from ajax)

So, I performed the call (and answered by the other side) then end the call from Aircall Everywhere SDK UI, the call status from API is equals to 'done' (which is expected).

However, if I added Comment / Note from the Aircall Everywhere SDK UI and End the call from the agent side, the call status from API will be 'answered' with empty comment object.

My query for this case is: shouldn't the call status = 'done' and the comment object is populated right when the call_end is called?

Thanks!

How to specify from phone number?

Hi Aircall,

The send function dial_number event accepts phone_number as an argument. That defines the TO phone number.
But I have multiple phone numbers under my user and I want to vary the FROM phone number. It doesn't look like the send function would accept an argument to define a FROM phone number.

Can you please add this?

No API to clean up aircall client/event listeners

The AircallPhone class adds event listeners to the window object (this.w) upon instantiation here.

However, as far as I can tell there is no way to clean up this listener (and any other side effect that instantiation may cause). Thus, once you load the aircall iframe in your app there is no true way to do a full cleanup once the call flow is over.

It would be great to have some sort of .destroy() method to clean up the client.

Thank you in advance for taking a look!

End call from js code

exists any way to end the current outcoming call in the phone from js code( as event "dial_number")?

How to auto login into aircall phone window after the authentication with aircall account (Oauth)?

How to auto-login into aircall phone window after the authentication with aircall account (Oauth)?

In our app, firstly authenticate the aircall account (using Oauth integration) and after the authentication process, aircall redirects to our website/app and on this redirect page, we display aircall phone window, but the aircall phone is not auto-login first time. We again login into this window.

Can you provide a solution for this so we can use a single login?

problem on mobile

Hello,

I integrated the solution on my website and it works well when I am on PC, but when I open the site on mobile aircall is not displayed and there is a message ''phone.aircall.io does not allow connection"

Screenshot_2023-11-24-17-15-14-09_40deb401b9ffe8e1df2f1cc5ba480b12

Thanks

incoming_call doesn't appear to be firing

Just trying to get aircall-everywhere integrated with our app and have been unable to get the 'incoming_call' event to fire. When running in debug mode this doesn't appear to even produce an event in the way other events do.

Even the Aircall Everywhere demo page seems to have this issue as well - no event ever appears in the events section of the page, and if the phone is collapsed, it never auto-reappears as the demo event listener calls for.

Is this something I'm doing wrong, or a known issue with the client?

TypeError : X is not a constructor (Vite.js)

In a Vite 4.0.1 project, I encountered the following error.
image

My code (useAircallDialer.tsx)
image

After a few hours, the only solution we found was to add to your Vite configuration :

export default defineConfig({
  build: {
    commonjsOptions: { include: [] },
  },

  optimizeDeps: {
    disabled: false,
  },
}

I am writing this here to prevent

Event for cancelled call from operator

Hi,

I am trying to catch when operator cancels incoming call (clicks on the red button). The only event that triggers is incoming_call at the beginning of the call. Event call_end_ringtone is not working in this case... I tried all the available callbacks.

Thank you

call_end_ringtone seems to not be triggered by iframe

When a user try to reach us and we don't answer the event appears to not be triggered.
Is this project still in active developement ?
In the readme there are some hope for new events :)

Is it possible to have the link for the mp3 from an event ?

Thanks alot for your feedback

Bug in the demo

Hi,

I started to launch the demo but found 2 bugs:
1/ After loading the phone, it didn't update the warning (even if Phone was loaded)
image

2/ Once logged in, I wasn't able to click on the dial example (errors in JS console)
image

Regards,
PB

Reload page

We have integrated the phone and sometime the page is refreshed auto, we haven't idea why.

could be that this happen for an event with the phone ?

this is a problem serious for us because this happens while our agents are in a call, so the call finish.

module needs transpiling to es5

Using aircall-everywhere npm module requires the user to transpile the code to es5 for uglifyjs plugin to work. Reference.

Currently I use the above suggested approach allowing my babel transpile to include aircall-everywhere module like this.

rules: [
            {
                test: /\.js*$/,
                exclude: /node_modules\/(?!(aircall-everywhere))/,
                loader: 'babel-loader',
                query: {
                    presets: ['env', 'react'],
                    "plugins": ["transform-object-rest-spread"]
                }
            },

Rest of my webpack config follows

It would be nice to transpile the code to es5 and then publish to npm.

Call does not starts and I get a `no_answer` error even if I'm logged in

I'm currently trying the generic integration with an iframe in our CMS. I'm trying to place a call, but, if the number shows up in the dialer, the call is not placed and I get an error.

I'm posting a message to the iframe with the parameters using the eventName dial_number and the data { phone_number: [my phone number] } as in the docs, and it seems to work well since I receive a message form the phone with apm_phone_dial_number_response with a value {success : true}.

But the call does not start and I receive an error { "code": "no_answer", "message": "No answer from the phone. Check if the phone is logged in" }. I'm logged in and I can place a manual call so I don't think it is a problem of being not logged in...

What could be the reason ? What could be the workaround ?

Can not use in production

Though the SDK works in local environment, when we push it to production,
Refused to frame 'https://phone.aircall.io/' because an ancestor violates the following Content Security Policy directive: "frame-ancestors 'self' http://localhost:* *.fusionamspro.com *.inzee.care *.fusionsd.com.au *.clevero.co *.driver360.org *.thescouts.com.au *.ubbitt.com ubbitt.com *.boxtal.com support.upowr.com crm.core.upowr.cloud enforceau.com.au *.avicrm.net *.aviseguros.com freshsales.io api.freshsales.io events.freshsales.io cdn.freshsales.io app.freshsales.io accounts.freshsales.io dnalegalmim.com *.dnalegalmim.com homepro.com *.homepro.com *.getheroes.run *.crisp.chat app.zeliq.com zeliq.com app.eambulanta.si *.peppercloud.com *.mypropertysuite.io ucrmweb.co integration.ucrmweb.co cedf.my.site.com *.leovida.com *.vivaservices.fr *.menageo.fr *.vipmanaging.com *.desibites.com *.odoo.com *.edesk.com *.90tech.fr *.scaffold.digital *.dnalegalmim.com openinfrase.my.site.com *.onlive.site *.avicrm.es crm.foodforjoe.es *.abuelosplus.es *.retraiteplus.ch *.seniorhomeplus.uk *.casas-senior.pt *.placessenior.com *.casadiriposopiu.it *.uniresi.es app.frontapp.com *.kalendes.com bolt.buscoresi.com *.aurasoft.fr *.cloudfront.net *.aircall.io bolt.buscoresi.com *.alan.com alan.com yonivers.aurasoft.fr aurasoft.fr *.freshdesk.com *.myfreshworks.com *.myfreshworks.dev *.freshpo.com *.freshpori.com *.freshchat.com *.juno.legal *.juno.works aircall.github.io *.freshworks.com *.tangerineglobal.com *.microsoft.com *.novatedleaseaustralia.com.au *.formaliteauto.com *.retraiteplus.be *.nocrm.io *.avaibook.com *.amazonaws.com *.anwalt.de *.apollo.io *.bloobirds.com *.casinobarcelona.es *.flatfair.co.uk *.doctoralia.es *.doktortakvimi.com *.clivi.com.mx *.documentforce.com *.drivania.com *.elabogado.com *.feit.com *.firstluggage.com *.foodsby.com *.futuresimple.com *.geomapper.io *.gibobs.com *.golftec.com *.google.com *.greenpan.com *.happyfox.com *.heymarket.com *.homevest.io *.hopkins.systems *.hubspoteditor.com *.hubspot.com *.inspiringvacations.com *.intercom.com *.jameda.de *.jumpcloud.com *.kactus.com *.lemlist.com *.linear.app *.linkedin.com *.looker.com *.lussostone.com *.live.com *.macartevacances.fr *.medicalcard.io *.missiveapp.com *.niceincontact.com *.office.net *.okta-emea.com *.okta.com *.outreach.io *.prenuvo.com *.reamaze.com *.rebag.com *.rezdy.com *.simplebo.net *.shopware.com *.soldo.com *.sortlist.com *.sportscope.com *.steeple.fr *.theguarantors.com *.treble.ai *.zehnder.fr *.zendesk.com *.zendesk.es *.adyen.help *.asana.com *.blablacar.com *.callexcell.be *.com.slack *.deporvillage.com *.doctoranytime.gr *.lusha.com *.medelse.com *.merxu.com *.onepilot.co *.planhat.com *.poppy.be *.retraiteplus.fr *.stikets.info *.swipoo.com *.tailorbrands.com *.tiierisch.de *.zdusercontent.com *.visualforce.com *.salesforce-experience.com *.salesforce.com *.force.com *.doctoralia.com.br *.doctoralia.es *.hapily.com *.myrightmove.com.au *.mobilemod.com mobilemod.com *.docs.google.com *.derecho.com *.csp.withgoogle.com *.ssl.gstatic.com *.apis.google.com *.script.google.com *.googleusercontent.com *.bubble.io bubble.io *.frontapp.com *.freshdev.io https://fairsquaremedicare.com/ *.app.bedrockmedicare.com".

Any idea to fix this?

[Report only] A lot of errors after logging in

I just added the library to my React app and after logging in, I'm receiving a lot of errors related to permissions and security.
Screenshot 2022-12-27 at 12 56 13

The code related to Aircall

import { Fab, Paper, SvgIcon } from "@mui/material"
import LoginIcon from "@mui/icons-material/Login"
import { useTranslation } from "next-i18next"
import { styled } from "@mui/system"
import AircallPhone from "aircall-everywhere"
import useIntegrations from "../../hooks/useIntegrations"
import { useState } from "react"
import AircallPic from "../../../public/images/third_party_logos/aircall.svg"
import AircallSVG from "../customSVG/AircallSVG"
import AircallIcon from "../customSVG/AircallSVG"

const StyledFab = styled(Fab)(({ theme }) => ({
  position: "fixed",
  top: "80px",
  right: "20px",
  backgroundColor: "white"
}))

const AircallContainer = styled(Paper)(({ theme }) => ({
  position: "fixed",
  top: "130px",
  right: "50px",
  zIndex: 2000,
  "& #phone": {
    iframe: {
      border: 0
    }
  }
}))

export default function AircallIntegration() {
  const { t } = useTranslation()
  const { included: aircall } = useIntegrations("aircall")
  const { included: hubspot } = useIntegrations("hubspot")
  const [login, setLogin] = useState(false)
  const phone = new AircallPhone({
    domToLoadPhone: "#phone",
    onLogin: settings => {
      console.log(settings)
      setLogin(true)
    },
    onLogout: () => {
      setLogin(false)
    },
    //integrationToLoad: hubspot ? "hubspot" : null,
    size: "big",
    debug: process.env.REACT_APP_ENVIRONMENT === "development"
  })

  //if (true) return null

  if (!aircall) return null

  return (
    <>
      <StyledFab size="large">
        <AircallIcon size="large" />
      </StyledFab>
      <AircallContainer elevation={3}>
        <div id="phone" />
      </AircallContainer>
    </>
  )
}

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.