private void onClientMessage(object sender, TS3QueryLib.Core.Server.Notification.EventArgs.MessageReceivedEventArgs e) { //throw new NotImplementedException(); if (e.Message == "!scan") { ScanRooms(); //TS3QueryLib.Core.Common.Entities.SpacerInfo test; //list.Values[0] } else if (e.Message == "!getusers") { ClientDbEntryListResponse list = queryRunner.GetClientDatabaseList(); ListResponse <ClientListEntry> userlist = queryRunner.GetClientList(true); ClientInfoResponse user = queryRunner.GetClientInfo(2); foreach (ClientDbEntry item in list) { } foreach (ClientListEntry item in userlist) { } } }
private void UpdateAllUsers() { ClientDbEntryListResponse list = queryRunner.GetClientDatabaseList(); string sql_text = "REPLACE INTO users VALUES "; foreach (ClientDbEntry entry in list) { ListResponse <ClientIdEntry> clientid = queryRunner.GetClientIdsByUniqueId(entry.UniqueId); ClientDbInfoResponse clientdbinfo = queryRunner.GetClientDatabaseInfo((int)entry.DatabaseId); ClientInfoResponse clientinfo = null; sql_text += "("; sql_text += serverinfo.id + ","; sql_text += "'" + clientdbinfo.Created.ToString("yyyy-MM-dd HH:mm:ss") + "',"; sql_text += entry.DatabaseId + ","; sql_text += "'" + entry.Description + "',"; sql_text += "'" + entry.LastConnected.ToString("yyyy-MM-dd HH:mm:ss") + "',"; sql_text += "'" + entry.NickName + "',"; sql_text += entry.TotalConnections + ","; sql_text += "'" + entry.UniqueId + "',"; if (clientid.Values.Count > 0) { clientinfo = queryRunner.GetClientInfo(clientid.Values[0].ClientId); sql_text += clientid.Values[0].ClientId + ","; sql_text += clientinfo.ChannelId + ","; sql_text += "'" + clientinfo.ClientCountry + "',"; sql_text += "'" + clientinfo.ClientIP + "',"; sql_text += "'" + clientinfo.ConnectedTime.TotalSeconds + "',"; sql_text += "'" + clientinfo.IdleTime.TotalSeconds + "',"; sql_text += "'" + clientinfo.Platform + "',"; sql_text += "'"; foreach (uint id in clientinfo.ServerGroups) { sql_text += id + ";"; } sql_text = sql_text.TrimEnd(';'); sql_text += "',"; sql_text += "'" + clientinfo.Version + "'"; } else { sql_text += "NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL"; } sql_text += "),"; } sql_text = sql_text.TrimEnd(','); sql.NonQuery(sql_text); }
private void onClientMessage(object sender, TS3QueryLib.Core.Server.Notification.EventArgs.MessageReceivedEventArgs e) { //throw new NotImplementedException(); if (e.Message == "!getusers") { ClientDbEntryListResponse list = queryRunner.GetClientDatabaseList(); ListResponse <ClientListEntry> userlist = queryRunner.GetClientList(true); ClientInfoResponse user = queryRunner.GetClientInfo(2); foreach (ClientDbEntry item in list) { } foreach (ClientListEntry item in userlist) { } } //should not double-fire }