enable auto recovery of bot
This commit is contained in:
parent
a5c58c2363
commit
f7dd65781f
2 changed files with 16 additions and 0 deletions
|
|
@ -145,6 +145,7 @@ namespace SecondBotEvents.Commands
|
|||
[ReturnHints("ok")]
|
||||
public object Logoff()
|
||||
{
|
||||
master.BotClient.flagLogoutExpected();
|
||||
GetClient().Network.BeginLogout();
|
||||
return BasicReply("ok");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,6 +15,12 @@ namespace SecondBotEvents.Services
|
|||
public GridClient client = null;
|
||||
public BasicConfig basicCfg = null;
|
||||
|
||||
protected bool LogoutExpected = false;
|
||||
public void flagLogoutExpected()
|
||||
{
|
||||
LogoutExpected = true;
|
||||
}
|
||||
|
||||
protected bool ExitBot = false;
|
||||
|
||||
protected Timer AutoRestartLoginTimer;
|
||||
|
|
@ -78,6 +84,15 @@ namespace SecondBotEvents.Services
|
|||
protected void BotDisconnected(object o, DisconnectedEventArgs e)
|
||||
{
|
||||
LogFormater.Info("Client service ~ Network disconnected: " + e.Message);
|
||||
if (LogoutExpected == false)
|
||||
{
|
||||
AutoRestartLoginTimer = new Timer();
|
||||
AutoRestartLoginTimer.Interval = 75 * 1000;
|
||||
AutoRestartLoginTimer.AutoReset = false;
|
||||
AutoRestartLoginTimer.Elapsed += RestartTimer;
|
||||
LogFormater.Info("Client service ~ Unexpected disconnect (starting reconnect timer for 75s)");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
protected void BotLoginStatus(object o, LoginProgressEventArgs e)
|
||||
|
|
|
|||
Loading…
Reference in a new issue