protected async void InitiateSosEventsAsync() { bool initiateSMS = false; if (!Globals.IsRegisteredUser || !Globals.IsDataNetworkAvailable) { initiateSMS = true; } else { try { LocationServiceWrapper.PostMyLocationAsync(await Utility.GetLocationQuick(), null); } catch { initiateSMS = true; } } if (initiateSMS) { await SendOfflineMessagesAsync(); } try { if (App.MyBuddies.Buddies != null && App.MyBuddies.Buddies.Count > 0) { Callee defaultCallee = new Callee(); BuddyTableEntity buddyEntity = App.MyBuddies.GetPrimeBuddy(Globals.CurrentProfile.ProfileId); if (buddyEntity != null) { defaultCallee.PhoneNumber = buddyEntity.PhoneNumber; defaultCallee.DisplayName = buddyEntity.Name; Utility.InitiateCall(defaultCallee); } } } catch { //Ignore if exception raised while calling the default caller } }
private async void btnEmail_Click(object sender, System.Windows.Input.GestureEventArgs e) { try { StackPanel oSPName = (StackPanel)sender; EmailComposeTask emailcomposer = new EmailComposeTask(); if (this.IsGroup) { GroupTableEntity oData = (GroupTableEntity)oSPName.DataContext; emailcomposer.To = oData.Email; } else if (this.IsLocateBuddy) { LocateBuddyTableEntity oData = (LocateBuddyTableEntity)oSPName.DataContext; emailcomposer.To = oData.Email; } else { BuddyTableEntity oData = (BuddyTableEntity)oSPName.DataContext; emailcomposer.To = oData.Email; } string strMessage = Constants.MessageTemplateText; if (Globals.CurrentProfile.MessageTemplate.Trim() != string.Empty) { strMessage = Globals.CurrentProfile.MessageTemplate; } if (this.IsLocateBuddy) { strMessage = "I'm reaching to help you"; } emailcomposer.Subject = strMessage; emailcomposer.Body = this.IsLocateBuddy ? Constants.LocateBuddyMessageText : await Utility.GetDistressMessage(); emailcomposer.Show(); } catch (Exception) { CallErrorHandler(); } }
private async void btnSMSBuddy_click(object sender, System.Windows.Input.GestureEventArgs e) { try { StackPanel oSPName = (StackPanel)sender; string message = this.IsLocateBuddy ? Constants.LocateBuddyMessageText : await Utility.GetDistressMessage(); if (this.IsGroup) { GroupTableEntity oData = (GroupTableEntity)oSPName.DataContext; Utility.SendSMS(new SMSMessage() { PhoneNumbers = oData.PhoneNumber, Message = message }); } else if (this.IsLocateBuddy) { LocateBuddyTableEntity oData = (LocateBuddyTableEntity)oSPName.DataContext; Utility.SendSMS(new SMSMessage() { PhoneNumbers = oData.PhoneNumber, Message = message }); } else { BuddyTableEntity oData = (BuddyTableEntity)oSPName.DataContext; Utility.SendSMS(new SMSMessage() { PhoneNumbers = oData.PhoneNumber, Message = message }); } } catch (Exception ex) { CallErrorHandler(); } }