Unified Push Server user management questions
by Hylke Bons
Hi,
It seems that most of us are happy with the wireframes for the Unified
Push Server admin UI. I've used the feedback to make a few small
changes:
https://github.com/hbons/aerogear-design/blob/master/aerogear_unified_pus...
The next step is to look at the the missing features like the user
management and authentication. It would be good to have a discussion
about this, and I have some questions too.
If I understand things correctly, the Push Server can run "standalone"
or as a component in JBoss AS (or something else). So we'll need a UI
for user management when we run standalone, but one that can be disabled
and be plugged in by different existing auth systems that are running on
the server or somewhere else.
Some questions that come to mind:
How is the server bootstrapped? And how is the initial user account
configured? The most essential basic role would be to access the UI and
to configure push notifications (and one to add other (admin) users).
Are there any other roles that we should be considering? Things that
should be disabled for some users?
Thanks,
Hylke
11 years, 6 months
[Java Sender] Message Fluent API / Builder / DSL ...
by Sebastien Blanc
Hi Folks,
As you know we have a Java Sender Library that can be used by any backend
application that want to send messages to the Unified Message Push Server (
https://github.com/aerogear/aerogear-unified-push-java-client).
The format is quite open and flexible as Matthias described it here :
https://gist.github.com/matzew/b21c1404cc093825f0fb
We can divide the creation of a message in 2 main parts :
- The "signalling" part : list of client identifiers / specific devices
etc ...
- The "core" message containing actually the information we want to push
Both are passed as Map and are finally converted into JSON.
Here an example of how a "core" message is build :
Map categories = new HashMap();
categories.put("lead", "version="+leadVersion++);
Map json = new HashMap();
json.put("id", lead.getId());
json.put("messageType", "pushed_lead");
json.put("name", lead.getName());
json.put("location", lead.getLocation());
json.put("phone", lead.getPhoneNumber());
json.put("simple-push", categories);
json.put("sound" ,"default");
json.put("alert" ,"A new lead has been created");
Even the format is open, we could "assist" a bit the developer in building
the message. For that we have different options :
- Propose a simple Message object containing the message "API" :
Message message = new Message();
message.setClientIdentifiers("jake","maria");
message.enableSound();//by default use "default" or we could do
message.enableSound("boing")
message.setAlert("Watch out!);
message.setAttribute("customAttribute","yo"); // custom simple strings
message.setAttribute("customStructure",myObject); // passing objects
- Propose a Message Builder (following the Builder Pattern) to propose a
more fluent API :
Message message = new Message().builder()
.clientIdentifiers("jake","maria")
.enableSound()
.alert("AAAAHHH!")
.attribute("customAttribute","yo")
.attribute("customStructure",myObject)
.build()
- Same as above but more DSL focused (not sure about this one ;) )
Message message = MessageDSL.to("jake","maria").withSound() //etc ...
So, beside that we have to discuss what we want allow to pass to the
message API : only Strings and simple Maps ? Full Objects that will be
JSONified ?
Do we want also to separate the "signalling" part from the "core" part when
building a message ?
Inputs and comments more than welcome !
Seb
11 years, 6 months
Registering an Android Variant Fails
by Tommy McCarthy
Hey everyone,
I've run into a slight issue when trying to register an Android variant. I keep getting a 404 response instead of the variant ID, secret, etc. I'm not sure if the configuration has changed since the latest readme in aerogear-unified-push-server.
On the third curl command to register the Android variant:
curl -v -b cookies.txt -c cookies.txt
-v -H "Accept: application/json" -H "Content-type: application/json"
-X POST
-d '{"googleKey" : "IDDASDASDSA"}'
http://localhost:8080/ag-push/rest/applications/{PUSH_ID}/android
I get back a 404. I've tried this on my OpenShift instance and a local instance as well, with no avail. Every other command so far has worked (login, register app)
Also, I'm using the latest version of the unified push server from a clone today.
Any suggestions? I think I've covered all my bases so far!
Tommy Mccarthy
11 years, 6 months
CSS Frameworks
by Lucas Holmquist
Starting a new thread for this:
> I would like to reboot the discussion of css frameworks
>
> the 2 that are in question are bootstrap and topcoat.
>
> i would like to here why one is "better" than the other. or why the
> preference.
>
> Ready, Go.
11 years, 6 months
Bundling Dependencies
by Kris Borchers
So I have a dilemma on which I would like input from the team. In https://issues.jboss.org/browse/AGJS-48 qmx reports that he gets:
Uncaught ReferenceError: vertx is not defined at aerogear.js:2627
when using AeroGear.js in a blank page. The reason for this is that the full build of AeroGear.js contains the new vert.x and STOMP over websocket adapters for Notifier. These adapters have dependencies on vertxbus.js and stomp.js respectively. Since they are not included in the page, you get that error. Here is the dilemma.
Do I bundle those files into AeroGear.js as part of the build when those adapters are included or not? The reason I did not is because they are external dependencies and I didn't want them bloating the file size just like we do with jQuery. That said, it's obviously easy to not realize you need those files, especially if you grab AeroGear.js and don't intend on using the Notifier bits or just grab it and throw it in a page and see those errors as qmx did.
Thoughts?
11 years, 6 months