stu567blue — 2012-06-13T04:21:31-04:00 — #1
I have a quick question. I have to develop a cam website for a client, that gives users a selection of cam rooms with which to go into. The client wants this to work in the adult industry and offer both a free service as well as a paid premium service. I can do the main development side of things, which includes all the PHP backend and so on and so forth.
However, I am struggling with how the web cam would integrate with the website. Does anyone have any experience with integrating web cams into the website... how would this integrate with the PHP, I'm assuming a unique ID would identify each camera room so for example www.clientcamsite.com/member_id or something similar.
If any of you can offer some help that would be great.
eastcoast — 2012-06-13T14:34:12-04:00 — #2
fizixrichard — 2012-07-07T09:27:47-04:00 — #3
I know this isn't an entirely fresh topic, but I'll reply I've done this before and have a platform (bit like stickam) so feel free to message me if you want to discuss licensing it. If you want to do it yourself, to expand on what EastCoast said.
You'll want to use (and learn how to use) a solution like Flash Media Interactive Server. You can run it on a server by purchasing the software from Adobe (self host); but thats expensive upfront. Or you can use FMS hosting services like Influxis (note and understand the limits); or Amazon Cloud Services offer a FMS hosting service; details of which are available on Adobe and Amazons websites.
Running such an application isn't cheap because they tend to have a high user concurrency consuming considerable bandwidth due to the webcam stream.
To build such an application you'll need to know:
Flash obviously, as the chat room application itself will be built in Flash - so good ActionScript 3 skills will be required.
You'll need to know how to connect to a media server such as FMS, how to create and manage shared objects, understand event dispatchers and listeners; how to optimize these (user concurrency). You'll also need to learn how to transmit text, video and audio (live), background broadcast messages, potentially encrypting it).
You'll need to learn how to create server side scripts on FMS, where you'll want to know how to create and maintain instances, user lists, broadcasts, logging, how to authenticate connections and users, how to terminate connections, how to communicate with a remote server - i.e. to authenticate a user by having FMS connect to the main server (say a secure php script); authenticate the details, have the script on the remote server return a response and how to process that on the FMS server.
Due to the nature of the application you'll also want to learn the following:
How to handle resolution and bitrates; dynamically for the broadcaster and recipient
Possibly how to handle connection limits - there will always need to be a limit even if its quite high
How to log chat and video; think from a possible legal perspective here; particularly with minors and predators
How to intervene as an admin (i.e. 16 year old goes on cam or undesirable user appears in chat) - how to close and block them without hassle and how to compile analysis and logs properly. Ignoring this is reckless even if you have a good process to make sure its 18+; with this type of application you'll want to prepare for potentially catastrophic occurrences and be able to handle it if something goes wrong; and be able to assist authorities; so build for it.
You'll need a sound grasp of security in this context
You'll want to know how to include client side actions to terminate connections (i.e. broadcasters moderation or filtering rules); possibly with giving users moderation ability
Then you have niceties such as text formatting, word censors, highlighting, maybe multi-cam depending on how the system works.
In a word; don't take this on commercially and try to learn on the fly if you don't have any experience with Flash and FMS else you could find yourself either unable to complete or handing over an unsafe or insufficiently suitable product.