Version 8.1

If you have questions or if you want to share your opinion about Aware IM post your message on this forum
Rennur
Posts: 1191
Joined: Thu Mar 01, 2012 5:13 am
Location: Sydney, Australia

Re: Version 8.1

Post by Rennur »

Code: Select all

One challenge with this, Vladimir, is when a series of processes uses "IN BATCHES OF 1" and multiple processes are called. I usually can't get the system to trigger this type of process to go into the background no matter what setting I use.
We use background processes in a number of app sections. I haven't encountered any problems with the functionality.
Attachments
bgrun.png
bgrun.png (11.42 KiB) Viewed 24895 times
himanshu
Posts: 723
Joined: Thu Jun 19, 2008 6:24 am
Location: India
Contact:

Re: Version 8.1

Post by himanshu »

Hi,

I should say one word for this Impressive!

I believe there are many other members who must be waiting for a Reporting tool upgrade. Love to see it soon.

Thanks AwareIM Team.
From,
Himanshu Jain


AwareIM Consultant (since version 4.0)
OS: Windows 10.0, Mac
DB: MYSQL, MSSQL
RentProperty
Posts: 345
Joined: Mon Nov 12, 2012 9:08 pm
Location: South Africa

Re: Version 8.1

Post by RentProperty »

This look Awesome Vladimir.

I would reckon the main things we would love to also see in this release is as follows:

1) Much more flexibility with the Debugging. I.e. the ability to add a rule to output something specifically in the middle of your process, like you would do a system.out.println or console.log. We have so many cases where we need to see what exactly the value of a specific attribute before and after a rule and before the process continues.
So I think maybe a new type of logging that outputs all User defined logs, and then the ability to add these as a special rule to any process or object rule.
If the existing Logger can also be improved to have the ability to pause that would be great. The log to File thing has always been cumbersome to use.

Further to the above.... it would be AWESOME to have the ability to also have breakpoints for debugging. So to be able to add breakpoints to a process and then the system pauses at each break until you resume. You can perhaps have a development testing so that this only runs when you are in dev testing mode.

NOTE -> I'm not 100% sure if the 2 features mentioned are referring to some of these?
c) LOG - write any arbitrary string into the rule log
d) LOG CONTEXT - write the current Context into the rule log

2) The ability to sort attributes by any column in the configuration tool. Sometimes it will really help to be able to sort it for instance by the attribute types.

3) Thirdly and probably still highest on my Priority list is to have an better context assistant. I still find that after a couple of lines (When using the text version of the rule editor) the context assistant stops working or suggesting.

4) It will also help GREATLY if the formatting in the rule text editor can be improved to use colors, indents etc to make a block of code more readable. Currently it is just one bug blob of text.

5) Lastly... Something we need on a daily basis is to have Nested If Statements. You have to create so many sub processes and it just makes reading the code more difficult. And also the ability to Break or Return in the middle of a process if certain conditions are met.

I Really hope you'll consider some of these points as I believe they can add great value and make the lives of the developers a lot easier. Especially when it comes to debugging code and the readability of code.
Hein Hanekom & Werner Hanekom
Sinov8.net
AwareIM Version 5.9 | 6.0 | 7.0 | 7.1 (Windows EC2 R2012 & MySQL)
aware_support
Posts: 7525
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Re: Version 8.1

Post by aware_support »

Thanks, for the feedback, Hein. Most of your requests are difficult, though, and won't make it in 8.1 - perhaps in the future versions. :cry:

Code: Select all

NOTE -> I'm not 100% sure if the 2 features mentioned are referring to some of these? 
c) LOG - write any arbitrary string into the rule log
d) LOG CONTEXT - write the current Context into the rule log
Yes
Aware IM Support Team
RentProperty
Posts: 345
Joined: Mon Nov 12, 2012 9:08 pm
Location: South Africa

Re: Version 8.1

Post by RentProperty »

Thanks Vladimir, I understand. Pity though.

Can I try one other request then since you will be focusing on REST? :-)

It would help Tremendously when Exposing rest if we didn't have to create a response object of each instance we want to return. Ideally we would like to have sort of a selection list where we can specify what attributes of each Object is being returned when a request is made.

Currently it returns ALL the attributes including the parents and children, and parents's parents and children's children. So because of this we need to create response objects that don't contain any relationships or contains only downward relationships in order to return only the required data. This changes a Request that should take 5 minutes to setup into a day's work. Especially where you have a lot of nested relationships etc.

Hope that makes sense? Will be be great to for instance be able to say that a certain requests returns Object x, and on object x select the attributes to be included in the JSON. If there is a relationship then one should be also be able to specify for each relationship what attributes you want to return etc. Or it should by default not Return any nested children/parents but only the object type and ID of that reference.

Anyways... Hope this is also something that can be considered going forward. Thanks for your continued development to ensure the technology keeps improving and evolving. We finished porting a MASSIVE system from 5.9 to 7.1 just 3 months ago and it went really well. Took couple of months but the users love the new look and features. We'll tackle moving all our systems over to 8.1 early next year then. :-)


One other feature Pierre asked me to request that there be a FORCE LOGOUT feature that admin can use which will literally force a logout on any logged in User and display a message. for instance
FIND User WHERE XXX FORCE_LOGOUT('We need to take the system down for maintenance. Please log back in in 5 minutes.')
Hein Hanekom & Werner Hanekom
Sinov8.net
AwareIM Version 5.9 | 6.0 | 7.0 | 7.1 (Windows EC2 R2012 & MySQL)
kklosson
Posts: 1628
Joined: Sun Nov 23, 2008 3:19 pm
Location: Virginia

Re: Version 8.1

Post by kklosson »

How about some method to inform users of session timeout?
V8.8
MySQL, AWS EC2, S3
PDFtk Toolkit
ACDC
Posts: 1143
Joined: Sat Jun 30, 2007 5:03 pm
Location: California, USA

Re: Version 8.1

Post by ACDC »

Thanks Vladimir this does look really good,

Please will you consider upgrading the existing tour feature to something more dynamic.

This one seems to be a good replacement and could be a possible drop-in replacement

check demo and api
http://linkedin.github.io/hopscotch/

download app:
https://github.com/linkedin/hopscotch

For more information and justification please refer to this post
https://www.awareim.com/forum/viewtopic ... 474#p42474
ACDC
Posts: 1143
Joined: Sat Jun 30, 2007 5:03 pm
Location: California, USA

Re: Version 8.1

Post by ACDC »

Another feature that I would love to have is a SendGrid plugin that lets me track email delivery. This would need to include the email document name (id) extracted from the email header that Java mail assigns to the outgoing email, so the SendGrid feedback notifications can be assigned to the OutGoing Email Object
mrbdrm
Posts: 349
Joined: Tue Oct 16, 2012 11:44 am

Re: Version 8.1

Post by mrbdrm »

Great job Vlad :)
i would like to extend the functionality of EXEC_SCRIPT to except a returning value (string)
this will be very helpful in mobile apps.
BenHayat
Posts: 2749
Joined: Thu Dec 23, 2010 5:48 am
Location: Fla, USA
Contact:

Re: Version 8.1

Post by BenHayat »

mrbdrm wrote: i would like to extend the functionality of EXEC_SCRIPT to except a returning value (string)
.
Do you mean "Accept" or "Expect" or what.
Except doesn't make sense here, unless I'm missing something.
aware_support
Posts: 7525
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Re: Version 8.1

Post by aware_support »

Thanks, everyone for your suggestions. Some comments:

Code: Select all

One challenge with this, Vladimir, is when a series of processes uses "IN BATCHES OF 1" and multiple processes are called. I usually can't get the system to trigger this type of process to go into the background no matter what setting I use.
This sounds like a bug. Could you please send the BSV to support with your usually excellent problem description, Tom?

Code: Select all

It would help Tremendously when Exposing rest if we didn't have to create a response object of each instance we want to return. Ideally we would like to have sort of a selection list where we can specify what attributes of each Object is being returned when a request is made.
Not sure I understand this one. There IS already an ability to specify which attributes will be returned. Also, the best practice is to create a SPECIAL object that will represent the return of the REST service.

Code: Select all

One other feature Pierre asked me to request that there be a FORCE LOGOUT feature that admin can use which will literally force a logout on any logged in User and display a message.
There are already actions to do this (LOGOUT and LOGOUT2) but without a message

Code: Select all

How about some method to inform users of session timeout?
Not sure I understand this one

Code: Select all

Please will you consider upgrading the existing tour feature to something more dynamic. 
What exactly are the benefits of the new feature compared to the current one?

Code: Select all

Another feature that I would love to have is a SendGrid plugin that lets me track email delivery. 
Don't understand this one at all, sorry

Code: Select all

i would like to extend the functionality of EXEC_SCRIPT to except a returning value (string)
this will be very helpful in mobile apps.
Can you please explain exactly how you would use the returned value?
Aware IM Support Team
ACDC
Posts: 1143
Joined: Sat Jun 30, 2007 5:03 pm
Location: California, USA

Re: Version 8.1

Post by ACDC »

Code: Select all

Code: Select all
Please will you consider upgrading the existing tour feature to something more dynamic.
Support Said: What exactly are the benefits of the new feature compared to the current one?

The existing Tour feature PageGuide in AwareIM is not really good for instruction and onboarding of a new users to your app. It's more akin to an extended Help utility and its not really geared for an Instruction type tour

There are some free alternatives available, that behave much differently and better than PageGuide in that each stage of the tour is shown separately with its own Description/Instruction with a Next, and Back Button. So when the user clicks on the tour button, the first "Stage 1" window opens with its content and located at the position ID of the attribute and it waits for the user to click "NEXT" to go to the next Stage of the instruction

This is an excellent method of onboarding new users to the app as the user is continually prompted to click Next which results in the next step of the instruction sequence being followed. So rather than point the user to a manual or online help file , the user would use the Tour to gain quick real-time instruction while in the live form. This method of instruction is becoming very popular and most often the preferred method

here is an example of HOPSCOTCH demo Tour (free version) http://linkedin.github.io/hopscotch/ click the demo button . If you click the Try demo button on this page you will get a really good idea of the difference

I am sure HOPSCOTCH could fit very nicely into AwareIM in the same was as PageGuide setup has been implemented in the configurator. In fact, maybe it could be a drop-in replacement or sit side by side and have an option on the Tour setup screen to select which Tour guide is being used. I would like to ask support to consider this upgrade or addition for the new version. - it seems a simple enough addition?
mrbdrm
Posts: 349
Joined: Tue Oct 16, 2012 11:44 am

Re: Version 8.1

Post by mrbdrm »

Ben i meant "Accept"
if the function i have on mobile return a string or array(if possible for aware to catch) so i know if for example the function was a success or a failure. or save the result in BO.

as example if i want to use the QR code reader on mobile.
1- start the function with aware EXEC_SCRIPT
2- the function run and return the QR code value.
3- aware get the value

with this we can use almost all the plugins in phonegap.
RentProperty
Posts: 345
Joined: Mon Nov 12, 2012 9:08 pm
Location: South Africa

Re: Version 8.1

Post by RentProperty »

Thank you for the feedback Vladimir.
It would help Tremendously when Exposing rest if we didn't have to create a response object of each instance we want to return. Ideally we would like to have sort of a selection list where we can specify what attributes of each Object is being returned when a request is made.
Let me try and explain this at the hand of an example. We build native mobile apps with A LOT of interfacing with our AwareIM web portal. We have comprehensive API calls that return large sets of data. For instance the App would make an API call to the server to return All Properties for a User.

Properties can have many Leases
Leases Can have many Tenants

So what we currently have to do is something like this (Shorterned & Simplified):

MAIN PROCESS
FIND User WHERE User.ID = ServiceCall.UserID
FIND Property WHERE Property.User=User

--> SUBPROCESS 1 (Called on each property)
CREATE Property_Response WITH PropertyRepsonse.PropertyName=Property.PropertyName,
Property_Response.ServiceCallID=ServiceCall.ID
IF Property.Leases IS DEFINED THEN FIND Leases WHERE Lease IN Property.Leases

SUBPROCESS 2 (Called for Each Lease)
CREATE Lease_Response WITH Lease_Response.Rent=Lease.Rent
INSERT Lease_Response IN Property_Response.Lease_Responses
IF Lease.Tenants IS DEFINED THEN FIND Tenant WHERE Tenant.Lease=Lease

SUBPROCESS 3 (Called for each Tenant)
CREATE Tenant_Response WITH Tenant_Response.Name=Tenant.Name
INSERT Tenant_Response IN Lease_Response.Tenant_Response

BACK TO MAIN PROCESS
FIND Property_Response WHERE Property_Response.ServiceCallID=ServiceCall.ID


This would then return all the properties for a user which then includes the nested relationships for each property's Leases and each leases's Tenants.

Now the Response objects are Can only have one way Peer to Peer relationships downward. IF not the JSON object that is returned will again return the Lease & Property Data for the other tenants as it resolves those relationships.

Hope that makes a bit more sense. What I would expect is that the JSON response would only include The ID of the relationships Unless specified to return the full object of that relationship.

This is a very simple example of the types of processes we need to set up in order to return Nested JSON array structures without returning the same data MULTIPLE times because of the parents resolving again. Also, the main objects might have 20 other relationships to other objects which we don't want to return at all.

I'm not sure what you mean by "There IS already an ability to specify which attributes will be returned" as I don't see anything in the documentation? Perhaps you can give an example of how this works and where one would set that up with regards to my example above.

THEN...
There are already actions to do this (LOGOUT and LOGOUT2) but without a message
Is this only in version 8? I don't see these in 7.1 yet. And also don't see it in Version 8 Documentation that I Have.

Thanks so much for taking the time to hear us all out and consider all the requests. Much appreciated.

Kind Regards

Hein
Hein Hanekom & Werner Hanekom
Sinov8.net
AwareIM Version 5.9 | 6.0 | 7.0 | 7.1 (Windows EC2 R2012 & MySQL)
BenHayat
Posts: 2749
Joined: Thu Dec 23, 2010 5:48 am
Location: Fla, USA
Contact:

Re: Version 8.1

Post by BenHayat »

Hi Vlad;

In your initial post you mentioned "Consuming REST", but you didn't mention what enhancements are being done to "Exposing" REST, meaning exposing Aware's resources to outside, rather consuming an existing into Aware.
Could you please elaborate on that?
Post Reply