创业程序员如何 1 人 12 个工作日完成客服云第一版(MVP)开发

2019-05-29 09:13:31 +08:00
 yixiang

我是一个程序员,去年 5 月份一个人开了家公司做外包,大半年后发现自己不适合做外包,于是转做产品。

上一个尝试的方向是提高会计工作效率的产品,市面上完全没有类似产品。MVP 出来后发现完全没有市场需求,放弃。

于是这次决定尝试没那么创新,有同类产品的东西。

那就客服云吧。

不知是否正确的初步设想(为什么要做 MVP )

最初定价 70 元 / 座席 / 月,先只有基本核心功能。座席数 = 最高同时在线客服数,不是客服账户数量。之后随着功能完善再看要不要涨价。

随手一搜的结果表明:国内客服云一般 1000-2000 / 座席 / 年,有的提供免费使用。至少有部分产品 X 千起售,据说某大厂产品首次充值最少 1 万。

不难想象,可能有一些公司,免费的满足不了需求,但又不想一下投入几千,按月付费对他们相信是有吸引力的。

按月付费当然也有缺点,那就是没钱招销售上门一个个面谈,以及现金流压力大。但公司就我一人,我也不善销售不爱出门,这样正好。

有了设想,接下来需要快速做出第一版推出来,看看市场反应,决定下一步。

也就是所谓的 MVP,最小化可行产品,简单地说就是做个最简单的版本拉出去试试。

MVP 这个概念因“精益创业”这本书而流行,其核心思想可以归纳为:产品常常做出来推出去后才发现完全不行,创始人对市场的设想往往是不正确的,因此,需要尽快尽早地推出产品,获得市场反馈,验证设想是否正确。

这和我自己的经验和见闻也是一致的。

这个客服云的想法,同样有可能完全行不通。原因可能是:

因此,决定要花尽可能少的时间,做出只有核心功能的第一版,拿出去卖并看看反馈。

界面和功能设计

反正一个人,我是直接脑内画原型的。这里就直接放成品截图了。

会话界面(只支持 web 端)。用户和客服的界面都是这个。第一版只支持嵌入页面的样式,不支持挂件或新窗口打开。

客服和多人聊天时,每一个浏览器标签页对应一个客户,而不是如微信 web 版一样在一个界面和多人聊天

有多个客服时,如何调度分配工作?答案是不分配,而是从未读会话中自行认领。每次进入会话时,会清零未读消息数,这个用户同时也就会从未读会话的列表消失。进入会话 = 标记为已读 = 认领用户。只要会话窗口没有关闭,这个用户的新消息会直接被标记为已读。


很多不重要的功能直接放弃了,以下是没做的功能:

图片消息在有第一个用户时就做,文档暂时用本文代替,账户管理相关先管理员(我)代替手动操作,其它功能之后再说。

相信对于大多数的老板和工程师,是没想过可以砍功能到这种程度的。

不能自助注册就算了,密码修改都没有?续费和提醒都不做?气泡聊天没有就算了,图都不能发?

所以不是说了嘛,要花尽可能少的时间。

按照普遍的做法,后台管理 20 - 30 个页面,功能不停加加加,是不可能这么快完成的,哪怕每天通宵。

想要快,就要敢砍需求。

技术栈的选择

后端:NodeJS + Express + MySQL + WebSocket

前端:React ( preact ) + SemanticUI

浏览器兼容:IE 10+(由于使用了 WebSocket )

全是用过的,熟悉的技术栈。目标是快速产出,不是踩坑、学习新技术、或者自己爽,所以没用能兼容更低 IE 的库如 socket.io

详细开发时间表

5 月 07 日:基本框架和数据库设计

5 月 09 日:设置页面(生成 accessToken )

5 月 10 日:个人资料页面,react 编译环境,开始做会话界面样式

5 月 13 日:完成会话界面的样式,开始做会话 react 组件

5 月 14 日:继续做会话 react 组件,会话 react 组件的 mock 数据源

5 月 15 日:用户发送消息功能

5 月 16 日:查看历史消息,消息推送,断线重连

5 月 17 日:客服的会话功能,所有会话列表页面,客服和单个用户会话页面

5 月 20 日:记录未读消息数,未读会话页面

5 月 21 日:未读会话页面的数据推送,完善小细节

5 月 22 日:给用户用的 api

5 月 23 日:ie 兼容,加上客服页面,完善更多小细节

API 设计

最初的想法是只有前端 sdk,甚至一个 iframe 解决。但很快否决了这个想法。因为会有身份伪造的隐患。

假设聊天窗口的地址如下:

https://example.com/chat?accessToken=xxx&userId=1

用户只要修改 userId 参数的值,就可以伪造成另外一个用户,以他的身份发送和接收消息。

后端安全基本之:永远不要信任用户输入的数据。

为了确保用户无法伪装成另一个用户,需要后端的介入。最终设计出的接口如下:

1.获取 userToken

POST https://saas.linguang.tech/support/api/getUserToken

需要服务器在后端调用

提交数据:

{
    "accessToken": "必填,从后台获取的 accessToken",
    "identifier": "必填,用户 id,也可以直接传数字,最长 255 字符",
    "nickname": "必填,用户昵称"
}

返回数据:

{
    "userToken": "userToken 内容"
}

出错时 http 状态会是 200 以外的值,并附有 message 值表示信息。

这个接口同时也有添加和更新用户的功能。在数据库内无 identifier 一致的用户时会添加用户,nickname 不一致时会更新用户信息。

2.嵌入 iframe

<iframe src="https://saas.linguang.tech/support/frame/chat?userToken=userToken"  style="width: 411px; height: 731px; border:none"></iframe>

请将等号后的 userToken 换为上个接口返回的 userToken。同时,建议不要保存 userToken,而是在每个嵌入客服的页面中调用上面获取 userToken 的接口。

style 内的内容可根据需要调整。

3.查询未读消息数量

POST https://saas.linguang.tech/support/api/getUnreadCount

需要服务器在后端调用

提交数据:

{
    "accessToken": "必填,从后台获取的 accessToken",
    "identifier": "必填,用户 id,也可以直接传数字"
}

返回数据:

{
    "unreadCount": 0
}

出错时 http 状态会是 200 以外的值,并附有 message 值表示信息。

接口的设计并不 restful,但是简单清晰,能够满足需求。

更多成品截图

accessToken 之所以这么长,是因为附上了签名,防止暴力破解。其它所有 token 也都有签名保护。

你已经是一个成熟的客服云系统了,要学会自己整合自己

后续计划

不管有没用户,这个产品是会继续运行下去的。因为至少我自己公司会使用这个系统。当然,用户太少的话,开发重心会转到其它产品上。

如果这个 MVP 如果能吸引到 2 个以上的用户,我就觉得是初步成功了,可以对它投入更多时间精力,下一步是 10 个用户,下下一步是 100 用户。

看起来目标很低?毕竟,我的上一个产品 0 人有兴趣,0 人买单…… 也见过听过不少人,开发投入几十万,结果没有走到上线这一步。

创业就是这么回事,失败是正常的。

求反馈!

觉得这个设想如何?产品如何?是否靠谱?

你是否会考虑购买,或者推荐给朋友?为什么?

如果想和我交流,或者对这个产品有兴趣,欢迎发送邮件至 yixiang@linguang.tech

阅读更多创业经验分享,请访问公司网站: https://linguang.tech/

4262 次点击
所在节点    推广
25 条回复
zhouyg
2019-05-29 09:51:12 +08:00
你这跟美洽有啥区别吗?
yixiang
2019-05-29 10:20:13 +08:00
@zhouyg 美洽 3500 起售,所有方案年付,出来好几年了应该比较成熟。我这刚出来,不成熟,功能很少,但是月付,70 起售,适合不想年付,或者对客服系统不想投入太多的用户。
goofansu
2019-05-29 10:22:03 +08:00
对 lz 执行力敬佩,加油
graetdk
2019-05-29 10:22:51 +08:00
有点意思,让我想到了多年前的第一次做付费产品: https://greatdk.com/1134.html

但是老兄,时代变了,如果做 2B 的产品,你就不能讲自己一个人的英雄故事,因为 2B 的客户关心的是服务,可靠性保证等等,对于价格,反倒不是最关心的(有待讨论),我自己也做过不少产品,我的经验是,在国内,做细分领域的 C 端工具类产品,是最有可能赚钱的,如果想做 2B 赚钱,最好做出海产品
fe619742721
2019-05-29 10:32:53 +08:00
同行啊,只能说祝你好运了。
现在 toB 做客服的系统都很成熟了,企业选择非常多,我们公司销售出去打单经常遇到三四家竞品一起竞争,靠你个人开发真的挺难,企业也不会信任你。
你看到的年付价格是官方价格,大部分客户都会有折扣,我们公司纯在线带工单的套餐官方价格是 1200 一年,实际销售的时候很多价格能做到比你 70 一个月还要低,不是很看好你这个方向
fe619742721
2019-05-29 10:35:08 +08:00
最基本的图片文件消息,全渠道接入,客服评价管理,技能组分配流转,留言,机器人能力都没有的话,你这个真的没有特别的竞争力,一般企业哪怕只买一个坐席,也是很挑剔的,而且售后很占精力
airyland
2019-05-29 10:37:07 +08:00
动手能力很强,但是也许还需要找个设计优化一下界面?
xgfan
2019-05-29 10:37:31 +08:00
LZ 这个速度才是正常的速度,让我想起了另外一名 V 友。
https://www.v2ex.com/t/532897
boeing
2019-05-29 10:41:44 +08:00
问:世界上最好的语言是什么? 答:php
o0
2019-05-29 10:42:01 +08:00
已收藏 lz 链接,提个小建议,不愿花钱买美洽的同样不会买你们,愿意花你这个价格的也可以咬咬牙对比一下美洽了。
PressOne
2019-05-29 10:45:40 +08:00
楼主加油!技术人员确实容易忽视或不擅长销售,技术成果转化缺业务推动,容易是一条腿走路。我觉得 MVP 精益开发的思路有点过时了,那时掌握技术的人少,等待体验的用户多;现在掌握技术的人多,各种创新产品消耗了普罗大众的体验心态。现在用户选择那些久经考验,大厂可信任的产品,降低不确定性风险。建议楼主还是找一个搭档做业务,技术,销售和服务一起搞。
goofansu
2019-05-29 10:56:56 +08:00
@graetdk 说的对,toB 要先了解需求,自己埋头苦干没什么用,而且销售才是大头。我之前想做一个类似互动吧的活动发布 SaaS,差异化是自有品牌,比如有自己的小程序,收费便宜。后来咨询了一家机构的老板,老板表示互动吧足够用了,提现也不贵,主要是不差这点钱。
totopper312
2019-05-29 11:00:43 +08:00
只有能做出产品就能挣钱
xuhaoyangx
2019-05-29 11:16:40 +08:00
,身处客服行业。楼上几位讲了很清楚了

在线客服这个行业是 2b,公司可不在意你用什么技术栈,你讲你怎么怎么滴没有用。2b 需要在线客服,需要的是解决方案,能满足实际需求。在我看来美恰 融云 等,只能满足聊,分配或者叫路由做的差,业务层接入差,几乎没有对客服人员的绩效管理等等...

@fe619742721 #5 看到同行 2333
yixiang
2019-05-29 11:43:29 +08:00
@graetdk
@fe619742721
@o0
@PressOne
@goofansu
@xuhaoyangx
@xgfan
@o0

感谢反馈,感谢分享行业经验,感谢建议。确实现有客服系统很成熟了,正面肯定竞争不过,所以才希望试试月付能不能算一个好的切入点,要是没有切入点的话就考虑知难而退。不准备如 https://www.v2ex.com/t/532897 贴子里的老哥一样耗两年。

@airyland
会不会优化界面……就看有没有用户有兴趣了。。
fe619742721
2019-05-29 12:27:30 +08:00
@yixiang toB 的产品,月付不能算是企业在选择产品时的考虑点,真的。。会考虑引入客服系统的企业一般都是有一定规模的,需要客服系统支持,这种企业考虑的是稳定、易用、安全、价格,没有人愿意去为一个 demo 形式的产品月付,每个月都要考虑要不要续费吗?那我现有的座席操作习惯,渠道引入开发,现有的数据转移,都是大问题。除非你面向的是个人网站的客户,但是这种的话免费的也不少
yixiang
2019-05-29 13:15:01 +08:00
@fe619742721 有道理。我也有朋友给客户用的是美恰的免费版。月付的点倒不是省钱,而是减少客户在购买时承受的风险。当然同样的,不成熟的产品也是风险,我就担心这个风险可能更大一些。想象中的目标客户是有需求但不怎么大的,比如创业公司。如果按照你说的一般有需求的都是有一定规模的企业的话,那确实对他们这个产品不太靠谱。

再次感谢分享经验,作为开发,做这个时没调查过市场,完全不知道市场需求是怎样的。
sun019
2019-05-29 13:43:05 +08:00
lz 成都的 又时间交流下哟。 给你发邮件了。
crackhopper
2019-05-29 14:48:06 +08:00
还是需要产品差异化,如果功能和体验上没什么特别的,很难做起来。

年付月付本质来说并不是很难改动,那么为什么很多公司选择年付呢?并不是说月付就一定有优势。

目前主要就是推广了,这种产品没有推广估计很多人也不会知道,更不会购买。看起来像是 toB 的产品,我觉得可以尝试卖一下,应该不那么好卖,但是多接触了客户你才能明白客户想什么。可能都需要免费让别人使用来帮助你弄清楚需求,差异化产品设计,提升竞争力。
crackhopper
2019-05-29 14:50:30 +08:00
做是肯定能做的,只不过不能这么简单的创业成功。除了技术方面的其他方面要更深入挖掘才是。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/568626

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX