An MIT AI2 extension to allows developers to show media style notifications for their applications.

Overview

Media Notifications

An MIT AI2 extension to allows developers to show media style notifications for their applications.


A media style notification on Android 11 shown using Media Notification extension

Usage

  • Download the extension from the latest release.
    Note: If you're a Kodular user, download the AIX file who's name ends with .support.aix.
  • Import the extension in the builder (AI2, Kodular, etc).
  • Play around with the blocks provided by the extension. For more info about what each block does, check out the block reference below.

Block reference

  • Events

    • ActionButtonClicked

      Fires when one of the action button on the notification is clicked.

      clicked

      Param Description
      actionType The type of the action button that was clicked. It could be one of the following:
      1. play
      2. pause
      3. next
      4. previous
  • Methods

    • ShowNotification

      show

      Shows a media style notification.

      Param Description
      id A unique integer that identifies this notification.
      priority The relative priority for this notification. Priority is an indication of how much of the user's valuable attention should be consumed by this notification.
      metadata The metadata for some media.
    • CreateMetadata

      createMeta

      Creates and returns a metadata object for some media.

      Param Description
      title The title of the media.
      artist The artist for the album of the media's original source.
      albumArt The artwork for the album of the media's original source. It can be an URL to a remote image or an image from assets.

      Note: If you use a remote image, make sure it's not too big. Large images may fail to load and the notification won't be shown.


    • CancelNotification

      cancel

      Cancels the notification with the given ID. ‎

      Param Description
      id A unique integer that identifies the notification that is to be canceled.
    • CancelAll

      cancelAll

      Cancels all the previously shown notifications.

  • Properties

    • ChannelID

      Getter + Setter

      Specifies the channel the notification should be delivered on.

    • ChannelImportance

      Getter + Setter

      Specifies the importance of the channel the notifications are being delivered on.

    • ChannelID

      Getter + Setter

      Specifies the name of channel the notification should be delivered on.

    • NotificationPriorities

      Getter only

      • def

        Default notification priority. If your application does not prioritize its own notifications, use this value for all notifications.

      • high

        Higher notification priority, for more important notifications or alerts. The UI may choose to show these items larger, or at a different position in notification lists, compared with your app's PriorityDefault items.

      • low

        Lower notification priority, for items that are less important. The UI may choose to show these items smaller, or at a different position in the list, compared with your app's PriorityDefault items.

      • max

        Highest notification priority, for your application's most important items that require the user's prompt attention or input.

      • min

        Lowest notification priority; these items might not be shown to the user except under special circumstances, such as detailed notification logs.

License

MIT License

Copyright (c) 2021 Shreyash Saitwal

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
You might also like...

SecureDB is an extension for Ai2 Appinventor and its distros which stores the data in the form of key and value just like TinyDB but in a more secure manner.

SecureDB is an extension for Ai2 Appinventor and its distros which stores the data in the form of key and value just like TinyDB but in a more secure manner.

SecureDB SecureDB is an extension for Ai2 Appinventor and its distros which stores data for your app in a secure format locally on user's device. Expl

Sep 24, 2022

HieMe is an Social Media Application which is used to connect the people by knowing their profession and area of interest.

HieMe is an Social Media Application which is used to connect the people by knowing their profession and area of interest.

HieMe-SocialMediaApp HieMe is an Social Media Application which is used to connect the people by knowing their profession and area of interest.It help

Sep 11, 2022

Beispielprojekt für Monitoring mit Prometheus und Grafana

Beispielprojekt für Monitoring mit Prometheus und Grafana Software git Für die Java Beispiel Java JDK in Version 17. Docker und docker-compose empfohl

Jan 27, 2022

To quickly integrate your applications into the EdgeGallery platform, we provide the toolchain project to help developers quickly modify code and migrate applications to the platform.

Toolchain 工具链 工具链是MEC Developer开发者平台中的一个重要特性,当x86平台的App想要上车ARM平台时,底层的代码不可避免的需要进行修改或重写。 App提供者可以通过MEC Developer开发者平台中集成的工具链进行源代码分析,定位需要修改的源代码并根据指导意见进行修

Jan 7, 2022

A Network Observer which would provide maximum details about the network to the administrator on their screen without knowing to their users.

A Network Observer which would provide maximum details about the network to the administrator on their screen without knowing to their users.

Smart-Network-Observer-With-Energy-Framework A Network Observer which would provide maximum details about the network to the administrator on their sc

Jul 15, 2022

Duck Library is a library for developers who don't want to spend their time to write same library consistently.

Duck Library is a library for developers who don't want to spend their time to write same library consistently.

Duck Library is a library for developers who don't want to spend their time to write same library consistently. It has almost every useful feature to

Jul 28, 2022

Debug Marker API, allowing developers to create their own debug markers

debugmarker 1.16.5-1.18.1 Debug Marker API, allowing developers to create their own debug markers, which are slightly-bigger-than-blocks that can be w

Oct 29, 2022

These samples explore the different options that Spring Boot developers have for using Javascript and CSS on the client (browser) side of their application.

These samples explore the different options that Spring Boot developers have for using Javascript and CSS on the client (browser) side of their application.

Table of Contents Getting Started Narrowing the Choices Create a New Application Webjars Show Me Some Javascript Normalizing Resource Paths Adding Tab

Jul 29, 2022

Messenger(Chat app) is a real time one to one chat application with Push Notifications made using Firebase...

Messenger(Chat app) is a real time one to one chat application with Push Notifications made using Firebase...

Messenger If you want a APK then create an issue, i'll send the link.. ChatApp is a real time one to one chat application with Push Notifications made

Apr 30, 2022

Flutter plugin to listen to all incoming notifications (posted or removed) with the possibility to reply to them

Flutter plugin to listen to all incoming notifications (posted or removed) with the possibility to reply to them

notification_listener_service A flutter plugin for interacting with Notification Service in Android. NotificationListenerService is a service that rec

Dec 15, 2022

Tasks Planner : A minimalist collaborative app for scheduling and managing your tasks with the team and getting notifications through discord.

Tasks Planner : A minimalist collaborative app for scheduling and managing your tasks with the team and getting notifications through discord.

Tasks Planner ✨ Overview Tasks planner is a minimalist collaborative app for planning and managing your tasks with the team and get notifications thro

Dec 1, 2022

Library that allows tests written in Java to follow the BDD style introduced by RSpec and Jasmine.

J8Spec J8Spec is a library that allows tests written in Java to follow the BDD style introduced by RSpec and Jasmine. More details here: j8spec.github

Feb 17, 2022

A powerful API whichs allows developers to change a players name and UUID on login.

UUIDSwitcher An easy to use but powerful API for spigot servers which gives developers control over the UUID and name a player logs in with. This chan

Nov 30, 2022

RR4J is a tool that records java execution and later allows developers to replay locally.

RR4J is a tool that records java execution and later allows developers to replay locally.

RR4J [Record Replay 4 Java] RR4J is a tool that records java execution and later allows developers to replay locally. The tool solves one of the chall

Dec 7, 2022

An extensible media player for Android

ExoPlayer ExoPlayer is an application level media player for Android. It provides an alternative to Android’s MediaPlayer API for playing audio and vi

Dec 30, 2022

Turismo Tierra Media: a system that stores the information of different attractions of Middle Earth amusement park

turismo-tierra-media is a system that stores the information of different attractions of Middle Earth amusement park. The system suggests visits based on the location of the visitors, and also generates itineraries based on the information on preferences available in the user's profile.

Feb 17, 2022

XR3Player - The MOST ADVANCED JavaFX Media Player

 XR3Player  - The MOST ADVANCED JavaFX Media Player

Support me joining PI Network app with invitation code AlexKent I am in search for developers to keep on where i left XR3Player :) XR3Player ( Downloa

Dec 17, 2022

JAP is an open source authentication middleware, it is highly decoupled from business code and has good modularity and flexiblity. Developers could integrate JAP into web applications effortlessly.

JAP is an open source authentication middleware, it is highly decoupled from business code and has good modularity and flexiblity. Developers could integrate JAP into web applications effortlessly.

🎨 JAP 是什么? JAP 是一款开源的登录中间件,基于模块化设计,并且与业务高度解耦,使用起来非常灵活,开发者可以毫不费力地将 JAP 集

Dec 1, 2022

Rivr is a lightweight open-source dialogue engine enabling Java developers to easily create enterprise-grade VoiceXML applications.

Overview Rivr is a lightweight open-source dialogue engine enabling Java developers to easily create enterprise-grade VoiceXML applications. Read our

Jun 27, 2022
Comments
  • Update playing status

    Update playing status

    Hi again,

    I have a new feature request. A method to update the playing status so that the play button will become pause button and the reverse. That would be possible with 3 ways that I can think of:

    1. By setting the initial icon (play or pause) in the .ShowNotification method (I wouldn't recommend)
    2. By having a new method that controls the icons (this will also help enable/disable previous/next buttons whenever needed)
    3. By having a new method that triggers the play/pause icon click.

    Just my thoughts. If I knew a bit more about java I would make a pull request or fork

    enhancement 
    opened by anonwins 0
  • Disable Prev + Next buttons

    Disable Prev + Next buttons

    Hi, is there a possibility to make prev+next buttons optional? I have no idea how to do it myself. I need this for my internet radio app. Thank you very much. Great work!

    enhancement 
    opened by anonwins 3
Owner
Shreyash Saitwal
Rise Above the Rest
Shreyash Saitwal
A short assembly macro-processor script to simulate the process and show the different stages

A short assembly macro-processor script to simulate the process and show the different stages

Neopentene 2 Mar 9, 2022
A template repo for a command style robot

Phil A template repo for a command style robot. To Use Click Use this template in GitHub and create your new repository using the Phil template.

StuyPulse 3 Dec 15, 2022
An android application to make students life easier by reducing their backpack weight.

Smart-Schooling An android application to make students life easier by reducing their backpack weight. Dont forget to ⭐ the repo Overview Almost every

Thamizh Kaniyan 3 Jan 31, 2022
A simplified and multi-functional tool for spigot developers

A simplified and multi-functional tool for spigot developers. There are dozens of features you can use in it, and it is completely open source code. hCore supports all versions from 1.8.x to 1.18.2. Also you can find all these APIs usages from here.

Hakan Kargın 57 Jan 1, 2023
Scaffolding is a library for Minestom that allows you to load and place schematics.

This library is very early in development and has too many bugs to count. For your own safety, you should not use it in a production environment.

Crystal Games 18 Nov 29, 2022
A simple fabric mod which allows deepslate to be instamined

InstantDeepslate An extremely simple mod that allows you to instantly mine deepslate. This works by changing the blast resistance and break time value

null 3 Jan 31, 2022
A FabricMC Mod that allows you to give yourself a few Custom Cosmetics.

Cosmetics-Fabric A FabricMC Mod that allows you to give yourself a few Custom Cosmetics.

null 1 Apr 13, 2022
A Nexus Repository 3 plugin that allows usage of Terraform repositories

Nexus Repository Terraform Format Table Of Contents Developing Requirements Download Building Using Terraform with Nexus Repository Manager 3 Compatib

null 8 Dec 5, 2022
An extensible Java framework for building XML and non-XML streaming applications

Smooks Framework This is the Git source code repository for the Smooks Project. Build Status Building Pre-requisites JDK 8 Apache Maven 3.2.x Maven gi

Smooks Framework 353 Dec 1, 2022
AndroidX Media is a collection of libraries for implementing media use cases on Android

AndroidX Media AndroidX Media is a collection of libraries for implementing media use cases on Android, including local playback (via ExoPlayer) and m

Android Jetpack 311 Jan 1, 2023