Exemple #1
0
        static void onNotifyClientEnterView(object source, NotifyClientEnterViewResult notification)
        {
            Console.WriteLine("ClientEnterView {0}: {1}", notification.Clid, notification.ClientNickname);
            ClientInfoResult clientInfo = client.ClientInfo(int.Parse(notification.Clid)).Result;

            Console.WriteLine("clientInfo {0} {1} {2} {3}", clientInfo.Success, clientInfo.ErrorId, clientInfo.ClientVersion, clientInfo.ClientPlatform);
        }
Exemple #2
0
        public async Task <bool> AddClient(string name, string groupName, string TSURL, string password)
        {
            client = new ServerQueryClient(TSURL, 10011, TimeSpan.FromSeconds(3));
            try
            {
                ServerQueryBaseResult connected = client.Initialize().Result;
                if (connected.Success)
                {
                    ServerQueryBaseResult login = client.Login("serveradmin", password).Result;
                    if (login.Success)
                    {
                        ServerQueryBaseResult use = client.Use(UseServerBy.Port, 9987).Result;

                        if (use.Success)
                        {
                            client.KeepAlive(TimeSpan.FromMinutes(2));
                            clientList = client.ClientList().Result;

                            ClientInfoResult ClientInfo = clientList.Values.Where(m => m.ClientNickname == name).FirstOrDefault();

                            if (ClientInfo != null)
                            {
                                await GetDBID(ClientInfo.ClientUniqueIdentifier);
                                await GetServerGroup(groupName);
                                await AddClient();

                                Message = string.Format("User {0} successfully created on TS Server {1}.", name, TSURL);
                            }
                            else
                            {
                                SuccessType = AddSuccess.Fail;
                                Message     = string.Format("Could not find a valid user on {0}. Please make sure your nickname is {1} and try again.", TSURL, name);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                SuccessType = AddSuccess.Fail;
            }
            finally
            {
                ServerQueryBaseResult unregister = client.ServerNotifyUnregister().Result;
                ServerQueryBaseResult logout     = client.Logout().Result;
                ServerQueryBaseResult quit       = client.Quit().Result;
            }
            return(true);
        }
Exemple #3
0
        public async Task <bool> AddClient(string name, string groupName)
        {
            if (Start())
            {
                try
                {
                    //await client.KeepAlive(TimeSpan.FromMinutes(2));
                    ClientList = client.ClientList().Result.Values;

                    ClientInfoResult ClientInfo = ClientList.Where(m => m.ClientNickname == name).FirstOrDefault();

                    if (ClientInfo != null)
                    {
                        await GetDBIDFromUID(ClientInfo.ClientUniqueIdentifier);
                        await GetServerGroup(groupName);
                        await AddClient();

                        Message = string.Format("User {0} successfully created on TS Server {1}.", name, Url);
                    }
                    else
                    {
                        SuccessType = AddSuccess.Fail;
                        Message     = string.Format("Could not find a valid user on {0}. Please make sure your nickname is {1} and try again.", Url, name);
                    }
                }
                catch (Exception ex)
                {
                    SuccessType = AddSuccess.Fail;
                }
                finally
                {
                    Stop();
                }
            }
            return(true);
        }
Exemple #4
0
        public static void ConnectQueryAsync()
        {
            ServerQueryClient client = new ServerQueryClient(host, port, TimeSpan.FromSeconds(1));

            ServerQueryBaseResult connected = client.Initialize().Result;

            if (connected.Success)
            {
                MessageBox.Show("connected");
            }

            ServerQueryBaseResult login = client.Login(user, password).Result;

            if (!login.Success)
            {
                MessageBox.Show(login.ErrorMessage);
            }

            ServerQueryBaseResult use = client.Use(UseServerBy.Port, 10677).Result;

            if (!use.Success)
            {
                MessageBox.Show(use.ErrorMessage);
            }

            //client.SendTextMessage(TextMessageTargetMode.TextMessageTarget_CLIENT, 3, "please respond");

            ClientListResult clientList = client.ClientList().Result;

            if (!clientList.Success)
            {
                MessageBox.Show(clientList.ErrorMessage);
            }

            client.NotifyTextMessage += (source, notification) => MessageBox.Show(notification.Invokername + ": " + notification.Msg);

            ServerQueryBaseResult registerTextChannel = client.ServerNotifyRegister(Event.textprivate).Result;

            if (!registerTextChannel.Success)
            {
                MessageBox.Show(registerTextChannel.ErrorMessage);
            }

            client.KeepAlive(TimeSpan.FromMinutes(10));
            client.NotifyChannelEdited += (source, notification) => MessageBox.Show(notification.Invokername + ": " + notification.Invokerid);



            for (int i = 0; i < clientList.Values.Count; i++)
            {
                ClientInfoResult clientInfoResult = clientList.Values[i];
                int    id   = clientInfoResult.ClientId;
                String name = clientInfoResult.ClientNickname;

                if (!name.Contains("Sharix"))
                {
                    client.SendTextMessage(TextMessageTargetMode.TextMessageTarget_CLIENT, id, "you are a nonce lol");
                    MessageBox.Show(id.ToString() + " " + name);
                }
            }
        }
Exemple #5
0
 public static string ClientName(this ClientInfoResult cir)
 {
     return(cir.ClientNickname.Split(new string[] { "] " }, StringSplitOptions.RemoveEmptyEntries)[1]);
 }
Exemple #6
0
 public static string ClientTicker(this ClientInfoResult cir)
 {
     return(string.Concat(cir.ClientNickname.Split(new string[] { "] " }, StringSplitOptions.RemoveEmptyEntries)[0], "]"));
 }