本
文
摘
要
题外话:感谢大家的留言。上一篇文章(该让谁升职?该裁掉谁?)引发了一些争议和讨论,各种观点交织在一起,很赞。文章本就是表达个人观点的一个手段,每个人都应独立思考的权利,所以我并不奢求我的每一句话都得到赞同。另外,有人提议再多写写职场建议,没问题,我已经想好了一个题目,不过不是今天讲。
今天趁着使用的热乎劲还没有过去,分析http://join.me这个产品。
昨天下午美国的同事做training,需要用到桌面共享软件。他说用join.me,我说用公司标配的Microsoft lync。于是昨天早上我们就一起做了个实验,结果发现join.me这样一个名不见经传的小网站,就桌面共享而言,在速度和易用性上,甩开lync好几条街。于是我花了点时间,研究了一下这个软件。
产品功能
http://join.me的产品功能非常简单,一入手感觉非常惊艳,和一般的互联网软件差别很大。首先,你不用注册任何账户,不用任何社交登陆就可以免费使用(这个决策从商业的角度来讲可能有些冒险,但从产品和用户的角度来看,简直太赞了);其次,只有屏幕共享的发起人才用下载客户端(这无法避免,毕竟屏幕截图),其他访问者只要有浏览器即可使用,再次将使用门槛降低到近乎为零。
我们看看要共享一个桌面,你要做些什么操作:
首先,打开join.me.app(osx上)。这是废话。
然后,发起共享(选择share)。
接下来,选择要share的部分(整个屏幕,还是某个窗口)。注意在这一步时已经生成了一个链接:https://join.me/257-501-445,用于共享。
最后,将这个链接发给任何你想共享桌面的人即可。
参与者收到链接,在浏览器里打开,就能看到共享的桌面。
http://join.me还提供了ios/android版,不过貌似只能用来接收屏幕共享,无法共享屏幕,功能还相当弱。下图是我iphone 4s上看到的mac上的桌片共享:
盈利模式
http://join.me有两种盈利模式,个人pro版软件订阅(每月USD13-19),和企业服务。
相对免费版,pro版有很多功能:
而企业服务,则奔着解决方案去的。
实现手段
作为开发者,看到新奇的东西很容易忍不住去思考这样一套系统是怎么做出来的。其实,它的核心功能实现起来并不困难(感谢开源软件)。
屏幕录像使用ffmpeg和vlc就可以。ffmpeg在linux下是个逆天的软件,在osx下就不那么风光了,搞个屏幕录像还要靠vlc帮忙。
本地录制的屏幕内容需要传输到服务器上,以便于向各种终端转发。神马?p2p?咱学学http://join.me,不增加其它用户的使用成本,让他们就用浏览器访问好不好?
这个靠ffmpeg的ffserver就可以搞定。
最后再写个前端,一个屏幕共享软件就搞定了。注意如果要用html5 video tag来承载video的话,mp4/ogg是比较好的选择(支持的浏览器多一些)。
如果你嫌ffserver的解决方案不够理想,可扩充性差,那么,可以试试github上的这个nodejs项目:j *** peg。它可以结合websocket做broadcast,还可以录像。好处是你可以用javascript比较轻松地进行扩充。毕竟,能看懂ffmpeg并为其扩展的人还是很少的。
小结
软件要尽可能简单,尽可能免去用户不必要的麻烦。以用户为中心并不意味着必须要注册。ID只是用来鉴别用户的一个手段,如果不用做营销,邮箱地址和自动生成的ID有多大区别?生产者需要native app,消费者可以直接用browser,这样很好。对http://join.me来说,两群人重合度很高,消费者在使用后很容易转换成生产者。后记:http://join.me在使用几次之后终于告诉我需要注册才能继续使用。虽然免注册做得不够彻底,但这个时候提醒我注册,我已经基本被Lock down,不会有任何抵触了。
如想搭建类似的服务,可戳下面的链接,参考这篇博客(对不起,又是英文的):HTML5 LIVE VIDEO STREAMING VIA WEBSOCKETS
人生』(搜索微信号 programmer_life)。每天一篇原汁原味的文章,早8点与您相会。