不点 发表于 2017-11-27 18:39:35

JS版ipmsg飞鸽传书,如何运行?

本帖最后由 不点 于 2019-5-9 18:51 编辑

找到了一个 JavaScript 版的飞鸽传书软件:

https://github.com/MrRar/ipmsg-cli

谁能说说如何运行它?

2019-05-09 更新:又找到一个 JS 版的 udp 消息软件:
https://github.com/vijayee/udp-messages

另外,发现了一个 udp 传文件的软件(编程语言是 C 语言):
https://mtp-udp.sourceforge.net/


----------别沉了,请帮顶-----------

nttwqz 发表于 2017-11-27 18:49:37

使劲儿顶,把天顶个窟窿!

青青草 发表于 2017-11-27 19:09:49

顶!

不知 发表于 2017-11-27 20:27:41

首先,安装Node.js(http://mirrors.ustc.edu.cn/node/latest/),windows就根据位数选msi文件安装,直接安装完就可以用了.
然后下载github里的文件,用npm安的时候好像要报错.

直接用node index.js运行就行了。看样子是个客户端。


不点 发表于 2017-11-27 20:38:53

wintoflash 发表于 2017-11-27 19:28


太感谢!烦请继续诊断错误:
firefly@firefly:~/ipmsg-cli$ npm install
npm WARN Invalid version: "1"
npm WARN ipmsg-cli No description
npm WARN ipmsg-cli No repository field.
npm WARN ipmsg-cli No README data
npm WARN ipmsg-cli No license field.
firefly@firefly:~/ipmsg-cli$ npm start
npm ERR! Linux 4.4.16
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "start"
npm ERR! node v4.2.6
npm ERR! npmv3.5.2

npm ERR! Invalid version: "1"
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!   <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR!   /home/firefly/ipmsg-cli/npm-debug.log

不知 发表于 2017-11-27 20:41:55

本帖最后由 不知 于 2017-11-27 20:43 编辑

wintoflash 发表于 2017-11-27 20:40
我这边直接node index.js报一堆错误。。。

我在windows 10安的9.2的,安完就用。没做其他的操作。
可能是linux的还需要安啥吧。windows下的可能已经打包好了。

不点 发表于 2017-11-27 21:12:40

谢谢两位大人。我现在没有 Windows 环境,是一个 ARM 的 Linux 环境。Linux 下好像是 nodejs 命令(我猜它等价于 Windows 的 node 命令)。

请继续诊断:

firefly@firefly:~/ipmsg-cli$ nodejs index.js
░▒▓Ipmsg CLI▓▒░
> /home/firefly/ipmsg-cli/index.js:101
                nickName: os.userInfo().username,
                           ^

TypeError: os.userInfo is not a function
    at Socket.<anonymous> (/home/firefly/ipmsg-cli/index.js:101:16)
    at emitNone (events.js:67:13)
    at Socket.emit (events.js:166:7)
    at startListening (dgram.js:121:10)
    at dgram.js:220:7
    at nextTickCallbackWith3Args (node.js:452:9)
    at process._tickCallback (node.js:358:17)
    at Function.Module.runMain (module.js:444:11)
    at startup (node.js:136:18)
    at node.js:966:3
firefly@firefly:~/ipmsg-cli$

不点 发表于 2017-11-28 00:00:14

wintoflash 发表于 2017-11-27 22:17
https://stackoverflow.com/questions/45846222/nodejs-os-module-unable-to-use-userinfo
添加const...

报错如下(此后执行 nodejs index.js 时仍旧出现以前的错误):
firefly@firefly:~/ipmsg-cli$ npm install user-info

> spawn-sync@1.0.15 postinstall /home/firefly/ipmsg-cli/node_modules/spawn-sync
> node postinstall

sh: 1: node: not found
npm WARN Invalid version: "1"
npm WARN ipmsg-cli No description
npm WARN ipmsg-cli No repository field.
npm WARN ipmsg-cli No README data
npm WARN ipmsg-cli No license field.
npm ERR! Linux 4.4.16
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "user-info"
npm ERR! node v4.2.6
npm ERR! npmv3.5.2
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn

npm ERR! spawn-sync@1.0.15 postinstall: `node postinstall`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the spawn-sync@1.0.15 postinstall script 'node postinstall'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the spawn-sync package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!   node postinstall
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!   npm bugs spawn-sync
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!   npm owner ls spawn-sync
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!   /home/firefly/ipmsg-cli/npm-debug.log
firefly@firefly:~/ipmsg-cli$

slore 发表于 2017-11-28 01:30:45

linux这套库依赖方式真心不好用,有网络吧,有墙各种超时,再在没网络环境更难搞。
明天到公司试试。

不点 发表于 2017-11-28 17:33:21

不知 发表于 2017-11-27 20:27
首先,安装Node.js(http://mirrors.ustc.edu.cn/node/latest/),windows就根据位数选msi文件安装,直接安装 ...

谢谢!太高兴,今天在 Win7 下很顺利,按你的方法成功了。

不点 发表于 2017-11-28 20:21:25

wintoflash 发表于 2017-11-28 18:34
npm ERR! node v4.2.6
npm ERR! npmv3.5.2



node 和 npm 的版本,我暂时不知道怎么安装新版的。

Ubuntu 软件中心,只能安装这一个版本。让它更新,也没能更新 node。

我这是 ARM64 的 Linux 系统,这种系统目前缺少软件支持。

不过,没关系,我暂时只用 Windows 来测试这个 JS 版飞鸽软件就够了。

谢谢你指出毛病、症结,让我明白了缘由。

谢谢各位顶帖帮助的朋友。

顺便说,我希望有人继续开发 JS 版的飞鸽。最好能把命令行改成图形界面。



slore 发表于 2017-11-28 21:26:30

本帖最后由 slore 于 2017-11-28 22:35 编辑

不点 发表于 2017-11-28 20:21
node 和 npm 的版本,我暂时不知道怎么安装新版的。

Ubuntu 软件中心,只能安装这一个版本。让它更新 ...

图形界面?原版不行?还是要跨平台?
或者希望是 web页面 的 浏览器版?

如果是web版的话,建议直接用其他开源聊天系统,很完善,
docker加载镜像起个服务就行了。推荐 zulip。

不点 发表于 2017-11-29 05:50:18

十分感谢 slore 指引到 web 版软件。如果有时间的话,我一定试试。

往往我们的想法和行为受到环境的约束,不能顺利实现,需要迁就,需要等待。

IPmsg原版是日本人写的。虽然开源,可还是有相当大的缺点。

在飞秋已经占据统治地位的情况下,别的软件要想生存,必须与飞秋兼容。看看易信为何无法撼动微信?因为微信已经统治了这个领域,外来者不兼容,很难取得立锥之地。

日本原版ipmsg,首先是不能跨平台,其次是新功能开发毫无吸引力。导致目前大家依旧使用4年前的飞秋软件。尽管飞秋早已停止开发,而且闭源,但在Windows下仍旧牢牢占据统治地位。这是个活生生的例子,表明了一个正在活跃开发的开源软件,却不如一个早已停止开发的闭源软件。存在皆合理。为什么 Linux 干不过 Windows?道理大同小异。

我个人喜欢开源,也喜欢跨平台的软件。JS 就能很好地满足我这个要求。高楼大厦是从一砖一瓦建立起来的。不要怕步子慢,就怕你不干。不要怕失败,就怕你走错了方向。多年以前,我主持开发 grub4dos,那时候有人鼓动我更改 grub4dos 的名字,我拒绝了。因为我知道,那是折腾,那是方向性错误,根本不能做的事。有人鼓动我申请 grub4dos 商标,我也拒绝了,理由一样,那属于折腾,不是正确的方向。

我不怎么了解这方面的技术,我不敢说,JS 就是跨平台的正确方向。但我觉得 JS 还算是个不错的方向吧。

因此,我希望有懂行的人能够继续开发 JS 版飞鸽软件。如果有人这么做的话,我作为一个忠实的测试者,肯定给以坚定支持。

slore 发表于 2017-11-29 10:59:48

不点 发表于 2017-11-29 05:50
十分感谢 slore 指引到 web 版软件。如果有时间的话,我一定试试。

往往我们的想法和行为受到环境的约束 ...

这个还是看用途吧。我暂定认为是局域网使用对吧。
工作性质注重讨论内容呢,还是就是闲聊?

工作内部我们现在就是飞秋,我个人是用ipmsg,结果他们都用飞秋,飞秋又不是UTF-8编码,
开发环境有很多语言系统,导致乱码,给ipmsg打过转码补丁,根据聊天的人的IP,再判断是不是飞秋,
从uft-8转成对应的编码。要自己维护一个列表还能忍,文件互传有问题,再有就是不支持“组”,
分别给个人发消息很麻烦,后来我也改成飞秋。

再后来使用web的zulip的(全平台,全设备支持),讨论性的交流大家都转到这个上面,
飞秋沦落到只传文件了。
图片你也看到了,表格,图片,表情反馈,代码高亮,公式等,
对交流内容的表达比纯文字强不知道多少倍。
另外飞秋所有聊天内容都在一个文件保存,检索很不方便。
zulip这类web系的都是数据库速度很快,而且聊天像微信一样是可以分群组的,
每个群组下面还可以分不同的讨论话题,讨论的事情是连续的很方便。
飞秋所有内容都在一个会话中,你一句这个事他一句那个事,信息不连贯。

》我希望有懂行的人能够继续开发 JS 版飞鸽软件。如果有人这么做的话,我作为一个忠实的测试者,肯定给以坚定支持。

不过是个socket通信,没有什么复杂的,建议有时间自己改比较好,毕竟
只针对自己的需求比较多,其他人维护的话需求不一致,不适用广泛人群没有意义。

PS:飞秋好像也只是Windows版不跨平台

不点 发表于 2017-11-29 15:20:13

slore 发表于 2017-11-29 10:59
这个还是看用途吧。我暂定认为是局域网使用对吧。
工作性质注重讨论内容呢,还是就是闲聊?



谢谢。

抱歉,zulip 的 web 版不存在,它指向 Linux 版。并且在 Linux 版里面,我也找不到 for ARM 平台的版本。

slore 发表于 2017-11-29 16:45:04

本帖最后由 slore 于 2017-11-29 17:13 编辑

不点 发表于 2017-11-29 15:20
谢谢。

抱歉,zulip 的 web 版不存在,它指向 Linux 版。并且在 Linux 版里面,我也找不到 for ARM 平 ...

这个是一个服务。不用非要在你的ARM机器上跑。你网络上的公共的机器。
另外,现在都是服务都是容器化,docker启动一个几十MB的sentos虚拟机把web服务运行起来。
我看下docker是否有ARM版。

首页的那些链接都是客户端,浏览器可以直接看,但是他还单独做了各个版本的APP。

服务是点 start and price(有免费的社区版,可以自己搭建服务器,或者用zulip的公共服务器,公共服务器的话,外网,免费版100个用户)

服务是基于python的,需要环境部署(docker的话,直接是运行环境都配置好的镜像)

没有ARM环境,我把安装方法页面给你发下:
https://zulip.readthedocs.io/en/latest/production/install.html

slore 发表于 2017-11-29 17:45:29

本帖最后由 slore 于 2017-11-29 17:48 编辑

这里列举3款web的交流工具。
=====================================================
https://github.com/moose-team/friends

Star 2,835 Fork 319
看star数用的人少,不过好处是Issues 55,问题也少。

环境依赖是nodejs和npm,感觉比较适合你。

Prerequisites

You'll need Node.js (>= 4) and npm (>= 2.8.3).

=====================================================
https://github.com/RocketChat/Rocket.Chat
Star 15,117 Fork 3,210
Issues 2,109

很受欢迎。
sudo snap install rocketchat-server就可以安装。

如果用容器的话,直接:
docker pull rocket.chat
可以下载好环境搭好的镜像。

还有树莓派2上部署的安装步骤,你的ARM环境应该也可以适用。

=====================================================
https://github.com/zulip/zulip
Star 5,578 Fork 1,715
Issues 778

介于上2个的中间。

因为是基于python的,我们就用了,适合我们改造。
整体使用上,可以说非常满意。我们想要的功能都有。
私聊组聊,不在时自动给邮箱发送离线消息。

我是直接跑公司的容器,没考虑过服务搭建的困难,
不好意思,我回去研究下。

建议你试试第一个friends。

不点 发表于 2017-11-30 10:18:53

谢谢 slore 帮忙。我不是开发者,我是用户。而且我没什么网络知识,只能用软件,不能折腾软件。傻瓜化的软件可以用,否则,可能我连用都用不了。您说的步骤还真是有点多,我消化不动。我觉得 sulip 距离我能使用它,还比较遥远。您推荐的其他软件,我也得花时间去消化。我估计我没有那么多时间。我感觉,我还得老老实实地寻找飞鸽兼容软件。毕竟,公司里全都用飞鸽兼容软件,这不是说改就能改的事。谢谢您。



slore 发表于 2017-11-30 12:53:49

本帖最后由 slore 于 2017-11-30 13:43 编辑

你作为用户的话,我觉得你算很好的用户,发现现在的问题,
试图改变寻找解决方案,还到论坛发帖,不想将就,非常尽责的“用户”。

是的搭建环境即便使用docker容器,
本来2行代码下载镜像,启动镜像的事,因为网络问题,
还得想办法加速代理,才能下载好,而且之后
为了使用还得修改各种配置文件和数据库,
作为用户这不是能hold住的事。

这就是为什么Windows比Linux广泛,他易用。
为什么飞秋不开发了,还比开源持续的ipmsg有吸引力,
因为他关注用户的易用性(类QQ界面,支持群组)。
(你找的这个200行而已的JS版程序也费了很多功夫,Linux下没能跑起来)

我之所以给你推荐zulip,是因为我其实也是用户,
我在公司只是打开chrome浏览器访问zulip.xxxx.local(公司的内部网站),
就能使用了,非常简单且好用。

这个搭建构筑是需要稍微有些服务器/网络配置知识的人(管理者)做的,
但也不是要“开发者”。作为“开发者”,我们是在使用上
觉得不好的地方,自己改源码,自己写机器人自动处理些事物等,
不负责构建,主要是使用上的改进(各司其职)。

你如果只是用户,应该把这个建议反馈给你公司的基础设施维护的人员,
剩下的搭建是他考虑的事情。如果公司没有这么个人,纯靠“用户”
自己改善,术业有专攻,谁都不能啥都会啥都做好,自然是件困难的事。

跨平台兼容飞秋的应该是没有(作为现代交流工具来看,ipmsg本身一般,
配合现在的开源框架/库,socket聊天工具自己写出来比他好,还快,谁还要兼容它?),
所以建议你更换整个交流平台是我回复的意见。
即便你找到这个JS版,也只是基本的查看用户,1对1发个消息而已,
支持群组,支持文件传输,图片表情,完善这个时间比找一个
一个完善的开源的被广泛认可的项目并学会搭建要高出100+倍,甚至根本没有结果。

你帖子的主题是JS版的ARM下运行,我的方向有点偏离了,
那就等待高人看看有没有什么意见。

思而不学则DEAD。

不点 发表于 2017-12-1 09:44:37

这是公司一篇新闻报导的落款:

新闻中心责任编辑:XXX XXX

飞秋IP:XXX.XXX.XXX.XXX

电子邮箱:XXXXXXXX@qq.com

办公电话:XXXXXXXX

注意有 “飞秋IP” 这一项。

从来没听说谁来管飞秋的事情。有网管,但网管也不负责这个事。

翅膀 发表于 2017-12-1 11:11:47

不点 发表于 2017-12-3 08:01:02

翅膀兄提供的 Windows 下的飞鸽,是旧版的,也是基于原版改造的版本。这个版本不支持添加网段,尤其不支持跨路由器添加网段,是个早已遭到淘汰的版本。现在占有统治地位的是飞秋。

iptux 是 linux 下的开源软件,优点是能添加网段,缺点是程序代码量大,其本身只能运行于 linux,不能跨平台。还有一个缺点是,缺乏维护者,开发处于停顿状态。

www.ipmsg.org.cn 是个跨平台的飞鸽,其实不是跨平台,而是分别支持各种平台而已。致命缺点是,其添加网段的功能是无效的,尤其是在跨路由器的情况下无效。因此这个飞鸽软件无法取代飞秋、iptux 等。

JS 软件是有希望真正实现跨平台的软件。它像 Java 一样,编写一次,到处运行。对于开发者来说,这是高效的开发方式,经济实惠,节约开发成本。希望办公族当中有懂行的人能够贡献出这样一个版本的飞鸽软件。

翅膀 发表于 2017-12-3 17:14:11

翅膀 发表于 2017-12-3 17:18:00

不点 发表于 2019-5-20 22:43:35

用 node 加载 index.js,确实可以运行。不过,那个 package.json 文件却没有用上。它是用来干啥的?

我试着用 nwjs 来加载该目录,加载后处于失去响应的状态,只好用 kill 命令干掉 nw 进程。有时需要 kill -9 才能干掉 nw 进程。

如何让它在 nwjs 下运行?

还有一个问题:node 能有图形界面吗?我知道 nwjs 是有图形界面的(就是个网页)。
页: [1]
查看完整版本: JS版ipmsg飞鸽传书,如何运行?