private async Task <string> OnCommandReceivedAsync(RemoteParameter parameter) { switch (parameter.Command) { case RemoteCommands.MiriotConfiguring: _dispatcherService.Invoke(() => { _vm.HasNoConfiguration = false; _vm.IsConfiguring = true; }); return(string.Empty); case RemoteCommands.LoadUser: _dispatcherService.Invoke(async() => { await _vm.LoadUser(_vm.User); }); return(string.Empty); case RemoteCommands.GetUser: _dispatcherService.Invoke(() => { _vm.HasNoConfiguration = false; _vm.IsConfiguring = true; }); return(_vm.User.Id.ToString()); case RemoteCommands.GraphService_Initialize: Messenger.Default.Send(new GraphServiceMessage(false)); return(null); case RemoteCommands.GraphService_GetUser: Messenger.Default.Send(new GraphServiceMessage(true)); var _graphService = SimpleIoc.Default.GetInstance <IGraphService>(); await _graphService.LoginAsync(); var graphUser = await _graphService.GetUserAsync(); return(JsonConvert.SerializeObject(graphUser)); case RemoteCommands.GoToCameraPage: SimpleIoc.Default.GetInstance <INavigationService>().NavigateTo(PageKeys.CameraSettings); return(null); case RemoteCommands.MiriotConnect: //_socketService.ListenTcp(); return(null); case RemoteCommands.MiriotDiscovery: default: // Reply back var id = _platformService.GetSystemIdentifier(); var sys = new RomeRemoteSystem(null) { Id = id, DisplayName = Environment.MachineName }; return(JsonConvert.SerializeObject(sys)); } }