Release Pantfy, a notificacion system for OpenPandora


efegea

Active Member
Joined
Aug 8, 2005
Messages
636
Age
38
Location
GP32Spain, Spain
I'm working on a new software for Pandora, independent of the Pangea GUI, not related in any way.

It's a notification system, similar to Growl on Mac OS X.

It's 100% tuneable, using XML skins, and very easy to use for application developers. It uses linux's Named Pipes, an special kind of file created by the mkfifo command that has to be opened for writing as any other file but instead of using open() to get the file descriptor, have to use pipe(). Then the developer writes XML formatted data into the pipe and it get's shown as a notification.

Another way is what I use actually for debugging:

Code:
 $ echo msn Francisco > pipe

Whre "pipe" is the actual special file created by mkfifo. Typical unix pipes, you know :p

I can think about a lot of uses for this system:
-System notifications (low battery, wifi spot detected, sd inserted...)
-Instant messaging (User foo has logged in)
-E-mail
-Software updates avaliable
-Music players
-RSS feeds

You may be thinking that you will hate this, because it's like the damned ms Windows XP notifications, but not, it isn't! You can disable each kind of notification (you don't want msn notifications bugging you) globally or per application (i.e: you can disable msn notifications ONLY for the psx emulator, but them will show when you are browsing the web)

Here is a video of what I got done (is a two days work):
[youtube]LDWt1-HhBPY[/youtube]
(oh, and the volume notificaction is only a placeholder, I know, Pandora doesn't have software-controlled volume)
 
Pretty cool.
It looks like there are too many styles, though. Ubuntu 9.04's new notification system just has one style, and they all kinda stack up.

I also like the named pipes, those should be easier to use than whatever Ubuntu is using.
 
Well, the styles are only there for demostration. You can configure each type of notification with the style you want. If you want all to have the same style: don't touch the default configuration :lol:
 
I really like this but as previous poster I think it needs a more strict styling. I think the panda needs these kind of things to look profesional.
 
Looks very cool. I am kind of worried about it hogging system resources however... though that might be from my faulty understanding of Linux processes and the power of the Pandora.
 
It's just a daemon that watches for something to go into the pipe, and then puts it on the screen, right? That shouldn't much CPU power.
Not when we're running huge programs like Firefox already.

What toolkit are you using for this, anyway?
Is there a lock on the pipe to prevent multiple simultaneous writes, or does the "open-write-close" strategy already prevent that?
 
The pipe is blocking while an application is writing, but two or more applications can write until the next time the daemon reads (i.e, an interval of 100ms). I difference them because the data is XML, so the data of the first ends with </xml> and if there is more thata, it'll be <xml> ("xml" or whatever text I decide that has to be there)

I use Qt 4.5.
 
Interesting idea... Needs a new name though.

I know the intent is Pan-tfy, but I first read it as "Pant-fy" which sounds more like a fraternity hazing ritual.
 
I agree with the name change idea. I understand how you wanted notify to be pantfy but it doesn't look or work well. Reads like panties :eek:

Anyways, I have been showing this page around for Pandora app names:

http://en.wikipedia.org/wiki/List_of_Gr ... erivatives

For your app:

"diakon" means messenger.
"hup(o)-" means under/sub...
"skopos" means observer.

I need to find some greek Pandora fans.
 
senorgomez said:
I agree with the name change idea. I understand how you wanted notify to be pantfy but it doesn't look or work well. Reads like panties :eek:

Anyways, I have been showing this page around for Pandora app names:

http://en.wikipedia.org/wiki/List_of_Gr ... erivatives

For your app:

"diakon" means messenger.
"hup(o)-" means under/sub...
"skopos" means observer.

I need to find some greek Pandora fans.
Pan'tfy
Panotfy
Pan'tphy
Panotphy

Note that "pan" means "all" : notify to all or notify everything, etc.
 
I like where this project is going. Will support need to be built into any application that uses it? Like, pidgin for example.
 
hlide said:
senorgomez said:
I agree with the name change idea. I understand how you wanted notify to be pantfy but it doesn't look or work well.
I need to find some greek Pandora fans.

Pan'tfy
Panotfy
Pan'tphy
Panotphy

Note that "pan" means "all" : notify to all or notify everything, etc.

Yes I understand how you wanted notify to be pantfy, like I said. It would actually be, per the link I posted, panto-fy not panot-fy.

I think it would be cool if not all pandora apps used the Pan prefix (though I am guilty of it too). It would be cool to use other ancient greek words.

Edit: Turns out diakon, aka messenger, is literally 'through dust'.

But whatever, it is only a name.
 
Sounds interesting!
How is this project related to libnotify? Does it use it, or is this a totally new development?
 
Heh... I think I'd call it pandora_bubbletips_service.

Good thing I'm not naming it? :wink:

I'm sure whatever is picked will be fine - as long as it indicates it's for the Pandora, and has a word similar to "Notify" somewhere in there.
 
I think this is new, he just said it polls a named pipe for data, so I don't think it uses any standard libraries or D-Bus things.
Which is disappointing since those are the standard, and the Pandora will probably already have D-Bus, and it seems easy enough to work with.
 
Code:
I use Qt 4.5.

Good idea!

Qt is a very good full featured library, but it's pretty huge .

So could somebody tell me if it is part of the Pandora core installation ?
Does the app-launcher use Qt ?
 
The system is extensible, so a plugin that reads data from libnotify instead of the named pipe can be written, but I'll have to investigate libnotify a bit to see how it works.

I agree on the name change. Perhaps Panotify? I don't want anything complicated, just Pandora + notify, so simple :) (but I don't like hwo Pandotify sounds :lol: )

So could somebody tell me if it is part of the Pandora core installation ?
Does the app-launcher use Qt ?

I'm sure it will come installed on the firmware, as it a basic library, and Pangea will also come in a firmware update and it's also based on Qt 4.5
 
The most important question of them all (at least to me):
Is it notification-daemon compatible?
(As was already asked in this thread)
If it isn't, we'll have to change all the gazillion apps that already use this stable and mature system, so there wouldn't be any sense in not supporting libnotify.
Please consider adding support for it if there isn't support already.

My next question:
Why not just take the new Ubuntu Jaunty system and use that?
There's no sense in duplicating work...
http://www.markshuttleworth.com/archives/265
 
dflemstr said:
The most important question of them all (at least to me):
Is it notification-daemon compatible?
(As was already asked in this thread)
If it isn't, we'll have to change all the gazillion apps that already use this stable and mature system, so there wouldn't be any sense in not supporting libnotify.
Please consider adding support for it if there isn't support already.

My next question:
Why not just take the new Ubuntu Jaunty system and use that?
There's no sense in duplicating work...
http://www.markshuttleworth.com/archives/265

If the notification system that ubuntu ships works on Pandora (why not?) and has the features I want to implement on Panotify, then I'll leave this project, as I already has a lot of projects to work on and time is too precious to waste.
 
Back
Top