Example #1
0
        /// <summary>
        ///     Raised when a message is recieved from the foreground app
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BackgroundMediaPlayer_MessageReceivedFromForeground(object sender,
                                                                         MediaPlayerDataReceivedEventArgs e)
        {
            var message = MessageHelper.ParseMessage(e.Data);

            if (message is AppSuspendedMessage)
            {
                AppSuspended?.Invoke(this, null);
            }
            else if (message is AppResumedMessage)
            {
                AppResumed?.Invoke(this, null);
            }
            else if (message is StartPlaybackMessage)
            {
                StartPlayback?.Invoke(this, null);
            }
            else if (message is SkipNextMessage)
            {
                SkipToNext?.Invoke(this, null);
            }
            else if (message is SkipPreviousMessage)
            {
                SkipToPrev?.Invoke(this, null);
            }
            else
            {
                var changedMessage = message as TrackChangedMessage;
                if (changedMessage != null)
                {
                    TrackChanged?.Invoke(this, changedMessage.QueueId);
                }

                else
                {
                    var playlistMessage = message as UpdatePlaylistMessage;
                    if (playlistMessage != null)
                    {
                        UpdatePlaylist?.Invoke(this, playlistMessage.Tracks);
                    }

                    else
                    {
                        var addMessage = message as AddToPlaylistMessage;
                        if (addMessage != null)
                        {
                            AddToPlaylist?.Invoke(addMessage.Tracks, addMessage.Position);
                        }
                        else
                        {
                            var updateMessage = message as UpdateUrlMessage;
                            if (updateMessage != null)
                            {
                                TrackUpdateUrl?.Invoke(this, updateMessage);
                            }
                        }
                    }
                }
            }
        }
 public static Offset <AppResumed> CreateAppResumed(FlatBufferBuilder builder,
                                                    short opcode = 24)
 {
     builder.StartTable(1);
     AppResumed.AddOpcode(builder, opcode);
     return(AppResumed.EndAppResumed(builder));
 }
 public async void Handle(AppResumed message)
 {
     try
     {
         await this.ConnectIfNeeded();
     }
     catch
     {
         // ignore
     }
 }
Example #4
0
 private void OnApplicationPause(bool pauseStatus)
 {
     if (pauseStatus)
     {
         AppPaused?.Invoke();
     }
     else
     {
         AppResumed?.Invoke();
     }
 }
Example #5
0
        public static byte[] MakeAppResumedBuffer()
        {
            var builder = new MessageBuilder();

            AppResumed.StartAppResumed(builder);

            AppResumed.AddOpcode(builder, (sbyte)Opcode.AppResumed);

            var offset = AppResumed.EndAppResumed(builder);

            builder.Finish(offset.Value);

            return(builder.SizedByteArray());
        }
 private void InvokeAppResumed()
 {
     AppResumed?.Invoke();
 }
Example #7
0
 //Forms.ContentPage.OnResume does not seem to fire properly across platforms so we gone roll our own
 public void OnHuntResume()
 {
     AppResumed?.Invoke(this, new EventArgs());
     EvaluateConnectivity();
 }
 public static AppResumed GetRootAsAppResumed(ByteBuffer _bb, AppResumed obj)
 {
     return(obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb));
 }