Monday, August 5, 2013

Configuring Pidgin with Avaya OneX Portal XMPP Server



Background

Avaya's OneX Portal has a built in Jabber/XMPP server (OpenFire).  This service is easy to connect to, however the message "Invalid Login" shows up when you try to connect using a 3rd party IM client, such as Pidgin.  This was due to incorrect documentation from Avaya (usernames with spaces needed underscores). Since there wasn't any help online for this, here are my steps for quickly getting Pidgin working with your Avaya OneX instant messenger. (Also works for Mac OSX iChat)

Steps

  1. Have the network administrator create a DNS record for the appropriate named service.  This FQDN should have been established while installing and configuring OneX Portal.
    i.e. Alias record:  onex.yourcompany.com
  2. In Avaya IP Office manager, the the username must be configured to use OneX portal.
    - Launch Manager
    - Click Users (It's not alphabetic, it's under Extension)
    - Select the Extension/User you would like to enable chat for
    - Either change the profile to Teleworker or click the "one-X Portal Services" checkbox for that user
    - IMPORTANT:  Set a Login Code using Telephone, Supervisor Settings
    - Click the save icon on the toolbar.  When prompted select merge.
    - Make note of the Name.  It may be "John Doe" or it maybe "Jonathan Do" with the last letter cut off.  This is important.
  3. In Pidgin, click Accounts, Manage Accounts, Add
    - For Protocol, select XMPP (Jabber)
    - For username, put: (example) John_Doe (replace space with underscore)
    - For Domain, put (example) onex.yourcompany.com
    - For Password, put the "Login Code" just created
    - For Local Alias, put "John Doe" as you would like it to appear on your PC
    - No advanced settings should need to be configured.  Default port of 5222 should work.  Optionally, - you may want to disable the Proxy settings.
  4. For Mac OSX iChat users, the above steps should work just fine, with one exception, you must format the username (example) John_Doe@onex.yourcompany.com, leave server and port default.

    Troubleshooting:  If your username is very long it might be truncated.  If unsure, see the full list of usernames on the OneX Portal Server located here:  "C:\Program Files (x86)\Avaya\oneXportal\scs\etc\sipxpbx\xmpp-account-info.xml"
  5. *NOTE:* For external access, some ports will need to be forwarded outside of your firewall, which is outside of the scope of this tutorial.

Trying It Out

  1. Once successfully connected, under "Broadcast Groups" should be "everyone", and under "system" should be "mybuddy" with an Avaya avatar.
  2. Open a new conversation window by double-clicking mybuddy.
  3. OneX Portal has the ability to initiate a phone call via IM (it won't actually call from within the software, it will simply ring your desk line).
    call 3001 from work  (where 3001 is the number you'd like to dial).  Work can be replaced with your phone extension.
  4. To test chat, set up a second user on the phone system and they should automatically add to your buddy list.
  5. Moving buddies around into groups does not work well, so you may choose to leave the default "system" and "Broadcast Groups" group names.

Troubleshooting

If you receive an error Input/Output Error after adding buddies to your "Personal" tab in the web client, Pidgin's login process will break and won't allow you to login anymore.  (possibly related to bug #14797)
  1. Sign into the web interface for Avaya OneX Portal
  2. Remove the buddies from the Personal tab of the contacts list
  3. Sign in as admin to the OpenFire administrative console
    The admin console is disabled by default, enable it via:
    AdminConsoleManager.bat enable
  4. Locate the user with the login issue and delete them
  5. Restart the Avaya OneX Portal Service
Update (2016-04-11)

If newer versions of OpenFire say "Not authorized", the passwords may have gotten reset.  To fix this:

  1. Open openfire.exe from Avaya\oneXportal\Openfire\bin
  2. Click "Launch Admin" to get to the OpenFire Administrative console (Login with default credentials)
  3. Under users/groups, locate a user, click on it
  4. Click on Password, update the password to what it used to be (i.e. a 4-digit PIN or the phone extension, etc)
  5. Try to reconnect using Pidgin
  6. Repeat for all users :)
If OpenFire is not set to start automatically, install it as a service via openfire-service.exe /install per https://community.igniterealtime.org/thread/39237


-Tres

No comments: