Example #1
0
        void requestAsyncMessages(object sender, ElapsedEventArgs e)
        {
            OSDMap message = CreateWebRequest();
            IAsyncMessageRecievedService service = m_scene.RequestModuleInterface <IAsyncMessageRecievedService>();
            List <string> serverURIs             = m_scene.RequestModuleInterface <IConfigurationService>().FindValueOf(m_scene.RegionInfo.RegionHandle.ToString(), "MessagingServerURI");

            foreach (string host in serverURIs)
            {
                OSDMap retval = WebUtils.PostToService(host, message);
                //Clean it up
                retval = CreateWebResponse(retval);
                OSD response = retval["Response"];
                if (response is OSDMap)
                {
                    retval = (OSDMap)response;
                    if (retval["Messages"].Type == OSDType.Array)
                    {
                        OSDArray messages = (OSDArray)retval["Messages"];
                        foreach (OSD asyncMessage in messages)
                        {
                            service.FireMessageReceived((OSDMap)asyncMessage);
                        }
                    }
                }
            }
        }
        private void requestAsyncMessages(object sender, ElapsedEventArgs e)
        {
            if (m_locked || m_scenes.Count == 0)
            {
                return;
            }
            m_locked = true;
            OSDMap        message    = CreateWebRequest();
            List <string> serverURIs =
                m_scenes[0].RequestModuleInterface <IConfigurationService>().FindValueOf("MessagingServerURI");

            foreach (string host in serverURIs)
            {
                OSDMap response = WebUtils.PostToService(host, message, true, false, true);
                if (response is OSDMap)
                {
                    if (response["Messages"].Type == OSDType.Map)
                    {
                        OSDMap messages = (OSDMap)response["Messages"];
                        foreach (KeyValuePair <string, OSD> kvp in messages)
                        {
                            OSDArray array = (OSDArray)kvp.Value;
                            IAsyncMessageRecievedService service =
                                GetScene(ulong.Parse(kvp.Key)).RequestModuleInterface <IAsyncMessageRecievedService>();
                            foreach (OSD asyncMessage in array)
                            {
                                service.FireMessageReceived(kvp.Key, (OSDMap)asyncMessage);
                            }
                        }
                    }
                }
            }
            m_locked = false;
        }
        public void Start(IConfigSource config, IRegistryCore registry)
        {
            IConfig handlerConfig = config.Configs["Handlers"];
            if (handlerConfig.GetString("AsyncMessagePostServiceHandler", "") != Name)
                return;

            m_registry = registry;
            registry.RegisterModuleInterface<IAsyncMessagePostService>(this);
            m_asyncReceiverService = registry.RequestModuleInterface<IAsyncMessageRecievedService>();
        }
        public void FinishedStartup()
        {
            IAsyncMessageRecievedService service = m_registry.RequestModuleInterface <IAsyncMessageRecievedService> ();

            if (service != null)
            {
                service.OnMessageReceived += OnMessageReceived;
            }
            m_genericsConnector = Aurora.DataManager.DataManager.RequestPlugin <IGenericsConnector> ();
            LoadFromDatabase();
        }
 public MessagingServiceInPostHandler(string url, IRegistryCore registry, IAsyncMessageRecievedService handler,
                                      string SessionID) :
                                          base("POST", url)
 {
     m_handler = handler;
     m_SessionID = SessionID;
     if (!ulong.TryParse(SessionID, out m_ourRegionHandle))
     {
         string[] s = SessionID.Split('|');
         if (s.Length == 2)
             ulong.TryParse(s[1], out m_ourRegionHandle);
     }
 }
        public void Start(IConfigSource config, IRegistryCore registry)
        {
            m_registry = registry;
            IConfig handlerConfig = config.Configs["Handlers"];
            if (handlerConfig.GetString("AsyncMessagePostServiceHandler", "") != Name)
                return;

            registry.RegisterModuleInterface<IAsyncMessagePostService>(this);
            m_asyncReceiverService = registry.RequestModuleInterface<IAsyncMessageRecievedService>();

            //Read any messages received to see whether they are for the async service
            m_asyncReceiverService.OnMessageReceived += OnMessageReceived;
        }
        public void Start(IConfigSource config, IRegistryCore registry)
        {
            IConfig handlerConfig = config.Configs["Handlers"];

            if (handlerConfig.GetString("AsyncMessagePostServiceHandler", "") != Name)
            {
                return;
            }

            m_registry = registry;
            registry.RegisterModuleInterface <IAsyncMessagePostService>(this);
            m_asyncReceiverService = registry.RequestModuleInterface <IAsyncMessageRecievedService>();
        }
Example #8
0
 public void Start(IConfigSource config, IRegistryCore registry)
 {
     m_registry = registry;
     if (!m_enabled)
     {
         IAsyncMessageRecievedService service = registry.RequestModuleInterface <IAsyncMessageRecievedService>();
         if (service == null)
         {
             registry.RegisterModuleInterface <IAsyncMessageRecievedService>(this);
         }
         //Register so that we have an internal message handler, but don't add the external handler
         return;
     }
     m_registry.RequestModuleInterface <IGridRegistrationService>().RegisterModule(this);
 }
Example #9
0
 public MessagingServiceInPostHandler(string url, IRegistryCore registry, IAsyncMessageRecievedService handler,
                                      string SessionID) :
     base("POST", url)
 {
     m_handler   = handler;
     m_SessionID = SessionID;
     if (!ulong.TryParse(SessionID, out m_ourRegionHandle))
     {
         string[] s = SessionID.Split('|');
         if (s.Length == 2)
         {
             ulong.TryParse(s[1], out m_ourRegionHandle);
         }
     }
 }
Example #10
0
        public void Start(IConfigSource config, IRegistryCore registry)
        {
            m_registry = registry;
            IConfig handlerConfig = config.Configs["Handlers"];

            if (handlerConfig.GetString("AsyncMessagePostServiceHandler", "") != Name)
            {
                return;
            }

            registry.RegisterModuleInterface <IAsyncMessagePostService>(this);
            m_asyncReceiverService = registry.RequestModuleInterface <IAsyncMessageRecievedService>();

            //Read any messages received to see whether they are for the async service
            m_asyncReceiverService.OnMessageReceived += OnMessageReceived;
        }