Welcome to mirror list, hosted at ThFree Co, Russian Federation.

README.md - github.com/nextcloud/jsxc.nextcloud.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 2c05603bf6781bb99bbeb0cd15152c4d899df31b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# Owncloud JavaScript Xmpp Client

__Beware! This is beta software.__

Real-time chat app for OwnCloud. This app requires external XMPP server (openfire, ejabberd etc.).

### Features
- integration into existing ui
- one-to-one conversation (XMPP)
- encrypted one-to-one conversation (OTR)
  - use of whitespace tags to start a OTR session
- user verification (SMP)
- encrypted one-to-one video call (WebRTC)
  - [TURN REST API](http://tools.ietf.org/html/draft-uberti-behave-turn-rest-00)
  - fullscreen mode
  - snapshots
- auto link-detection
- emotions
- roster management 
- multi-language support (de, en)
- multi tab support
- vCard avatar

### Supported protocols
- XMPP Core (RFC6120)
- XMPP IM (RFC6121)
- Bidirectional-streams Over Synchronous HTTP (XEP-0124)
- XMPP Over BOSH (XEP-0206)
- Service Discovery (XEP-0030)
- CAP (XEP-0127)
- Jingle (XEP-0166)
- Jingle RTP Sessions (XEP-0167)
- vcard-temp (XEP-0054)
- vCard-Based Avatars (XEP-0153)

### Supported browsers
- Full support for __Chrome__ and __Firefox__.
- __IE__ doesn't support multi tabs, WebRTC and Notifications.
- __Safari__ doesn't support WebRTC and Notifications.

### Planned features
- multi user chat
- video conference
- encrypted file transfer 

## User notes

Please download the latest version from https://github.com/sualko/ojsxc/releases and copy the "build" folder to your app directory and rename it to "ojsxc". Now go into your app menu and enable the "JavaScript Xmpp Chat".

### Configuration

You can configure oJSXC in the admin panel of owncloud.

<dl>
	<dt>BOSH url</dt>
	<dd>The url to your bosh server. Please beware of the SOP. If your XMPP server doesn't reside on the same host as your OwnCloud, use the Apache ProxyRequest or modify the CSP by defining 'custom_csp_policy' in OwnCloud's config.php.
	<b>Example:</b>
<pre><code>/* Custom CSP policy, changing this will overwrite the standard policy */	
"custom_csp_policy" => "default-src 'self' https://your.xmpp.server.com:PORT; script-src 'self' 'unsafe-eval'; 
	style-src 'self' 'unsafe-inline'; frame-src *; img-src *; font-src 'self' data:; media-src *",</code></pre>
	</dd>

	<dt>XMPP domain</dt>
	<dd>The domain of your Jabber ID.</dd>

	<dt>XMPP resource</dt>
	<dd>The resource of your JID. If you leaf this field blank a random resource is generated.</dd>

	<dt>TURN url</dt>
	<dd>The url to your TURN server. You get a free account on http://numb.viagenie.ca</dd>

	<dt>TURN username</dt>
	<dd>If no username is set, the TURN REST API is used.</dd>

	<dt>TURN credential</dt>
	<dd>If no credential is set, the TURN REST API is used.</dd>

	<dt>TURN secret</dt>
	<dd>Secret for TURN REST API.</dd>

	<dt>TURN ttl</dt>
	<dd>Lifetime of credentials.</dd>
</dl>

### Screenshots

![Screenshot 1](https://raw.github.com/sualko/ojsxc/master/documentation/screenshot_1.png)
![Screenshot 2](https://raw.github.com/sualko/ojsxc/master/documentation/screenshot_2.png)
![Screenshot 3](https://raw.github.com/sualko/ojsxc/master/documentation/screenshot_3.png)

## Developer notes

Please execute the following commands to get a copy of the code:

```
git clone https://github.com/sualko/ojsxc/
git submodule update --init --recursive
```

### Libaries
- jQuery (http://jquery.com/)
- Strophe.js (http://strophe.im/strophejs/)
- Strophe.js Plugins (https://github.com/strophe/strophejs-plugins)
- OTR (https://github.com/arlolra/otr)
- strophe.jingle (https://github.com/ESTOS/strophe.jingle)

### Events
coming soon...