For my small dating community I need a better system before I start to promote it further. Currently we use a SDK from the T-Com to connect two random telephones from Online Users together, however this service is too expensive since we pay for each minute. I am now looking for a VoIP solution that safes money and is performance friendly (as less traffic and needed server performance for each connection possible). Please take a look on [url removed, login to view] because it has some features I want on my own project too and you can understand the following a bit better then:
- Performance & Traffic friendly VoIP service on our server to minimize cost (no per minute pay connections or so, I just want to pay for the traffic)
- No calls to other phones or so, all the VoIP connections should stay inside our site only.
- The VoIP softphone on our site should be flash based because the user should not install anything other than flash.
- Audio and Webcam support is crucial. If the user has no webcam he still can use the audio channel to talk with the other person. If the user has no webcam his avatar will be showed instead.
- I think every user should have an internal voip number to connect to?
- Session possibility (see [url removed, login to view]), but I also need the possibility to connect 2 people together at ANY time. This can happen intended (click in the users profile to call) as long as the user is online or randomly (user clicks random call and gets connected to a random user that is online)
- For the random connections I currently make a random MySQL query. I offer call criterias for the user such as gender of the other person etc. - this should still be possible.
- Flash Softphone should show the current connection status (calling, connected, ...). These Status messages should be possible to edit into other languages by me.
- I want to set time limits for conversations (default 5 minutes)
- Currently users can define if they can be called, I check this value with an MySQL query. I need to have these options still available in the VoIP service ("Call me (when logged in), Accept no Calls, Only Friends...")
- Each successfull connection should be logged into the database (VoIP number of caller, all numbers of connected users, date of call, call duration).
- Some sort of Status bar on the header or in the sidebar, maybe flash based. If a new call comes in play a sound and give option to accept or decline.
- After a call every user that was involved to the connection or session needs to be asked if he wants User XXX to add as a friend. You can use my existing PHP friend system for this, which makes a friendship only valid if both users accept.
This should be all requirements. If possible use open source stuff. I know there are some tools like "Asterisk" and so on, though I don't know how to use them with my flash softphone requirement.