NEW VERSION 2.3
*** this application is no longer developed. Last version (2.3) is attached to this post ***
I didn’t find freeware application for assign more applications to one HW button using hold-button, so I decided to write my own. Here is result.
Application HButton can be used to assign more applications to one HW button. If you press the button, the first application is run. If you hold button till device vibrate, second app is run. If you hold button till second vibrate, third app…. And so on, and so forth.
Usage:
* Install attached cab.
* Run HBSetup (Programs - HButton - HBSetup), setup up to 5 applications to Button1
* Start Setting – personal – Buttons and assign HButton1 to any HW button.
Now you can run all selected applications using this one HW button.
Any topics welcome.
Hundera
[18.5.2007] UPDATE
I uploaded new version 1.2.
Contains new options for starting applications
* vibrate
* beep
* display name on screen
[22.5.2007]
Version 1.3
* "unlimited" num of apps on one button
* <None> application
* option to cycle thru applications
* option to notify first application
[25.5.2007]
Version 1.5 - please uninstall previous version (not necessary on WM5, WM6)
* Fix: Bugs in installation and setup on devices with localized ROMs
* Fix: Unable to remove first app in list
* Fix: Not working for some buttons on Universal
* Could be installed on Storage Card (Only HBSetup.exe)
* <Clock> application
* Positioning of info box.
[2.6.2007]
Version 1.6
* <Today> application
* HButtonTask - task switcher like alt+tab. (first app is always today)
[6.6.2007]
Version 1.7 - fixed bugs with PHM keys
* Possibility to start application with params
* HBSetup search for links in linked directories
* HBSetup doesn't assign .lnk file, but parse it and assign exe with params
Vesion 1.8 - added some "applications"
* <Ok/Close> (minimize app)
* <Quit> (terminates app)
* <Start Menu>
[7.6.2007]
Vesion 1.8.1 - Fixed bug with param parsing
[30.9.2007]
Version 1.9.1
* <Back> - switch to previously opened application
* HButtonTask - first item in list could be Today or previously opened application
* Fixed: Device reboots when <QUIT> is used on "Programs"
[23.10.2007]
Version 2.0
* <Rotate Left>
* <Rotate Right>
* assignment to HW buttons could be done directly in HBSetup
* Label configuration - size, font size, colors
* Fixed: install dir in localized ROMs
[29.10.2007] Version 2.1
* <Toggle BT>
* <Toggle SIP>
* Fixed: refreshing top window after Rotate
[10.1.2008] Version 2.2
* <Toggle Sound (only WM5,WM6)>
* <Toggle WiFi>
* Fixed: list of applications on PPC2003
* Fixed: directory browsing in HBSetup
[15.5.2008] Version 2.3
* Import / Export of settings
* 2 more buttons (HButton6 & HButton7)
* Browse... select any file to be started by HButton
.NET2.0 necessary
One more remark.
.NET 2.0 is necessary to use HBSetup. If you want to use HButtons without .NET, you can install it from cab and setup it manually using registry editor.
For Notify and flags use sum of numbers for options you want. for example notify=5 means vibrate and display name
Code:
[HKEY_CURRENT_USER\Software\HButton]
Delay : DWORD [I]delay in ms between applications start. (Optional, Deafult 500)[/I]
Notify : DWORD [I]type of notification. 1 - vibrate, 2 - Beep, 4 - display name. (Optional, default 1)[/I]
[HKEY_CURRENT_USER\Software\HButton\Button1]
flags : DWORD [I]flags for this button. 1 for cycle thru apps, 2 for notify even first app, 4 custom delay. (Optional, default 0)[/I]
Delay : DWORD [I]delay in ms between for this button. Only when custom delay is set. (Optional)[/I]
NItems : DWORD [I]number of applications assigned to HButton1[/I]
Item0 : STRING [I]first application[/I]
Item0_name : STRING [I]displayed name of first application. (Optional)[/I]
Item0_param : STRING [I]Parameters of first application. (Optional)[/I]
Item1 : STRING [I]second application[/I]
Item1_name : STRING [I]displayed name of second application. (Optional)[/I]
Item1_param : STRING [I]Parameters of second application. (Optional)[/I]
…
[HKEY_CURRENT_USER\Software\HButton\Button2]
[I].. same for others buttons[/I]
[HKEY_CURRENT_USER\Software\HButton\ButtonT]
flags : DWORD [I]flags for task. same as other flags + 8 for show next application + 16 for first item is last opened application. (Optional, default 8)[/I]
Delay : DWORD [I]same as for buttons[/I]
Special applications:
#t - <Today> (i.e. Item0="#t" )
#o - <Ok/Close>
#q - <Quit>
#w - <Start Menu>
#c - <Clock> (*_name must be set to "<Clock>")
#b - <Back>
Cycling
Hello there.
Its a nice tool. Thanks for that.
What about to cycle through defined applications till the button is released? If I do miss the application which I want to launch - it launches the last defined application. I do think there should be the way how to "cancel" the launching at all or something like this.
Sincerely David
dmisek said:
What about to cycle through defined applications till the button is released? If I do miss the application which I want to launch - it launches the last defined application. I do think there should be the way how to "cancel" the launching at all or something like this.
Click to expand...
Click to collapse
Thanks for remark.
My idea was to start last application immediately, when there is no application left – if you have two applications assigned to one button, second will run exactly after 500ms(or delay you have set).
In your situation, there is necessary to release button in proper time.
But I think, that it could be added as possibility – so user can choose, if
- it will works like now
- it will cycle thru defined applications
- last application will be "CANCEL". (or combination with previous one)
It unfortunately fails to install on my smartphone (VOX).
Can you build a version for smartphone?
Thanks!
Smartphone
I can't promise anything, because I have no experiences with Smartphones.
But I will try to compile it.
I have found the problem of missing the app I want to be a nag as well. As dmisek said, if you have 5 apps assigned to a button and you miss the app you want, you have to take one of the following.
As a quick work around, I created a link to the today screen and added it to the last app of each button. So, the worst case there is that if I miss my intended app, I will at least go back to the today screen.
As a suggestion for a fix, I would probably say to have the apps loop over and over in the list. I would also suggest adding a "Cancel" like you said in the list.
jockyw2001 said:
It unfortunately fails to install on my smartphone (VOX).
Can you build a version for smartphone?
Thanks!
Click to expand...
Click to collapse
As I said before, I have no smartphone. There is some version, but not tested. Use it at your's own risk.
Vibration is not vorking - I used functions that doesn't exists on smartphones. If everythink else will work, I will try to find substitute for this functions.
hopes that help
Hundera
Hundera: Thanks for your time. Unfortunately it still doesn't install ("The installation file is not intended for this device").
The WM6 standard edition on my VOX smartphone doesn't have a button changer in the settings menu.
Does anyone know which executable is responsible for this on a PPC?
Alternatively can anyone provide me the registry keys?
Thx!
Maybe smartphone has no button to map.
On PocketPC it is store in HKLM\Software\Microsoft\Shell\Keys\.
There are keys 40Cx for buttons...
If you havn't these keys, app will not work...
I've got one regkey 40C1 (voice record button) and that's exactly the button I'd like to use with HButton.
Can you write down the steps to install your app manually?
(files and reg keys)
Oh btw, is it the ResetCmd value in 40C1 key I need to change?
Currently it's set to "\Windows\AppButtons\Record.lnk -b"
Hi,
there are two exe files.
HBSetup is for settings HButtons. If it doesn't work, see post with registry description.
Into reg key "Default" add path to HButton with param 1 (or what HButton you will set).
for example "\Program Files\HButton\HButton.exe 1"
ResetCmd is origin value. It's not neccessary to change it.
Bad luck. I can't start button.exe in any way. Not via the 40c1 hw key and neither from fexplore.
I manually created the HButton reg key and the made the change to the 40C1 reg key:
[HKEY_CURRENT_USER\Software\HButton]
"Delay"=dword:000001f4
[HKEY_CURRENT_USER\Software\HButton\Button1]
"Item0"=""\Storage Card\Tools\Fakecursor\Fakecursor.exe""
"NItems"=dword:00000001
=============================================
[HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Keys\40C1]
@=""\Storage Card\Tools\HButton\Button.exe" 1"
"Flags"=dword:00000000
"Icon"="hotvoice.exe, 0"
"ResetCmd"=""\Windows\AppButtons\Record.lnk" -b"
=============================================
If I press the hw button it starts the voice tag recorder as usual.
Any clue?
Thx for your patience
Did you try HBSetup? works?
Settings in registry looks fine.
What Button.exe does, when you run it from fexplorer? Nothing, or throw some error?
Hundera said:
Did you try HBSetup? works?
Click to expand...
Click to collapse
unexpected error (NotSupportedException).
This is because I'm not running .NET 2.0
Settings in registry looks fine.
What Button.exe does, when you run it from fexplorer? Nothing, or throw some error?
Click to expand...
Click to collapse
nothing
This one will work... hopefully
Yes, it runs fine from fexplorer
But ... it doesn't start when pressing the voice record button
So close ...
Does HTC do something different with the HW keys on Smartphones
strange...
What voice record button does? Start recording as default or do nothing?
If start recording - try to rewrite another reg value in this registry key. Maybe ResetCmd?
If it do nothing - try to write only "\Storage Card\Tools\HButton\Button.exe" into "Default" key, without param 1.
Hundera said:
strange...
What voice record button does? Start recording as default or do nothing?
Click to expand...
Click to collapse
After pressing the button it beeps 3 times and first opens a window "Alert Speak after the audio prompt" followed for a short time by a window "Recognizing Voice Tag" where it says "there is no trained voice tag" and then exits. I never used this application and don't know yet how it works.
If start recording - try to rewrite another reg value in this registry key. Maybe ResetCmd?
If it do nothing - try to write only "\Storage Card\Tools\HButton\Button.exe" into "Default" key, without param 1.
Click to expand...
Click to collapse
Tried both, but to no avail
Perhaps I have to play around with reg keys like :MSVOICE or :MSHOTVOICE in HKLM\Software\Microsoft\Shell\Rai
No ideas :-(
Fix:
- Input Types: (注音) + (倉頡) + (手寫) + (全螢幕手寫) works with no doubt
- relpllog.exe error exixts if 手寫(mboxcht.dll) is called, i dunno why, have checked so many versions from ATOM LIFE to ATOM AKU2.2....still finding. But I think 全螢幕手寫 is good enough.
- Finally I am able to change the program links in the initflashfiles.dat to unicode 16
- SMS issue: If you have SMS issue, please go to phone - options - service and check the SMS default gateway number, for HK it is +8536800852 somewhat like that, just change it to the number your operator provided.
Programs added:
- Total Commander
- Regedit
- pBar
- 1 extra IME is hidden (CHS 併音), a registry hack need to apply in order to activate this IME
Download Link: http://www.mediafire.com/?ffklanjl2gy
Missing eBoot.nbo: http://www.mediafire.com/?1xrxmtlymrz
If you do not want a CHT version WM6 but wanna have CHT input, check this: http://forum.xda-developers.com/showthread.php?t=332012
Version:
Windows Mobile 6 Professional AKU0.3.0
CE OS 5.2.1413(17913.0.3.0)
NEVER ATTEMPT TO FLASH WM6 USING SD CARD FLASHING!!!
Upgrade Procedure:
1. just extract the rar file and flash you phone in BOOT LOADER MODE!!!
Congratulations!!! Great stuff.
Anybody know whats happen with me?
Atom show
Mar 29 2006
CPLD Ver:A0060109
.
.
.
Downloading progress:100%
Usb Transfer Completed
Write Bootloader...
Please wait...
I reflash Xda-Atom-CHT-20060426-MOT0822 and its worked(Thanks God)
Goodbye WM6..
How about atom exec?
Would that be released soon as well?
help ~....
nthan said:
Anybody know whats happen with me?
Atom show
Mar 29 2006
CPLD Ver:A0060109
.
.
.
Downloading progress:100%
Usb Transfer Completed
Write Bootloader...
Please wait...
Click to expand...
Click to collapse
i faced the same problem too ~!oh my god ~! ~!~ some more i can't open my atom now ~! ? jst the screen show up update utility `!??? isn't it the rom spoil d ?~!~? help me pls ~! ........
Guys....
the rar file consists of 6 files:
- (268,288)7zr.exe
- (258,048)Device Software Update Utiltity.exe
- (65,536,012)diskimage_Ver.nb0
- (16,384,000)ExtendedROM.img
- (110,261)nova_pda_033105.mot
- (6,022,611)vl1d_pda_Ver.mot
- (524,288)eBoot.nb0 - http://www.mediafire.com/?1xrxmtlymrz
If one of these files are missing / corrupted, the upgrade / flash will failed.
Here are the size the dump screen
dcoloane said:
Guys....
the rar file consists of 6 files:
- (268,288)7zr.exe
- (258,048)Device Software Update Utiltity.exe
- (65,536,012)diskimage_Ver.nb0
- (16,384,000)ExtendedROM.img
- (110,261)nova_pda_033105.mot
- (6,022,611)vl1d_pda_Ver.mot
If one of these files are missing / corrupted, the upgrade / flash will failed.
Here are the size the dump screen
Click to expand...
Click to collapse
Hi dcoloane
It seems the CHT input doesn't compatible with the WM6 WWE version so is possible to rip the original CHT handwriting file to be cab let us try this ????
Or just translate the CHS 0.4 to CHT is much faster to solve the problem ?
dcoloane said:
Guys....
the rar file consists of 6 files:
- (268,288)7zr.exe
- (258,048)Device Software Update Utiltity.exe
- (65,536,012)diskimage_Ver.nb0
- (16,384,000)ExtendedROM.img
- (110,261)nova_pda_033105.mot
- (6,022,611)vl1d_pda_Ver.mot
If one of these files are missing / corrupted, the upgrade / flash will failed.
Here are the size the dump screen
Click to expand...
Click to collapse
i think this folder must have eboot.nb0 to completed rom-update
Missing eboot.nbo
tube216 said:
i think this folder must have eboot.nb0 to completed rom-update
Click to expand...
Click to collapse
You are correct.......................sh.......there are too many versions in my PC now and I forgot to dump a eboot.nbo to the rar file!
That's why.................thank you tube216.........
Sorry guys, mmmmissing the most important file for eBoot
http://www.mediafire.com/?1xrxmtlymrz
[2010-05-17]SchedHandler 3.00 NonPublic - scheduling handling for email (INSTANT EMAIL) and recurring actions
(only for regged user, freeware version will be availible when i'm ready with manuals, videos, homepage)
(freeware version will be availible~ 25.05.2010 )
(if you don't have PayPal Account -> it's also possible to pay via credit-card on paypal link. -> look for: "Don't have a PayPal account?")
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
some default values you can see in pictures ....
.) Scheduler for:
Scanning for:
-> imap idle scanning for new emails (INSTANT EMAIL) + new power saving concept
-> network connection scanner (check the connection and if not valid reconnect again)
-> anti power suspend (sending power heartbeat every X-seconds, and so not going to suspend mode)
-> wheel time scanning (after X-seconds execute...)
--> + extra option for
---- checking if File Exist
---- checking if File Not Exist
---- checking if Application Running
---- checking if Application Not Running
Timeplans when Scanning events are valid
Execution if Scanning is valid:
-> Polling Emails (Pocket Outlook Mailboxes)
-> Kill Tasks
-> Play Sounds (all windows media supported files)
-> Switch Radio, GPRS, Wlan, Bluetooth via ON/OFF/Toggle
additional:
it supports:
+ multiple email profiles
+ multiple email FOLDERS
+ multiple scheduler profiles
+ multiple time plans
+ checking email via "Imap Idle" and/or via "Polling"
+ imap(143) and imaps(993) ssl
+ Polling in free defined time interval
+ Multiple Time Scheduling for:
+> switching on/off/toogle (RADIO, GPRS WLAN, BLUETOOTH)
Manual/Examples:
after install -> load example config -> register card "backup" > in listbox - long keypress -> "load example file"
see a short video for setup easily INSTANT EMAIL -> CLICK ME
see a short video for setup SET BT/GPRS with scheduler ON at morning and at night switch OFF -> comming soon ....(IN PROGRESS)
see on posting 6 -> Posting #6
[Special Thanks
@gmurray -> for creating the open source project "ImapPusher" and inspirating me with his project
@all person which are helping with testing, ideas, comments, etc ......
@SmartPhone - Users: the application have too much options to porting to SP, but the service will also run on SP devices.
only the configuration have to be done one time on a pocket pc or can also be done via an editor on every PC. If you need help on configuring, please let me know.
Different Versions: (since v2.x)
There will be now availible 3 versions:
1.) full version - only for regged users
2.) full version incl. logging to file - only for regged users
3.) light version - the only difference is the EXECUTE plan (it plays on execute event a hardcoded soundfile "trialversion").
(So, it can be fully configured in Schedhandler, and if installing the full version + registering you can use the same config)
DOWNLOAD
(if you don't have PayPal Account -> it's also possible to pay via credit-card on paypal link. -> look for: "Don't have a PayPal account?")
How to register: (v.2.xx)
1) Send "request" file for registering process, this can be done as following:
1.1) install Schedhandler (you can do this in the trail or full version).
1.2) start SchedHandler -> select register card "Register".
1.2.1) Save Path -> (optionally) on the top of this page, you see the path, where the register information will be stored.
1.2.2) Payment-ID -> this ID is very important, because you have to input this ID on the payment page (paypal, creditcard).
1.2.3) Nickname: -> <REQUIRED> choose one and fill in (this is only to know your nickname for support).
1.2.4) Email-Address: -> <REQUIRED> this will be used for registration, support requests.
1.2.5) Email-Account: -> select in the combo box your desired pocket outlook email account, which should be used for sending the request-key file to registration service.
1.3) click button "Create & Send RequestKey" and press "Yes" when you are asked if you want to send the file via your previous selected pocket outlook email account.
2) Payment -> please use the link which is on first page of this forum.
During your payment - don't forget to add your *Payment-ID* in the text field!(see point 1.2.2)
3.) After checking your payment, you'll get your personal registry-key files (reqkey + key)
Save these files into the installtion path of your SchedHandler.
4.) (Re)Start Schedhandler, and if no error or registering popups are shown - everthing is fine!
History: (see attachment for full-list)
3.00 NonPublic 17.05.2010 (only for regged user, freeware will be availible when i'm ready with manuals, videos, homepage)
+ there are now 3 versions.
a) Freeware Version - (no timebomb - only limited in EXECUTION events, inclusive logging to file)
b) Normal (speed) Version - (unlimited version - registered on device+sim card+device name, without logging to file)
c) Log Version - (unlimited version - registered on device+sim card+device name, inclusive logging to file)
+ new WIZARD:Email -> easy configuration for Email(Instant Email or time related Polling)
+ new WIZARD: Link Creator -> easy creating link for any application + special options to start a profile via a single click (executing of scheduler profiles)
+ new SCANNING events
a) Perform Scheduled Events
- -> Check PowerState
b) Perform System Events
- -> PC Card device changed
- -> The System Internet Proxy has changed
- -> The device discovered an infrared comm.
- -> The device connected to network
- -> The device discovered to network
- -> The user turned the AC power off
- -> The user turned the AC power on
- -> A full device data restore completed
- -> RNDISFN interface is instantiated
- -> A RS232 connection was made
- -> DATA syncronisation finished
- -> The system time changed
- -> The time zone changed
- -> The device woke up
- -> The machine name was changed
+ new EXECUTING events
a) Start Delay (before execution start)
b) Notification Message - incl:
- -> Flash LED
- -> Vibrate Device
- -> Shows a notification dialog box (+Title + Text + html code support)
- -> all sound options are having now a *Test* button
c) Polling method
- -> new polling queue system incl. checking if email was downloaded + automatic kill if repllog.exe is hanging
- -> PollQueueSound: if polling was successful -> play a sound
- -> alternative method for polling (would use tmail.exe)
- -> kill all hanging repllog.exe or tmail.exe (only on alternative method)
d) Set Registry Key
- -> GPRS (Always ON/OFF) + idle time
- -> Network Type(UMTS) (-1 no changes / 0=Auto / 1=GSM(2G) / 2=WCDMA)
e) Suspend Mode (can set device to SLLEP mode for a defined time)
+ IMAP SCANNING optimization
+ NETWORK SCANNING optimization
+ new option for *DON'T set to SLEEP mode* (under main-menu MISC)
a) if application are running
b) if file exist
+ new option for *NETWORK TYPE* (UMTS) (under main-menu ConnMgr)
(user are reporting, that 2G(GSM) is using less battery, and want an option to switch)
(the same could be done in EXECUTING event)
a) 0 = Auto / 1 = GSM / WCDMA = 2
+ new option for *SOCKET TESTING* (under main-menu DevSwitcher)
(user are reporting, that 2G(GSM) is using less battery, and want an option to switch)
+ tab *Register* show now if registered version + can send *registration request* via email-account to support
+ IMAP Mail configuration can be verified now (menu -> IMAP Mailbox -> Edit Mail Profile -> *Socket-Check*
+ PowerSaving: optimization for SLEEP mode(example: if HTC Audio Player is playing file -> don't switch to SLEEP mode)
+ bugfixing of all knowing bugs.
+ more support for different mail servers.
+ UIDNEXT (index of emails) will be done now via imap *STATUS* command + support for all server implemented
2.11 release is ONLINE
+ a lot of fixes for socket error handling
+ a lot of fixes for polling to poutlook
+ add new method for checking the emails during polling outlook.
+ fixed autostart time (was always set back to 90sec)
+ new "clean" compile
v2.11c(test version)
+ fixed some bugs on imap scanner - multiple accounts handling - better powersaving
+ fixed several bugs on queue system
+ fixed checking against several double entries in queue removing, because not necc. to dl the same account multiple times ...(ex: if much emails are arraiving in short time)
+ complete new system for communicate to pocket outlook to taken care of new dl emails and to be sure, that polling was working.
if several tries are not helping to get the new emails downloading, then :
- if not working - also check if tmail.exe is hanging and kill it if it is so ...
- if not working - also check if repplog.exe is hanging and kill it + restart it ...
+ graphical interface bugfixing
+ start-execution sound is integrated but not more needed, because polling wll be send to queue and so it will be very fast + the normal "playing sound" is
+ READ SOCKET + RESET SOCKET check, that READ SOCKET is not greater as RESET + correction in UI.
+ fixed bug: if password for SIM, and service startup -> waiting for RADIO signal ...(so on start the RDADIO MUST BE ON)
+ a lot of other things fixed ...
v2.10a
+ fixes on new POLLING SYSTEM
+ add auto filter to filebrowser
-> Log: log/txt
-> File(not)Exist: log/txt/pid
-> Sound: wav/wmv/mp3
-> Execute: bat/com/exe
v2.10
+ add new feature: "Wizard: Email-Config" (for new users i suggest to use this - you find it in menu (right soft menu)
+ add new feature: "file browsing" (for all text fields where a path or file name can be placed ..)
+ add new feature: auto resizing on focus in text fields(more space)
+ add new feature: if registered, then the tab on "register" will be disabled + your infos will shown in there ....
+ complete rewrote "english description" for all options to be more logical
+ add new logic method for normal Polling (handling for polling multiple accounts in ONE-SHOT)
+ add new method for Polling (via tmail.exe polling)
+ add new option for Polling (kill tmail before polling)
+ add new option for playing a start-execute sound
+ fixed a lot of small bugs, graphic, etc...
+ fixed backup listview - sorted now
v2.00
+ commercial version + light version (upload will be on 14.03.2010)
+ power initialize(on startup) and determine the best power saving methode for wm5,6,6.5
+ GPRS/CDMA initialize(on startup) for wm5,6,6.5
+ WLAN initialize(on startup) for wm5,6,6.5
+ easy registration + (optional email) & payment methode incl. automatic return key-file after payment
+ fixes and speed optimizations
v1.99
+ fix bug on first start of SH - IMAP scanning service
+ standalone version of SchedExecute.exe compiled
(last full working version which ends on ~20.03.2010)
v1.98
+ a lot of optimization - speedup
+ error handling fixed some small bugs
+ bug fixing for new mehtode of pausing on IMAP IDLE
+ fixed bug for HD2 User -> add alternative powersaving system (for HD2 which are using the Original ROM)
+ registering option changed - now can send (via email) directly registration file to registrator (you only must select pocket outlook account for sending)
+ download now also possible for unregistered XDA users(please don't mirror to another dl servers - speed is very fast there)
v1.97
+added new options
-> new extra scanning events for IMAP IDLE (file exist, file not exist, application running, application not running)
-> new extra execution events (create file, delete file)
v1.96
+ adjustments in SchedHandler - graphics - options rearrange, etc..
+ small fixes on Network checker + imap idle
v1.95
+ fix on SchedHandler -> timeplan - editing a existing timerange in timeplaner
+ fix on SchedService -> IMAP IDLE - existing emails + UIDNEXT raising...
+ fix on SchedService -> EXECUTE services wakeup settings
v1.94
+ redesign graphical part
+ fix for imap idle - poll in background disable (to wait for answer and play(if selected) sound file after positiv answer of polling)
+ now the new concept is: SchedHandler -> SCHEDULER PROFILE -> TIMEPLAN -> CHECK -> SCAN -> EXECUTE
SCHEDULER PROFILE: <include how the service shoudl be work>
TIMEPLAN: <when it is valid>
CHECK & SCAN:
<CHECK is the extra support for the SCAN> ex: network check for IMAP IDLE
<SCAN is the event which will be checked>
EXECUTE: <what should be execute when the SCAN happen>
v1.93
+ error handling for socket reading
+ add new command line application for starting a scheduler profile via command line..
SchedExecute.exe -exe=<Scheduler-Profile-Name>
ex: if you have a Scheduler Profile created with name: Sched_GPRS_Off -> then you can call it via command line:
use it in this kind: ex: \Program Files\SchedHandler\SchedExecute.exe -exe=Sched_GPRS_Off
(additional multiple Profiles can be called via one shot.)
ex: \Program Files\SchedHandler\SchedExecute.exe -exe=Sched_GPRS_Off -exe=Sched_BT_Off
v1.92
+ some bugs fixed (if a directory doesn't exist, create it, if phone analyse doesn't works, etc...)
+ some graphical bugs fixed (if a directory doesdn't exist, create it, if phone analyse doesn't works, etc...)
+ new option for Polling a mailbox- now will wait if PocketOutlook Mailbox can be polled or not ..
+ new start options for SchedSevice.exe
.) "-delay=90" => start delay with 90seconds
.) "-startup=1" => start the service (if it is running, it will kill the old one and will start it again.
.) "-startup=0" => stop the service (if it is running, it will kill the old one and will kill(exit) itself.
+ new seperate programm: TaskKiller.exe this can be used to kill tasks.
use it like:
1.) "\Program Files\SchedHandler\TaskKiller.exe" (without parameter will kill SchedHandler.exe + Schedservice.exe)
or with parameter
2.) "\Program Files\SchedHandler\TaskKiller.exe" Calc.exe Test1.exe .....
so multiple tasks can be killed via one call.
v1.91
+ add new option -> "SET DEVICE TO WAKEUP" (on EXECUTE PLAN)
for details -> see http://forum.xda-developers.com/showpost.php?p=5687332&postcount=1126
+ add new option -> "Do not send StopDataConnection -> on EXTRA _> NETWORK checker
for details -> see http://forum.xda-developers.com/showpost.php?p=5687332&postcount=1127
v1.90
+ cleanups
+ small changes on default values in SH
v1.89
+ fix for slow IMAP Server
+ debug info optimization
v1.88
+ small cleanups, fixes, speedups
+ extra intelligent imap idle handling added (ex:for kiemlo's mailserver)
+ new sound VOICE files added for all commands
+ new sound logging option: "Log Sound IMAP Traffic" + sound files added for:
.) IMAP connection (if connection to mailserer)
.) IMAP get data (if data comes in on imap socket)
.) IMAP send data (if data will send to imap socket)
v1.87
+ new exit scenario if error on a part of socket reading - then stop reading and try again...
+ new sound logging - for IMAP-IDLE-CONNECT-TO-SERVER
(add wav file "idleconnect.wav")
v1.86
+ cleanup of debugging messages
+ add new option for log level:
Log Level
---------
1 = Basic
2 = Basic Detail
4 = Info
8 = Info + Detail
16 = Error
32 = Error Detail
64 = Debug
128 = Debug Detail
example for logging: if you want: Basic + Basic Detail -> then you must add the values - like: 3
(for all log otions -> 255)
v1.85
+ add checking for SLEEP mode (not go to sleep mode, if EXECUTION PLAN is just processing..)
v1.84
+ fixed autostart - if lnk exist, but not set in config file
+ fixed IMAP logout/closing socket if socket is valid, but no reaction(special case)
+ cleanup of some double log messages
v1.83
+fixes for IMAP IDLE - error handling for bad socket connections and bad socket response on all cmds
+fixes for graphical issues on wm6.5.5
+fix for autostart option - if loading from empty to flagged option.
v1.82
+new log option for IMAP IDLE - error handling for bad socket connections and bad socket response on all cmds
v1.81
+ cleanup version
v1.80
+ add new feature - on EXECUTE PLAN -> setdevice to sleep mode + max sleep time (time should max. wheel time)
+ fixed a bug on Generic error on IMAP IDLE, where the socket doesn't recover - now fixed
v1.79
+ another bugfix for IMAP IDLE
+ fix for validtime checking on open IMAP IDLE check
+ add now option for killing multiple tasks
-> now you can add a list of "KILL TASK" ex:test1.exe;test3.exe;test2.exe;
(delimiter is
v1.78
+ new method of handling for logout + socket closing on IMAP IDLE
1.77
+ another fix on LOGOUT (sometimes LOGOUT can't be recognize)
+ extra debugging lines for timeplan check on IMAP IDLE
1.76
+ fix on LOGOUT for imap idle on gmail accounts
+ some small fixes on communication between NETWORK checker and IMAP idle
1.75
+ fixed double lines for write to file (logging)
+ more debug infos to find imap idle handling error on gmail mailboxes
1.74
+ extra handling for IMAP server gmail
+ extra handling NETWORK
+ extra handling for starting service if RADIO is down. on start it is important that RADIO is ON, because need some infos for GPRS, WLAN, RADIO, BT and on starting a read the devices...
if RADIO is not on on start, then you'll get a msgbox, where it is waiting for RADIO ON.
1.73
+ big changes on the whole sleep module
+ fixes on config tool schedhandler graphic + error handling
+ fixes on service schedservce (NETWORK checker, IMAP IDLE handling for wrong responses from mailserver, etc...)
+ scheduler profiles timecalculation optimization + start time correction
1.72
+ added extrachecking if timeplans are only few seconds diff. to next vaild timeplan( -> now it won't LOGOUT if now time leak to hop next vaild timeplan)
+ small changes on EXAMPLE file (sound for new-email)
+ fixed backup - forgot the sound options to save on backup
1.71
+ finetuning on RESET SOCKET (timeout of IMAP mailserver) will now calculated, so that "IDLE" will not send over this time (add READ SOCKET time to calculation)
so if you set now 1800sec (30min) then it is OK (whatever READ SOCKET value is)
1.70
+ cleanups von imap idle service
+ register card - bigger buttons, bigger fonts - for HD2
(full list see Seperate scheduler history file)
##################################
Todo: (whishlist) in order
+ [DONE 20.11.2009] autostart service
+ [DONE 20.11.2009] autostart checking mail profile
+ [DONE 22.11.2009] autostart logging in MailHandler via list
+ [DONE 22.11.2009] management of multiple user profiles
+ [DONE 23.11.2009] realtime log window in MailHandler
+ [DONE 23.11.2009] debug options with "time stamp" in tracer and log
+ [DONE 23.11.2009] imap idle error handling
+ [DONE 27.11.2009] password -> handling for special characters in password
+ [DONE 30.11.2009] imap (without ssl) support
+ [DONE 01.12.2009] multiple mail profiles checking via imap idle
+ [DONE 03.12.2009] folder support for imap idle checking
+ [DONE 03.12.2009] Rechecking for all options for scheduler plans
+ [DONE 03.12.2009] multiple mail profiles checking via polling
+ [DONE 10.12.2009] management of scheduler plans + Redesign for management input for "SchedHander"
+ [DONE 13.12.2009] activating scheduler for imapidle
+ [DONE 13.12.2009] activating scheduler for wheel time
+ [DONE 13.12.2009] execute polling mailboxes on time scheduler
+ [DONE 13.12.2009] execute start application on time scheduler
+ [DONE 13.12.2009] execute kill application on time schedule
+ [DONE 14.12.2009] execute play sound file on time scheduler
+ [DONE 14.12.2009] more detail + status of service on starting
+ [DONE 14.12.2009] drop box -> reading the mailbox accounts from poutlook for using it as drop list on editing profiles
+ [DONE 15.12.2009] reaching Beta stage, and first "useable version"
+ [DONE 16.12.2009] removing unneeded "Notifications\Named Events"
+ [DONE 17.12.2009] trace file selecting -> now a simple textbox, where you can input the path+filename -> should be enough(not often used)
+ [DONE 17.12.2009] adding function: if schedhandler will be started 2nd time(if running) -> then automatic stop service.
+ [DONE 17.12.2009] option to configure to setup "schedservice" to startup (automatic starting after reboot)
+ [DONE 17.12.2009] Scanning Events: activating events: "file exist or not", "appl. runnning or not"
+ [DONE 17.12.2009] for trace file open/new better dialog box for easier selecting/choosing a trace file
+ [DONE 21.12.2009] Smart Phone Version
+ [DONE 22.12.2009] reaching Release Candidate - creating Release 1.0
+ [DONE 25.12.2009] execute switching on/off/toggle for BLUETOOTH
+ [DONE 28.12.2009] new icons for 128,64,32,16
+ [DONE 28.12.2009] backup/restore option
+ [DONE 15.01.2010] context menu if long clicking an item in lists (ex: delete, edit, add)
+ [DONE 24.01.2010] more info on "STATUS" button (about running service, Scheduler Profiles, Status of current running Scheduler Profiles
+ [DONE 26.01.2010] all GPRS settings (nodata, gb-soft, hd tweak)
+ [DONE 26.01.2010] execute switching on/off of RADIO/GPRS/WLAN
+ [DONE 28.01.2010]RADIO, GPRS, WLAN disable/enable
+ [IN PROGRESS]quick manual for normal user
+ [IN PROGRESS]expert manual for finetuning
Special handling)
=============
.) ssl: no auto install of root cert -> if you have problems, then you HAD TO import the root cert from your certification provider
(in the thread you will also find a lot of information about imap with SSL
.) the kind of connection can be different to Poutlook, which can kill a valid connection, but Poutlook would take his own configured connection. todo: make an option to sync the kind connection from MailHandler to Poutlook
Extras:
VoiceSounds By barty22
DONATION
========
12.12.2009 - plustig50 (ratelutz)
18.12.2009 - druhill
22.12.2009 - kiemlo
28.01.2010 - laggflor
28.01.2010 - burkilos
20.02.2010 - barty22
20.02.2010 - dalavar
BUGS
====
FEATURE REQUEST: (priority in sort order)
===============
- easy register process (auto-email + sending request key file, after payment auto getting key file)
- update function (to see what is the current version )
- adding an icon in taskbar to see if service is running or not.
- file browser for selecting sound files, etc..
- removing opennet and try to use internal taskmanager handling for starting/killing/info of application[NOT PLANNED - cosmetic]
- Execute Event: "Notification message" with configurable message text + variables[NOT PLANNED - cosmetic]
Manual for SchedHandler v1.00 22.12.2009
Features:
.) Scheduler for:
Scanning for:
-> network connection scanner (check the connection and if not valid reconnect again)
-> anti power suspend (sending power heartbeat every X-seconds, and so not going to suspend mode)
-> imap idle scanning for new emails
-> wheel time scanning (after X-seconds execute...)
--> + extra option for
---- checking if File Exist
---- checking if File Not Exist
---- checking if Application Running
---- checking if Application Not Running
Timeplans when Scanning events are valid
Execution if Scanning is valid:
-> Polling Emails (Pocket Outlook Mailboxes)
-> Kill Tasks
-> Play Sounds (all windows media supported files)
-> Switch Radio, GPRS, Wlan, Bluetooth via ON/OFF/Toggle
Conecept/Idea:
There are 2 groups:
1.) SCANNING EVENTS
2.) EXECUTION EVENTS
if the *SCANNING EVENTS* is valid, then do *EXECUTION EVENTS*
*SCANNING EVENTS WITHOUT DOING AN EXTRA EXECUTION EVENT*:
there 2 exclusion: "Network Connection" & "Power Heartbeat"
(on Event Network Connection -> this is a service which will check that the connection + try to connect
and will tell "imap idle service" if connection is good o not.
If *off*, imap idle will think, that the connection is GOOD.This event will not be used for EXECUTION events.)
This service will only be started once. IF configures multiple times, only the first in the list will be used.
(on Event Power Heartbeat -> it will send only a "power on event every X-seconds. This event will not be used for EXECUTION events.)
This service will only be started once. IF configures multiple times, only the first in the list will be used.
*SCANNING EVENTS WITH DOING AN EXTRA EXECUTION EVENT*:
Scanning event: Imap Idle if new email arraived, then do EXECUTION PLAN
Scanning event: Wheel time checking if wheeltime is over, then do EXECUTION PLAN
wheeltime have some more options and will use it as "AND" checking:
-> FileExist
-> FileNotExist
-> AppicationRunning
-> AppicationNotRunning
(ex: WHEELTIME + FILEEXIST + APPL.RUNNING = if wheeltime is over + defined file exist + application is running, if all is true, then do EXECUTION PLAN
*SCANNING EVENTS CAN BE CHECK AGAINST A SCANNING TIMEPLAN*:
if timeplans are defined with crossover times, then the offline time is smaller - better explained as: if a valid timeplan is found, then it is "ONLINE TIME".
with timeplans you can define the time where the scanning event is valid - or better explained: in undefined time, the scanning services will be paused.
if timeplan is complete disabled - then the whole time is "ONLINE" time and scanning events won't be checked against timeplan and they will then always be running.
often we are talking of "ONLINE" and OFFLINE" time.
"ONLINE" time is the defined time, where the scanning events should be done.
"OFFLINE" time is the undefined time, where the scanning events will be sleep.
*EXECUTION EVENTS*:
if the scanning event is valid, then doing this execution events:
Execution Event Polling Mailboxes (Pocket Outlook polling).
if you want, that ex: on new emails arraived on scanning event *Imap Idle*, then you must choose this option
Execution Event Execute Command Execute the command in hidden mode (incl. parameter are allowed
Execution Event Kill Task Kill all of the defined task (If multiple running, then it kills all of them)
Execution Event Play Sound Play a sound file (all files which are supported from your windows media player are allowed)
Execution Event Switch Commands You can switch Radio, GPRS, Wlan, Bluetooth.
You can switch this via: ON / OFF / TOOGLE (toogle = if on then switch off // if ON then switch it OFF)
----------------------------------------------
----------------------------------------------
Explaination of all Parameter:
----------------------------------------------
1.) Main Window
SCHEDULER PROFILES:(list) Shows all Scheduler Profiles. If an item is disabled, then the name is shwon: name+(Sched-Dis) .
New(button) Create a new scheduler profile.
Edit(button) Edit an existing scheduler profile. You must select one scheduler profile in the list before clicking.
Delete(button) Delete an existing scheduler profile. You must select one scheduler profile in the list before clicking.
IMAP IDLE MAILBOXES:(list) Shows all Imap Idle Mailboxes. If an item is disabled, then the name is shwon: name+(Idle-Dis) .
New(button) Create a new imap idle mailbox.
Edit(button) Edit an existing imap idle mailbox. You must select one imap idle mailbox in the list before clicking.
Delete(button) Delete an existing scheduler profile. You must select one imap idle mailbox in the list before clicking.
TRACE FILE: The tracer is a seperate service, which will listen on a TCP port to catch trace informations from SchedService.
This option can be used for error finding, you can log a lot of details in extra log file.
(checkbox) There you can enable or disable it.
(Listbox) There you can input the full path+ filename for tracing (example: \Storage Card\SchedTracer.txt).
DEFAULT VALUE: \Storage Card\SchedTracer.txt
STATUSPORT FOR TRACER:(numfield) TCP Port on which the tracer service is listen.
DEFAULT VALUE: 51982
LOG SCREEN: Some informations can be print direct in logscreen (ex: Status, etc..).
Only system messages from SchedHandler can be displayed.
(button) If press you can switch between *maximized* or *minimized*.
----------------------------------------------
2.) Scheduler - Profile Settings
PROFILE NAME:(checkbox) If activated, then this Scheduler Profile will be active and will be checked.
The profile can be enabled or diabled via checkbox. If Disabled it will be shown in Main Menu: name+(Sched-Dis)
TIMEPLAN VALIDATION:(checkbox) If activated, then it will be check the scheduler profile against valid timeplans.
So you can define when your scheduler plan is active(ONLINE) and all not defined time is then "OFFLINE".
if you want to make a timeplans over midnight:
ex: 9:00 to 03:00 -> then make a plan from 00:00 to 03:00 + 9:00 to 23:59
If disabled, then it will be checked all the time (24hrs)
New(button) Create a new timeplan + display the extra (overlayed) editor for timeplan.
scheduler profile.
Edit(button) Edit an existing timeplan. You must select one timeplan in the list before clicking.
It will open the timeplan editor and will be delete the old timeplan. So, please you must click then *add* after changes.
Otherwise you will loose this one timeplan.
Before *hiding* the timeplan editor - check the timelist if all wanted lines in the list.
Delete(button) Delete an existing timeplan. You must select one timeplan in the list before clicking.
-->
2a.) Scheduler - Timeplan Editor
There you can select the time (starttime and endtime).
Additional you can select(checkboxes) the days which you want to be valid.
if you want to make a timeplans over midnight: (Friday 9:00 to 03:00), then you have to do:
-> 1line = 00:00 to 03:00 (Saturday) + 1line = 9:00 to 23:59 (friday)
Add(button) Add actual timeplan values to list. If no day8s) selected, then messge will be displayed), because it is not valid.
If you want a plan for the whole day, then select all days before.
Hide(button) Add actual timeplan values to list. If no day8s) selected, then messge will be displayed), because it is not valid.
If you want a plan for the whole day, then select all days before.
----------------------------------------------
3.) Imap Idle - Mailbox Settings
IDLE ACTIVE:(checkbox) If activated, then this Mailbox can be selected in the Scheduler Settings Menu and can be added to a scheduler profile.
The mailbox can be enabled or diabled via checkbox. If Disabled it will be shown in Main Menu: name+(Idle-Dis)
If Disabled, then it won't be disaplayed in the imap idle mailbox list under "Scheduler Profile - Settings".
POLLING ACTIVE: If activated, then this Mailbox can be selected in the Scheduler Settings Menu and can be added to a scheduler profile.
MAILBOX:[/B(textfield)] Here you can set a free definable name. This name must !not! the same as in pocket outlook account.
USER:(textfield) Here you have to input the username from imap idle mailbox (often it is the same as your email address).
PWD:(textfield) Here you have to input the password from imap idle mailbox.
PWD: Save(checkbox) If enabled, then password will be saved. I strongly prefer to do so.
Your password will be saved as strong encrypted password with an special unoff. 4096bit key.
SERVER:(textfield) Here you have to input the server domain name from imap idle mailbox (ex: imap.gmail.com).
Additional you can also input an valid ip-address, which can be also be used.
MAIL FOLDER:(textfield) Here you have to input the Mailbox folder from imap idle mailbox (ex: INBOX).
Addional you can here insert multiple folders sperated by ";" (ex: INBOX;INBOX/Drafts;INBOX/Sent
But only on new login all folders will be checked and last in the list will be checked all the valid time.
If you want to check multiple FOLDERS all the time, then you must create for every FOLDER a own Imap Idle Mailbox
PORT:(numfield) Here you have to input the port from imap idle mailbox.
DEFAULT VALUE:143 for imap(PLAIN) // 993 for imaps(SSL)
SSL:(checkbox) Here you can select to use SLL - or if disabled PLAIN tcp will be used.
RESET SOCKET:
this is the time, where the connected imap socket will be checked ACTIVE against the server - > active= sending "IDLE" status command to server.
if the server won't answer, then would logout. otherwise do "read socket".
Gmail make timeout of connected sockets all 300sec. so a longer time as 300 won't make sense for gmail account.
Also it seems to be, that the most PDA devices cannot hold a socket longer open as 300sec only listening (without traffic).
On other imap server there can be a higher timeout be configured(my own server has 60min)
-> also after every "socket reset", the network connection and the full timeplan will used to calculate the next valid timeplan and will be rechecked if valid or not ....
- - >If timeplan is offline, then it will be sleep til next vaild timeplan.
- - >if network connection is down, then logout from server and waiting for a valid network connection
DEFAULT VALUE: 300sec for gmail account and higher values for ohter server (related on config of imap server)
FYI: Data will be send to server (IP Traffic - send "IDLE" command and server send answer back)
READ SOCKET: this is the time how long listen on the tcp socket to get new data from server.
If this time is over, then the next round will just suddenly begin and it listen(reading socket) again.
If the time would be set to 1sec, then more cpu load, because and only 1sec will be listen and then timeout and try next round.
-> also after every "socket read", the network connection and timeplans will be rechecked if valid or not ....
- - >If timeplan is offline, then it will be sleep til next vaild timeplan.
- - >if network connection is down, then logout from server and waiting for a valid network connection
DEFAULT VALUE: i think a value 30 will be good enough
FYI: No data will be send to server (no IP Traffic output will be generated).
Settings for new power saving on IMAP IDLE:
Wheel // READ SOCKET // READ SOCKET POWER HEARTBEAT // WHEELTIME // READ // SLEEP // WAKEUP // Power Save
1min // 0 55 60 5 50 5 10:50
2min // 73 115 120 5 110 5 10:110
3min // 73 175 180 5 170 5 10:170
best value will be: 2min // READ SOCKET=73 // READ SOCKET POWER HEARTBEAT=115 // (= 120sec per read)
Nice work Camro thank you.
First one to post haha..
Grtz Leo
camro said:
Hi
Here the new tool:
MailHandler (v.63)
it based on ImapPusher 0.61 + (xmapPusher from fixup)
basic features:
# handling with original email programm (poutlook)
it will poll poutlook the send/receiver command if new messages are arraived via:
+ dealing with the profiles from poutlook
+ imap idle support
+ polling support (not ready yet)
+ scheduling of free time ranges
+ a lot of features ... more in short time ....
for more detail
see: posting
http://forum.xda-developers.com/showpost.php?p=4970174&postcount=69
http://forum.xda-developers.com/showpost.php?p=4985946&postcount=77
i worked the last 3 days on this tool - and now i'm tired.......
for now i go to sleep and then i will support you with more deails and a helpfile
cu camel
Click to expand...
Click to collapse
It does not seem to work here. I get an error when I try to add/edit an account. It tells me that "ensureconnmgrready" is trying to Pinvoke DLL "SSLLib" which was not found.
starting the service gives me a connection refused error.
some examples....
i want that:
EXAMPLE1: (can be done via only one "Scheduler Plan")
========
SCAN:
1.) check that i have a internet connection (like timeplan in Pt.3)
2.) checking emails from my imap idle BOX1 (like timeplan in Pt.3)
3.) scans are valid on timeplan 9:00 to 18:00 (Mo-Fr)
4.) scans are valid on timeplan 11:00 to 15:00 (Sa-So)
EXECUTE:
3.) if new emails arraiving on IMAPIDLE Box "BOX1" then do:
a) poll (Poutlook) emails from Mailbox "BOX1" + "BOX2" + "BOX3"
b) play sound file: "\Windows\Alert.Twitter.wav"
setup:
+ create scheduler plan ex: name: "IMAP-IDLE"
(now: Scanning plans ..)
+ add timeplan (click new "NEW"), then change the values as you want it and click "add"
after doing this, then click "Hide" (then the time editor is hidden again)
+ select "Network Connection"
+ add your "server address" which you want to use for checking (ex: google.com)
+ choose your wanted "Connection": "Auto" / Strict "Off" (so i let windows the logic desicion)
+ setup "Disconnection rechecking": "30" (i use this, then if the phone can't make a network connection (in my cellar), then it try to make a connection all 30sec again)
(FYI: The scanner for "Network Connection" does just suddenly see, if the connection is broken, and only try a connection if not vaild).
+ Activate "Imap Idle", then you can add from right list to leftlist via button "<<" or remove from left list via ">>"
(FYI: you must select before the wanted item in list and then click the button "<<")
(FYI: in the list are all Imap Idle Maiboxes which you created in SchedHandler)
(now: Execute plans ..)
+ Activate "Polling Mailboxes", then you can add from right list to leftlist via button "<<" or remove from left list via ">>"
(FYI: you must select before the wanted item in list and then click the button "<<")
(FYI: in the list are all Maiboxes from your "Pocket Outlook")
+ Activate "Play Sound", then you write in the textbox: \Windows\Alert.Twitter.wav
(FYI: You don't need to use sign: "" or something - only write the filename to the textbox)
That's it
----------------------------------------------------------------------------------
EXAMPLE2: (can be done via only one "Scheduler Plan")
========
SCAN:
1.) check all 20minutes (20x60=1200sec)
3.) scans are valid on timeplan 9:00 to 18:00 (Mo-Fr)
EXECUTE:
3.) if the "wheeltime" (Pt.1) is over then do:
a) poll (Poutlook) emails from Mailbox "BOX2" + "BOX3"
EXAMPLE3: (i want a hourly sound alarm..)
========
SCAN:
1.) check all 60minutes (=3600sec)
2.) scans are valid on timeplan 9:00 to 18:00 (Mo-Fr)
EXECUTE:
3.) if the "wheeltime" (Pt.1) is over then do:
a) play sound file: "\Windows\Alert.Twitter.wav"
(here is important, that you start the service before the timeplan is valid,
otherwise from beginning starting the service "schedservice" all 60minutes the sound will be played ....
and after first "oofline time" it would be correct again"
EXAMPLE4: (i want to poll emails only on: 9h 10h 11h 12h - Mo-Fr)
========
SCAN:
1.) check all 0sec (=0sec) (but activate wheel time for it !!!)
2.) scans are valid on timeplans:
a) 9:00 to 09:00 (Mo-Fr)
a) 10:00 to 10:00 (Mo-Fr)
a) 11:00 to 11:00 (Mo-Fr)
a) 12:00 to 12:00 (Mo-Fr)
EXECUTE:
3.) if time is reaced like timeplan(Pt.2), then do:
a) poll (Poutlook) emails from Mailbox "BOX2" + "BOX3"
this samples should only help you to see, what is possible.
howtosetup:
=========
1.) create you imap idle accounts (if wanted ..)
2.) create scheduler plan and there the logic is:
a) Scanning Events (Network connection / Imap idle / etc ...)
this are the events which will be checked (imap idle= email checking / wheeltime = scaning if time is over / etc...)
b) Timeplan for Scanning Events (which time should they are checked ? - if no plan then wholetheday is valid)
c) Execute Events -> when Scanning Event is valid (imap idle has found emails / or / wheeltime is over ..)
then do:
-> poll emails(choose your mailboxes in list)
-> execute a file(full path+filename)
-> kill a application(only the filename of application)
-> play a soundfile(full path+filename)
-> switch On/Off/Toggle Radio, GPRS, WLan, Bluetooth
that's it.
FAQ
Q:are there somewhere registry entries made?
A: NO/YES -> only Notifications are added (\\.\Notifications\NamedEvent\SchedHandler_*)
Q: Where is the settings file ?
A:see in Application Data\SchedHandler\ -> Filename is "SchedHandler.xml"
Q: can i uninstall/update with new version the programm ?
A: Yes
#####################################################################################
EXPLAINATION/CONCEPT/BACKSTAGE
hi,
well it seems to be, that Fixup made the core stable enough to think about some extra stuff....
thanks - great job...
and so i will think about to expand this project.
################################################## ################################
1) QUESTIONS: some questions to you:
1.1) who wants/can to help with development on this project ?
i don't want to devel on diff. ways on the same thing ... so - want teamwork for it
1.2) please write down your ideas and comments.
1.3) new name for the product ex: "MailHandler", "SchedulerPlaner" please come in with some ideas ...
before i start with changing code ... i thnk about and some ideas from my side....
What should the programm can do ?
--------------------------------------------------------------------------------------
2.)FEATURES
2.1) HANDLING FOR POLLING THE STANDARD EMAIL PROGRAMM (starting "send/receive" command from tmail.exe)
the idea behind is to set in poutlook always: "send/receive - manually"
and the request "send/receive" command will pushed via this tool
this can happen in 2 ways:
a) polling via periodic time (free choosing the time in sec)
b) imap idle -> only if a new email is arrived, and always hold the connection to imapidle
(or combination of both)
2.2.) MAIL SCHEDULING POLLING with time ranges
the idea behind is, that a lot of guys don'T want to get 24h the emails (sometimes sleeping)
and so the email checking/polling should not always be happen.
This should work on 1a) and 1b)
--------------------------------------------------------------------------------------
3.)EXPLAINATION/EXAMPLES:
The idea behind is: to set poutlook always to "Send/receive" to "manual"
and now there are 2 kind of cycling send/receiver
a) via IMAPIDLE: imapidleservice and checking the internet-connection all X minutes (value from "CYCLE")
b) via DEMAND: (i will call it "polling" later) imapidle will be disabled and from beginning of "Starttime" til "Endtime"
and all X minutes (value from "CYCLE") will send the "send/receive" command to poutlook
ex: Profile: DEMO1 -> option for:
Scheduler
=========
Days_________________|_Starttime_|_Endtime_|_(I)MA PIDLE_|_recheck time of connection in sec
Mo,Tu,We,Th,Fr,Sa,Su_|_HH:MM_____|_HH:MM___|_(P)OL LING__|_or periode time when sending polling command in sec
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
X__X__X__X__X__-__-__|_00:00_____|_03:00___|_P__________|_3600___(A)
X__X__X__X__X__-__-__|_09:00_____|_12:00___|_I__________|_900____(B)
X__X__X__X__X__-__-__|_12:30_____|_21:00___|_I__________|_900____(C)
X__X__X__X__X__-__-__|_21:00_____|_00:00___|_I__________|_3600___(D)
-__-__-__-__-__X_____|_08:00_____|_20:00___|_P__________|_7200_ __(E)
-__-__-__-__-__-__X__|_09:00_____|_18:00___|_I__________|_1800___( F)
(A) = monday til Friday from 00:00 to 03:00 -> check via polling and periode all 3600sec
(B) = monday til Friday check via Imap Idle 06:00 - 12:00 and recheck of socket all 900sec.
(C) = almost the same like (A) but other time range ..
you can see the time hole between (A) and (B) of 12:00 til 13:00 there will nothing happen (no imapilde, no polling)
(D) = like the same as (A) but other time range (A+D -> i think in this way it is easier for "over midnight handling"
(E) = on saturday from 08:00 to 20:00 -> check via polling and periode all 3600sec
for time range checking on imap idle will also be a good idea to use one extra paramter (is the actual time a valid time ?)
(so the application don't must check every second if the time range is valid, because this could cost battery)
so, therefore one extra option will be good: -> $TIMECHECKPERIDE = 60 sec
--------------------------------------------------------------------------------------
4) PARAMETER
4.1) Global parameter
- EnableTracing => (ON/OFF)
- DoTracing="True"
- TraceFileLocation="\Application\imappusher\imappus her.txt" (path + file name)
- SpecificConnection="0" (Auto, Internet, Work, etc...)
4.2) Box parameter
- MailboxName="Camel-Mobil" (String (!Be careful! Exact the same name of the poutlook profile)
- Username="[email protected]"
- Password="ABCDEFGHIJK" (decryted)
- Server="mail.xxxxx.com"
- Port="993" (1-65000) (automatic ssl check)
- StatusPort="51982" (1-65000)
- SpecificConnection="0" (get it from list internal list = Automatic, Internet, Work, etc...)
- TimePeriodeCheck="300" (0-86400 checking if the time is valid for imapidle checking or polling on time -> point 4.3)
4.3) Box time parameter (a array list of)
- Day="127"(1=Mo,2=Tu,4=We,8=Th,16=Fr,32=Sa,64=Su) so if you want Monday+Sunday then 64+1=65 / Mo-Su=127
- TimeStart="09:00 (HH:MM in 24h format, midnight = 00)
- TimeEnd="00:00 (HH:MM in 24h format, midnight = 00)
- MailMethod="P" (P=Polling / I=IMAP Idle / E=External command)
- ConnectionCheck="300" (on imap ilde the time for checking the internet-connection / on polling recyle time)
(only internal infos)
EDIT: => you don'T must change it per hand -> i'm making a manager for it.
additional informations on:
http://forum.xda-developers.com/showpost.php?p=4970174&postcount=69
http://forum.xda-developers.com/showpost.php?p=4985946&postcount=77
i worked the last 3 days on this tool - and now i'm tired.......
for now i go to sleep and then i will support you with more deails and a helpfile
From the previous thread:
camro said:
wau, thank you for the comments ....
yes, i will suddenly include this...
so i will make option for every "Scheduler Plan" options to:
in Offline time: switcher (off/on) RADIO /GPRS / WLAN / BLUETOOTH
in Online time: switcher (off/on) RADIO /GPRS / WLAN / BLUETOOTH
"Online" time is the defined time in scheduler plan
"Offline" time is the undefined time in scheduler plan
is it also neccesary to disable a "connection" (like appl. "NoData" ?)
or is enough to have an option to disable the whole "GPRS" in offline ?
if no scheduler plan, then all the time checking (via imapidle or polling)
--------------------------
well the full structure for scheduler plan is ready.
but, please if it is ok, please let us following on the other thread of "MailHandler".
cu camel
PLS: do somebody have additional whishes or comments ? -> please post it under "MailHandler" thread
Click to expand...
Click to collapse
To be honest, it is to stop someone waking me up at 3am or sending a text which does the same, may as well also close the GPRS connection too (or have to, getting into the realms of making the phone ringtone silent during set hours is more involved and there are commercial applications out there that attempt it)?
Hi Leo
well, ok, after a lot of hours work ....
next version ...
please test and try if you can get it crashing, so that i can handle all possible errors.
for now it should really good work
if the base is stable, that i will include the scheduler and polling
por now, please test multiple email account, imap idle is now stable, etc...
cu camel
does idle play nice with folders yet?
i'm not sure if you know what imap idle is ....
and how the communication between the mail server and client is ...
http://tools.ietf.org/html/rfc3501
and how do you get incommings mails in specila folders ?
you are working via sieve scripts = on port 2000 ?
anyhow ....
the mailhandler should makes the handling when a new email arrived, then send to poutlook "hey poutlook, there are new emails on server please call *send/receiver" command.
and so, ti makes sense to switch the mode in poutlook completly to "manually" period email checking and MailHandler will make the check via:
"imap idle" and/or polling and/or after time periode (cycling+scheduler plan)
SO, it is possilbe, to deactivate(no checking emails after midnight when you are sleeping ...)
This is the concept behind the whole plattform and to save battery and extra costs...
for IMAP IDLE dealing with folders .... haven't heard, that poutlook can do that.
maybe if you have information aor which command to send to mailserver -> please send info to me.
cu camel
cu camel
error
I get get error
Camel:Connected
Exceptio:Either the application has not called WSAStartup, or WSAStartup failed
any idea?
I get the following error, no matter if I use SSL/993 or no SSL/143:
Camel:IsConnected
Exception: Either the application has not called WSAStartup, or WSAStartup failed
There's another message in the log window:
!Warning-A02! It was not possible to start the service. No connection could be made because the target machine actively refused it.
The IMAP host is a Cyrus-IMAPd server I maintain and I couldn't spot any connection attempts in the log (Outlook works fine).
Also, what is "Status Port" for?
Camro, can this work with other mail programs, such as FlexMail?
finally someone who picked up where emailscheduler stopped. Great!
I'm getting however, the same error as above.
Should I install .NET messages or do you have enough debug info
plustig50 said:
I get get error
Camel:Connected
Exceptio:Either the application has not called WSAStartup, or WSAStartup failed
any idea?
Click to expand...
Click to collapse
Thanks for report, i woll look into ...
@all
i built in very much info messages, because imappusher doesn't have this and tried so long as iit was possible to connect, but i think it is important to make a "clean base", and therefore for now are too much infomations, which i will on next version only in log window.
additional - sorry for the graphic zooming on "log button", which is working perfect on the emulator (because my real HTC HD is in this moment deadflashed , and i can only test on emulator
i will now fix my pda at first.
Hopefully, the next version (0.65) should be useable for imap idle.
cu camel
kiemlo said:
I get the following error, no matter if I use SSL/993 or no SSL/143:
Camel:IsConnected
Exception: Either the application has not called WSAStartup, or WSAStartup failed
There's another message in the log window:
!Warning-A02! It was not possible to start the service. No connection could be made because the target machine actively refused it.
The IMAP host is a Cyrus-IMAPd server I maintain and I couldn't spot any connection attempts in the log (Outlook works fine).
Also, what is "Status Port" for?
Click to expand...
Click to collapse
therefore i will concentrate and will there make more log messages to get more detail.
what i see is, that it react on the ssl certs different to outlook. also i see problems on the old imappusher with special char passwords (ex: !"§$%&/())=? <- if one of them is inside, then there is an problem. this should be fixed but have to test this.
Password (String) -> convert to HEX -> encrypt it -> SAVE IT.
status port is for extra comm. on server. i have to verify it, that it also work without it.
i will at first remove the "normal messages" with "OK" confirm and will put it to tracer or/and log window, then it is better for testing ....
thanks for your comments.
cu camel
SimpTheChimp said:
Camro, can this work with other mail programs, such as FlexMail?
Click to expand...
Click to collapse
yes (not yet implemented, but very soon it is possible to execute commands.
and the idea to send an external command on imap idle -> this is brand new for me and i will add it to the TODO list.
this can then be done via:
1.) via scheduler plan with polling: sending a command on special time + recycle time via "external command"> so therefore you only need the command + parameter which MailHandler should execute. So we need this info from fleximail.
2.) via scheduler plan + imapidle service -> imap idle service is running and see, that there are messages on the mail server, and then (not call poutlook) send execute a special command which start fleximail + receiving emails.
so in both cases -> we need the information from fleximail devels:
a) which command should be executed for fleximail ?
b) which command paramter should be called to "receive" emails from account "X"
ex: "\Program Files\Fleximail\FlexiMail.exe <ACCOUNT> <GETMAIL>"
maybe one of you can call them and ask them to get this information.
thank you very much for the new idea.
cu camel
kaliman said:
finally someone who picked up where emailscheduler stopped. Great!
I'm getting however, the same error as above.
Should I install .NET messages or do you have enough debug info
Click to expand...
Click to collapse
yes, it think i have for now enough infos and i will create very fast a new version where:
.) that we got more detail in log window
.) removing the messages where the "OK" button is to press.
.) removing the bug if pressing "x" on creating a profile
.) WSA error bug fixing
.) password in plan in log window to be sure if it is correct, if there are special chars.
.) status port checking if 0 , then the automatic should work, which seems to be not working now
tomorrow i should be ready with the next version.
new version is up.
@devels
i saw, that imap idle is only valid in ssl, is there some devels which can help me to make some fiunctions to normal imap (socket) functions ? c++ coders
please let me know, because i want the basic clean before implementing the scheduler stuf.
please test this versio and let me know your comments
cu camel
Hi,
currently my Gmail account it set to send/receive every 60 minutes. Should I change this to manually before trying this tool?