示例#1
0
        /*private void addToGroup(string groupName)
         * {
         *  if (conn.State == Microsoft.AspNet.SignalR.Client.ConnectionState.Connected)
         *  {
         *      ChatProxy.Invoke("JoinGroup", groupName);
         *  }
         * }
         */

        private async void onInfo(clsSala obj)
        {
            await Windows.ApplicationModel.Core.CoreApplication.MainView.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() => {
                /*
                 * if (!myApp.sala.Equals("")) {
                 *  Cargando.Visibility = Visibility.Visible;
                 * }
                 */

                clsManejadora manejadora = new clsManejadora();
                manejadora.actualizarUsuariosSala(obj);

                var sala = (clsSala)listSalas.Items[obj.id - 1];

                if (sala != null)
                {
                    sala.usuariosConectados = obj.usuariosConectados;
                }
            });


            if (conn.State == Microsoft.AspNet.SignalR.Client.ConnectionState.Connected)
            {
                SalasProxy.Invoke("PasarAsalaServer", obj.nombre);
            }
        }
示例#2
0
        private async void volverLobby()
        {
            ActualizarUi();

            int i = 0;

            do
            {
                Thread.Sleep(1000);
                i++;
            } while (i < 3);

            clsSala sala = new clsSala();

            sala.id                 = maneja.ObtenerIDSala(myApp.sala);
            sala.nombre             = myApp.sala;
            sala.usuariosConectados = 0;
            await maneja.actualizarUsuariosSala(sala);

            await Windows.ApplicationModel.Core.CoreApplication.MainView.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => {
                if (conn.State == Microsoft.AspNet.SignalR.Client.ConnectionState.Connected)
                {
                    ChatProxy.Invoke("LeaveGroupDef", myApp.sala);
                }

                myApp.esVolver = true;//Debemos hacer que abandonen el grupo aqui tambn
                this.Frame.Navigate(typeof(lobby_screen));
            });
        }
示例#3
0
        //Aqui descontaremos igual que en onInfo
        private async void onDescontar(string sala)
        {
            cargando2();
            //¿Esto no lo hace si ponemos await????????

            await Windows.ApplicationModel.Core.CoreApplication.MainView.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() => {
                if (!sala.Equals(""))
                {
                    int id       = ObtenerIDSala(sala);
                    var salaEdit = (clsSala)listSalas.Items[id - 1];

                    if (salaEdit != null)
                    {
                        if (salaEdit.usuariosConectados > 0)
                        {
                            salaEdit.usuariosConectados = salaEdit.usuariosConectados - 1;
                            clsManejadora manejadora    = new clsManejadora();
                            await manejadora.actualizarUsuariosSala(salaEdit);
                        }
                    }
                }
            });
        }
示例#4
0
 public async void ActualizarApi(clsSala salaActu)
 {
     clsManejadora maneja = new clsManejadora();
     await maneja.actualizarUsuariosSala(salaActu);
 }