Lydia Lei
19 min readJun 1, 2022

--

Review of <IC Lounge Hours with Lydia >

AMA with @OpenChat,IC上面的聊天软件,一款真正的Web3.0聊天工具

下文原文为英文, 由Lydia Lei采访整理,由LydiaDAO社区成员@Haha1169 翻译整理。 (如有翻译错误之处,请联系作者进行修改)

中文翻译内容:

Lydia:您好,可以就openchat给我们社区成员一个简单的介绍吗?

答:想要建立一个建立于区块链上的 whatsapp,signal,数据由用户控制而非由集团/公司控制,避免他们对数据的使用及窥探。

Lydia:你们可以介绍一下自己吗

Boolean: Openchat的其中一位开发者,大概一年前加入开发团队,我帮助其他两位成员在前端的开发工作。

Matt: Openchat的创始人之一,认识Dom很久了,很多年前便一起创业,他(Dom)在几年前让我来IC上面建设dapp,因此我找了Hamish来加入我,我们有很多工作,不只是开发Dapp,所有关于项目启动的工作我们也一手包办。

Hamish: 我们三人在之前一起工作了大概六、七年,我们在开发Openchat之前就已经互相认识了。

团队就这三人。

Lydia:哇,openchat用户那么多,但是你们才三人,太让我惊讶了。小团队,大动作

Boolean:正是因为我们的团队小,我们的进展才快,在大团队中有时候反而会拖慢进度。

Lydia:你们现在有多少注册用户呢?

答:我们目前有大概30,000的用户。在V1版本中我们拥有更多的用户,但这其实是因为当时还没有对于机器人注册的对抗措施,现在我们有验证码,因此用户数量更贴近现实了。Openchat有一种独特的架构,单个用户拥有自己的Canister,而聊天群也拥有自己的一种Canister。未来可能会出现需要电脑支持单个App有几百万Canister运行的情况,目前为止并没有完全达到最佳。因此我们现在没有什么营销活动,如果我们发展得太快,系统的速度可能会变慢。希望Dfinity未来可以解决这方面的问题 。

Lydia:我认为30,000也是很大的一个用户数目了,尤其IC社区目前还是挺小的,我觉得区块链上并没有什么类似的产品能达到你们这样的用户数量。

Matt:谢谢。

Lydia:我现在还挺经常用OC的,因此我想参与一些生态的建设,目前的用户在OC上都十分活跃,例如我的两个OC群,里面的人都很经常说话。

Hamish:我们三个也是,每天每时每刻都在用OC进行沟通,谢谢你享受我们的产品。

Lydia:你们当初开发chat软件的初衷是什么呢?

Boolean:当时我们只是想建立一些能挑战和提高IC上限的产品,以及演示低延迟、可交互性的app也可以在IC上被开发。现在就是纯粹觉得很好玩,我们很喜欢这种建立独特东西的感觉。

Matt:目前唯一能在OC上发送的只有ICP这一个币种,未来还有BTC以及我们自己的Chat币。

Lydia:如果我想向其他人发送ICP,我必须知道他们的用户名。但是如果我想对整个群组发送可被多人领取ICP的话又如何呢?

Boolean:在技术上这是可行的,虽然我们之前没有这个想法…

Hamish:现在有很多我们想要引入的、很酷的特性,例如对复数的人发送ICP,但是因为我们团队只有三人,我们只能优先处理对系统有最大影响的问题。我们甚至有想过用户可以在讯息中发送NFT。我们未来可能会有这些功能,但目前为止我们要先专注于BTC集成相关问题、以及Chat Token

Matt:我们有很多很多想要做的事情,由于我们是一个小团队,即使我们现在扩容团队到六人,也不代表我们的效率会等比例地提升,甚至有可能因为过多的会议、互动从而拖慢我们的进度。

Hamish:我们以后将会开源,SNS将会在两或三个月后到来?我不确定,到那时我们将会开源,刚刚提到的很多特性可以让社区也一起参与建设。从而让我们的三人小团队扩展到每个想参与的人。

Lydia:真是超级酷!

Hamish:我们也可以用CHAT TOKEN奖励有贡献的人,例如我们上交提案到SNS,然后奖励某人一些chat币(经过用户的投票)。

Matt:我们知道这将会非常难,因为要对抗刷奖励,例如一个人建立五十个账户,然后疯狂发讯息,从而取得奖励。我们想要每个用户只有一个独特的账户。可能会让社区帮忙抓机器人!

Boolean:我们同时也是在帮Dfinity探索SNS的可能性,没人知道未来将会如何发展。

(一阵短暂的沉默

Matt:对的,我们将会成为首批使用SNS的Dapp。将会允许chat币的持有者参与治理。

Lydia:你们对于chat币有什么后续计划,路线图之类的,如果我是用户,我如何在使用OC的时候赚取Chat币呢?

Matt: 还没有100%确定,但是我们将会创造一个尽可能阻止刷代币的行为,例如发垃圾内容或者创立多个账户。唯一可以确定的就是OC将会在未来开源,以及能阻止不好的人在其中抽取不该属于他们的利益,是挺有挑战性的。邀请系统也还没有创立,我们希望在之后一些行为例如:邀请你的朋友使用OC、创作优质内容、长时间使用OC,都能获得相应的奖励。而不是进行无意义的对话。拥有一个活跃的群组也可以被奖励。

Hamish:当我们推进到SNS那一步时,chat币将会有一个ICO,可以让人投资ICP并换取chat币。就像只有一个币的交换所一样,每个人都会以同样的价格换取chat,10ICP=1000chat,100ICP=10000chat(例子,非正式数字)

Matt:对的,投资者要做的就是发送ICP到特定地址。当销售完成后,chat会依据投资ICP的数量等比例发送chat到投资人的账户中。

Hamish:我们将会设置合理的上限,因为我们不想chat币高开低走,这将会让我们的早期投资者为难,我们计划让chat随着时间价格也上升。

Lydia:现在如果我想发送语言、图片讯息,我需要拥有ICP在账户中,可能未来可以用chat币支付存储费用?

Matt:对的

Hamish:ICP/BTC和chat在未来将能够非常容易地互相转换。

Matt:如果你是一个好的用户,你也会被奖励chat币的哟。

Lydia:我发送了图片讯息到群组里面,接收讯息的人需要付费吗

答:不用,发出者才要支付。目前IC上的存储费用:$5/GB/year,要是用户多了我们也负担不起,现在是0.1ICP可以提供100MB的空间。未来IC计划会开设存储用子网,这些子网将会有四个复制节点,现在OC使用的是应用子网,而应用子网拥有十三个节点。这代表你的全部数据都被复制了十三次,存储用的硬件也是作一般用途,存储大量数据的成本效益并不高。存储子网并没有那么高的安全性,但是所需的空间也大大减少了。硬件也会更新到存储专用的硬件,因此我们预计未来的存储费用将会大幅度降低。

收取费用的另一个目标是为了不让人创立多个账户,从而获取无限的存储空间。

我们还没有实行,但将会很快实行的是,如果你达到了你100MB的存储上限,例如你发了很多语音、图片、视频。你就不能再发这类型的讯息了。但我们之后计划让用户删除之前的语音/图片等等,以腾出更多空间,这样可以让用户一直循环使用那100MB。

Lydia: 对的,要是作为聊天软件却收取过高的存储费用,想必会给用户带来不便。

Matt:我们之后也会创造一个类似discord的用户群,也许之后可以让某些群组的成员支付存储空间,而非拥有者提供.

Hamish:我们也认为这些社群将是为OC带来收入的一个好方法,例如一个公司使用Slack,他们将要支付$5/user/month,在OC上,你可以拥有隐秘的社群(被邀请人才能进入,私密社群)。我们可以要求他们支付一些费用以覆盖我们的成本,这样我们才能为我们的免费用户提供更好的服务。

Lydia:那么这些隐秘社群的安全性是更高一级的吗?

Hamish:不管你在公开群组、私密群组或是这些隐秘社群中,你的讯息的私隐性都是一样的,我们并不采取过多的行动去确保安全,因为IC本身已经为我们提供了安全性。我们只是对每个用户发出的请求做出回应,例如每个用户拥有自己的Canister,我们便确保只有拥有那个canister的用户才能登入.

Matt:安全措施其实都是一样的,只不过你能选择群组是否是公开/私密的。

Lydia:用户能分配到自己的canister,那么该canister的所有权以及数据归谁所有呢

Matt:这个问题还需要更多探讨,现在的说法是你并不真的拥有一个canister,可能是一个群组拥有。

Hamish:我认为让用户拥有caniste的控制权并不是一个好主意,我认为没有这样一个需要,每个用户canister的控制者都是我们所谓的“用户指数”,用户指数canister将可以更新所有的用户canister。但在用户canister里面的代码,都有一个独立的用户拥有着那个canister(好绕==,时间在42:20秒左右,有技术大佬可以帮忙听听)。我们限制能调用那个canister的人就只有canister的拥有者。你并不一定需要真正成为那个canister的实质控制者,但仍然有很好的安全保证。

Matt:你或许想拥有你的数据…

Hamish:但那样怎么做更新呢?

Matt:不不不,我不是说我们应该给用户实质的控制权,但你…或许想导出你的数据或者做其他用途

Hamish:我认为最终所有canister的控制权都应该归OC所有,如果我们允许其他的人拥有控制权,我们便可能失去对该canister内容的控制,例如里面的代码什么的…反正我们会失去对目前系统的控制权。因此我们需要canister总是归我们所管理和控制的,例如用户指数、群组指数等等…但这不代表用户不能控制他们自己的数据,我们开源之后用户也将能对代码安全性进行审视。当我们有SNS后,所有的改变都将被用户投票决定,这就保证他们在现在和以后都能真正拥有他们的数据。很简单,任何对用户不利的决定都最终会被投票否决。

Lydia: 我这样问是因为有一个dapp叫Dstar,一个笔记本,他们允许用户拥有属于自己的canister并实质控制他们。

Hamish:我曾经和他们的工程团队沟通过.当然这也是一种做法,但我们OC要做很多的更新,canister之间也有很多交互。我记得他们的项目并没有什么canister的交互,因此即使一个canister与其他canister不相容也不会出现什么问题。但在OC里,如果我想向一个人发送讯息,但是我的Canister与他的canister不相容,那就完犊子了。因此根据我们的情况,我们需要牢牢地控制住canister里面的代码内容,以此让他们都互相兼容。

Lydia:对,也许聊天app和笔记 app的性质不太一样。笔记本不需要和其他人交互。OK了解。我还找到了一些很有趣的东西,例如在发错东西的时候,我可以编辑我的讯息,你们是怎么编辑发生的呢?

Hamish:额…我们怎么让他发生..

Matt:你这样问是因为你想象每条讯息都在区块链上吗..然后觉得它是不可篡改的之类的?你的这个想法是哪里跑出来的?但它的工作原理并不是这样的…哈哈。基本上canister有他的内存,然后讯息其实是存在canister的内存里面,因此你可以之后再更改它。

Hamish:跟删除讯息差不多。

Matt:在区块链层面上…是关于达成共识的,而讯息在子网上面…哈哈这太难解释了(原话)。

Lydia:我以为是因为IC的独特功能,你才可以更改讯息,其他区块链不能这样做。

Hamish:本质上,canister的状态是完全可以更改的。你可以在canister的内存上增加或删除数据,不可更改的是canister所处理的区块。本质上,canister处理区块链,但它对区块的加工是取决于app自己的逻辑的,例如修改在canister状态的过去的东西、但它不能更改之前的区块。区块本质上是输入,它们是不可篡改的,然后它们组成区块链,canister的内容是取决于app的。

Lydia:Oh,OK.

Matt:拿WhatsApp来举例吧,它并不是一个区块链产品,但它也不支持修改讯息,那是因为一些别的原因。无法编辑的讯息能被很容易地进行缓存,如果你允许讯息被编辑,那么你就得删除掉已缓存讯息…whatsapp的架构使得编辑讯息十分困难,而我们从一开始就打算包含这种功能,因此我们很容易就能引入这项功能。

Lydia:看来我需要问一下中文区的开发者才能更好地理解呢,对我来说这部分稍微有点难。包含了很多canister的很多功能。我还有一个的问题,在OC上你可以选择不同的语言,中文、英文、日文。你还可以把其他的语言翻译成自己的语言,这是怎么做到的呢?

Boolean:啊这其实是用谷歌翻译在前端完成的,我们只是实验性地加入了这个特性,因为有人想要翻译,社区里面的成员也非常国际化。我们可以看到即使在同一个聊天频道也有不同的语言,多语言翻译目前并不是靠我们就能独力完成的事情。我们只是在前端调用了谷歌翻译。而对于用户界面上的语言,我们是依赖社区中能帮忙的小伙伴,例如中文社区联系我们,帮忙建设中文的界面。还挺方便的。我们之后会奖励chat币给他们。当我们有更新上线时,我们会先进行谷歌翻译,然后让熟悉不同语言的小伙伴帮忙看看是否正确和如何改进。我们还会慢慢改进的。

Matt:未来可能会有人在IC上建立翻译服务,然后我们可以使用这项服务,那就不必依赖中心化公司了,像是谷歌。

Lydia:社区非常喜欢翻译的功能,因为很多人并不太会说英文,所以还挺需要的。还有问题就是,我目前在OC上可以发送语言讯息或者一个档案、图片,但我在聊天室中发送完这些东西后,我并不能找到所有我发出去的东西。我不知道你们有没有用过微信,微信能让我们找到所有发过的档案,像是图片等等。

Boolean:我们知道这个特性,就是有一个界面可以看到自己发过的所有档案。也有几个人问过这个问题,这当然也是我们可以做到的事情。这将是一项在未来计划中的特性。

Lydia:你们的进程真的很快呢,当我使用alpha版本的时候,还只有寥寥几个功能,还很难使用。现在看来已经越来越好了,也有很多人被吸引进来使用OC。如果还有新的特性,我相信用户也会非常开心的。另一个问题是很多通信软件都有语音通讯功能,可以直接通过软件打给某个人。你们有任何这方面的想法吗?

Boolean:语音通话或者视频通话当然也是在我们计划中的一项功能,这是一项颇为复杂的功能。目前我们使用的是WebRTC,以达到p2p layer的效果,讯息可以通过WebRTC而增强p2p的连接表现。我们可以使用WebRTC去促进语言通话,或者小规模的视频通话,但这需要一些中心化的服务,而IC目前还没有这些服务。你需要信号系统以及服务器组件才能连接其他人并通话,IC上还没有这些。

为了让你有个概念,whatsapp有一个大概由一百人组成的开发团队,他们只负责语言和视频的功能。这不是一项简单的工作,不是所有网络状况和设备都能运行的。这当然在我们任务清单中,但这将会是一条十分崎岖和艰难的道路。希望我们能做到吧。

Matt:我们首先想提供一个双向的语言通话,两个人之间可以用语音的沟通。但即使是这样一项技术也是非常麻烦的,因为你打给他的时候,他的电话应该要响起来,即使OC程序并没有被开启。对于一个网上应用来说还是十分难以实现的(OC是一个网络应用),你可以在手机上装载OC,但是它并不是一个原生的APP,它没有“让电话响起来”的这个权力。或者是一些通知啊、收到语音电话请求啊这些。没错,我们需要创建一些原生的App,当然这也在我们的计划日程中。

Lydia:在这个阶段,我认为OC已经做的非常好了,因为IC还在早期。OC肯定是目前为止最好的链上聊天软件。我非常喜欢。

众人:或许我们之后可以在OC上搞AMA呢!

Hamish:或许我们不需要让电话响起来呢,例如我们让每个人都在特定时间使用OC,这样看还挺可行的。

Matt:目前我们只有四个人在说话,要是要达到五十个人同时说话的话,那估计挺困难的。

Hamish:对啊,在说话的人还需要链接到每一个听众那里呢。要是唯独听众和讲者之间的链接断开了,那就会造成很难堪的情景。

Boolean:别剧透啦!

Lydia:上次因为luna原因,我在OC主持的会议不是太多人参与。不过OC用户还是非常活跃的,我在OC的朋友还能给我发一些语言消息。我越来越喜欢OC啦!我有两个频道,跟OC刚创立的时候相比,现在已经非常活跃了。这是一个很好的迹象,希望OC以后会有更多的特性和用户。

Matt:我们每天都做牛做马(翻译大神,跪了),就是为了能让OC都一点点变得更好。

Lydia:还有很多像我一样的人,他们都在参与建设OC的生态,希望你们未来有很多有趣的功能出来,用户也给你们越来越多的反馈,让我们一起建设OC吧!(哈哈这段也太水了,翻译大神自己加的…)

Matt:当然,我们会让这种情况成真的。

Lydia:对了,目前要是有很多未读讯息的话,我需要对那个未读讯息的数字圆圈按钮进行不断的点击,直到所有未读讯息数字消失为止。

Hamish:有小部分人也提到了这个问题,但其实有一个选项是把所有讯息标做已读,如果你开启了一个聊天室,你可以打开聊天室菜单(右上角),然后下面有一个所有标记已读的选项。

Matt:哈哈…可能谷歌翻译没有表达清楚,又或许我们应该把它变得更加明显。

Lydia:关于安全性,因为翻译功能是来自于第三方,并没有被加密,对吗?

Hamish:端到端加密是我们下个礼拜可能会研究的内容,目前没有什么是被加密的,我认为在翻译这方面..是的我们把讯息发送到谷歌API,透过HTTPS,在这方面有安全性保证。但是并没有被加密。如果你想让自己超级安全,那么最好别使用翻译功能。但我觉得这已经挺安全了的。因为我们是先发讯息到谷歌,谷歌把翻译后的语句再发还给我们…因此如果你不相信谷歌的话..

Boolean:但这仅仅关系到讯息内容而已,跟你本人是没有任何关系的。

Lydia:相当于复制一份讯息到谷歌,然后谷歌翻译那条讯息是吗?(是的

Lydia: 关于路线图,除了刚刚谈完的chat币、NFT等等功能,你们还有其他计划吗?

Matt: 我认为SNS和社区特性(类Slack)将会需要很多时间,都是规模非常大的特性。我们在OC上也出版了路线图,可以去看看。而再往后的路线图就将由社区投票、提案决定了。

Hamish: Dfinity本身也会有提案说:我们是否应该建立这个功能,如果社区同意,他们就会把那项功能添加到路线图。我们应该也可以做到一样的事、是否应该做视频通话、做语言通话,都是取决于社区。

Matt:这都是优先级的问题…

Hamish:对,我们之前做了几个投票,例如我们之后要做什么。然后我们会依照投票的结果行动。我们可以继续使用这个模式,可以不依赖SNS而使用我们内建的投票系统。

Lydia:我已经没有问题了,让我找找在场的观众问问题吧

Herbert:洗完碗来了。我很好奇,你们认为哪个地区在OC上最有活力呢。

Matt:中文和亚洲区吧

Hamish:我们只能看到我们所在群组的活动,因此一些私人群组的活动可能看不到。我们可以看到讯息总共的数量,但不能看到所在地区或者国家、语言什么的

Boolean:翻译的加入让不同地区的人有了联系,这是很好的一件事。

Hamish:对的,看到一个人用一种语言发消息,另一个人用另一种语言回复,还挺有趣的。

Herbert: 我在一个ICP 8year gang的中文社区里,那个一千七千人的群真的非常活跃。他们真的非常支持OC。

Hamish:你们想防止单个用户创立复数的账户,我这阵子也在IC上做开发,也有关注黑客松的活动。我有点好奇你们对于使用NFID、生物特征验证(指纹、虹膜)有什么想法呢。

Matt:如果你有十根手指,岂不是可以创立十个账户?哈哈哈…

Boolean:我们对NFID挺有兴趣的,如果他们的解决方法能处理问题的话我们当然会去使用。使用他们的成果而不用我们重新开发当然是很好的一件事,我们自己的解决方法在未来也会改变吧,没有东西是固定的。

Hamish:我只是好奇你们使用电话号码验证背后的原因是什么…

Bool:在某种程度上使用电话号码的只能是一个人,所以…当然人们可以去买或注册很多电话之类的,但用电话号码确实在一定程度上让我们确认一个人这种特征。这并不完美,但比什么措施都没有好。

Lydia: Openchat里面有一个“what hot” 功能,这个由决定排名呢?

Hamish:我们会看在过去24小时内加入群组的用户数量、讯息数量,发送讯息的用户数量的唯一性,确保一个人发一百條讯息的群组会排在不同人发送总共一百条讯息的群组下面,并以这些准则为评分。我们每五分钟还会有一些随机因素,对前列的群组进行排名。

Matt:我们需要在这方面做更多,让用户能更容易参与不同群组,例如热度、人数等等排名。当我们进入社群阶段,很多群组都会形成自己的社群吧。

Lydia:未来如果有广告功能,热度指标可能会有很大的用处。

NAF: 你们的挑战是什么?现在优先在处理什么呢?

Hamish:我们现在优先想把对OC的控制慢慢转移到用户身上,例如通过SNS,这是一项很艰巨的工作,我们持续和DFinity那边沟通,确认他们那边的开发进程。虽然SNS还未准备好,但我们想要保持待机的状态,一旦SNS发布,我们就能立刻进行对接。在那之后的优先级将由社区决定了。

Matt: Dfinity也在持续进步,而这也会让OC变得更好。我们也不确定IC何时才可以让数以百万计的canister在子网运行,说到营销,我们目前需要等待IC的成长。

Taiwan1: 中国用微信,台湾和日本用line。IC有distrikt对标twitter/facebook。

你们有想过和distrkt之类的app合作吗?形成一个包含多特性的app?用不同app在不同平台发讯息太麻烦啦!

Boolean :你可能想说我们去提供讯息功能给其他app是吗?

Taiwan:啊对对对。

Boolean:我们其实有想过,最近distrkt也推出了讯息功能。确实挺有趣的,我们还互相沟通过了,不过目前还没有详细的计划。现在还是主要专注于OC自己的开发。

Matt:而且让不同的App的讯息功能都使用OC,那将是非常困难的一件事。

Taiwan:但是如果做到了那就厉害了。

Lydia: 谢谢大家的参与。

--

--

Lydia Lei

Blockchain VC, focus on Dfinity ecosystems Early stage investment.