Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/uzulla/yancha
yancha is Yet Another Nerwork CHAt. (old name yairc) by Hachioji.pm
https://github.com/uzulla/yancha
Last synced: about 1 month ago
JSON representation
yancha is Yet Another Nerwork CHAt. (old name yairc) by Hachioji.pm
- Host: GitHub
- URL: https://github.com/uzulla/yancha
- Owner: uzulla
- Created: 2012-04-20T06:35:57.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2015-12-20T05:08:54.000Z (about 9 years ago)
- Last Synced: 2024-04-18T21:14:11.061Z (9 months ago)
- Language: JavaScript
- Homepage:
- Size: 1.54 MB
- Stars: 39
- Watchers: 17
- Forks: 15
- Open Issues: 13
-
Metadata Files:
- Readme: README.mkd
Awesome Lists containing this project
README
# yancha [![Build Status](https://travis-ci.org/uzulla/yancha.png?branch=master)](https://travis-ci.org/uzulla/yancha)
yancha (旧名yairc) はログの保全、リアルタイム性、モバイル端末への対応を重視した、Perlで作成されたチャットシステムです。サンプル
[http://yancha.hachiojipm.org:3000/](http://yancha.hachiojipm.org:3000/)サーバサイドはPerl、クライアントサイトはHTML+JSで作成され、PocketIOによりWebsocketで通信しています。
## yanchaの目標 ##
IRCなどの不便な点をカバーするチャットシステムを作る事です。具体的には
* ログの消失 → 全件をDBに永続保存
* 多チャンネル接続時の一覧性 → チャンネルではなく、ストリームとタグを採用
* 高度な引用方法 → コード貼り付け時のシンタックスハイライトや、インライン画像表示など
* セキュリティ → 認証によりユーザ詐称の回避、通信の暗号化
* モバイル端末への対応 → スマートフォン対応
* 外部連携 → 利用しやすいAPIを用意
* ログの再利用 → チャットログの引用機能
* 外部SNSとの連携 → retweet的機能などが目標となっています。
(上記は実装中や、構想段階で実装されていないものも含みます)## サーバサイド動作環境 ##
Perl 5.12以降(サンプルサイトは5.14で運用しています)
必要なモジュールは Makefile.pl を参照下さい。## クライアント動作環境 ##
* Websocketをサポートするモダンブラウザ(Chrome,Firefox等)
* iOS5以降、MobileSafari(iPhone/iPad)
* Android 2.3以降、Webview等## インストール方法 ##
1. `$carton install` を実行して下さい
2. [DB に MySQL を利用したい場合] `$carton install --cpanfile cpanfile.mysql` を実行して下さい
3. データベースを用意し(現在はMySQL、SQLiteに対応)、db/init.sql(init_sqlite.sql)にて初期化を行って下さい。
4. config.pl.sampleをconfig.plにコピーし必要な情報を設定下さい。最低限DB接続情報の設定が必要です。
5. start.shを実行することで起動ができます。## 備考 ##
start.shを以下のように記述することで、各種ログが取得出来ます
```
#!/bin/sh
export POCKETIO_CONNECTION_DEBUG=1
export YANCHA_DEBUG=1
twiggy -l :3000 --access-log access_log chat.psgi >> yancha_log 2>&1
```## よくある質問 ##
Q.
yanchaを起動できたけど、どうすればTwitterでログインできるの?A.
まず http://dev.twitter.com/ に行って、アプリケーションの登録を行ってください。
その際、Callback URL というものを入力できる箇所がありますので、(あなたのサーバ上のyanchaのURL)/login/twitter
を指定してください。
例:
yanchaのURLが "http://isu.mohikan.example/yancha" であれば、Callback URLはhttp://isu.mohikan.example/yancha/login/twitter
となります。
アプリケーションの登録ができたら、config.plでConsumer Key および Consumer Secret を以下のように設定します。
'server_info' => {
... 中略 ...
auth_endpoint => {
... 中略 ...
'/login/twitter' => [
'Yancha::Auth::Twitter' => {
consumer_key => 'ここにConsumer Keyを入力',
consumer_secret => 'ここにConsumer Secretを入力',
}, => { description => 'Twitter!' },
],
},
... 中略 ...
},最後にyanchaを再起動すれば、Twitter経由でのログインが有効になります。
## お役立ち情報 ##
その他情報はWIkiをご参照ください
https://github.com/uzulla/yancha/wiki
## ライセンスについて ##
MIT License です。
http://www.opensource.org/licenses/mit-license.php