Score
0
Watch 15 Star 57 Fork 60

wildfirechat / pc-chatJavaScriptMIT

Create your Gitee Account
Explore and code with more than 5 million developers,Free private repositories !:)
Sign up
基于Electron开发的PC平台的即时通讯客户端 spread retract

https://github.com/wildfirechat

  • HTML 44.1%
  • JavaScript 42.6%
  • CSS 12.6%
  • Python 0.5%
  • Shell 0.2%
Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.MD

野火IM解决方案

野火IM是一套跨平台开源的即时通讯解决方案,主要包含以下内容。

仓库 说明 备注
android-chat 野火IM Android SDK源码和App源码 可以很方便地进行二次开发,或集成到现有应用当中
ios-chat 野火IM iOS SDK源码和App源码 可以很方便地进行二次开发,或集成到现有应用当中
pc-chat 基于Electron开发的PC平台应用
web-chat Web平台的Demo, 体验地址
wx-chat 微信小程序平台的Demo
server IM server
app server 应用服务端
robot_server 机器人服务端
push_server 推送服务器
docs 野火IM相关文档,包含设计、概念、开发、使用说明

pc-chat说明

本工程是野火IM PC平台,详情可以阅读docs.

开发一套IM系统真的很艰辛,请路过的朋友们给点个star,支持我们坚持下去🙏🙏🙏🙏🙏

联系我们

商务合作请优先采用邮箱和我们联系。技术问题请到野火IM论坛发帖交流。

  1. heavyrain.lee 邮箱: heavyrain.lee@wildfirechat.cn 微信:wildfirechat
  2. imndx 邮箱: imndx@wildfirechat.cn 微信:wfchat

问题交流

  1. 如果大家发现bug,请在GitHub提issue
  2. 其他问题,请到野火IM论坛进行交流学习
  3. 微信公众号

体验

可下载我们已编译好的可执行文件进行体验,pc-chat 下载

login_qr

home

chat

create_conversation

更多截图,请查看wewechat readme

开发

mac系统

环境准备

请严格安装下面的版本安装对应依赖,否则无法打包

  1. 最新版本的xCode
  2. nodejs 10.16.X
  3. npm 6.9.0
  4. python 2.7.X
  5. npm install -g node-gyp
开发
$ npm install
$ npm run copy-mac
$ npm run dev

npm run copy-mac 是用来拷贝平台相关的功能库,如果功能库有更新,一定要再次运行拷贝。常见的错误是客户收到新的功能库,放到功能库目录后,忘记运行次命令,导致运行结果不正确。

打包
  1. npm install 安装依赖
  2. npm run package-mac 打包mac版本,软件生成在release目录下

windows系统

环境准备

请严格安装下面的版本安装对应依赖,否则无法打包

  1. nodejs v10.16.x
  2. python 2.7.X
  3. npm 6.9.0
  4. npm install --global --vs2015 windows-build-tools # 安装内容较多,如果网络情况不好可能需要等较长时间,选择早上网络较好时安装是个好的选择
  5. npm install -g node-gyp
开发
  1. 执行node -p "process.arch", 确认node架构
  2. node为32位时,执行npm run copy-win32
  3. node为64位时,执行npm run copy-win
  4. npm install(不能在管理员权限下运行,要用普通权限)
  5. npm run dev

npm run copy-XXX 是用来拷贝平台相关的功能库,如果功能库有更新,一定要再次运行拷贝。常见的错误是客户收到新的功能库,放到功能库目录后,忘记运行次命令,导致运行结果不正确。

打包
  1. npm install 安装依赖(不能在管理员权限下运行,要用普通权限)
  2. npm run package-win32 打包windows 32位版本,软件生成在release目录下
  3. npm run package-win 打包window 64位版本,软件生成在release目录下

linux系统

环境准备

请严格安装下面的版本安装对应依赖,否则无法打包

  1. nodejs10.16.X
  2. python2.7X
开发

具体开发、集成相关说明,请参考pc开发

$ npm install
$ npm run copy-linux
$ npm run dev
打包
  1. npm install 安装依赖
  2. npm run package-linux 打包linux版本,软件生成在release目录下
常见问题
  1. 打包时,如果一直显示installing production dependencies platform=win32 arch=ia32 appDir=C:\<your path>\pc-chat\dist, 或者提示下载什么之类的,可将dep目录下对应平台的electron依赖,解压到对应的目录。

    // windows
    C:\Users\<你的用户名>/.electron-gyp
    // mac/linux
    ~/.electron-gyp
  2. windows上需要严格按照环境进行安装,mac上环境比较简单一些,安装node和node-gyp就可以了 另外如果还有问题,请试试命令npm cache clean --force ,然后删掉node_modules,再重新在非管理员权限下npm install

  3. 有些杀毒软件会对electron打包的软件报病毒,详情请参考electron报病毒。安装时可能被杀毒软件限制安装,这时候可以让用户使用绿色免安装版(打包后release目录下的unpacked目录)。如果运行时报错,请在杀毒软件里加上例外。另外有条件的公司可以考虑去360官方或其他杀软的官方提交检测。

  4. ubuntu下,启动时,若提示,A JavaScript error occurred in the main process Uncaught Exception:Error: Cannot open /opt/wildfirechat/resources/app.asar/marswrapper.node: Error: libdouble-conversion.so.1: cannot open shared object file: No such file or directory,可安装libdouble-conversion1解决

  5. win平台野火客户端依赖Visual C++ Redistributable Package runtime。如果用户PC上没有安装就需要安装之后才能运行,请从微软官方下载安装 https://www.microsoft.com/zh-CN/download/details.aspx?id=48145。

  6. MAC应用截屏时只能截屏空白桌面,无法截图窗口内容。这是因为没有通过mac系统的安全许可,在设置-》安全与隐私-》切换到隐私那个标签-》屏幕录制-》在野火IM PC应用前打勾,并重启应用。

  7. 使用cnpm后打包失败,在某些平台cnpm是会出现问题的,请使用npm。

MAC 签名

如果本地存在合法的mac签名,打包程序会尝试进行签名。签名会失败,提示如下

⨯ Command failed: codesign --sign EACAEF96A100626DC13376F03E7F9E5D33A270AE --force --options runtime --entitlements mac/entitlements.mac.plist /Users/dali/Workspace/pc-chat/release/mac/wildfirechat.app/Contents/MacOS/wildfirechat
/Users/dali/Workspace/pc-chat/release/mac/wildfirechat.app/Contents/MacOS/wildfirechat: code object is not signed at all
In subcomponent: /Users/dali/Workspace/pc-chat/release/mac/wildfirechat.app/Contents/wfshot.app

其中--sign后的EACAEF96A100626DC13376F03E7F9E5D33A270AE为您的证书ID,然后使用下面命令进行签名,需要把下面的证书ID换成您自己的

# 把证书名称换成自己的
sh mac_sign.sh EACAEF96A100626DC13376F03E7F9E5D33A270AE

执行成功后,再次打包,就会顺利完成。

License

  1. Under the MIT license. See the LICENSE file for details.

  2. Under the 996ICU License. See the LICENSE file for details.

鸣谢

本项目基于wewechat开发,原项目的READ见wewechat readme

Comments ( 3 )

Sign in for post a comment

JavaScript
1
https://gitee.com/wildfirechat/pc-chat.git
git@gitee.com:wildfirechat/pc-chat.git
wildfirechat
pc-chat
pc-chat
master

Search

231008 48f1a665 1899542 231017 9a6720c6 1899542