GithubHelp home page GithubHelp logo

jianliaoim / talk-os Goto Github PK

View Code? Open in Web Editor NEW
2.7K 148.0 801.0 4.32 MB

Open source version of jianliao.com

Home Page: https://jianliao.com

License: MIT License

Shell 0.36% CoffeeScript 89.24% CSS 8.84% HTML 1.10% JavaScript 0.47%

talk-os's Introduction

简聊开源版

简聊所有业务代码的开源版本,可作任意修改

简聊 - 产品项目包含了简聊由开始到现在的所有开发历程,设想,和设计资源,感兴趣的同学可加入项目参观或留言

部署

  • Node 4 (nvm use)
  • Npm 2

安装环境

  • 简聊使用 MongoDB 作为数据库,Redis 作为缓存和消息通讯中间件。所以首先需要在本地部署 MongoDBRedis 并使用默认端口号(配置文件见 config/default.coffee)。建议使用 MongoDB 3.2 和 Redis 2.8,更高版本未经过生产环境测试。

  • 简聊的搜索使用 ElasticSearch 1.6.2 + ik 中文分词插件,代码中已经关闭了消息搜索的功能,如需打开,需要修改以下文件

    - talk-api2x/
    - server/
     - schemas/
       - search-favorite.coffee      # 删除 `return # @osv`
       - search-message.coffee       # 删除 `return # @osv`
       - search-story.coffee         # 删除 `return # @osv`
       - message.coffee              # 删除 `return # @osv`
       - favorite.coffee             # 删除 `return # @osv`
     - observers/
       - story.coffee                # 删除 `return # @osv`
    
  • 并且在 config/default.coffee 中增加

    searchHost: 'localhost'
    searchPort: 9200
    searchProtocol: 'http'
    
  • 执行 create-search-template.sh 创建索引结构

安装代码依赖

注意:请使用 node 4.x,npm 2.x 版本,并预先启动 mongodb, redis

  1. 初始化安装依赖 npm run init(安装PhantomJS时可能会卡住)
  2. 安装全局 coffee-script npm i -g coffee-script(并确保 coffee 命令在当前环境变量下可用)
  3. 启动 mongodb,redis 后,执行代码 npm start
  4. 访问浏览器 http://localhost:7001

LICENSE

MIT

talk-os's People

Contributors

afc163 avatar boshen avatar ithinco avatar kyriejoshua avatar sailxjx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

talk-os's Issues

Linux "npm run init" 报错

0 info it worked if it ends with ok
1 verbose cli [ '/root/.nvm/versions/node/v4.4.1/bin/node',
1 verbose cli '/root/.nvm/versions/node/v4.4.1/bin/npm',
1 verbose cli 'run',
1 verbose cli 'init' ]
2 info using [email protected]
3 info using [email protected]
4 verbose run-script [ 'preinit', 'init', 'postinit' ]
5 info preinit [email protected]
6 info init [email protected]
7 verbose unsafe-perm in lifecycle true
8 info [email protected] Failed to exec init script
9 verbose stack Error: [email protected] init: ./init.sh
9 verbose stack Exit status 126
9 verbose stack at EventEmitter. (/root/.nvm/versions/node/v4.4.1/lib/node_modules/npm/lib/utils/lifecycle.js:214:16)
9 verbose stack at emitTwo (events.js:87:13)
9 verbose stack at EventEmitter.emit (events.js:172:7)
9 verbose stack at ChildProcess. (/root/.nvm/versions/node/v4.4.1/lib/node_modules/npm/lib/utils/spawn.js:24:14)
9 verbose stack at emitTwo (events.js:87:13)
9 verbose stack at ChildProcess.emit (events.js:172:7)
9 verbose stack at maybeClose (internal/child_process.js:827:16)
9 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
10 verbose pkgid [email protected]
11 verbose cwd /home/talk-os
12 error Linux 2.6.32-504.el6.x86_64
13 error argv "/root/.nvm/versions/node/v4.4.1/bin/node" "/root/.nvm/versions/node/v4.4.1/bin/npm" "run" "init"
14 error node v4.4.1
15 error npm v2.14.20
16 error code ELIFECYCLE
17 error [email protected] init: ./init.sh
17 error Exit status 126
18 error Failed at the [email protected] init script './init.sh'.
18 error This is most likely a problem with the talk-os package,
18 error not with npm itself.
18 error Tell the author that this fails on your system:
18 error ./init.sh
18 error You can get information on how to open an issue for this project with:
18 error npm bugs talk-os
18 error Or if that isn't available, you can get their info via:
18 error
18 error npm owner ls talk-os
18 error There is likely additional logging output above.
19 verbose exit [ 1, true ]

这是什么错误啊 请问

@jiyinyiyong

vendor.9ae4e3de.js:2672 Warning: Failed propType: Invalid prop `route` of type `src_Map__Map` supplied to `addressbar`, expected instance of `Map`. Check the render method of `app-container`.
warning @ vendor.9ae4e3de.js:2672
checkPropTypes @ vendor.9ae4e3de.js:19907
validatePropTypes @ vendor.9ae4e3de.js:19926
createElement @ vendor.9ae4e3de.js:19960
renderAddressbar @ main.5147f140.js:21215
app-container_render @ main.5147f140.js:21316
_renderValidatedComponentWithoutOwnerOrContext @ vendor.9ae4e3de.js:8155
_renderValidatedComponent @ vendor.9ae4e3de.js:8175
ReactCompositeComponent__renderValidatedComponent @ vendor.9ae4e3de.js:1906
mountComponent @ vendor.9ae4e3de.js:7788
ReactCompositeComponent_mountComponent @ vendor.9ae4e3de.js:1906
mountComponent @ vendor.9ae4e3de.js:6098
mountComponent @ vendor.9ae4e3de.js:7793
ReactCompositeComponent_mountComponent @ vendor.9ae4e3de.js:1906
mountComponent @ vendor.9ae4e3de.js:6098
mountComponentIntoNode @ vendor.9ae4e3de.js:3102
perform @ vendor.9ae4e3de.js:7205
batchedMountComponentIntoNode @ vendor.9ae4e3de.js:3118
perform @ vendor.9ae4e3de.js:7205
batchedUpdates @ vendor.9ae4e3de.js:11238
batchedUpdates @ vendor.9ae4e3de.js:6710
_renderNewRootComponent @ vendor.9ae4e3de.js:3312
ReactMount__renderNewRootComponent @ vendor.9ae4e3de.js:1906
_renderSubtreeIntoContainer @ vendor.9ae4e3de.js:3386
render @ vendor.9ae4e3de.js:3406
React_render @ vendor.9ae4e3de.js:1906
render @ main.5147f140.js:108
exports.request @ vendor.9ae4e3de.js:25496
(anonymous) @ main.5147f140.js:112
(anonymous) @ main.5147f140.js:9651
newConnection @ main.5147f140.js:9759
handleData @ main.5147f140.js:9747
(anonymous) @ main.5147f140.js:9710
emit @ vendor.9ae4e3de.js:42611
done @ vendor.9ae4e3de.js:44511
transform @ vendor.9ae4e3de.js:44482
transforms @ vendor.9ae4e3de.js:44503
decoding @ vendor.9ae4e3de.js:44280
decoder @ vendor.9ae4e3de.js:45106
message @ vendor.9ae4e3de.js:44269
emit @ vendor.9ae4e3de.js:42610
next @ vendor.9ae4e3de.js:42513
vendor.9ae4e3de.js:2672 Warning: Failed propType: Invalid prop `router` of type `Map` supplied to `notify-center`, expected instance of `src_Map__Map`. Check the render method of `app-container`.
warning @ vendor.9ae4e3de.js:2672
checkPropTypes @ vendor.9ae4e3de.js:19907
validatePropTypes @ vendor.9ae4e3de.js:19926
createElement @ vendor.9ae4e3de.js:19960
app-container_render @ main.5147f140.js:21314
_renderValidatedComponentWithoutOwnerOrContext @ vendor.9ae4e3de.js:8155
_renderValidatedComponent @ vendor.9ae4e3de.js:8175
ReactCompositeComponent__renderValidatedComponent @ vendor.9ae4e3de.js:1906
_updateRenderedComponent @ vendor.9ae4e3de.js:8128
_performComponentUpdate @ vendor.9ae4e3de.js:8112
updateComponent @ vendor.9ae4e3de.js:8041
ReactCompositeComponent_updateComponent @ vendor.9ae4e3de.js:1906
receiveComponent @ vendor.9ae4e3de.js:7973
receiveComponent @ vendor.9ae4e3de.js:6148
_updateRenderedComponent @ vendor.9ae4e3de.js:8130
_performComponentUpdate @ vendor.9ae4e3de.js:8112
updateComponent @ vendor.9ae4e3de.js:8041
ReactCompositeComponent_updateComponent @ vendor.9ae4e3de.js:1906
receiveComponent @ vendor.9ae4e3de.js:7973
receiveComponent @ vendor.9ae4e3de.js:6148
performUpdateIfNecessary @ vendor.9ae4e3de.js:7985
performUpdateIfNecessary @ vendor.9ae4e3de.js:6163
runBatchedUpdates @ vendor.9ae4e3de.js:6745
perform @ vendor.9ae4e3de.js:7205
perform @ vendor.9ae4e3de.js:7205
perform @ vendor.9ae4e3de.js:6702
flushBatchedUpdates @ vendor.9ae4e3de.js:6763
ReactUpdates_flushBatchedUpdates @ vendor.9ae4e3de.js:1906
closeAll @ vendor.9ae4e3de.js:7271
perform @ vendor.9ae4e3de.js:7218
batchedUpdates @ vendor.9ae4e3de.js:11238
enqueueUpdate @ vendor.9ae4e3de.js:6792
enqueueUpdate @ vendor.9ae4e3de.js:6377
enqueueElementInternal @ vendor.9ae4e3de.js:6605
(anonymous) @ vendor.9ae4e3de.js:3261
scrollMonitor @ vendor.9ae4e3de.js:3249
_updateRootComponent @ vendor.9ae4e3de.js:3260
_renderSubtreeIntoContainer @ vendor.9ae4e3de.js:3359
render @ vendor.9ae4e3de.js:3406
React_render @ vendor.9ae4e3de.js:1906
render @ main.5147f140.js:108
(anonymous) @ vendor.9ae4e3de.js:25340
List.__iterate @ vendor.9ae4e3de.js:32989
forEach @ vendor.9ae4e3de.js:35164
recorderEmit @ vendor.9ae4e3de.js:25339
exports.dispatch @ vendor.9ae4e3de.js:25524
emitter.handleViewAction @ main.5147f140.js:8090
exports.go @ main.5147f140.js:13857
exports.settingTeams @ main.5147f140.js:13971
(anonymous) @ main.5147f140.js:13405
_fulfilled @ vendor.9ae4e3de.js:50120
self.promiseDispatch.done @ vendor.9ae4e3de.js:50149
Promise.promise.promiseDispatch @ vendor.9ae4e3de.js:50082
(anonymous) @ vendor.9ae4e3de.js:49842
runSingle @ vendor.9ae4e3de.js:49423
flush @ vendor.9ae4e3de.js:49411
onNextTick @ vendor.9ae4e3de.js:49263
Item.run @ vendor.9ae4e3de.js:774
drainQueue @ vendor.9ae4e3de.js:744
vendor.9ae4e3de.js:2672 Warning: Failed propType: Invalid prop `route` of type `Map` supplied to `addressbar`, expected instance of `Map`. Check the render method of `app-container`.
warning @ vendor.9ae4e3de.js:2672
checkPropTypes @ vendor.9ae4e3de.js:19907
validatePropTypes @ vendor.9ae4e3de.js:19926
createElement @ vendor.9ae4e3de.js:19960
renderAddressbar @ main.5147f140.js:21215
app-container_render @ main.5147f140.js:21316
_renderValidatedComponentWithoutOwnerOrContext @ vendor.9ae4e3de.js:8155
_renderValidatedComponent @ vendor.9ae4e3de.js:8175
ReactCompositeComponent__renderValidatedComponent @ vendor.9ae4e3de.js:1906
_updateRenderedComponent @ vendor.9ae4e3de.js:8128
_performComponentUpdate @ vendor.9ae4e3de.js:8112
updateComponent @ vendor.9ae4e3de.js:8041
ReactCompositeComponent_updateComponent @ vendor.9ae4e3de.js:1906
receiveComponent @ vendor.9ae4e3de.js:7973
receiveComponent @ vendor.9ae4e3de.js:6148
_updateRenderedComponent @ vendor.9ae4e3de.js:8130
_performComponentUpdate @ vendor.9ae4e3de.js:8112
updateComponent @ vendor.9ae4e3de.js:8041
ReactCompositeComponent_updateComponent @ vendor.9ae4e3de.js:1906
receiveComponent @ vendor.9ae4e3de.js:7973
receiveComponent @ vendor.9ae4e3de.js:6148
performUpdateIfNecessary @ vendor.9ae4e3de.js:7985
performUpdateIfNecessary @ vendor.9ae4e3de.js:6163
runBatchedUpdates @ vendor.9ae4e3de.js:6745
perform @ vendor.9ae4e3de.js:7205
perform @ vendor.9ae4e3de.js:7205
perform @ vendor.9ae4e3de.js:6702
flushBatchedUpdates @ vendor.9ae4e3de.js:6763
ReactUpdates_flushBatchedUpdates @ vendor.9ae4e3de.js:1906
closeAll @ vendor.9ae4e3de.js:7271
perform @ vendor.9ae4e3de.js:7218
batchedUpdates @ vendor.9ae4e3de.js:11238
enqueueUpdate @ vendor.9ae4e3de.js:6792
enqueueUpdate @ vendor.9ae4e3de.js:6377
enqueueElementInternal @ vendor.9ae4e3de.js:6605
(anonymous) @ vendor.9ae4e3de.js:3261
scrollMonitor @ vendor.9ae4e3de.js:3249
_updateRootComponent @ vendor.9ae4e3de.js:3260
_renderSubtreeIntoContainer @ vendor.9ae4e3de.js:3359
render @ vendor.9ae4e3de.js:3406
React_render @ vendor.9ae4e3de.js:1906
render @ main.5147f140.js:108
(anonymous) @ vendor.9ae4e3de.js:25340
List.__iterate @ vendor.9ae4e3de.js:32989
forEach @ vendor.9ae4e3de.js:35164
recorderEmit @ vendor.9ae4e3de.js:25339
exports.dispatch @ vendor.9ae4e3de.js:25524
emitter.handleViewAction @ main.5147f140.js:8090
exports.go @ main.5147f140.js:13857
exports.settingTeams @ main.5147f140.js:13971
(anonymous) @ main.5147f140.js:13405
_fulfilled @ vendor.9ae4e3de.js:50120
self.promiseDispatch.done @ vendor.9ae4e3de.js:50149
Promise.promise.promiseDispatch @ vendor.9ae4e3de.js:50082
(anonymous) @ vendor.9ae4e3de.js:49842
runSingle @ vendor.9ae4e3de.js:49423
flush @ vendor.9ae4e3de.js:49411
onNextTick @ vendor.9ae4e3de.js:49263
Item.run @ vendor.9ae4e3de.js:774
drainQueue @ vendor.9ae4e3de.js:744
vendor.9ae4e3de.js:2672 Warning: Failed propType: Invalid prop `router` of type `Map` supplied to `setting-page`, expected instance of `src_Map__Map`. Check the render method of `app-container`.
warning @ vendor.9ae4e3de.js:2672
checkPropTypes @ vendor.9ae4e3de.js:19907
validatePropTypes @ vendor.9ae4e3de.js:19926
createElement @ vendor.9ae4e3de.js:19960
renderPage @ main.5147f140.js:21251
renderLoadingOrPage @ main.5147f140.js:21306
app-container_render @ main.5147f140.js:21316
_renderValidatedComponentWithoutOwnerOrContext @ vendor.9ae4e3de.js:8155
_renderValidatedComponent @ vendor.9ae4e3de.js:8175
ReactCompositeComponent__renderValidatedComponent @ vendor.9ae4e3de.js:1906
_updateRenderedComponent @ vendor.9ae4e3de.js:8128
_performComponentUpdate @ vendor.9ae4e3de.js:8112
updateComponent @ vendor.9ae4e3de.js:8041
ReactCompositeComponent_updateComponent @ vendor.9ae4e3de.js:1906
receiveComponent @ vendor.9ae4e3de.js:7973
receiveComponent @ vendor.9ae4e3de.js:6148
_updateRenderedComponent @ vendor.9ae4e3de.js:8130
_performComponentUpdate @ vendor.9ae4e3de.js:8112
updateComponent @ vendor.9ae4e3de.js:8041
ReactCompositeComponent_updateComponent @ vendor.9ae4e3de.js:1906
receiveComponent @ vendor.9ae4e3de.js:7973
receiveComponent @ vendor.9ae4e3de.js:6148
performUpdateIfNecessary @ vendor.9ae4e3de.js:7985
performUpdateIfNecessary @ vendor.9ae4e3de.js:6163
runBatchedUpdates @ vendor.9ae4e3de.js:6745
perform @ vendor.9ae4e3de.js:7205
perform @ vendor.9ae4e3de.js:7205
perform @ vendor.9ae4e3de.js:6702
flushBatchedUpdates @ vendor.9ae4e3de.js:6763
ReactUpdates_flushBatchedUpdates @ vendor.9ae4e3de.js:1906
closeAll @ vendor.9ae4e3de.js:7271
perform @ vendor.9ae4e3de.js:7218
batchedUpdates @ vendor.9ae4e3de.js:11238
enqueueUpdate @ vendor.9ae4e3de.js:6792
enqueueUpdate @ vendor.9ae4e3de.js:6377
enqueueElementInternal @ vendor.9ae4e3de.js:6605
(anonymous) @ vendor.9ae4e3de.js:3261
scrollMonitor @ vendor.9ae4e3de.js:3249
_updateRootComponent @ vendor.9ae4e3de.js:3260
_renderSubtreeIntoContainer @ vendor.9ae4e3de.js:3359
render @ vendor.9ae4e3de.js:3406
React_render @ vendor.9ae4e3de.js:1906
render @ main.5147f140.js:108
(anonymous) @ vendor.9ae4e3de.js:25340
List.__iterate @ vendor.9ae4e3de.js:32989
forEach @ vendor.9ae4e3de.js:35164
recorderEmit @ vendor.9ae4e3de.js:25339
exports.dispatch @ vendor.9ae4e3de.js:25524
emitter.handleViewAction @ main.5147f140.js:8090
exports.go @ main.5147f140.js:13857
exports.settingTeams @ main.5147f140.js:13971
(anonymous) @ main.5147f140.js:13405
_fulfilled @ vendor.9ae4e3de.js:50120
self.promiseDispatch.done @ vendor.9ae4e3de.js:50149
Promise.promise.promiseDispatch @ vendor.9ae4e3de.js:50082
(anonymous) @ vendor.9ae4e3de.js:49842
runSingle @ vendor.9ae4e3de.js:49423
flush @ vendor.9ae4e3de.js:49411
onNextTick @ vendor.9ae4e3de.js:49263
Item.run @ vendor.9ae4e3de.js:774
drainQueue @ vendor.9ae4e3de.js:744

小艾无法自动回复

@sailxjx

看到你之前的issue说开源进程中移除了文件上传和小艾自动回复这部分,这个不能开源吗?
如果不能开源,能否说下你们talk.ai的实现方式?有没有开源产品可以替代这部分功能呢?

希望能得到回复,感谢~

无法上传文件

本地搭建的jianliao,注册的用户,无法上传文件,我发现上传服务会发送到striker.teambition.com,报401的错,我想应该是本地注册的用户无法授权到上传服务网站,这个能解决吗?还是说上传服务要替换成我们自己的?

@sailxjx @Boshen

npm run init 报错

使用CentOS 7

使用着npm 2.15.1
使用着node v4.4.4

[root@localhost talk-os]# npm run init

[email protected] init /root/talk-os
./init.sh

Install talk-api2x dependencies
Install talk-web dependencies and build front-end assets
npm WARN package.json [email protected] No license field.
npm ERR! Linux 3.10.0-327.36.3.el7.x86_64
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "i"
npm ERR! node v4.4.4
npm ERR! npm v2.15.1
npm ERR! code ETARGET

npm ERR! notarget No compatible version found: lodash._arrayincludes@'>=3.0.0 <4.0.0'
npm ERR! notarget Valid install targets:
npm ERR! notarget ["4.0.0"]
npm ERR! notarget
npm ERR! notarget This is most likely not a problem with npm itself.
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.
npm ERR! notarget
npm ERR! notarget It was specified as a dependency of 'lodash.uniq'
npm ERR! notarget

npm ERR! Please include the following file with any support request:
npm ERR! /root/talk-os/talk-web/npm-debug.log

简聊开发中怎么调试?

简聊代码我看了也不少了,现在没有HMR功能,很影响开发效率,这个就不说了,有时间我自己解决吧,但是有时候改bug调试起来很痛苦,还是基本用console的方式调试,请问你们有更好的方式吗?

我指的是server端哦。

@sailxjx 请指教,谢谢啦~ : )

`gulp dev`后,页面无法请求css,js等资源

node v6.6.0
在talk-web目录下运行gulp dev,访问talk.bi:8081页面,请求js,css的路径不对

GET http://talk.bi:8081/css/main.dc0de441.css 
GET http://talk.bi:8081/js/vendor.8370aab0.js 
GET http://talk.bi:8081/js/main.dc0de441.js 
GET http://talk.bi:8081/js/vendor.8370aab0.js 
GET http://talk.bi:8081/js/main.dc0de441.js 404 (Not Found)

node v4.4.6在npm run static的时候就有extract-text-webpack-plugin相关的报错,所以没用。

cookie.set报错

使用邮箱注册登录后就报错
Uncaught TypeError: cookie.set is not a function
at Object.exports.logInRedirectWithData (main.8e1ef4e1.js:1654)
at Object.ajax.emailSignIn.success (main.8e1ef4e1.js:4093)
at Reqwest._successHandler (main.8e1ef4e1.js:2494)
at success (main.8e1ef4e1.js:2558)
at XMLHttpRequest. (main.8e1ef4e1.js:2303)

报错行 倒数第四行
exports.logInRedirectWithData = function(account) {
var cookieConfigs, ref;
cookieConfigs = {
domain: config.cookieDomain,
expires: 7,
path: '/'
};
cookie.set('trackingPage', 'login', cookieConfigs);
cookie.set('trackingPageLabel', "from " + account, cookieConfigs);
cookie.set('trackingPageTime', (ref = window.performance) != null ? ref.timing.navigationStart : void 0, cookieConfigs);
return exports.signInRedirect();
};
貌似只有这个cookie.set报错,其他都不报错。这个可能需要 cookie.cookie.set ,求教中

使用engine.io-client怎么连接简聊服务

我知道简聊的实时通讯框架是基于primus+engine.io的。我现在需要开发一个简聊的android客户端,但苦于没有primus的java客户端可用,我决定使用engine.io的客户端直接连接,方案应该是没问题的吧?我使用primus+engine.io搭建了一个简易的server,engine.io-client-java库能连接到(创建Socket时的URL形式为:http://host:port;同时需要在Socket.Option.path中写入“/primus"方可连接到)。但使用同样的客户端代码却连接不到简聊的通讯服务(Socket.Option.path我尝试了”/primus"、“/snapper/primus"都不行)。能否给与帮助,各位?

运行app.coffee时报错

运行app.coffee 时报错,can't found moudle ‘../packing/assets’,百思不得其解,这是指的什么错误?应该如何解决?

保留功能及移除功能

保留功能

  • 邮件注册/登录
  • 基础聊天服务
  • 基于 Webhook 的聚合服务

移除功能

  • 手机,第三方注册/登录
  • 消息搜索
  • 语音通话
  • 文件上传
  • 小艾的自动回复
  • 话题绑定邮箱

npm run init 报错

执行到_Install packages of talk-os_的时候报错如下:

npm ERR! Darwin 15.5.0
npm ERR! argv "/Users/wangchao/.nvm/versions/node/v4.6.0/bin/node" "/Users/wangchao/.nvm/versions/node/v4.6.0/bin/npm" "run" "init"
npm ERR! node v4.6.0
npm ERR! npm  v2.15.9
npm ERR! code ELIFECYCLE
npm ERR! [email protected] init: `./init.sh`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] init script './init.sh'.
npm ERR! This is most likely a problem with the talk-os package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     ./init.sh
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs talk-os
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! 
npm ERR!     npm owner ls talk-os
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/wangchao/Design/OpenSource/talk-os-master/npm-debug.log

下面为npm-debug.log的内容:

0 info it worked if it ends with ok
1 verbose cli [ '/Users/wangchao/.nvm/versions/node/v4.6.0/bin/node',
1 verbose cli   '/Users/wangchao/.nvm/versions/node/v4.6.0/bin/npm',
1 verbose cli   'run',
1 verbose cli   'init' ]
2 info using [email protected]
3 info using [email protected]
4 verbose run-script [ 'preinit', 'init', 'postinit' ]
5 info preinit [email protected]
6 info init [email protected]
7 verbose unsafe-perm in lifecycle true
8 info [email protected] Failed to exec init script
9 verbose stack Error: [email protected] init: `./init.sh`
9 verbose stack Exit status 1
9 verbose stack     at EventEmitter.<anonymous> (/Users/wangchao/.nvm/versions/node/v4.6.0/lib/node_modules/npm/lib/utils/lifecycle.js:217:16)
9 verbose stack     at emitTwo (events.js:87:13)
9 verbose stack     at EventEmitter.emit (events.js:172:7)
9 verbose stack     at ChildProcess.<anonymous> (/Users/wangchao/.nvm/versions/node/v4.6.0/lib/node_modules/npm/lib/utils/spawn.js:24:14)
9 verbose stack     at emitTwo (events.js:87:13)
9 verbose stack     at ChildProcess.emit (events.js:172:7)
9 verbose stack     at maybeClose (internal/child_process.js:829:16)
9 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
10 verbose pkgid [email protected]
11 verbose cwd /Users/wangchao/Design/OpenSource/talk-os-master
12 error Darwin 15.5.0
13 error argv "/Users/wangchao/.nvm/versions/node/v4.6.0/bin/node" "/Users/wangchao/.nvm/versions/node/v4.6.0/bin/npm" "run" "init"
14 error node v4.6.0
15 error npm  v2.15.9
16 error code ELIFECYCLE
17 error [email protected] init: `./init.sh`
17 error Exit status 1
18 error Failed at the [email protected] init script './init.sh'.
18 error This is most likely a problem with the talk-os package,
18 error not with npm itself.
18 error Tell the author that this fails on your system:
18 error     ./init.sh
18 error You can get information on how to open an issue for this project with:
18 error     npm bugs talk-os
18 error Or if that isn't available, you can get their info via:
18 error
18 error     npm owner ls talk-os
18 error There is likely additional logging output above.
19 verbose exit [ 1, true ]

怎么开启消息搜索功能?

我按照项目主页md文件里安装环境步骤执行,到最后一步要创建索引结构直接报错,后来发现压根就没有9200端口的服务啊?

好像默认收藏和@我的消息因为用到搜索,都无法使用.

err! 2016-08-10T07:17:51.101Z POST /favorites/search [ 'host',
  'connection',
  'content-length',
  'origin',
  'x-language',
  'user-agent',
  'content-type',
  'x-socket-id',
  'accept',
  'x-requested-with',
  'referer',
  'accept-encoding',
  'accept-language',
  'cookie' ] [] [ '_teamId', 'page', 'sort' ] Error: No Living connections
  at sendReqWithConnection (/home/andy/FrontEndProjects/talk-os/talk-api2x/node_modules/elasticsearch/src/lib/transport.js:190:15)
  at next (/home/andy/FrontEndProjects/talk-os/talk-api2x/node_modules/elasticsearch/src/lib/connection_pool.js:213:7)
  at _combinedTickCallback (internal/process/next_tick.js:67:7)
  at process._tickDomainCallback (internal/process/next_tick.js:122:9)

@sailxjx @Boshen

简聊app的方案?

想在web的基础上做个手机版(android和ios),看了简聊通信使用的是primus+engine.io,我们想出了两种方案:
1.app端使用和web通信相同的方式,需要primus+engine.io的sdk(使用网上搜的sdk,貌似连不通)。
2.app使用native socket的方式,需要在简聊后端收到web消息后做个转发处理。
想了解下使用哪种方案最好,或者你们推荐的其它方案
再次感谢!

开源进程

  • API,账号系统,Web 应用端,推送服务代码开源
  • 部署文档
  • 开放「简聊 - 产品」项目

执行`npm run init`报错

执行npm run init报错:

root@e8bfe4d3ace4:/workspace/talk-os# npm run init

> [email protected] init /workspace/talk-os
> ./init.sh

Install talk-api2x dependencies
npm ERR! cb() never called!

How to enable the live reload function?

我看到talk-os里分别有talk-web和talk-account里的package.json配置了watch脚本,但是当启动工程后,我分别在上面两个工程下用npm run watch去开启webpack的热替换功能,但其实没有任何作用,这个非常影响开发效率,希望能够给予解答。

Fail to create team

按照readme指示架设起简聊,注册完用户后创建Team,结果卡这个过程中。jianliao.com中POST /teams后,response中默认含有两个member和一个room。在我架设的简聊中,同样的过程,response中member和room为空,进而GET /notification?_teamId= 和GET/rooms 出现403错误。返回{code: 204, message: "非 team 成员"}。求助,在线等~~~~

我架设简聊的link: http://talk.zhaoaoran.ca

npm run init安装依赖到api2x的xss卡住然后报错

`> ./init.sh

Install talk-api2x dependencies
npm WARN deprecated [email protected]: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm ERR! cb() never called!`

Mac el captain
npm 3.7.3
node 5.9.0

log:
`npm http request GET https://registry.npmjs.org/xss

npm http 304 https://registry.npmjs.org/axon

npm http 304 https://registry.npmjs.org/apn

npm http 304 https://registry.npmjs.org/async

npm http 200 https://registry.npmjs.org/coffee-script

npm http 200 https://registry.npmjs.org/config

npm http 200 https://registry.npmjs.org/bluebird

npm http 304 https://registry.npmjs.org/charset

npm http 304 https://registry.npmjs.org/cookie-parser

npm http 304 https://registry.npmjs.org/err1st

npm http 304 https://registry.npmjs.org/connect-redis

npm http 304 https://registry.npmjs.org/cron

npm http 304 https://registry.npmjs.org/hat

npm http 304 https://registry.npmjs.org/hiredis

npm http 304 https://registry.npmjs.org/ejs

npm http 304 https://registry.npmjs.org/graceful-logger

npm http 200 https://registry.npmjs.org/body-parser

npm http 304 https://registry.npmjs.org/inflection

npm http 304 https://registry.npmjs.org/xss

npm http 304 https://registry.npmjs.org/talk-services

npm http 304 https://registry.npmjs.org/mongoosastic

npm http 304 https://registry.npmjs.org/i18n

npm http 304 https://registry.npmjs.org/he

npm http 304 https://registry.npmjs.org/jsonwebtoken

npm http 304 https://registry.npmjs.org/moment-timezone

npm http 304 https://registry.npmjs.org/express

npm http 304 https://registry.npmjs.org/uuid

npm http 304 https://registry.npmjs.org/request

npm http 304 https://registry.npmjs.org/marked

npm http 304 https://registry.npmjs.org/htmlparser2

npm http 304 https://registry.npmjs.org/jschardet

npm http 304 https://registry.npmjs.org/pinyin

npm http 304 https://registry.npmjs.org/juice

npm http 304 https://registry.npmjs.org/redis

npm http 304 https://registry.npmjs.org/serve-favicon

npm http 304 https://registry.npmjs.org/shortid

npm http 304 https://registry.npmjs.org/require-dir

npm http 304 https://registry.npmjs.org/morgan

npm http 304 https://registry.npmjs.org/lodash

npm http 304 https://registry.npmjs.org/talk-lexer

npm http 304 https://registry.npmjs.org/sundae

npm http 304 https://registry.npmjs.org/mongoose

npm http 304 https://registry.npmjs.org/mailgun-js

npm http 304 https://registry.npmjs.org/validator

npm http 304 https://registry.npmjs.org/limbo

npm http 200 https://registry.npmjs.org/iconv-lite

npm http 304 https://registry.npmjs.org/node-push

npm http 200 https://registry.npmjs.org/moment

npm http 200 https://registry.npmjs.org/jade

npm WARN deprecated [email protected]: Jade has been renamed to pug, please install the latest version of pug instead of jade

npm http 304 https://registry.npmjs.org/multer

npm http 304 https://registry.npmjs.org/json-mask

npm ERR! cb() never called!

npm info lifecycle [email protected]~postinit: [email protected]

npm info ok `

Windows下启动报错

错误如下:

info 2016-07-24T21:44:38.428Z Account initialized
ReferenceError: Invalid left-hand side in assignment
  at exports.runInThisContext (vm.js:53:16)
  at Module._compile (module.js:373:25)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (D:\WebStormProjects\talk-os\talk-account\node_modules\coffee-script\lib\coffee-script\register.js:45:36)
  at Function.Module._load (module.js:300:12)
  at Module.require (module.js:353:17)
  at require (internal/module.js:12:17)
  at Object.<anonymous> (D:\WebStormProjects\talk-os\talk-api2x\node_modules\express\lib\router\layer.js:16:18)
  at Module._compile (module.js:409:26)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (D:\WebStormProjects\talk-os\talk-account\node_modules\coffee-script\lib\coffee-script\register.js:45:36)
  at Function.Module._load (module.js:300:12)
  at Module.require (module.js:353:17)
  at require (internal/module.js:12:17)
  at Object.<anonymous> (D:\WebStormProjects\talk-os\talk-api2x\node_modules\express\lib\router\route.js:18:13)
  at Module._compile (module.js:409:26)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (D:\WebStormProjects\talk-os\talk-account\node_modules\coffee-script\lib\coffee-script\register.js:45:36)
  at Function.Module._load (module.js:300:12)
  at Module.require (module.js:353:17)
  at require (internal/module.js:12:17)
  at Object.<anonymous> (D:\WebStormProjects\talk-os\talk-api2x\node_modules\express\lib\router\index.js:16:13)
  at Module._compile (module.js:409:26)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (D:\WebStormProjects\talk-os\talk-account\node_modules\coffee-script\lib\coffee-script\register.js:45:36)
  at Function.Module._load (module.js:300:12)
  at Module.require (module.js:353:17)
  at require (internal/module.js:12:17)
  at Object.<anonymous> (D:\WebStormProjects\talk-os\talk-api2x\node_modules\express\lib\application.js:17:14)
  at Module._compile (module.js:409:26)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (D:\WebStormProjects\talk-os\talk-account\node_modules\coffee-script\lib\coffee-script\register.js:45:36)
  at Function.Module._load (module.js:300:12)
  at Module.require (module.js:353:17)
  at require (internal/module.js:12:17)
  at Object.<anonymous> (D:\WebStormProjects\talk-os\talk-api2x\node_modules\express\lib\express.js:17:13)
  at Module._compile (module.js:409:26)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (D:\WebStormProjects\talk-os\talk-account\node_modules\coffee-script\lib\coffee-script\register.js:45:36)
  at Function.Module._load (module.js:300:12)
  at Module.require (module.js:353:17)
 at require (internal/module.js:12:17)
  at Object.<anonymous> (D:\WebStormProjects\talk-os\talk-api2x\server\server.coffee:1:11)
  at Object.<anonymous> (D:\WebStormProjects\talk-os\talk-api2x\server\server.coffee:1:1)
  at Module._compile (module.js:409:26)
  at Object.loadFile (D:\WebStormProjects\talk-os\talk-account\node_modules\coffee-script\lib\coffee-script\register.js:16:19)
  at Module.load (D:\WebStormProjects\talk-os\talk-account\node_modules\coffee-script\lib\coffee-script\register.js:45:36)
  at Function.Module._load (module.js:300:12)
  at Module.require (module.js:353:17)
  at require (internal/module.js:12:17)
  at Object.<anonymous> (D:\WebStormProjects\talk-os\app.coffee:13:10)
  at Object.<anonymous> (D:\WebStormProjects\talk-os\app.coffee:1:1)
  at Module._compile (module.js:409:26)
  at Object.exports.run (C:\Users\minzh\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\coffee-script.js:134:23)
  at compileScript (C:\Users\minzh\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\command.js:224:29)
  at compilePath (C:\Users\minzh\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\command.js:174:14)
  at Object.exports.run (C:\Users\minzh\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\command.js:98:20)
  at Object.<anonymous> (C:\Users\minzh\AppData\Roaming\npm\node_modules\coffee-script\bin\coffee:7:41)
  at Module._compile (module.js:409:26)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (module.js:343:32)
  at Function.Module._load (module.js:300:12)
  at Function.Module.runMain (module.js:441:10)
  at startup (node.js:139:18)
  at node.js:968:3

在linux和mac上好像没有这个问题,但是windows上确实有,
coffee app.coffee 在第一行就出错了,也不知道是什么问题,
还请麻烦查看一下。

@sailxjx @Boshen

使用primus无法联通

我们使用了iOS版本的primus的版本,但是无法连到我们自己利用源码搭建的简聊后台,想了解一下primus是否可以直接利用来搭建iOS的客户端和后端进行通信。

npm run init 报错

npm ERR! Windows_NT 10.0.10586
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "init"
npm ERR! node v4.4.0
npm ERR! npm  v2.14.20
npm ERR! code ELIFECYCLE
npm ERR! [email protected] init: `./init.sh`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] init script './init.sh'.
npm ERR! This is most likely a problem with the talk-os package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     ./init.sh
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs talk-os
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!
npm ERR!     npm owner ls talk-os

./notification Module 找不到

如题,日志如下:

main.a83421cf.js:1457 Uncaught Error: Cannot find module "./notification"
webpackMissingModule @ main.a83421cf.js:1457
(anonymous function) @ main.a83421cf.js:1457
__webpack_require__ @ vendor.88a6ec1f.js:51
(anonymous function) @ main.a83421cf.js:34
__webpack_require__ @ vendor.88a6ec1f.js:51
webpackJsonpCallback @ vendor.88a6ec1f.js:22
(anonymous function) @ main.a83421cf.js:1

调用 API 失败

请求 notifications 接口时报错,信息如下:

info 2016-04-01T03:54:37.676Z Req GET /notifications?_teamId=56fd15c1cc323cf1c8c08f15 _teamId 
[Fri, 01 Apr 2016 03:54:37 GMT] talk_web 56fd15b9cc323cf1c8c08f14 GET /v2/notifications?_teamId=56fd15c1cc323cf1c8c08f15 _teamId Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:47.0) Gecko/20100101 Firefox/47.0 200 3177 24.700 ms
info 2016-04-01T03:54:38.027Z Req GET /notifications?_teamId=56fd15c1cc323cf1c8c08f15&maxUpdatedAt=1459426754660&limit=10 _teamId,maxUpdatedAt,limit 
err! 2016-04-01T03:54:38.031Z GET /notifications?_teamId=56fd15c1cc323cf1c8c08f15&maxUpdatedAt=1459426754660&limit=10 [ 'host',
  'user-agent',
  'accept',
  'accept-language',
  'accept-encoding',
  'referer',
  'x-socket-id',
  'x-language',
  'x-requested-with',
  'content-type',
  'cookie',
  'connection',
  'pragma',
  'cache-control' ] [ '_teamId', 'maxUpdatedAt', 'limit' ] [] MongoError: Failed to parse: { find: "notifications", filter: { updatedAt: { $lt: new Date(1459426754660) }, isPinned: false, isHidden: false, team: ObjectId('56fd15c1cc323cf1c8c08f15'), user: ObjectId('56fd15b9cc323cf1c8c08f14') }, sort: { updatedAt: -1 }, limit: "10" }. 'limit' field must be numeric.
  at Function.MongoError.create (/Users/afc163/Projects/talk-os/talk-api2x/node_modules/mongodb-core/lib/error.js:31:11)
  at queryCallback (/Users/afc163/Projects/talk-os/talk-api2x/node_modules/mongodb-core/lib/cursor.js:196:36)
  at [object Object].Callbacks.emit (/Users/afc163/Projects/talk-os/talk-api2x/node_modules/mongodb-core/lib/topologies/server.js:116:3)
  at [object Object].messageHandler (/Users/afc163/Projects/talk-os/talk-api2x/node_modules/mongodb-core/lib/topologies/server.js:291:23)
  at Socket.<anonymous> (/Users/afc163/Projects/talk-os/talk-api2x/node_modules/mongodb-core/lib/connection/connection.js:285:22)
  at emitOne (events.js:77:13)
  at Socket.emit (events.js:169:7)
  at readableAddChunk (_stream_readable.js:146:16)
  at Socket.Readable.push (_stream_readable.js:110:10)
  at TCP.onread (net.js:523:20)

[Fri, 01 Apr 2016 03:54:38 GMT] talk_web 56fd15b9cc323cf1c8c08f14 GET /v2/notifications?_teamId=56fd15c1cc323cf1c8c08f15&maxUpdatedAt=1459426754660&limit=10 _teamId,maxUpdatedAt,limit Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:47.0) Gecko/20100101 Firefox/47.0 500 320 5.408 ms

版本:https://github.com/jianliaoim/talk-os/tree/3f64918151664ddd6b35e2af56f3a2ea250945bb

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.