In my project i have created a site from where my users or clients can send some documents to other users.
I also want to see if the recepient has read the mail/has the mail been sent.
Now i want to store the value of the result ie either "Sent" in case the mail has been successfully delivered. And "Viewed" when the mail has been opnened or read by the recepient.
I have done this code
MailMessage mailme = new MailMessage();
mailme.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess;
As i said above i want to store the value "Sent" or "Viewed" inside a string. Further ill store the values inside my tables.
How do i get the desired result. Basically i need to get the delivery report and report if the mail has been viewed.
Also i want to get the date as well as time when the mail was viewed by the recepient.
Thank you.
You might be looking for this:
mailme.Headers.Add("Disposition-Notification-To", "yourmail#mail.com");
where "yourmail#mail.com" should get a mail if the mail was read.
Related
I have an email for customer, Its bcc we have the Subscriber's company Email.Email Contain a link to web page.Now the problem is the link is passing IsCustomer=true which becomes the reason for a function to be executed.I want to replace IsCustomer=true with IsCustomer=false or disable the link for BCC only.
I do not have an option to send two separate emails.
Technically, the requirement seems weird to me as why we should be able to change the email content of same email for recipient and BCC.
I have studied the personalizations topic here and I am doubtful about this.
Is there any way to achieve that?
iam using QT and Qsslsocket to get some emails body from Gmail using IMAP, I started using the IMAP command to log in, check how many emails I have, and fetch the data from the email I selected I use this commands sure after connected to IMAP using hostname and port.
tag login username password
after login and check the number of messages using tag select inbox I use this command to extract the body of the email.
tag fetch message_number (body[1])
the problem is i got very strange words like this
* 5 FETCH (BODY[1] {1856}
SGkgRmVsaXggYW5kIEZpbmdlcnMgRHVlbGluZyBQaWFub3MsCgpWaWN0b3JpYSBBLiBoYXMg
dXBkYXRlZCB0aGVpciBldmVudC4KClRoZSBwZXJmb3JtYW5jZSBsZW5ndGggaGFzIGJlZW4g
Y2hhbmdlZCB0byAzIGhvdXJzLgoKVGhlIHBlcmZvcm1hbmNlIHN0YXJ0IHRpbWUgaGFzIGJl
ZW4gY2hhbmdlZCB0byA1OjAwcG0uCgoKCgpVc2UgdGhlIGxpbmsgYmVsb3cgdG8gdmlldyB0
aGlzIGxlYWQ6Cmh0dHA6Ly90cmFja2luZy5naWdzYWxhZC5jb20vdHJhY2tpbmcvY2xpY2s/
ZD1RS1FFeEQxZGtIQTZrYWE3YzFXSzcxZ2VDVXBNX0F5UFRkcUpjeUVZcWZwN3RuMklNRXIx
WlRCOVcxYzlfR3VaUEFyaFhJQkIxbWl4S29jSDZXb1dVUTdlUkRsNl8zMTlPSXpLS0NGZmUz
X2FnQmRlN2lPd2hWaFczOXB2V25SMTY0R1JjaWdoYlZVSVpwT2k1NmxnOVhlV2JLcnhEVS05
WGJTWlBnZzhFRU9SMAoKUGVhY2UsIGxvdmUgJiBnaWdzLApUaGUgR2lnU2FsYWQgVGVhbQoK
CkZvbGxvdyBVcyEKRmFjZWJvb2sgaHR0cDovL3RyYWNraW5nLmdpZ3NhbGFkLmNvbS90cmFj
a2luZy9jbGljaz9kPXhkeEJya3I0eFZ0VE95bnhLbzFnUG1FR05HZU1TSlA5ODFSSVpUeEFJ
QlgzVmZuX3BBbk94Y2JMdUdURXpIR1RLWGVEMk9qUjFEc1NPeGRkX1Y4MjFWZXVYY1BEVXZv
TWNleWMwZHVPUXQtMXVDRjNxcHpVNGxDQmViT2VZbUpINVEyClR3aXR0ZXIgaHR0cDovL3Ry
YWNraW5nLmdpZ3NhbGFkLmNvbS90cmFja2luZy9jbGljaz9kPVY3LWpwbEZHVk5QcGExaVdU
VGF2aG5XZWJRLXRDQXZRakN6T2NBRXdCNDZ2R0FtbkplOFBfdHhycXdQUnhBallZbk9DRElt
ZktFeVAxQlNVR1J4MXhWelE4c3gxM2x1eWtoN3pKNXBXa1VKSEtPYThCYlRuUHF6Ykd1VGF0
THVTa3cyCkluc3RhZ3JhbSBodHRwOi8vdHJhY2tpbmcuZ2lnc2FsYWQuY29tL3RyYWNraW5n
L2NsaWNrP2Q9eEMzVEhBbjgyRTZuZ2piQXN6ZHRRVWZQcktNTVAwbDBpbzl0UDgxOW5SazBC
WDdvZmdZLU1OVk1jR2owTXdWQTNhZmV5aUh1T2VBSUE0V0tTM1NLZnU4Wk1nMENJRmszdnR3
X0F4Q1M2aWdiMDdCazBsU0p4QWNQYlJpc19uaFpNdzIKCgpTdG9wIGFsbCBHaWdTYWxhZCBl
bWFpbHMgKG5vdCByZWNvbW1lbmRlZCk6Cmh0dHA6Ly90cmFja2luZy5naWdzYWxhZC5jb20v
dHJhY2tpbmcvdW5zdWJzY3JpYmU/bXNnaWQ9UzQzLVFsVDVBbHhiaUl0SmhxU0NuZzIKCsKp
IFRoZSBHaWcgQnVyZWF1LCBMTEMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFBlYWNlLCBsb3Zl
ICYgZ2lnc8KuIGlzIGEgcmVnaXN0ZXJlZCB0cmFkZW1hcmsgb2YgVGhlIEdpZyBCdXJlYXUs
IExMQy4KMjczMyBFLiBCYXR0bGVmaWVsZCBSZCAjMTA1IFNwcmluZ2ZpZWxkLCBNTyA2NTgw
NA==
)
but the email contains normal message have normal words the strange is when i test with another gmail, i take this email from first email and send it forward message to my second email, it give me the normal text in it! so please any help i can't understand what is the problem, also what i tried is using openssl which give me same result as QT strange words, and javaMail library and extract text from first email it worked? so is the problem from the imap command i used or what?
Thanks in advance.
this a screenshot of the email message
Update
when i start some search i checked that this message is encoded to base64 and when i used online decoder it convert to the normal text but the question now is what command should i use so that i can fetch this message body text in normal text automaticly if there is such away.
Team,Docusign ,
I am using Email and Direct Mode for Powerforms in C#.NET and sending documents for signing using powerforms links and appending all custom tags as query string
for e.g.
//This is just an example, emails are sending perfectly.
demo.docusign?powerforms.aspx?id=axx-4545-a56s&Prospect_UserName={0}&Prospect_Email={1}&EnvelopeField_CompanyId={2}&EnvelopeField_StaffId={3}...
but I have a requirement where, I need to change Email Subject and Email body as per different type of companies.
For e.g. if a CompanyType: Member, then EmailSubject: "Memebers Need to Sign NDA", and Mail Body : "Dear Member, Please sign... large text"
If CompanyType :Prospect , then different wordings for Subject and Mail Body.
Right now , I have to hard code single mail wordings and bound to use same email subject and body for both types of company and I can't change it dynamically.
I don't want to create separate powerform templates again for mebertype and prospecttype and under each again one for EmailMode and another for DirectMode.
Do you have any solution ?
You could switch to using the API directly.
Powerforms don't provide the capability you're requesting.
I send a link as email to the users asking them to reset the password. Clicking on the link redirects to a page in my project. How can I set the expiration time for this link to 24 hours, and how do I know if this link is not re-used again? Whats the best way to do this?
Thanks
I dont know how your process looks like but the recommend way is to use a guid to identify the
passwort reset process.
This is how a process should look like.
Create a database table with the userId, createDate, closeDate, and a guid
Create a new entry in the table
Send the mail with a link to your page that has the uuid from the entry
If the user enters the page (clicks the link) you check if the process is still open (closeDate is null)
Check if the createDate is within the last 24 hours
User can change password
You set the closeDate
store email sent date&time in the database(where your maintaning userdetails) .
when your are open link for reset password capture present date. compare both date&time values . they you can procced. may this helps you.
I have an idea
Create a Time.now() and encrypt this using encryption and attach with your link
Send using Email and other option
go to the link page
write code on page load Request the sent encrypted Date Time and decipher it
match time if time is over then send to an error page else continue
Like -:- http://Yourhost/foldername.aspx?val=encryptedTimeDate
ELMAH shows host, code, type, error, user, date and time by default on its error log web page. Is there any way to configure it and show other fields like IP or REFERER?
(source: googlecode.com)
You could write your own error page. Bind a datagrid to ErrorLog.GetErrors() and use whatever columns you want:
List<ErrorLogEntry> entries = new List<ErrorLogEntry>();
ErrorLog.GetDefault(HttpContext.Current).GetErrors(0, 50, entries);
string ip = entries[0].Error.ServerVariables["REMOTE_ADDR"];
string referrer = entries[0].Error.ServerVariables["HTTP_REFERER"];
ELMAH is open-source. You can download the source and make any modifications you like (within the terms of the license, of course.)
You should be able to trap any data made available by the HttpConext.Request object. You'd have to modify the code that grabs and stores the data, and the database to make columns for that new data.