public static MobileMedAdminSystem GetStoredDevice()
        {
            ApplicationDataContainer localSettings = ApplicationData.Current.LocalSettings;
            string pairedDevice = localSettings.Values["ims_pairedDevice"] as string;

            MobileMedAdminSystem system = JsonConvert.DeserializeObject <MobileMedAdminSystem>(pairedDevice);

            return(system);
        }
Пример #2
0
        public DebugPage()
        {
            InitializeComponent();

            string deviceData           = SettingsHelper.GetLocalSetting("ims_pairedDevice");
            MobileMedAdminSystem device = JsonConvert.DeserializeObject <MobileMedAdminSystem>(deviceData);

            hostIp = device.IpAddress;

            tb_conndesc.Text = "Connect to remote (" + hostIp + "):";
        }
Пример #3
0
        private async void Login()
        {
            try
            {
                ViewMode            = LoginPageViewMode.Progress;
                btn_login.IsEnabled = false;
                await Task.Delay(10);

                Personnel user = await Personnel.AuthenticateAsync(App.ApiSettings, tbx_un.Text, pbx_pw.Password);

                App.LoggedUser = user;

                string pairedDeviceSettings = SettingsHelper.GetLocalSetting("ims_pairedDevice");

                Shell clientShell;
                if (pairedDeviceSettings != null)
                {
                    MobileMedAdminSystem system = JsonConvert.DeserializeObject <MobileMedAdminSystem>(pairedDeviceSettings);
                    clientShell = new Shell(typeof(PatientsPage), system);
                }
                else
                {
                    clientShell = new Shell(typeof(Devices.DevicesRegisterPage));
                }
                Window.Current.Content = clientShell;

                Window.Current.Activate();
            }
            catch (ApiException ex)
            {
                //TODO: If the destination URI is unreachable but internet is present, offer to go to setup
                //hbtn_setup.Visibility = Visibility.Visible;

                MessageDialog md = new MessageDialog(ex.Message, ex.Errors);
                md.Commands.Add(new UICommand("Try again", (command) => {
                    ViewMode = LoginPageViewMode.Login;

                    hbtn_setup.Visibility = Visibility.Collapsed;
                }));
                await md.ShowAsync();
            }
            catch (HttpRequestException ex)
            {
                MessageDialog md = new MessageDialog(ex.InnerException.Data["RestrictedDescription"].ToString(), ex.Message);
                md.Commands.Add(new UICommand("Try again", (command) =>
                {
                    hbtn_setup.Visibility = Visibility.Visible;
                    sp_setupdesc.Text     = "Administrator? You may want to check your connection paramters.";

                    ViewMode = LoginPageViewMode.Login;
                }));
                await md.ShowAsync();
            }
        }
 public void Activate(object parameter)
 {
     if (parameter != null)
     {
         Device = parameter as MobileMedAdminSystem;
     }
     else
     {
         Device = GetStoredDevice();
     }
 }
Пример #5
0
        public async Task ConnectToDeviceAsync(Personnel user)
        {
            string deviceData           = SettingsHelper.GetLocalSetting("ims_pairedDevice");
            MobileMedAdminSystem device = JsonConvert.DeserializeObject <MobileMedAdminSystem>(deviceData);
            HostName             ip     = new HostName(device.IpAddress);

            await TcpClientConnectAsync(ip, port);

            string apiSettings = JsonConvert.SerializeObject(App.ApiSettings);
            string userDetails = JsonConvert.SerializeObject(user);

            await SocketService.SendToDeviceAsync(TcpClient, apiSettings, "authDevice", userDetails, expectResponse : true);
        }
        public override void Activate(object parameter)
        {
            base.Activate(parameter);

            if (parameter != null)
            {
                Device = parameter as MobileMedAdminSystem;
            }
            else
            {
                Device = GetStoredDevice();
            }
        }
Пример #7
0
        public async Task <MobileMedAdminSystem> RegisterMmasDeviceAsync(string deviceName, IPAddress ipAddress)
        {
            try
            {
                string data_raw = await _imsApi.PutRegisteredMachineInfoAsync(deviceName, ipAddress.ToString());

                MobileMedAdminSystem system = JsonConvert.DeserializeObject <MobileMedAdminSystem>(data_raw);
                return(system);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public static MobileMedAdminSystem GetStoredDevice()
        {
            string pairedDevice = SettingsHelper.GetLocalSetting("ims_pairedDevice");

            if (pairedDevice != null)
            {
                MobileMedAdminSystem system = JsonConvert.DeserializeObject <MobileMedAdminSystem>(pairedDevice);
                return(system);
            }
            else
            {
                return(null);
            }
        }
        private async void OnSubmitButtonClick(object sender, RoutedEventArgs e)
        {
            if (await ValidateEntriesAsync(tbx_ipAdd.Text.Trim(), tbx_devName.Text.Trim()))
            {
                IPAddress ipa;
                IPAddress.TryParse(tbx_ipAdd.Text.Trim(), out ipa);

                var imsSvc = new ImsDataService(App.ApiSettings);
                MobileMedAdminSystem system = await imsSvc.RegisterMmasDeviceAsync(tbx_devName.Text, ipa);

                var serializedData = JsonConvert.SerializeObject(system);
                SettingsHelper.SetLocalSetting("ims_pairedDevice", serializedData);

                Frame.Navigate(typeof(PatientsPage), system);
            }
        }
 public void Deactivate(object parameter)
 {
     Device = null;
 }