Пример #1
0
        public async void Login(string password)
        {
            if (password == "" || Username == "")
            {
                return;
            }
            try
            {
                SessionId = await networkManager.LoginAsync(Username, password);

                if (SessionId == "")
                {
                    MessageBox.Show((Localization == "fr") ? "Informations de connexion invalides" : "Wrong login informations", "Error");
                    return;
                }
                initializeVueModele();
                notifyConnection();
                ChatManager.Connect(Localization);
                SwitchView = 3;
            }
            catch (Exception)
            {
                MessageBox.Show((Localization == "fr") ? "Erreur de communication avec le serveur" : "Error contacting the server", "Error");
                return;
            }
        }
Пример #2
0
        private async Task Connect(string character)
        {
            var response = await apiManager.LogIn(Name, password);

            if (response.TryGetValue("error", out JToken error) && error.HasValues)
            {
                Console.WriteLine("ERR: FList authentication failed - " + error);
                OnConnectionLoss(character);
                return;
            }
            if (!buffers.ContainsKey(character))
            {
                buffers.Add(character, new BufferManager());
            }
            var bufferManager = buffers[character];

            var chatManager = new ChatManager(apiManager);

            bufferManager.SetEventSource(chatManager);
            var characterManager = new CharacterManager(chatManager, apiManager);
            var channelManager   = new ChannelManager(chatManager, characterManager);
            var connection       = new ServerConnection(chatManager, bufferManager, characterManager, channelManager);
            var messageManager   = new MessageManager(chatManager, characterManager, channelManager);
            var logManager       = new Logger(chatManager, messageManager);

            chatManager.Disconnected += () => OnConnectionLoss(character);
            connections.Add(character, connection);
            chatManager.Connect(character, ConfigurationManager.AppSettings["Host"]);
        }
Пример #3
0
 // Start is called before the first frame update
 void Start()
 {
     if (!ChatManager.IsConnect())
     {
         MalinLog.Get().ShowLog("Chat server is not connected. Try to connect..");
         ChatManager.Connect(Constants.DemoChatChannel, XRSocialSDK.myPlayer.userNickname);
     }
     else
     {
         MalinLog.Get().ShowLog("Chat server is already connected.");
     }
 }
Пример #4
0
        private static async void Connect()
        {
            var response = await apiManager.LogIn(userName, ConfigurationManager.AppSettings["Password"]);

            if (response.TryGetValue("error", out JToken error) && error.HasValues)
            {
                Console.WriteLine("ERROR: F-List authentication failed!");
                OnConnectionLoss();
                return;
            }

            var chatManager      = new ChatManager(apiManager);
            var characterManager = new CharacterManager(chatManager, apiManager);
            var channelManager   = new ChannelManager(chatManager, characterManager);
            var messageManager   = new MessageManager(chatManager, characterManager, channelManager);
            var eventManager     = new EventManager(chatManager, messageManager, characterManager, channelManager);
            var logManager       = new Logger(chatManager, messageManager);

            var constructor = script.GetConstructors().Single();

            instance = (IScript)constructor.Invoke(constructor.GetParameters().Select <ParameterInfo, object>(x => {
                if (typeof(IApiManager).IsAssignableFrom(x.ParameterType))
                {
                    return(apiManager);
                }
                if (typeof(IChatManager).IsAssignableFrom(x.ParameterType))
                {
                    return(chatManager);
                }
                if (typeof(IChannelManager).IsAssignableFrom(x.ParameterType))
                {
                    return(channelManager);
                }
                if (typeof(ICharacterManager).IsAssignableFrom(x.ParameterType))
                {
                    return(characterManager);
                }
                if (typeof(IMessageManager).IsAssignableFrom(x.ParameterType))
                {
                    return(messageManager);
                }
                if (typeof(IEventManager).IsAssignableFrom(x.ParameterType))
                {
                    return(eventManager);
                }
                throw new Exception("Invalid parameter type " + x.ParameterType);
            }).ToArray());
            instance.Execute();

            chatManager.Disconnected += OnConnectionLoss;
            chatManager.Connect(character, ConfigurationManager.AppSettings["Host"]);
        }
Пример #5
0
    public void ClickConnectButton()
    {
        if (!string.IsNullOrWhiteSpace(ChannelInputField.text) && !string.IsNullOrWhiteSpace(NicknameInputField.text))
        {
            callback.IsOnlyChat  = true;
            callback.channelname = ChannelInputField.text;
            callback.mynickname  = NicknameInputField.text;

            ChatManager.Connect(callback.channelname, callback.mynickname);
            ChannelInputField.interactable  = false;
            NicknameInputField.interactable = false;
            ConnectButton.interactable      = false;
            DisconnectButton.interactable   = true;
        }
    }
Пример #6
0
    // Start is called before the first frame update
    void Start()
    {
        NetworkObject myobj = XRSocialSDK.CreateInstance("DemoTestCube");

        myobj.Obj.transform.position = new Vector3(Random.Range(-30.0f, 30.0f), 2.1f, Random.Range(-30.0f, 30.0f));
        myobj.Obj.GetComponent <DemoObjectMovement>().IsMine = true;
        //int num = SalinSocialSDK.myPlayer.dynamicCodeInRoom;
        //Debug.Log("dynamicCodeInRoom: " + num.ToString());
        Renderer Myrend = myobj.Obj.GetComponent <Renderer>();

        Myrend.material.color = new Color(255, 0, 0);

        ChatManager.Connect(XRSocialSDK.currentRoom.RoomName, UserManager.Instance.userInfo.userNickname);
        VoiceManager.Connect(XRSocialSDK.currentRoom.RoomName);
    }
Пример #7
0
        public UiEventDisplay(int eventId, Form caller)
        {
            this.caller = caller;

            InitializeComponent();

            // Get full event data from database
            List <EventFull> events = Program.Client.SelectEventsFull(eventId);

            try
            {
                @event = events[0];
            }
            catch (IndexOutOfRangeException)
            {
                Console.WriteLine($"ERROR: Event with id {eventId} not found");
                throw;
            }

            // Title
            eventName.Text = @event.Name;

            // Sports
            foreach (var sport in @event.Sports)
            {
                Label sportLabel = new Label();
                sportLabel.AutoSize  = true;
                sportLabel.Text      = sport;
                sportLabel.BackColor = Color.FromArgb(230, 230, 230);
                sportLabel.Font      = new Font("Arial Rounded", 12, FontStyle.Bold);
                sportDisplayBar.Controls.Add(sportLabel);
            }

            // Address
            addressLabel.Text = @event.Address.ToStringNormal();

            // Distance
            UserData user     = Program.UserDataManager.GetData();
            double   distance = MathSupplement.Distance(@event.Latitude, @event.Longitude, user.Latitude, user.Longitude);

            if (distance < 1000.0)
            {
                distanceLabel.Text = $"{distance:0}m";
            }
            else
            {
                distanceLabel.Text = $"{distance / 1000.0:0.0}km";
            }

            // Description
            descriptionLabel.Text = @event.Description;

            // Links
            List <string> links = @event.Links;

            for (int i = 0; i < links.Count; i++)
            {
                string[] linkSplit = links[i].Split(' ', 2, StringSplitOptions.RemoveEmptyEntries);
                if (linkSplit.Length != 2)
                {
                    continue;
                }

                LinkLabel linkText = new LinkLabel();
                linkText.Text         = linkSplit[1];
                linkText.LinkClicked += (sender, e) =>
                {
                    Process.Start(new ProcessStartInfo("cmd", $"/c start {linkSplit[0]}"));
                };
                linkText.Location = new Point(426, 370 + (i * 20));

                Controls.Add(linkText);
            }

            // Load images
            List <string> imageLinks = @event.Images;

            for (int i = 0; i < imageLinks.Count; i++)
            {
                PictureBox picture = new PictureBox();
                picture.Size        = new Size(240, 180);
                picture.Location    = new Point(0, 200 * i);
                picture.BorderStyle = BorderStyle.Fixed3D;
                try
                {
                    using (WebClient client = new WebClient())
                    {
                        Stream stream       = client.OpenRead(imageLinks[i]);
                        Bitmap bitmap       = new Bitmap(stream);
                        Bitmap bitmapScaled = new Bitmap(bitmap, new Size(240, 180));
                        picture.Image = bitmapScaled;

                        stream.Flush();
                        stream.Close();
                    }
                }
                catch { }
                picturePanel.Controls.Add(picture);
            }

            picturePanel.HorizontalScroll.Maximum = 0;
            picturePanel.AutoScroll             = false;
            picturePanel.VerticalScroll.Visible = false;
            picturePanel.AutoScroll             = true;

            // Chat
            chatMessageTextBox.KeyPress += new KeyPressEventHandler(Key_Press);

            chatPanel.HorizontalScroll.Maximum = 0;
            chatPanel.AutoScroll             = false;
            chatPanel.VerticalScroll.Visible = false;
            chatPanel.AutoScroll             = true;

            // Start chat
            chatManager = new ChatManager();
            chatManager.Connect(@event.Id, chatPanel);
        }