
chat21/chat21-ionicChat21-ionic是开源实时聊天平台Tiledesk.com的核心组件,是一个基于ionic3开发的桌面和移动聊天应用,支持跨平台使用,提供完整的实时通讯功能。
访问 [***] 查看Chat21-ionic的实时演示。
!Chat21-ionic演示截图
!Chat21-ionic演示截图
文档开发中
npm install -g ionicnpm install -g cordova@7.0.1如需一键在服务器上安装所有Tiledesk组件,请参考Docker Compose Tiledesk安装指南
bashgit clone [***] --branch <最新版本号> cd chat21-ionic
npm install配置src/environments文件夹中的environment.ts文件:
typescriptexport const environment = { supportMode: false, production: false, remoteConfig: true, remoteConfigUrl: '/chat-config.json', chatEngine: "mqtt", // 或自定义聊天引擎 uploadEngine: "native", // 或自定义上传引擎 pushEngine:"none", // 或自定义推送引擎 tenant:"tilechat", fileUploadAccept:"*/*", logLevel: "<首选日志级别数字>", firebaseConfig: { apiKey: '123ABC..', authDomain: 'XYZ.firebaseapp.com', databaseURL: '[***] projectId: 'XYZ', storageBucket: 'XYZ.appspot.com', messagingSenderId: '***', appId: 'CHANGEIT', chat21ApiUrl: '<Chat21云函数Firebase端点>' }, chat21Config: { "appId": "tilechat", "MQTTendpoint": "mqtt://<MQTT端点>", "APIendpoint": "http://<MQTT API端点>" }, "apiUrl": "https://<Tiledesk API URL>", "baseImageUrl": "https://<基础图片URL>", "dashboardUrl": "https://<控制台URL>" };
logLevel:支持4种日志级别,顺序为:Error = 0 < Warn = 1 < Info = 2 < Debug = 3fileUploadAccept:控制可上传文件类型,默认接受所有类型/src/firebase-messaging-sw.js,将messagingSenderId替换为你的messagingSenderId,详见:[***]firebase-messaging-sw.js必须可通过Web应用根目录访问(如:[***]manifest.json的gcm_sender_id,Firebase正确值为:"gcm_sender_id": "103953800507"在Firebase控制台打开Authentication > SIGN IN METHOD,启用Email/password登录提供商并保存,允许用户通过登录Web应用,详见:[]
执行:ionic serve
bashcordova platform add browser@latest ionic cordova build browser
将platforms/browser/www目录内容复制到Web服务器的公共目录
npm install -g firebase-toolsfirebase login(如已登录可跳过)cd platforms/browser,执行firebase init
www并回车N并回车N并回车firebase deployionic cordova run androidionic cordova run android --deviceionic cordova run iosionic cordova run ios --device在8080端口运行Chat21-ionic:
bashcurl [***] --output .env nano .env # 正确配置.env文件 docker run -p 8080:80 --env-file .env chat21/chat21-ionic
如需自定义logo和资源,可挂载Docker卷到assets文件夹,覆盖卷中的资源文件:
bashdocker run -p 8080:80 --env-file .env --mount source=chat21-ionic-assets-vol,destination=/usr/share/nginx/html/assets chat21/chat21-ionic
通过在聊天URL中添加JWT token作为查询参数实现自动登录:
typescript"http://localhost:8100/#/conversation-detail?jwt=<JWT_TOKEN>"

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务