Notifications are an important part of a workflow, so I want to implementation notifications screen.
Pulling would be every 5 minutes if there are apps that can generate notifications otherwise we can pull every 2 hours or so. This can, of course, be tweaked later on.
Since we want the user to receive notifications even when app is inactive, I assume we need a service implementation, but @tobiasKaminsky and @AndyScherzinger can probably clarify that.
Clicking on a notification while the app is inactive would open the app and the notifications screen for the user that got the notification. This would also trigger some kind of message that "User Mario Danic logged in" or something similar coming up at the top of the screen.
Involving @nextcloud/designers so they can tell me how wrong I am on the overall workflow and so they can deliver mockups/workflows I'd work against.
Involving @karlitschek to tell me more about the vision behind the functionality, and involving @nickvergessen because he seems to be the chief of all things API.
It should look exactly like the Activity app on the server. :) That’s your live mockup basically.
@jancborchardt understood. The other issue mentions merging uploads, notifications and activities though. (And even on the server, notifications & activities are different)
Basically notifications are a more urgent and often interactive version of an activity. Like someone calls you, you have to pick up. Or an app needs to be updated etc, someone shares a file with you etc.
They are all chronological information. If you need to act upon it (upload error, sync error, you need to accept a share, you need to update something, or pick up a call) they should be shown on the top of the list.
@jancborchardt understood. Thanks for the clarification.
Notifications have nothing to do with activities, please ignore that.
Notifications are not chronicle but always urgent and they should also be shown as android notifications. Not hidden in any view (also thinking about multiple accounts on one device), that can be done additionally, but not primarily. Notifications spec matches the HTML notifications spec for exactly this reason. So they can be directly piped into the OS notifications.
This was very much misunderstood on the desktop client.
Basically the notification says:
Notification - Action required
You received one new notification on cloud.nextcloud.com
So you have to check the client in the non default tab on a second level navigation, 4 clicks away...:
And there the domain is even missing, so you don't know which server this message is from.
Instead the actual text "Frank K. invited you to a call" should be the actual notification text. And the Account/Instance should also be listed as detail.
Hope this helps to clarify things.
@nickvergessen Although notifications have to be handled differently, than activities, it is questionable to give them their own View in the app or even a sidebar item.
In #556 we discuss to combine the notifications into the activity stream. I actually think, when we integrate the notifications in Android natively, is there still the need to show them in any view inside the App? Choosing to act on the notification should directly transfer to it's content: Incoming call: open spreed.me, Update available: open admin settings, etc.
Yeah, that's what I ment. It should be in the notification itself, and then you don't need to combine it with anything. I just wanted to point out, that the current desktop implementation is a very bad example.
As an example "Incoming call: open spreed.me". Does the notification has all the informations that our app can handle the notification correctly? Or do we have to "parse" every notification and handle them individually?
What worries me is ... since we have to pull, things like incoming call won't really work as expected (worst case, you'll get notification 5 minutes after someone called you).
Yeah don't be worried, we are discussing this atm.
Keep in mind that even if we don't have a Notifications view per-se, we will need to create one that will be triggered by the notification click on Android 4.0 since it does not supports notification action buttons as far as I remember. Obviously, it's not a menu item in that case :)
Keep in mind that even if we don't have a Notifications view per-se, we will need to create one that will be triggered by the notification click on Android 4.0 since it does not supports notification action buttons as far as I remember. Obviously, it's not a menu item in that case :)
Is there something like an redirect view?
@eppfel redirect view? Clicking on the notification will launch a view/activity that we define and create. It should have a text field and a place where we can put an arbitrary number of buttons depending on the data.
@nickvergessen I assume the number of actions that could be attached to an action can be more than 2 (examples mention only 2)?
Yeah, there is no hardcoded limit, current known implementations only use 0, 1 or 2, but in theory there is no limit
@mario Ah, ok. You are right.
Mario and I discussed about this, see https://github.com/nextcloud/android/issues/557#issuecomment-274776899
In the desktop client the mistake was made to do a separation between 3 chronological streams (server activity, uploads, and errors) which are basically the same, or contain the same items.
This is similar for notifications, as many of them (like accepted shares, or comments you could reply to) will show up in activity too. It’s a very similar problem as: Sidebar: combine file Activity, Comments and Versions into unified »Activity« timeline tab in https://github.com/nextcloud/server/issues/658 – that leads to people not discovering stuff, things being duplicated (Versions and Comments show up in Activity but are not interactive there …) and the whole app seeming more complicated than it really is.
@mario @nickvergessen Was there already work done for Android? (during the Hackweek)
No.
On Tue, 28 Feb 2017 at 07:02, Morris Jobke notifications@github.com wrote:
@mario https://github.com/mario @nickvergessen
https://github.com/nickvergessen Was there already work done for
Android? (during the Hackweek)—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/nextcloud/android/issues/559#issuecomment-282950676,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAWsqwmXsx1UpfMRQSZboUwbyf8PnVoks5rg7hwgaJpZM4Ln-KG
.
Jan and me did discuss the UI though and that requires significant Ui
changes. But will be done of course :)
On Tue, 28 Feb 2017 at 07:02, Morris Jobke notifications@github.com wrote:
@mario https://github.com/mario @nickvergessen
https://github.com/nickvergessen Was there already work done for
Android? (during the Hackweek)—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/nextcloud/android/issues/559#issuecomment-282950676,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAWsqwmXsx1UpfMRQSZboUwbyf8PnVoks5rg7hwgaJpZM4Ln-KG
.
Just to note it down here as well:
The API is currently developed in nextcloud/notifications#59 and the push proxy can be found at https://push-notifications.nextcloud.com (ask @LukasReschke or @nickvergessen for access and help)
I'm interested in to develop the Notification Feature
How can i start?
Do you have a mockup about this feature?
Do you have a mockup about this feature?
@mario @jancborchardt I guess you looked into this during the last hackweek.
@nickvergessen I installed the notifications app from the branch in nextcloud/notifications#59. Is anything else needed?
cc @oparoz FYI
@mario @jancborchardt I guess you looked into this during the last hackweek.
There it is https://github.com/nextcloud/android/issues/557#issuecomment-274776899
So as there is currently no activities UI available I guess it's fine to have for now a separate notifications panel, that then can get merged into the activities view once that one is there.
Right @AndyScherzinger @tobiasKaminsky ?
Just for the record as far as I know we don't push to android, but pull there.
Because we don't want to depend on google play services (for the fdroid store)?
@nickvergessen we don't do push for the initial implementation, indeed - but we already rely on GMS for other things unfortunately :-/
@aleister09 @AndyScherzinger already started working on models and UI for both notifications and activities I guess - but let's see if he wants to hand you one of those, and once he decides which, I'll give you all the info you need (where to put models, api calls, UI stuff, DB stuff, and others).
@AndyScherzinger your turn to decide if you prefer notifications or activity :D
Hi all, haven't found the time to start working on it, so pick whatever you fancy @aleister09. For activities we already talked about how the UI should look like so that one is already quite defined and I would suggest you pick that one. From the discussion with @mario the first step would be to extend the library project for Api connection and data model, then extend the app project to utilize this, add a new menu item, activity with recyclerview :)
@MorrisJobke we also have this https://github.com/nextcloud/android/issues/557#issuecomment-288138320
Which is the result of the discussion between Jan and me on how the items should look like. For the date human readable we already have a function used for the file list we can also use here.
okay, I will fix the push proxy to also support FCM then.
The notification app changes should be fine already for android too. It will just not send notifications via the proxy correctly.
@aleister09 thoughts on doing activity? UI mockup is there, and on Monday I'll fill you with all the relevant places and the way we wanted to implement it.
@nickvergessen thanks.
branch has been created and points to snapshot version of the lib with the work in progress change for notification support in the library: https://github.com/nextcloud/android/tree/notifications
@mario how do we want to handle development with having one screen/activities showing notifications, activities and uploads?
@AndyScherzinger poked you via email to clarify something.
So just to make it straight:
cc @MorrisJobke
Yup, I agree, 👌
Perfect :)
My question regarding development was how do work together on this and how to coordinate the necessary changes. Imho the best way to do this would be to work on a single branch for both features since activities and notifications data will be shown in one screen.
So if we agree on this way, I post the branch name later on where @aleister09 and I can collaborate so to keep it pragmatic someone with the rights needs to give @aleister09 write permission on the repo as in adding the account to the Android team.
What do you think? Imho the most pragmatic way to get these two features done.
Andy,
I will comment on other things later, but remember that we agreed they are
separate screens for now.
On Sun, 26 Mar 2017 at 14:08, Andy Scherzinger notifications@github.com
wrote:
Perfect :)
My question regarding development was how do work together on this and how
to coordinate the necessary changes. Imho the best way to do this would be
to work on a single branch for both features since activities and
notifications data will be shown in one screen.So if we agree on this way, I post the branch name later on where
@aleister09 https://github.com/aleister09 and I can collaborate so to
keep it pragmatic someone with the rights needs to give @aleister09
https://github.com/aleister09 write permission on the repo as in adding
the account to the Android team.What do you think? Imho the most pragmatic way to get these two features
done.—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/nextcloud/android/issues/559#issuecomment-289279007,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAWsrKuEJjNM1w3veTpnVl1alWhvE1vks5rplVFgaJpZM4Ln-KG
.
but remember that we agreed they are
separate screens for now.
Really? I only remember that because the activities are not done yet and therefore the notifications one is started on a new view, but once activity is available those will be merged.
So if we agree on this way, I post the branch name later on where @aleister09 and I can collaborate so to keep it pragmatic someone with the rights needs to give @aleister09 write permission on the repo as in adding the account to the Android team.
I invited him 😉
So, the overall decision is:
Please open separate branches for each @AndyScherzinger, and I'll write up all the info @aleister09 needs tomorrow (since he now has write access).
Really? I only remember that because the activities are not done yet and therefore the notifications one is started on a new view, but once activity is available those will be merged.
Sorry - was a misunderstanding from my side. Thanks @mario for clarification 👍
Branches:
@aleister09 and @mario I already added the menu (+icon) item and an empty activity to the branch for you, same for notifications
empty notification screen is done (need to rewrite this for activities too):

Work in progress PR has been opened: #783
Most helpful comment
empty notification screen is done (need to rewrite this for activities too):
