powered by Jive Software

Spectrum install Openfire


I have a very simple requirement where currently I am using Kraken IM Gateway on my openfire but it does allow service discovery only within openfire account and I am currently in a planning to use spectrum to add transports like Facebook and Yahoo to my gtalk account. So far I was able to install ubuntu 10.04 and spectrum. But according to the tutorial below I am still not able connect “external components” and configure spectrum on open fire.

I am not so expert but at least as per WIKI I installed spectrum properly and even tried copying the configuration through spectrum.cfg.example to a new facebook.cfg but still some points are there which I need to ask as I am hosting spectrum from my laptop through dyndns paid account.

Tutorial Link :

Doubts I have :

According to the cfg file below :

  1. Server = IP or Dyndns URL ?
  2. What is COMPONENT JID
  3. Component secret and port I am using as per my openfire configuration
  4. filetransfer_bind_address= (Is it necessary to fill up)
  5. filetransfer_public_address= (is it necessary to fill up)
  6. Should i keep Database location as same as defined below by default (/var/lib/spectrum/$jid/database.sqlite) ?

I am extremely sorry If i am wasting any of the programmers time over here but i am only trying to use spectrum so later on I can be a part of a support here helping newbies by troubleshooting their posted issues.

# enable this spectrum instance
enable=1 # one of: aim, facebook, gg, icq, irc, msn, myspace, qq, simple, xmpp, yahoo
protocol=facebook # component ip
server=example.dyndns.org # if use_proxy is 1, the http_proxy env var will be used as the proxy server
# for example export http_proxy="http://user:passwd@your.proxy.server:port/" use_proxy=0 # component JID
jid=$admin@example.dyndns.org # component secret
password=secret # component port
port=5275 config_interface = /var/run/spectrum/$jid.sock # IP:port where filetransfer proxy binds to. This has to be public IP.
#filetransfer_bind_address= # IP:port which will be sent in filetransfer request as stream host.
#filetransfer_public_address= # admin JIDs - Jabber IDs of transport administrators who have access to admin adhoc commands
# separated by semicolons
#admins=admin@vboxxmpp.dyndns.org # directory where downloaded files will be saved
filetransfer_cache=/var/lib/spectrum/filetransfer_cache # URL used to acces filestransfer_cache directory from the web.
filetransfer_web=http://example.com/files/ # if filetransfer_force_cache_storage is 1, files received from legacy networks
# are always stored on server and link is sent to XMPP user
#filetransfer_force_cache_storage=0 # name of transport (this will appear in service discovery)
name=My ICQ Transport # default language
language=en # transport features separated by semicolons
# combination of: avatars, chatstate, filetransfer
# if commented, all features will be used
# This variable is DEPRECATED and will be removed in future versions. Use [features] instead.
#transport_features = avatars;chatstate;filetransfer # if vip_mode is 1, users are divided to 2 groups according to 'vip' database field
vip_mode=0 # if vip_mode is 1, you can set transport to be availabe only for VIP users by setting only_for_vip to 1.
only_for_vip=0 # if vip_mode is 1 and only_for_vip is 1, users can connect from these servers even they are not VIP.
# This feature is useful, if you want to enable transport only for users from your server, but also want
# to give access to VIP users from other servers (for example from GTalk)
# seperated by semicolons
#allowed_servers=localhost # transport features separated by semicolons which will be used for VIP users.
# combination of: avatars, chatstate, filetransfer
# if commented, all features will be used
# This variable is DEPRECATED and will be removed in future versions.  Use [vip-features] instead.
#vip_features = avatars;chatstate;filetransfer # pid file
pid_file=/var/run/spectrum/$jid.pid # require_tls to connect legacy network
#require_tls=false # Eventloop used by Spectrum. Allows to change default use of poll to epoll,
# which should be faster and handles more connections better.
# WARNING: some 3rd party libpurple protocol plugins are not prepared to be
# used with different eventloop, but protocols included in libpurple by default
# works OK.
#eventloop=glib [registration]
# Set to 0 to disable transport registration to everyone except
# people from host from allowed_servers list.
#enable_public_registration=1 # You can override username registered by transport user. This is useful
# for example if you want to let users to register only their Facebook name
# and internally connect them to facebook_name@chat.facebook.com.
# $username variable is replaced by username which has been registered
# by particular user. #username_mask = $username@chat.facebook.com # This option allows you to white-list newly created accounts according
# to regexp. for example allowed_usernames=*.\.gmail\.com$ will allow only
# GTalk users to register. If you use username_mask, then username_mask is
# applied before this option.
#allowed_usernames=regexp # Label used to described username field in registration form
#username_label = Facebook username # This variable overrides default instructions text in registration form.
#instructions = Type your Facebook name here: # Used to configure extra fields which are visible in transport registration.
# separated by semicolons.
# Currently only "encoding" is supported.
# set "extra_fields=" to disable encoding in registration form.
#extra_fields=encoding # Transport features, all features are enabled by default.
#statistics=1 # Transport features for VIP users, all features are enabled by default.
#chatstates=1 [logging]
# log file, needs to be unique for each spectrum instance
log_file=/var/log/spectrum/$jid.log # log areas
# combination of: xml, purple
log_areas=xml;purple [database]
# mysql or sqlite
type=sqlite # hostname (not needed for sqlite)
#host=localhost # username (not needed for sqlite)
#user=user # password (not needed for sqlite)
# sqlite: set path to database file here
# mysql: set to name of database
# table prefix for multiple transport instances sharing the same database
#prefix=icq_ [purple]
# avatar, vcard, roster storage
# needs to be unique for each spectrum instance

I am in the same boat but no one seems to beable to give CLEAR instructions on how to config spectrum. Someone should just create another plugin like kraken.