Sunday, January 03, 2016

Xmpp Account Creation

Update: If you happen have two google accounts, just make these to accounts known to each other by authorizing the contact and use one account for yourself and second account for your chat-bot(in google's security settings of the second account, set "Allow less secure apps: ON").


This guide will help you to create an xmpp master and slave accounts on public xmpp server (tested servers: xabber.de/jabber.de/ubuntu-jabber.de)

Why xmpp master/slave account creation:
Xmpp has been widely used as a chat-client between humans, The technique explained here uses Xmpp protocol for remotely accessing and controlling the embedded devices over the public internet. Xmpp was chosen because of its wide adaption, security and ease of connectivity reasons.

Typical client-server communication over the public internet requires special setup as server's firewall needs to expose its port and the same has to be accessible via domain name which requires special dynamic-dns registration process. This is the typical use case for home routers or 3g-data-connected-phones which are provided with non-static public ip by the provider. Solutions discussed here is an attempt to overcome these connectivity challenges by using existing xmpp public chat server infrastructure for IoT stuff.

In this scenario, Master account is for a person who wants to control his/her slave-device from a smart-phone or PC(e.g, xabber android app or psi pc client), whereas slave-device, typically a remotely deployed Linux machine(raspberry pi, beaglebone,etc...) acts as a chat bot using slave-xmpp-account. As long as Master and Slave devices are connected to internet, they can communicate to each other irrespective of their deployed location on earth.

Ok lets get started!!

1)Install Psi xmpp client on your windows machine
2)Start Psi, General==>Account Setup
























3)click on Add















4)As shown in the picture below, follow 1 and 2

5)Enter public server as xabber.de and click on Next























6)After pressing "Next" it might take a while.. and then next box pops up
7)Field-1 shows username(in your case, choose a different username of choice)
8)Enter your own password as shown in Field-2
9)Open the Captcha link of Field-3 in a browser and the number shown by browser should be entered in Field-4
10)click "Next"






















11)If everything goes well, then you will see following dialog box, Click on "Ok"


12)A new box pops up as shown below, just click "Save"






























13)Next box pops up as shown below, just click "OK"








14)As shown below Go back to Psi main window, right-click on "master" entry ==> Status==>Online
























15)Next window pops up as shown below(Enter, fullname/Nickname as shown in Field-1, and click "close")


















16)Account creation for Master is done, now logout by right-clicking on "Master" entry ==>Status==>Offline (as shown below)


17)Repeat steps 1 to 15 for Slave account creation, pay attention at Step-4 and use string "Slave" and at step 7 and 8 use different username and password for slave. In step 15, use "Slave" as Full Name and Nickname.

18)Once the master and slave accounts are created, click on General==>AccountSetup and click on both the check-boxes of Master and Slave Accounts and Click Close button as shown below.















19)right click on "Slave" ==>Status ==>Online (wait for grey colored star to change its color to yellow, have patience, it might take some time), repeat the same for "Master", if everything goes well, you should see following box where both the master and slave stars are turned into yellow indicating as online.
























20)After creation of master and slave accounts, its now time to pair them to allow sending and receiving messages to each other. Its an authorization process defined by the xmpp standard to block unsolicited messages being sent without prior agreement between the chat clients.

21)before proceeding with next section, it is important to ensure that master and slave chat clients are able to send/receive messages(try some hi/hello messages between with master/slave clients to see if message can be sent/received at both ends)

22)what next? proceed to my next blog about Rbox - A Lightweight Linux system for IoT.

1 comment:

www.rushessay.com review said...

Good and very informative post. You have shown step by step procedure to create Xmpp account which will made it easy for people to create the account