Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,785,193 Members 37,613 Now Online
XDA Developers Android and Mobile Development Forum
View Poll Results: for which system do you like SchedHandler ?
WM5 0 0%
WM6.x 24 77.42%
WMP7 1 3.23%
Android 6 19.35%
other 0 0%
Voters: 31. You may not vote on this poll

[2010-05-17]SchedHandler 3.00 - scheduling application for email (INSTANT EMAIL)

Tip us?
 
camro
Old
(Last edited by camro; 18th May 2010 at 09:50 AM.)
#1  
Senior Member - OP
Thanks Meter 12
Posts: 1,761
Join Date: Apr 2007
Default [2010-05-17]SchedHandler 3.00 - scheduling application for email (INSTANT EMAIL)

[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?")


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)

[B]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!
 
camro
Old
(Last edited by camro; 1st October 2010 at 04:23 AM.)
#2  
Senior Member - OP
Thanks Meter 12
Posts: 1,761
Join Date: Apr 2007
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/show...postcount=1126
+ add new option -> "Do not send StopDataConnection -> on EXTRA _> NETWORK checker
for details -> see http://forum.xda-developers.com/show...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]
 
camro
Old
(Last edited by camro; 1st October 2010 at 03:01 PM.)
#3  
Senior Member - OP
Thanks Meter 12
Posts: 1,761
Join Date: Apr 2007
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.
[B]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)
Attached Thumbnails
Click image for larger version

Name:	SchedHandler-1.jpg
Views:	1934
Size:	47.7 KB
ID:	257851   Click image for larger version

Name:	SchedHandler-2.jpg
Views:	1747
Size:	40.1 KB
ID:	257852   Click image for larger version

Name:	SchedHandler-3.jpg
Views:	1726
Size:	47.5 KB
ID:	257853   Click image for larger version

Name:	SchedHandler-4.jpg
Views:	1699
Size:	50.1 KB
ID:	257854   Click image for larger version

Name:	SchedHandler-5.jpg
Views:	1684
Size:	47.2 KB
ID:	257858  

Click image for larger version

Name:	SchedHandler-6.jpg
Views:	1657
Size:	47.7 KB
ID:	257859   Click image for larger version

Name:	Donate.gif
Views:	6127
Size:	2.7 KB
ID:	258055  
 
Laurentius26
Old
#4  
Laurentius26's Avatar
Recognized Developer
Thanks Meter 1,151
Posts: 7,948
Join Date: Nov 2005

 
DONATE TO ME
Nice work Camro thank you.

First one to post haha..

Grtz Leo

 
kimusan
Old
#5  
Senior Member
Thanks Meter 4
Posts: 123
Join Date: Dec 2006
Quote:
Originally Posted by camro View Post
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/show...4&postcount=69
http://forum.xda-developers.com/show...6&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

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.
 
camro
Old
(Last edited by camro; 22nd December 2009 at 07:16 PM.)
#6  
Senior Member - OP
Thanks Meter 12
Posts: 1,761
Join Date: Apr 2007
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="camel@xxxx.xx"
- 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/show...4&postcount=69
http://forum.xda-developers.com/show...6&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
 
grayme
Old
#7  
grayme's Avatar
Senior Member
Thanks Meter 3
Posts: 946
Join Date: Oct 2006
Location: Hertfordshire
From the previous thread:

Quote:
Originally Posted by camro View Post
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
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
------------
Wherever you go, there you are.
 
camro
Old
#8  
Senior Member - OP
Thanks Meter 12
Posts: 1,761
Join Date: Apr 2007
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
 
billyburly
Old
#9  
Member
Thanks Meter 0
Posts: 41
Join Date: Nov 2007
does idle play nice with folders yet?
 
camro
Old
#10  
Senior Member - OP
Thanks Meter 12
Posts: 1,761
Join Date: Apr 2007
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

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Bring Back Tablet UI on KitKat

Google presented their brand new UI for tablets alongsidethe release of Android 3.0 Honeycomb back in early … more

Give Your Notification Shade a Facelift with these Modding Guides

Modification has always been one of the strong suits of Android, due in … more

Keep Track of How Much Your Car Truly Costs with Car Logbook

It’s a very well established fact that cars are expensive. In addition to … more

New Nvidia SHIELD Tablet OTA! Moto G 4G Gets Official CyangenMod 11 Nightlies – XDA Developer TV

The Nvidia SHIELD Tablet gets its … more