Пример #1
0
        protected async void StatusMessageHandler(object sender, StatusMessageEvent e)
        {
            bool apply_update = true;

            if (LastNetworkEventArgs != null)
            {
                if ((LastNetworkEventArgs.sim == e.sim) && (LastNetworkEventArgs.connected == e.connected))
                {
                    apply_update = false;
                }
            }
            if (apply_update == true)
            {
                LastNetworkEventArgs = e;
                if (e.connected == true)
                {
                    await DiscordClient.SetGameAsync("Sim:" + e.sim);

                    await DiscordClient.SetStatusAsync(Discord.UserStatus.Online);
                }
                else
                {
                    await DiscordClient.SetGameAsync("Logged out");

                    await DiscordClient.SetStatusAsync(Discord.UserStatus.Idle);
                }
            }
        }
Пример #2
0
 protected void statusMessage(object o, StatusMessageEvent e)
 {
     if (controler.BotReady() == true)
     {
         if (attachedEvents == false)
         {
             attachedEvents = true;
             LoadFromDB();
             SetupMonitor();
             attachEvents();
         }
         bool     send = false;
         DateTime Dt   = DateTime.Now;
         if (Dt.Minute != lastMinTick)
         {
             lastMinTick = Dt.Minute;
             ClockEvent();
             CleanupLockout();
             if (requestedGroupdetails == false)
             {
                 requestedGroupdetails = true;
                 foreach (UUID groupuuid in group_membership_update_q.Keys)
                 {
                     controler.getBot().GetClient.Groups.RequestGroupMembers(groupuuid);
                 }
             }
         }
         if (Dt.Second != lastSecTick)
         {
             lastSecTick = Dt.Second;
             groupMembershipChecks();
         }
         if (LastStatus == null)
         {
             send = true;
         }
         else if (e.connected != LastStatus.connected)
         {
             send = true;
         }
         else if (e.sim != LastStatus.sim)
         {
             send = true;
         }
         if (send == true)
         {
             LastStatus = e;
             Dictionary <string, string> args = new Dictionary <string, string>();
             args.Add("connected", e.connected.ToString());
             args.Add("sim", e.sim);
             TriggerEvent("StatusMessage", args);
         }
     }
 }
Пример #3
0
        protected void StatusPing(object o, StatusMessageEvent e)
        {
            if (controler.BotReady() == true)
            {
                DateTime moment = DateTime.Now;
                if (lastTickMin != moment.Minute)
                {
                    lastTickMin = moment.Minute;

                    checkForWork();
                }
            }
        }
Пример #4
0
 protected void StatusPing(object o, StatusMessageEvent e)
 {
     if (simname != "")
     {
         if (controler.getBot().GetClient.Network.CurrentSim != null)
         {
             if (controler.getBot().GetClient.Network.CurrentSim.IsEstateManager == true)
             {
                 long dif = helpers.UnixTimeNow() - controler.getBot()._lastUpdatedSimBlacklist.lastupdated;
                 if (dif > 120)
                 {
                     controler.getBot().GetClient.Estate.RequestInfo();
                 }
             }
         }
     }
 }
Пример #5
0
 protected void StatusPing(object o, StatusMessageEvent e)
 {
     CleanAvoidSimList();
     if (hasBasicBot() == false)
     {
         return; // no bot (cant do anything)
     }
     if (connected() == true)
     {
         LoggedInAction();
         return;
     }
     if (LoggingIn == true)
     {
         SetBetterAtHomeAction("Logging in");
         return;
     }
     LoggedOutActions();
 }
Пример #6
0
 protected void StatusPing(object o, StatusMessageEvent e)
 {
     if (hasBot() == true)
     {
         if (controler.getBot().MyGroups.Count > 0)
         {
             if (AvatarSeenForSim != controler.getBot().GetClient.Network.CurrentSim.Name)
             {
                 AvatarSeenForSim = controler.getBot().GetClient.Network.CurrentSim.Name;
                 AvatarSeen       = new Dictionary <UUID, long>();
             }
             Dictionary <UUID, Vector3> entrys = controler.getBot().GetClient.Network.CurrentSim.AvatarPositions.Copy();
             List <UUID> avs     = entrys.Keys.ToList();
             List <UUID> seenavs = new List <UUID>();
             foreach (UUID A in avs)
             {
                 seenavs.Add(A);
                 Thread newThread = new Thread(this.TrackerEventAdd);
                 newThread.Start(A);
             }
             List <UUID> TrackedUUID = new List <UUID>();
             lock (AvatarSeen)
             {
                 TrackedUUID = AvatarSeen.Keys.ToList();
             }
             foreach (UUID A in TrackedUUID)
             {
                 if (seenavs.Contains(A) == false)
                 {
                     long dif = helpers.UnixTimeNow() - AvatarSeen[A];
                     if (dif > 15)
                     {
                         Thread newThread = new Thread(this.TrackerEventRemove);
                         newThread.Start(A);
                     }
                 }
             }
         }
     }
 }
Пример #7
0
		private void HandleEvent(StatusMessageEvent e)
		{
			Log.LogMessage(MessageImportance.Normal, "Vault: " + e.Message);
		}
Пример #8
0
 public void Handle(StatusMessageEvent eventToHandle)
 {
     update(StatusBarElements.Status)
     .WithCaption(eventToHandle.Message)
     .And.ToolTipText(eventToHandle.Message);
 }
Пример #9
0
 private void HandleEvent(StatusMessageEvent e)
 {
     Log.LogMessage(MessageImportance.Normal, "Vault: " + e.Message);
 }