I've also not used hOS.dll for my statusbar but I put my statusbar on timers for the four different areas of information so each one updates itself.

Code:
//dll hOS.dll AddStatusBar | //dll hOS.dll SBSetData 1 +n 1 $chr(160) Nickname: $me | .timer662 -o 0 1 $mircnick


Code:
alias mircnick { 
  if ($dialog([color:blue]statusbar[/color]) == $null) { .timer662 off }
  else { did -o [color:blue]statusbar[/color] 1 2 + 2 Nick: $me }
}


Change the blue information to the name of your statusbar dialog. I'm not sure this would work for you because I did my statusbar alot differently then you did yours but you atleast have a general idea as to what can be done so to make your statusbar update itself. For each peice of info in your statusbar you can use a timer.

NOT TESTED AND PROBABLY WON'T WORK FOR YOUR STATUSBAR.