ejabberd - Comments for "Jabber Commercial Version" https://www.ejabberd.im/node/78 en If you allow it, this script https://www.ejabberd.im/node/78#comment-224 <p>If you allow it, this script can be maybe included in the ejabberd distribution in the tools directory...in that case create a bugzilla entry or send it to the mailing list. :-)</p> <p>--<br /> sander</p> Fri, 25 Feb 2005 22:58:21 +0000 sander comment 224 at https://www.ejabberd.im Thanks... That worked. VCard? https://www.ejabberd.im/node/78#comment-215 <p>THanks that worked!!!</p> <p>Rich</p> Wed, 16 Feb 2005 17:31:40 +0000 richmasci comment 215 at https://www.ejabberd.im You're right, on ejabberd_ctl https://www.ejabberd.im/node/78#comment-198 <p>You're right, on ejabberd_ctl.erl, the line that says <pre>out, % ask: out=send request, in=somebody requests you, none</pre> should say <pre>none, % ask: out=send request, in=somebody requests you, none</pre> I've updated my patch.</p> <p>You can do this: <ol> <li>Modify manually that line on your previously patched source code </li><li>Compile ejabberd </li><li>Restart ejabberd </li><li>Run again the same commands you ran to add the roster items the last time </li><li>When users reconnect they will see it right </li></ol> </p> <p>I've verified that you will not get duplicated roster items. Probably the new roster items replace the old ones, so if your users modified them they'll lose the changes (nickname and group). </p> Thu, 10 Feb 2005 22:48:52 +0000 mfoss comment 198 at https://www.ejabberd.im this experimental patch... https://www.ejabberd.im/node/78#comment-184 <p>The patch worked great and the rosters were added just fine. The only problem is that the Pending field in the database states that it's 'out' so the users rosters all appear to be pending. Is there a way to change this so that the Pending field is set to 'none'? </p> <p>I really appreciate the help you all have provided so far. eJabber is an awesome server, and we love it compared to the commercial version of Jabber.</p> <p>Thanks,<br /> Rich</p> Thu, 10 Feb 2005 15:28:14 +0000 richmasci comment 184 at https://www.ejabberd.im RE:patch to add roster items on command line https://www.ejabberd.im/node/78#comment-149 <p>We were able to add 6000+ registered users from the commercial version of Jabber into eJabber, and so far things are running fairly well. The only problem is that the rosters show the users configured as being "Not Authorized." Is there something we can do to the database to set these as "authorized?" There are some clients such as Exodus that doesn't handle this very well.</p> <p>Thanks for all your help,</p> <p>Rich</p> Mon, 07 Feb 2005 18:31:11 +0000 richmasci comment 149 at https://www.ejabberd.im Give it a try https://www.ejabberd.im/node/78#comment-126 WORKED GREAT!! Here is the TCL script I used to convert from the Commercial version of Jabber: <pre> #!/usr/bin/tclsh package require xml # XML Package helps get the password # This is the directory structure of our Commercial Jabber server. # # spool/jabber:component:tc:roomlist # spool/jabber:component:tc:roomstate # spool/jabber:iq:auth # spool/jabber:iq:auth:0k # spool/jabber:iq:last # spool/jabber:iq:register # spool/jabber:iq:roster # spool/jabber:x:offline # spool/jabberim:prefs # spool/jabberim:textconferencing set timeout -1 set dir "/<path to spool dir>" set server "<servername>" # If a user hasn't logged in for 180days the login is discarded. set cuttime [expr [clock seconds] - (180*24*60*60)] proc cdata {data args} { global passwd set passwd $data } # Open a pipe to ls. TCL treats this pipe like it would a file for # easy reading of the output. set dirlist [open "|ls $dir/jabber:iq:auth/"] while {[gets $dirlist dname] >=0} { if {[file exists $dir/jabber:iq:last/$dname]} { file stat $dir/jabber:iq:last/$dname ftime } else { continue } # Ignore user who hasn't logged in for 180 days if {$ftime(mtime) &lt;= $cuttime} {continue} # For some reason Jabber puts a '.' at the end of each file, need to trim that off. set usrname [string trimright $dname "."] # process the xml file to get the passwd. set parser [::xml::parser -characterdatacommand cdata] set ch [open $dir/jabber:iq:auth/$dname r] fconfigure $ch -encoding shiftjis $parser parse [read $ch] close $ch # Register the user set status [catch {exec sudo ejabberdctl register $usrname $passwd} result] puts stdout "Adding $usrname: Register Result $result, Status $status" if {[file exists $dir/jabber:iq:roster/$dname]} { # xml for the roster was very convoluted... used Unix commands to parse. set pipe [open "|cat $dir/jabber:iq:roster/$dname | xml2 | egrep \"jid|name\" | cut -f2 -d \"=\""] } else { continue } while {[gets $pipe line]>=0} { gets $pipe name set line [lindex [split $line "@"] 0] # add user's roster. I added them all to the "Jabber" group regardless of # where the user had it before. You could probably spend a little time and # parse the xml better. set status [catch {exec sudo ejabberdctl add-roster $usrname $line $server \"$name\" Jabber both} result] puts stdout "\tejabberdctl add-roster $usrname $line $server \"$name\" Jabber both" } close $pipe }</servername></path></pre> Fri, 28 Jan 2005 19:15:15 +0000 richmasci comment 126 at https://www.ejabberd.im patch to add roster items on command line https://www.ejabberd.im/node/78#comment-125 <blockquote>Is there a way to administrate rosters from the commandline?</blockquote> <p>Not in current ejabberd.</p> <p>You can try <a href="/ejabberdctl-extra">ejabberdctl-extra</a>, it adds a new option to ejabberd_ctl, so you can make something like: <pre>ejabberd_ctl mynode@mymachine add-rosteritem peter mike server.com MiKe Employees both</pre> And it adds mike@server.com to your local user 'peter' roster, with nick 'MiKe', on the group 'Employees' and subscription type 'both'.</p> <p>Note that it only adds one roster item. You will probably need to add the other roster item if he's a local user: add peter@myserver.com to your local user mike. This tool does NOT allow spaces in names, so you must ensure there're no groups or nicks with spaces. </p> Fri, 28 Jan 2005 12:47:16 +0000 mfoss comment 125 at https://www.ejabberd.im