Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add setting of nick by channel participants and send / receive presence information #91

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

tarun018
Copy link
Contributor

No description provided.

Update roster encoding for MIX channel
Update roster parser and serializer

License:
This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.

Test-Information:
Added tests for joining and leaving channels via MIXRegistry, which passes.
Tested on Ubuntu 16.04 LTS.

Change-Id: Idb9683f45734ac58daa58736fe199dc014b9352a
License:
This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.

Test-Information:
Tests added for joining and leaving MIX channels as in XEP-0369, which passes.
Tested on Ubuntu 16.04 LTS.

Change-Id: Ib85d6e866e09db060b9b2da428f074dfbfd26385
This allows different client of same user to connect to server and retrieves already connected channels.

License:
This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.

Test-Information:
Tests added for joining and leaving MIX channels as in XEP-0369, which passes.
Tested on Ubuntu 16.04 LTS.

Change-Id: I31d0b68528ea0653685e6bcbc66e8131cb2c0eb4
Change-Id: I98bda1d18847cd1fabffde2c0f92fced31d2a5f3
@tarun018
Copy link
Contributor Author

tarun018 commented Aug 22, 2017

Client 1 connects first, joins channel, receives presence updates from other clients [none till now], set its nick and waits for messages/presence updates from other clients

./Swiften/Examples/MIXListAndJoin/MIXListAndJoin [email protected]/someelse mixtest example.com
Connecting...Connected
Request list of channels.
List of rooms at example.com
	1. coven - [email protected]

Request supported nodes for MIX channel: [email protected]
Nodes supported by channel [email protected]
	1. urn:xmpp:mix:nodes:participants
	2. urn:xmpp:mix:nodes:messages
	3. urn:xmpp:mix:nodes:presence
	4. urn:xmpp:mix:nodes:jidmap

Already Joined channels: 
No channels already joined.


Successfully joined channel [email protected]
[warning] Swiften/MIX/MIXRegistry.cpp:38 joinChannel: Channel already joined: [email protected]

Nick Assigned: some

Participants of channel [email protected]
	1. 0b8f6eb8-f42e-4ad8-b059-7052224790dc#[email protected] Nick: [some]

Lookup of participant in channel [email protected]
	1. 0b8f6eb8-f42e-4ad8-b059-7052224790dc#[email protected] - [email protected]

Client is now online 

[ [email protected] ] : fff754f9-a050-48ad-87d8-3178fab98774#[email protected] is available 
[ [email protected] ] : Hello, I am here! yetanother
[ [email protected] ] : 8cb2cef7-37d6-47f4-9af4-42796043bb33#[email protected] is now unavailable 
[ [email protected] ] : 8cb2cef7-37d6-47f4-9af4-42796043bb33#[email protected] is available 
[ [email protected] ] : Hello, I am here! another

Client 2 connects next, joins channel, receives presence updates from Client 1, set its nick, sends a message (received by Client 1) and waits for messages/presence updates from other clients

./Swiften/Examples/MIXListAndJoin/MIXListAndJoin [email protected]/someelse mixtest example.com
Connecting...Connected
Request list of channels.
List of rooms at example.com
	1. coven - [email protected]

Request supported nodes for MIX channel: [email protected]
Nodes supported by channel [email protected]
	1. urn:xmpp:mix:nodes:participants
	2. urn:xmpp:mix:nodes:messages
	3. urn:xmpp:mix:nodes:presence
	4. urn:xmpp:mix:nodes:jidmap

Already Joined channels: 
No channels already joined.


Successfully joined channel [email protected]
[warning] Swiften/MIX/MIXRegistry.cpp:38 joinChannel: Channel already joined: [email protected]

[ [email protected] ] : 0b8f6eb8-f42e-4ad8-b059-7052224790dc#[email protected] is available 
Nick Assigned: yetanother

Participants of channel [email protected]
	1. fff754f9-a050-48ad-87d8-3178fab98774#[email protected] Nick: [yetanother]
	2. 0b8f6eb8-f42e-4ad8-b059-7052224790dc#[email protected] Nick: [some]

Lookup of participant in channel [email protected]
	1. 0b8f6eb8-f42e-4ad8-b059-7052224790dc#[email protected] - [email protected]
	2. fff754f9-a050-48ad-87d8-3178fab98774#[email protected] - [email protected]

Client is now online 

[ [email protected] ] : 8cb2cef7-37d6-47f4-9af4-42796043bb33#[email protected] is now unavailable 
[ [email protected] ] : 8cb2cef7-37d6-47f4-9af4-42796043bb33#[email protected] is available 
[ [email protected] ] : Hello, I am here! another

Client 3 connects next, joins channel, receives presence updates from Client 1 and 2, set its nick, goes offline, comes online after 3 seconds, again receive presence updates from channel, sends a message (received by Client 1 and 2) and waits for messages/presence updates from other clients

./Swiften/Examples/MIXListAndJoin/MIXListAndJoin [email protected]/someelse mixtest example.com
Connecting...Connected
Request list of channels.
List of rooms at example.com
	1. coven - [email protected]

Request supported nodes for MIX channel: [email protected]
Nodes supported by channel [email protected]
	1. urn:xmpp:mix:nodes:participants
	2. urn:xmpp:mix:nodes:messages
	3. urn:xmpp:mix:nodes:presence
	4. urn:xmpp:mix:nodes:jidmap

Already Joined channels: 
No channels already joined.


Successfully joined channel [email protected]
[warning] Swiften/MIX/MIXRegistry.cpp:38 joinChannel: Channel already joined: [email protected]

[ [email protected] ] : fff754f9-a050-48ad-87d8-3178fab98774#[email protected] is available 
[ [email protected] ] : 0b8f6eb8-f42e-4ad8-b059-7052224790dc#[email protected] is available 
Nick Assigned: another

Participants of channel [email protected]
	1. 8cb2cef7-37d6-47f4-9af4-42796043bb33#[email protected] Nick: [another]
	2. fff754f9-a050-48ad-87d8-3178fab98774#[email protected] Nick: [yetanother]
	3. 0b8f6eb8-f42e-4ad8-b059-7052224790dc#[email protected] Nick: [some]

Lookup of participant in channel [email protected]
	1. 0b8f6eb8-f42e-4ad8-b059-7052224790dc#[email protected] - [email protected]
	2. fff754f9-a050-48ad-87d8-3178fab98774#[email protected] - [email protected]
	3. 8cb2cef7-37d6-47f4-9af4-42796043bb33#[email protected] - [email protected]

Client is going offline 

Client is now online 

[ [email protected] ] : fff754f9-a050-48ad-87d8-3178fab98774#[email protected] is available 
[ [email protected] ] : 0b8f6eb8-f42e-4ad8-b059-7052224790dc#[email protected] is available

Change-Id: Iab547e141952b29f4c9703035d2a1808927554c4
Change-Id: Ie4a349c6b9ef35f08f367885755446c316f1e20e
…p of participants proxy JID

Adds sending message to channel and server forwarding message to participants and reflecting back message to originator.
Adds JID lookup request by client and corresponding response by MIX Mock Server.
Adds requesting participant list by client and response from mock server.

License:
This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.

Change-Id: I53091a13422598f200134ac08cc3095cd140b792
Change-Id: Ie68aba5e6ab3995b8195056c6a1cc20e69edac2e
…ce information

User can now set their nick by sending a request to channel
User can go offline, and share their updated presence with other online clients in the channel
When client comes online after online, client receives full presence status of the channel

License:
This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.

Change-Id: I3cd202dfe7526406181db85c7a1c41a2a618bc0a
@tarun018 tarun018 changed the title Add setting of nick by channel participants Add setting of nick by channel participants and send / receive presence information Aug 24, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant