Programmatically monitor Exchange Inbox and print label -
here's have...
i have program keeps track of barcode type labels. can select item in database , print label it. adding ability send email specific inbox on our exchange server (2007 sp1) item id in subject line print label id. far can read exchange , extract id number send report , have report print it. i'm stuck monitoring inbox. how reademail() method fire automatically? there no event make happen. have make check inbox itself. idea if need label printed, can send email inbox , label print automatically. 1 person can print these , if isn't here , needs label, lets him send email , label printed.
private void reademail() { exchangeservice _mailservice = new exchangeservice(exchangeversion.exchange2007_sp1); _mailservice.usedefaultcredentials = true; _mailservice.url = new uri("https://webmail.mydomain.com/ews/exchange.asmx"); try { itemview allitems = new itemview(100); searchfilter searchfilterinbox = new searchfilter.isequalto(emailmessageschema.isread, false); folder _inbox = folder.bind(_mailservice, wellknownfoldername.inbox); if (_inbox.unreadcount > 0) { finditemsresults<item> findresults = _inbox.finditems(searchfilterinbox, allitems); list<item> resultitems = new list<item>(); foreach (item item in findresults.items) { resultitems.add(item); _mailservice.loadpropertiesforitems(resultitems, propertyset.firstclassproperties); cbopropertytag.text = item.subject; getreportvariables(); reporttype = "autoprint"; reportviewer rv = new reportviewer(); rv.show(); item.move(wellknownfoldername.deleteditems); } } } catch (serviceversionexception) { } }
thanks in advance!
paul
first idea comes mind system.timers.timer
regularly executes reademail()
.
an other option use scheduled task exe runs every x minutes , executes method.
Comments
Post a Comment