CommMgrPro for Android (Rules Engine) [ 2012-06-20 V1.1.19 ]

Search This thread

danielherrero

Senior Member
Oct 3, 2006
3,280
247
Madrid
www.softwaredhr.es
Hi.
Market URL https://play.google.com/store/apps/details?id=com.dhr.commmgrpro&feature=search_result#?t=W251bGwsMSwyLDEsImNvbS5kaHIuY29tbW1ncnBybyJd
I am porting CommMgrPro from Windows Mobile to Android.
This is the original post.
http://xdaforums.com/showthread.php?t=299070

The goal of this project is to customize the behaviour of your device depending of many events, like time, date, position, battery state, calendar, radios states, and any environment element.

Rules Engine is a complete rules engine to customize your device behaviour automatically. The idea is simple and powerfull:
The device broadcast automatically events about many thinks
Hardware events like Bluetooth, wifi, battery level, cpu state, position events, time events, calendar events, phone ring state, screen state
And much more...
And the device can perform automatically many actions without user intervention:
Set hardware state, wifi, bluetooth, speaker, launch or kill a program, apply a predefined profile, send a SMS/Email, ringtones....
And much more...
With Rules Engine you can create many rules. Each one is composed of:
Conditions. Simple or complex conditions using AND/OR clauses. For example, if weekday is monday, between 7:00 and 9:00 and my current position is my office and battery level is higher than 20% then send an email .....
Actions. Actions to be executed when the rule passes from unmatched to matched and actions to be executed when the rule passes from matched to unmatched. User can set their order, delays, etc

Other features:
Profiles: These are set of actions that the user can select / unselect quickly from the main page.
Quick timed switchers: For example, set Bluetooth on, but put off again after 90 minutes

New actions and conditions are being added each day.
Current conditions:
Weekday and time
Wifi state
Speaker state
Bluetooth state
Flight mode state
Data connections enabled / disabled
AC power / Battery
Location. To be inside or outside of some place (defined by point and radius)
Screen state
To match or unmatch other rule
Some program is running or not
Battery level (min, max)
Bluetooth connected to an specified device
Phone status (ringing, in call...)
Calendar events. To be in a caleendar event that contains some word, like 'meeting"
Autorotation screen On/Off
Mobile network type in use (GPRS, HSDPA, CDMA, LTE, etc)
Data connection On/Off
Headphone plugged or not
Car mode activated / deactivated

Current action:
Set wifi state
Set speaker state
Set bluetooth state
Set flightmode state
Set connections enabled / disabled
Launch a program
Kill a program
Apply a profile (Set of rules)
Set autorotation screen state
Set screen bright state
Set auto sync accounts state (gmail, facebook, etc)
Play a song.
Send SMS
Send Email
Set car mode
Set wallpaper
Set ringtone (as user mp3 or android ringtone)

As we did with CommMgrPro for Windows Mobile I hope this project become a user driven project.
Thanks¡¡

Known bugs
  • Empty
Next features being developed
  • Roaming condition
  • Condition connected to a specified hotspot


 

Attachments

  • device-2011-10-26-122806.jpg
    device-2011-10-26-122806.jpg
    24.6 KB · Views: 3,611
  • device-2011-10-26-122836.jpg
    device-2011-10-26-122836.jpg
    31.6 KB · Views: 2,592
  • device-2011-10-26-122913.jpg
    device-2011-10-26-122913.jpg
    39.4 KB · Views: 2,277
  • device-2011-10-26-123011.jpg
    device-2011-10-26-123011.jpg
    45.8 KB · Views: 2,133
  • QR_Droid_28218.png
    QR_Droid_28218.png
    4 KB · Views: 903
Last edited:

short/y

Senior Member
Mar 9, 2006
658
67
Silly-con Valley
Was a CommMgrPro user for a long time on WM so I'm looking forward to how this turns out on Android, Daniel. Glad to see you're here!

For my part, I'd like to

1) have ALL of those notifications available to me (with the possible4 exception of date/time set)
2) be able to change settings, run scripts, use Locale plug-ins (no reason for you to replicate functionallity that's available in existing code), start/kill other apps and send arbitrary Intents to other apps. Output to a file would be nice as would being able to read and parse a file (rudimentary parsing is OK)

Perhaps a tall order, eh? Start small. GPS and/or cell tower location-based notifications to trigger actions like turning on/off WiFi, bluetooth, cellular radio, conditioned on time of day/day of week/date would be a good start, for me at least. I'd also like to be able to create profiles that I can trigger manually, preferably by a shortcut. While I'm not big on widgets, people will want them and give you bad ratings in the Market if you don't have them.
 

danielherrero

Senior Member
Oct 3, 2006
3,280
247
Madrid
www.softwaredhr.es
Was a CommMgrPro user for a long time on WM so I'm looking forward to how this turns out on Android, Daniel. Glad to see you're here!

For my part, I'd like to

1) have ALL of those notifications available to me (with the possible4 exception of date/time set)
2) be able to change settings, run scripts, use Locale plug-ins (no reason for you to replicate functionallity that's available in existing code), start/kill other apps and send arbitrary Intents to other apps. Output to a file would be nice as would being able to read and parse a file (rudimentary parsing is OK)

Perhaps a tall order, eh? Start small. GPS and/or cell tower location-based notifications to trigger actions like turning on/off WiFi, bluetooth, cellular radio, conditioned on time of day/day of week/date would be a good start, for me at least. I'd also like to be able to create profiles that I can trigger manually, preferably by a shortcut. While I'm not big on widgets, people will want them and give you bad ratings in the Market if you don't have them.

Thanks¡ and happy to see you again :)
 

Rinoceros

Senior Member
Jul 8, 2008
369
165
Hi Daniel,

Great news that you are thinking of a port to Android. You will make me (and a lot of others as well) very happy with that. I am still using a bunch of programs to let at least do a part of what your program did for WinMo. After I finally ported my HTC HD2 permanently to Android (one of the things that was holding me, was the lack of your program for Android), but I am still missing CommMgrPro.

1) have ALL of those notifications available to me (with the possible4 exception of date/time set)
2) be able to change settings, run scripts, use Locale plug-ins (no reason for you to replicate functionallity that's available in existing code), start/kill other apps and send arbitrary Intents to other apps. Output to a file would be nice as would being able to read and parse a file (rudimentary parsing is OK)

Perhaps a tall order, eh? Start small. GPS and/or cell tower location-based notifications to trigger actions like turning on/off WiFi, bluetooth, cellular radio, conditioned on time of day/day of week/date would be a good start, for me at least. I'd also like to be able to create profiles that I can trigger manually, preferably by a shortcut. While I'm not big on widgets, people will want them and give you bad ratings in the Market if you don't have them.

I do totally agree with this. Lets start with cell-tower switched on and off, of 3G, WiFi and GPS. One of the biggest problems with Android is the huge amount of battery drain. This will make a good start. I know, there are a lot of programs which does it in a simular way, but CommMgrPro has a lot more to offer, after some time. And Daniel, you have the proof and skills of a very good programmer :)

Thanks!
 
Last edited:

danielherrero

Senior Member
Oct 3, 2006
3,280
247
Madrid
www.softwaredhr.es
Hi.
Right now there is a fully working version. I am testing it myself and works very well. In a few days I will post it. Then I will fix bugs and will add more features. Basically:
1) More conditions to trigger a rule. Battery level, incomming call from XXX, incomming SMS, etc
2) More actions to be executed when a rule is matched: run or kill a process, etc
Thanks
 
  • Like
Reactions: dtr145r

Martinhdk

Senior Member
Mar 7, 2007
862
34
53
God damn D man :) you finally turned to the dark side. Thought you had abandoned development. CMP was the only thing that kept me on WM until Jan this year. Have looked for CMP for android a couple of times but now you are ready. Cool man. I have started to use Tasker, and have some pretty crazy rules, but some things are not possible with Tasker, so I hope that you make it possible to integrate with Tasker as a plugin.

Anyway D. Its good CMP have not died.

One thing I miss. Being able to run my CMP as a service. Actually I believe tons of apps could save battery if they were better programmed and just called the part of the app that is needed. Maybe its nonsense, as I am not a dev, but I look forward to have you back on the train D.

---------- Post added at 11:39 PM ---------- Previous post was at 11:30 PM ----------

Just went to the CMP page. MAN, memories from good old wm days. I really spent many hours tweaking CMP. :)

I miss the possibility to see all cell towers in a time scheme, and then add them to different profiles..... Is that part coming?

By the way, what phonie are you having?
 

danielherrero

Senior Member
Oct 3, 2006
3,280
247
Madrid
www.softwaredhr.es
Hi Martin. Time passes hehehehehhe
Well, as I posted before I didn't want to waste your time with buggie releases.
Answering your question, positions are given by location + radius. But I will develop a simple way to provide cells. It is a old way but has a good advantage. It doesn't require internet connection. You teach CMP which cells are near your home so CMP doesn't need internet. Well, currently you define a point and a radius.
As you know CMP is a rule engine. The device gets thousand of events (battery levels, positions, week days, hardware status, calendar events) so you can create complex rules to launch actions (set hardware status, launch programs, kill processes and much more.

The program will be FREE and will probably contain ADDs. There will be a donate version (0.99$) to avoid ADDs to support me.
Don't forget Martin, post suggestion about conditions and actions. Rememeber, one rule = Condition 1 AND Condition 2 AND condition 3.......and if matched then execute Action1 and Action 2 and ACtion 3......
There are other rules programs, but this one will what we really need (from programmer to programmer)
andddd just sold my galaxy S2 to buy a galaxy note. I ve iPhone 4s to develop projects for old and busy customers ;) (you know, MAC=MONEY)
 
Last edited:

Martinhdk

Senior Member
Mar 7, 2007
862
34
53
Don't worry, I will come up with suggestions if something comes up. Like your way to always answer our good and sometimes stupid questions, but important to me is flexibility. I know there is is problem calling GPS functionality, but Secure Settings solved that by an external plugin that could be called from Tasker and others. So are you planning an SDK or similar to let CMP interact with other software? In my head CMP could be a standalone app, but also the app that could be used in bits or integrated with other software.

Have another...:)

One thing I miss on android is being able to copy screen press like calling an app and then copy the button interactions. I will send you thoughts on this in a pm later when more thinking have been done as it could be a standalone app you could develope later.... And perhaps make some earning on.

Note..I am thinking about buying it, so I look forward to hear your thoughts about it.... When do you get it?
 

danielherrero

Senior Member
Oct 3, 2006
3,280
247
Madrid
www.softwaredhr.es
Hi Martin.
CMP will interact with other programs using android Intents. And other programs can interact with CMP, applying rules for example, using intents too.. I dont really know if you know what intents are, but they are a nice and easy way to allow programs interaction.
I didnt understand your sugestion about copy press. What does it mean? You know my english is poor, hehee

Enviado desde mi GT-N7000 usando Tapatalk
 

short/y

Senior Member
Mar 9, 2006
658
67
Silly-con Valley
Daniel, I've been away from CMP (and Windows Mobile/Phone) since Android launched but I have missed CMP just about every day. Because of the value I received from CMP back then, I plan to buy it as soon as it's available. And when you're ready for beta testers I want to participate.
 

danielherrero

Senior Member
Oct 3, 2006
3,280
247
Madrid
www.softwaredhr.es
Very soon I will upload the first version. Let me finish a couple of conditions (a program is running or is stopped and other one, battery level range). So probably next week i will upload it,but remember, much work to do :)
Enviado desde mi GT-N7000 usando Tapatalk
 

a user

Senior Member
Jan 11, 2011
4,894
2,032
may i ask why you don't simply use one of the many many already available apps of this kind?

just to name a few:
tasker
settings profile pro
llama (it's free)
...
 

danielherrero

Senior Member
Oct 3, 2006
3,280
247
Madrid
www.softwaredhr.es
Well, it isnt a profiler. Its a rule engine. Of course, you can use it as a profiler. The idea is a total automation of the device. Soon the conditions can be used as complex AND/OR clauses. Well, its a rule engine as I think it should be. I did it in Windows MObile and I am trying to translate it to Android learning from old errors...
 

a user

Senior Member
Jan 11, 2011
4,894
2,032
tasker is a rule engine too.

and llama and settings profiles is just a simpler rule engine, more optimized towords profiles, but not only!
 

a user

Senior Member
Jan 11, 2011
4,894
2,032
ok. no worries. i just wanted to mention this as maybe it would be easier.
but this of course is a reasonable reason to port it.

good luck.
 

short/y

Senior Member
Mar 9, 2006
658
67
Silly-con Valley
I've used several of the other apps (Locale, Tasker, Settings Profile and a few other profile programs I can't recall). Tasker is currently my workhorse. It's extremely powerful but it's a PAIN to program. There's no good way to cross-reference variables or other tasks so, to make global changes to a routine, I need to export my profile, bring it up in a file viewer on my PC and do searches and such on the PC while changing the programming on my phone. I'm not knocking Pent, the developer, he's done a phenomenal job on Tasker, especially given that it's only one person doing the development. But, for all its power, once I got beyond a few relatively trivial profiles, its become nearly unwieldy.

I don't know exactly what Daniel has in mind but I know what I did with CMP on Windows Mobile. With the additional capabilities in Android, I think Daniel could do really really good things (no pressure, Daniel). I'm looking for power with more facilities to make it easier on someone who does lots of things with the app.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 12
    Hi.
    Market URL https://play.google.com/store/apps/details?id=com.dhr.commmgrpro&feature=search_result#?t=W251bGwsMSwyLDEsImNvbS5kaHIuY29tbW1ncnBybyJd
    I am porting CommMgrPro from Windows Mobile to Android.
    This is the original post.
    http://xdaforums.com/showthread.php?t=299070

    The goal of this project is to customize the behaviour of your device depending of many events, like time, date, position, battery state, calendar, radios states, and any environment element.

    Rules Engine is a complete rules engine to customize your device behaviour automatically. The idea is simple and powerfull:
    The device broadcast automatically events about many thinks
    Hardware events like Bluetooth, wifi, battery level, cpu state, position events, time events, calendar events, phone ring state, screen state
    And much more...
    And the device can perform automatically many actions without user intervention:
    Set hardware state, wifi, bluetooth, speaker, launch or kill a program, apply a predefined profile, send a SMS/Email, ringtones....
    And much more...
    With Rules Engine you can create many rules. Each one is composed of:
    Conditions. Simple or complex conditions using AND/OR clauses. For example, if weekday is monday, between 7:00 and 9:00 and my current position is my office and battery level is higher than 20% then send an email .....
    Actions. Actions to be executed when the rule passes from unmatched to matched and actions to be executed when the rule passes from matched to unmatched. User can set their order, delays, etc

    Other features:
    Profiles: These are set of actions that the user can select / unselect quickly from the main page.
    Quick timed switchers: For example, set Bluetooth on, but put off again after 90 minutes

    New actions and conditions are being added each day.
    Current conditions:
    Weekday and time
    Wifi state
    Speaker state
    Bluetooth state
    Flight mode state
    Data connections enabled / disabled
    AC power / Battery
    Location. To be inside or outside of some place (defined by point and radius)
    Screen state
    To match or unmatch other rule
    Some program is running or not
    Battery level (min, max)
    Bluetooth connected to an specified device
    Phone status (ringing, in call...)
    Calendar events. To be in a caleendar event that contains some word, like 'meeting"
    Autorotation screen On/Off
    Mobile network type in use (GPRS, HSDPA, CDMA, LTE, etc)
    Data connection On/Off
    Headphone plugged or not
    Car mode activated / deactivated

    Current action:
    Set wifi state
    Set speaker state
    Set bluetooth state
    Set flightmode state
    Set connections enabled / disabled
    Launch a program
    Kill a program
    Apply a profile (Set of rules)
    Set autorotation screen state
    Set screen bright state
    Set auto sync accounts state (gmail, facebook, etc)
    Play a song.
    Send SMS
    Send Email
    Set car mode
    Set wallpaper
    Set ringtone (as user mp3 or android ringtone)

    As we did with CommMgrPro for Windows Mobile I hope this project become a user driven project.
    Thanks¡¡

    Known bugs
    • Empty
    Next features being developed
    • Roaming condition
    • Condition connected to a specified hotspot


    2
    # V1.1.14 (2012-06-15)

    * Optimizations to reduce battery consumption.
    * When a rule pass from MATCHED to UMATCHED then all the currently matched rules are executed again to avoid inconsistence.
    * New action: Play a song.
    * New action: Send SMS
    * Bug fix in Rule match/unmatch condition when the rule is the same
    2
    # V1.1.13 (2012-06-13)

    * Officially Android doesnt allow the get location changes when screen is off. I ve developed a fix but not always work. I will try to find a more consistent solution ASAP.
    * New conditions:
    o Network type (UMTS, CDMA, LTE, etc
    o Network connectivity state.
    o Headphone state.
    * Please report any suggestion about actions, conditions, etc using about window.
    1
    Hi.
    Right now there is a fully working version. I am testing it myself and works very well. In a few days I will post it. Then I will fix bugs and will add more features. Basically:
    1) More conditions to trigger a rule. Battery level, incomming call from XXX, incomming SMS, etc
    2) More actions to be executed when a rule is matched: run or kill a process, etc
    Thanks
    1
    # V1.1.16 (2012-06-17)
    * New quick switcher: Car mode
    * New condition: Car mode.
    * New action: Car mode.
    * Disabled location polling each x minutes. It doesnt work always and could affect to battery live. I continue researching about location update when the screen is off