12 ms·
Introducing Opencall
I've been bootstrapping a tech start-up for the past year (having spent $25k+ on development of our platform plus all the other expenses that come with setting up and running a business) and last week a major competitor entered our niche market.
The money for the start-up was coming from my own pocket and funds were/are running low - it was crunch time, do I throw my last remaining cash trying to catch up with this competitor, or do I shut down.
I asked advice from a number of different sources, and the overwhelming response was to pivot the business by open sourcing and selling services around the platform such as hosting.
After a long weekend of thinking, designing, planning and building, I give to you:
* Opencall http://www.ocall.org
* GIT Repo: https://github.com/calltrackingasia/opencall
It would be great to hear your feedback and to find out if anybody would be interested in becoming part of the project.
- gargarplex 13y agoJust another reminder: In adult life, usually best to post from a position of strength, or people will dump on you.
- X4 13y agoInteresting that you think that, do you have any HN-Show examples to support the point, or other sources? Not to be pedantic, I am really just curious.
- scottybowl 13y agoJust adding a comment to make it easier to click the links: Opencall http://www.ocall.org http://www.ocall.org GIT Repo: https://github.com/calltrackingasia/opencall https://github.com/calltrackingasia/opencall
- blister 13y agoLooks pretty sweet. Do you have a style guide for contributions? There are a lot of low-hanging fruit here that would be easy for contributors to get in and start making pull-requests.
- scottybowl 13y agoThanks - no I don't, any tips or resources on the best way to get this prepared?
- blister 13y agoI usually just start out with an existing style guide. Maybe take something like the PEAR style guide [0] and distill it down to the basics. You basically just want people to know how you want things formatted and what is an acceptable structure for commits. Looks like a pretty cool system. My products are all Twilio-based, so I could see a lot of value in making your system telephony-agnostic instead of relying on Plivo. Sweet product though. [0] http://pear.php.net/manual/en/standards.php http://pear.php.net/manual/en/standards.php
- scottybowl 13y agoThat's really useful, thank you. The system will work with Twilio if you override the default XML responses when adding an advert, but for now that's not built in so I haven't officially put that it supports Twilio.
- mixologic 13y agoWhat is call tracking?
- danudey 13y agoThe product is for tracking inbound calls, presumably leads. From the looks of the screenshots, you can see who called, how they were routed, and listen to the recordings. From the site: * Login to your installation of Opencall and add the numbers you’ve just purchased on Plivo. Then define your rules (e.g. when someone calls number X, forward the call to my mobile number or to my SIP address).* * When someone calls your Plivo tracking number, their call will get instantly forwarded to the number or SIP address you defined in Opencall. At the same time, Opencall will log statistics about the call and make a recording of the conversation (if you enable this feature).* So basically, it's call routing and recording, to allow people handling inbound calls (e.g. customer service, inbound marketing, etc.) to track their calls, stats, information, review previous calls, etc.
- scottybowl 13y agoIn sales/marketing language: it allows companies to boost their sales & ROI, reduce advertising budget wastage and optimise their teams performance on the phone by tracking inbound phone calls from their customers.
- mseebach 13y agoNo, those are all outcomes. What does your thing do to achieve those outcomes? I'm sorry to be so blunt, but if that's your elevator pitch, well, right there is your problem.
- scottybowl 13y agoIt depends on who I'm pitching to - if I'm talking to a CEO of a company, they're less interested in how it works and more interested in how it's going to make/save them money. What is call tracking? It lets you track statistics and recordings of inbound phone calls (usually from your customers) so that you can identify trends, strengths, weaknesses and understand the performance of your sales and marketing campaigns. Time of day, day of week, failed calls, total calls, caller id, caller country, call duration, hangup reason - all these stats and more are available.
- kevonc 13y agohey scott, met you before when I was working on Sponfed. kudos to open sourcing the software, wish you all the best buddy!
- scottybowl 13y agoThanks very much! Ping me if you'd like to catch up for a coffee :)
- vcherubini 13y agoYou have some usernames and passwords (to what looks like production servers) sprinkled throughout your app. May need to change those ASAP, wipe your history, or something. Lots of suggestions: * Don't write your own cron scripts, use Symfony Commands. * Delete the Acme Bundle. * Don't store your vendor directory in Git! Completely unnecessary and waste of 47MB. * Don't commit parameters.yml, that's what parameters.yml.dist is for. * Use a migration tool (Doctrine Migrations are fine) instead of one big SQL dump. * Not sure what mongodb/example.php is for. * Why is all the plivo stuff in web/plivo/ instead of being a callable controller? * Are you manually generating your Doctrine entities? * Don't commit your asset directories (they should be symlinks). * No need to use PHPMailer (or include the entire project in your repository), Symfony comes with Swiftmailer which is great. * Same with src/Phone, add that library through Composer (https://packagist.org/packages/practo/libphonenumber-for-php https://packagist.org/packages/practo/libphonenumber-for-php). The design looks great, but I wouldn't trust a lot of this (especially after seeing how many hosts and usernames and passwords you left scattered about).
- elwell 13y ago> Don't store your vendor directory in Git! Completely unnecessary and waste of 47MB. I find that it simplifies versioning as well as making it so you don't have to download individual dependencies. What is your suggestion otherwise?
- moron4hire 13y agoI'm sorry to be pedantic, because I acknowledge you are in a tough spot, but just because you put $25k into the development doesn't mean the code is worth $25k.
- michaelmior 13y agoI don't believe the OP ever said the code was worth $25K.
- moron4hire 13y agoThe original title of the post was something along the line of "I just open-source $25K-worth of code." It's since been ninja-edited.
- rds2000 13y agohttps://github.com/calltrackingasia/opencall/blob/development/LICENSE https://github.com/calltrackingasia/opencall/blob/developmen... This is hardly giving it away to the world. It's making the source viewable, but it feels it's not about open code, but someone who spent $25k developing a platform (often more in many cases). Open source has this thing where people refer to it as free, in reality, this is just like someone begging for us to pay their monthly fee and give them free commits. Why? For something anyone here could do with a CRUD app? ... If I used your software commercially, I can't even link it to my own software. This gplv3 stuff shouldn't be allowed to be thought of as free, it should be thought of low trickery. Read the license, imagine if this was your business. It looks as if someone wants the world to program their software. But it's not the world's software, it's their software, their control, their power. Not yours. Not the worlds.
- dfc 13y agoIf you can edit the post it would helpful if you included something to let people know what the project is. Something like: Opencall: open source call tracking software Self-host your call tracking solution – own your data, cut your costs and track calls in any country.
- yesimahuman 13y agoAny market that is worth entering will have competitors. Look at what you are doing as a strategy not a last-ditch effort. Open source is a very valid way to build a business in a market with entrenched proprietary competitors, and it's exactly what my company is doing right now. I wish you luck, and go sell some software!
- X4 13y agohehe, your server is HN'ed :) I'd replace the homepage (temporarily) to the absolute minimum during the time it's bombarded with requests, unless you have a vserver/cloud-host that you can scale up. Or change the server your DNS records point to, if you use CNAME, to one at rackspace, github homepage, or anywhere else with a minimal homepage. But I'm sure the guys @HN have better tips :) I don't know much about legal stuff and licenses, but I would allow anyone to use your software as long as it's code is shared, except for enterprises. Companies who want to use it commercially and have more than 1-5 employees would need to obtain a license. Open Source doesn't mean that you cannot put a price tag on it. But as you said, prepackaging the stuff as a deb/rpm and allowing white-labeling for enterprise customers would be a good way get some money back from this. Just saying, but you could, if you wanted to, add advertising into the opensource product and disallow it's removal unless a license is obtained. If you were an SaaS, you could collect data and metrics, that you could monetize, but I'm glad you aren't anymore :) @pg I think there should be a sticky informing website owners on howto react, when their website is HN'ed. Somewhere in the footer of the homepage or so.. This is happening a bit too often and many aren't prepared for such high traffic peaks.
- jarofgreen 13y ago> Companies who want to use it commercially and have more than 1-5 employees would need to obtain a license. > but you could, if you wanted to, add advertising into the opensource product and disallow it's removal unless a license is obtained. That's not Open Source. The phrase Open Source has definite meanings and a strict definition, and people have a set of expectations when they hear that phrase. http://opensource.org/osd-annotated http://opensource.org/osd-annotated Granted, you certainly can do what you are proposing, but - That's a very different business model from an Open Source one, as commonly discussed and understood. - You really shouldn't call it Open Source. This is important beyond mere pedantry as people spent a lot of time building up the Open Source movement with strong principals, and we all benefit immensely from it. If we allow the Open Source label to be ruined by things like this we will all suffer.
- X4 13y ago@jarofgreen nice of you, but I think you got me a little wrong, or I wasn't clear enough. My main message regarding opensource was: > Open Source doesn't mean that you cannot put a price tag on it. The other things could be done, but you're right, they don't fall under the strict definition of opensource. It would require a different license :) Oh, btw, the op should take a look at https://pkgr.io/ https://pkgr.io/ and https://github.com/jordansissel/fpm https://github.com/jordansissel/fpm
- martin_ 13y agoThis seems a lot like OpenVBX[0] just powered by Plivo, not Twilio[1]. OpenVBX is also open source. http://openvbx.org http://openvbx.org http://twilio.com http://twilio.com
- thawkins 13y agoI notice the only inbound telephony provider is plivo, do you have plans to support asterix or dialogic.
- bevenky 13y agoPlivo also has an OSS offering which is based on FreeSWITCH. So it could work with that too. Disclaimer: I am part of the Plivo team.
- thawkins 13y agoI notice the only inbound telephony provider is plivo, do you have plans to support asterix or dialogic.
- deleted 13y ago[deleted]
- matthewarkin 13y agoAny reason why contributions on the ocall.org site goes to a contact form? A change to BSD instead of GPL would be nice too :) I've been meaning to build something similar so I'll probably be bit of a contributor
- scottybowl 13y agoIt would be fantastic to have you as a contributor - please feel free to email me on scott.bowler@calltracking.hk so we can talk things through. At the moment we don't have a community as we only launched the project today. The form is a placeholder while that community gets established, and will hopefully be replaced with a forum & docs very soon.
- X4 13y agohttps://github.com/discourse/discourse https://github.com/discourse/discourse ain't bad for forums and http://daux.io/ http://daux.io/ and http://apiblueprint.org/ http://apiblueprint.org/ look like a good way document your software
- superlucy 13y agoGreat stuff @scottybowl! You can test the system live by signing up and getting a free number at https://manage.plivo.com/accounts/register/ https://manage.plivo.com/accounts/register/
- einhverfr 13y agoA couple points. 1. The advice to pivot and offer it open source is good. Kudos to you for following up on it. This gives you some free marketing that you might not otherwise get. 2. It isn't quite clear to me how to integrate other telephony products based on the discussion. If in addition to http, you could support either IAX2 or SIP, this might provide significant improvements in terms of reachable market, because you could integrate with existing soft phones and open source PBX's, including both Asterisk and Bayonne. Those two things strike me as being things which might increase your market reach significantly.
- scottybowl 13y agoSIP is currently supported on the outbound leg. Definitely the plan to integrate with other telephony products and hopefully by going the open source route we'll be able to make it happen sooner rather than later. Thanks for the feedback.
- beachstartup 13y agojust a general comment: your instincts and advisers were probably right - if you can't continue past 25k without serious reservations, it's best to open source it and build a business around the project. my cofounders and i spent upwards of $250k cash (on top of our own time value) of our own money before we gained any sales traction. an order of magnitude higher than your pain threshold. if you weren't prepared to spend that much either from earnings or savings or equity, i'd say you made the right choice.
- BorisMelnik 13y agogreat idea, the industry needs this. don't personally know a lot about the industry but I know I need to learn more about it.
- ElDiablo666 13y agoThank you so much for releasing this as free-as-in-freedom software! Since this appears to be server software, I'd like to recommend switching to the Affero GPL; its only additional requirement over GPL is that network operators must release the source version they're using. This way, the software remains free and no one can take your hard work and refuse to to share it with your users. Good luck selling your services!
- scottybowl 13y agoI wasn't aware of Affero GPL, will look into it. I've had some conflicting advice when it comes to licenses. Some are recommending BSD as it's more permissive (i.e. big companies can develop it in house without having to give back to the community). From a business perspective, that might be easier to sell to some companies, but from a community perspective it's not ideal. Would be interesting to hear your thoughts.
- jarofgreen 13y agoYou will definitely get conflicting advice on this. :-) AGPL/GPL: If you do this people in the community may like this. But you will have problems selling commercial licenses to people. To get around this, many companies do a dual license model where you can get the code under AGPL for free or pay for a commercial license. However, to make this work, you will have to get all your contributors to sign a contributors agreement giving you some rights. Some will hate this and won't. BSD: There is a risk that an outside company will take code and profit from it without giving back. Some contributors will avoid because of that. But then, no issues folding community contributions back into your commercial codebase. Contributor Agreement much simpler and less controversial. I personally went the BSD route for http://ican.openacalendar.org/ http://ican.openacalendar.org/ - I like simplicity.
- belorn 13y agoIt all depend on what one want to do, and what ones business model is. Looking at the Opencall website, your are only selling it as a hosted service and not as a product. Both GPL and BSD will allow someone to create a competing hosting service and add any proprietary addition to it without having to share it back. AGPL would make sure that any such addition is shared back, so your business will always has access to improved versions. Contributor Agreement is irrelevant since you won't need one if you just do hosting.
- vladimirralev 13y agoI am in this business and I think the general execution seems reasonable if it works as advertised. However you need to secure at least one big partner or a few smaller ones. May be Plivo themselves, they should be interested to help out promoting a good product based on their platform. You will need funding to develop the whole thing into a unique appealing product with some differentiators - some harder technical features, better artwork/UX if you will. My advice is don't put more cash into it for now, go talk to Plivo, talk to a few call center companies see if anybody wants to be a partner on reasonable terms. In the mean time look for a team and funding. Not freelancers, a few guys part time, working for shares is better for VC.
- scottybowl 13y agoThank you - this comment is buried but it's excellent advice and I will be taking it seriously. Currently chatting with one of the co-founders of Plivo so watch this space :)
- mekael 13y agoFirst look I'd suggest is separating the DDL and DML into separate SQL scripts, the mysql dump is scattered and hard to read.
- philfreo 13y agoWould be curious to see/know which major competitor you're referring to
- entelect 13y agoIm sure a quick Google search will show you ;)
- scottybowl 13y agoAs my account is new I'm having trouble replying to comments ("You're doing that too much!"). I promise I will reply to you all - thank you for all your fantastic feedback and security tips. We've started implementing some of these changes.
- loci 13y agoThe company I work for offers a service for Germany based customers where they can register a calltracking number and get usage analysis - all for free. Check it out if you're interested: https://heldennummer.de https://heldennummer.de
- X4 13y agoDoes it have any affiliation with lieferheld.de/ ?? The reason I ask: I hate their, and their competitor's pervasive and mad behavior, when it comes to pitching their own product, whilst DDoSing etc. their competitor.
- isawczuk 13y agoIMHO (I'm just a stranger from internet) 1. Call to action is hidden. Your goal it to sell SaaS service? 2. Price comparing plans should be easier, less text more icons. ex. http://uxmovement.com/content/7-useful-design-strategies-for-a-successful-pricing-table/ http://uxmovement.com/content/7-useful-design-strategies-for... 3. Too many features. 3 features is optimum, 7 is max. (except selling to corporation, then you need a datasheet). look at https://training.kalzumeus.com/newsletters/archive/enterprise_sales https://training.kalzumeus.com/newsletters/archive/enterpris... 4. Products that do everything, are not successful. 5. Who is your customer? Maybe put remaining money in advertising. 6. Set it as beta and put on http://betali.st http://betali.st or other similar sites. Get more feedback, involve users, because you don't need one time customer you need audience (loosely quoting rework) 7. Where is competition there is a market. Competition is the greatest thing on the earth. Maybe you could beat them with the best customer service ever? Or with openness and community around your product? or your product will be super easy with minimum features? or will not require hours of trainings
- bks 13y agoSo here is the interesting thing. I am an ACTUAL user of this type of software and a paying SUBSCRIBER to two different SaaS call tracking platforms. I run a marketing agency and have almost 200 clients using call tracking on the twilio platform. Firstly - thank you! What an awesome contribution to the community. I cant comment on code quality or license attribution but I can tell you that it is an extremely valuable service. I have not downloaded and installed your code, but I will - here is where I see the market need these days, and its far greater than just source attribution. Google has done a great thing by encrypting searches, but it is terrible for website owners and marketers because it is so difficult to prove ROI. The place that we use using this successfully is by using the UTM source information of a click to change the incoming phone number on the site using dynamic number insertion - this helps clients have a justifiable ROI to continue to use the service. If you have questions about how I am using this, please feel free to let me know - but kudos to you on building and open sourcing it.
- touristtam 13y agoCouple of coding advise for Symfony2 application: * use repo method in repo classes, * separate and contain related code logic into bundles: you should have your code like this: /src/OrgName/BundleNameBundle