New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integration with PSTN (telephone networks) #3488
Comments
Just to give another idea, I think it would be awesome to be able to install an app on a smartphone and use that as a proxy from the computer for calling. |
@daniel-centore afaik, is not possible for any app (except maybe rooted phones) to place an automated gsm call and bridge the audio channels from another stream. |
Ah that's too bad. Just something I've always wanted to do. |
I'm playing a bit with it and have a somewhat working phone (using) verto which speaks to a FreeSWITCH server. Then from FS you can call any endpoint it supports, like SIP, PSTN, whatever. Right now it has A/V calling, hold call, mute call, redial last number, call transfer and full screen video. Code is here https://github.com/VoiSmart/Rocket.Chat/tree/verto_phone Now some screenshots ! |
Just a curious question: Is this sip-dialer intended to somehow be integrated into the rest of the application? does it fit into the concept of users or channels or does it interact with them at all? |
well, it depends on how you defined "integrated" I took this task from the roadmap, where it says a generic "pstn integration" If you want to integrate with pstn, there's no real concept of rooms/channels/whatever, just numbers to be called. basically this is a phone you can use everytime while you've the messaging application open. But to do this, you need a softswitch, and I've used FreeSWITCH for that, since doing a verto phone is way easier than doing a sip phone. This app more similar to the recent videobridge, which does nothing if you don't have an external jitsi server. About API: I've not found an official API for this kind of widgets in the sidebar, but is pretty trivial to build one, since they can be pretty self contained. The phone I'm playing with is almost self contained, there's just a small patch to the user configuration in order to add the softswitch crendentials. |
@xadhoom If its on the road-map, consider my comment as not given :) Sorry actually I wasn't aware of the roadmap and was a bit concerned about feature creep. One useful integration could be to detect and highlight telephone numbers in the channel history. Clicking such a link could start a call to that number. |
I'd also be happy if we could unify the io-device configuration with #3635 |
yes it is on the roadmap, but still no word from the core devs :) right now the feature is just on/off for all, like others. also the phone numbers highlight is a good one, maybe simpler. I'll check that, too. |
about unifying the device conf, make sense :) but before doing that I'll like to:
done that, integrate it with the new io-device feature you're working on (if finished). I'm also using adapter.js and having a single one is definitely a good idea. |
So we gave a lot of thought into this, which is essentially #1830 Put bluntly, if it is just a SIP dialer that is embedded handily inside chat, and it has access Also, this sort of utility-ware might be best featured in our upcoming Apps Marketplace. Then the rest boils down to two general technical camps: first party call handling and third But before either can take place, we'll need to add phone number to the user record, and Third party is most interesting. If I'm in private group chat, or a channel, and I click If I'm in a direct messaging session, one-on-one, then clicking that same button either places a Making third party handling even more interesting moving forward is our intention to start on Basically, right now, the inbound originates from a website's popup-chatbox, and the ACD routes to an |
the main issue I see in this automatic approach is that basically you're binding the voice app to a specific PBX with a specific configuration. Obviously this is the best approach for the user, but which one can be used? And this config may not fit correctly in a typical company PBX scenario. Maybe creating a more complex configuration on Rocket side where you assign numbers to different service, like audio conference or whatever. Right now I'm experimenting the following:
obviously, if the phone is logged into a PBX queue, it may also receive support calls from pstn :) Points 2, 3 are PBX specific, and I'm doing them using our own PBX which is FreeSWITCH based, |
Thanks @xadhoom for your ideas. Warning: this discussion is venturing into business area rather than technical at this point. To handle the required volume and scale that Rocket.Chat typically ends up deploying in, we must first work with a PBXaaS (PBX as a service) platform provider - there are quite a few out there, as you're aware, and we will likely partner with one. Eventually, to allow small deployments to have the same sort of feature (although we really need to fully understand the typical small deployment need (use-case, and how niche/small the user base for this is) for full PBX features before we proceed) - we will have to offer a "plug-in" styled support with a focus on Asterisk [and derivatives] styled interfaces. For the hobbiest, and the one-off scenario, our source code is wide open. Be innovative and creative! And we'd luv to see your add-on in our upcoming App Marketplace. |
Yes, this is a business talk right now :) well using a SaaS provider might limit the applicable market, for example in Italy is no (yet) widespread. and when you hit the real companies, you need to integrate in some way to fit all needs. btw, I'll continue with my exercise with verto, which, right now, is going to be deployed to several users with FreeSWITCH as backend. I've some experience with asterisk/freeswitch world, so I'll be very glad to help in some way. Even diverting what I'm doing to fit the whole project. |
@xadhoom 🔝 is what FOSS projects like us ❤️ to hear ! Please Direct Message me on https://demo.rocket.chat and we'll literally hook you up 👍 |
@xadhoom Hi! I downloaded you repo but I was unable to find Vetro feature. Thanks |
Well, first of all Verto is not SIP. if you're looking for SIP this is not the Second, since this feature is not having a lot of interest (at least, as So our repo has the integration with Verto (not SIP) and our own freeswitch matteo On Thu, Nov 10, 2016 at 4:21 PM, abduljanjua notifications@github.com
|
I can assure you there will be a great deal of interest but these things can take time. Verto (FreeSWITCH) offers a tremendous amount of potential and is one of the few solutions which can replace SIP and other legacy protocols while still maintaining interoperability. FreeSWITCH is striving to be on the cutting edge of technology, to add Verto integration to Rocket Chat will certainly be a key selling point for many organizations and opens up the potential capabilities and features of Rocket Chat. I for one would like to see this fork merged with the current Rocket Chat project. |
I accepted the idea for PSTN. but can choose FreeSWITCH also asterisk sometime people use asterisk and they not dared to change their technology. |
All NFRs are now being referred to the forums for discussion. Please open a new thread there please https://forums.rocket.chat/c/feature-requests |
@rocket-cat close |
There's some idea going around the integration with PSTN?
Basically I see a new right panel, which opens a simple dialer, with which you can call "something".
And being registered it can also receive calls.
This something can be a sort of js sip phone registered to some switch, which handles the media part using webRTC.
I've some experience with FreeSwitch, so if is acceptable to use it as the voip backend, the web phone can be verto-based, which simplifies a lot the call signalling. Using a plain js-sip phone can a bit more problematic since you have to handle all little compatibility issues that may arise using different soft switches.
(then FS may act as a bridge between verto and sip, if needed)
Verto reference: https://freeswitch.org/confluence/display/FREESWITCH/mod_verto
Being an UAC registered to some server, the account panel should have some entries to enter the login details, server and so on.
Any comment, ideas? Maybe is already in progress?
The text was updated successfully, but these errors were encountered: