How can I trigger custom emails to be sent in wordpress? - email

My goal is to use a user's answers to a few questions to trigger custom emails being sent to them with filtered content on my wordpress website. It seems like this is a common need, but can't find anything that allows it, or even is the right base to build a custom solution.
There are 3 main features I'm needing to do: First, the signup form lets users choose a few criteria via selection boxes.
Next, the captured information triggers an email being sent that matches the content they chose. For example, if the user says they're interested in waterskiing, the email that is auto sent would show the most recent posts in the water-skiing category.
Finally, the user responses would need to be saved to trigger actions at a later time if the content is not available yet. So for example, if they are interested in bowling, but there are no entries on bowling, nothing happens. However, once a post gets entered in this category, they are automatically emailed with that recent entry.
Any clarity you can provide here on plugins, software, etc that would lend to this functionality is much appreciated!!

Related

Unique "reference" for form response?

I just created a Google form for online enquiries for my business. I set it up so that it sends an email to the person who submits the form using the "FormEmailer" script but my question is, is there a way I can give that person or more specifically that FormEmailer generated email a unique "Reference" number at the time of submission?
Thanks in advance.
Dan
Absolutely, if you are willing to do some coding on your own.
You may want to look at the recently launched Form Notification add-on for Google Forms, which also sends emails to people who respond to a form. This add-on is meant to be a code sample, and you can find the source code on GitHub, and a quickstart about it in the Apps Script documentation.
To do what you are asking, you would just need to copy the code and add another "Reference number" field to the RespondentNotification template, and then modify the sendRespondentNotification() function accordingly. Alternatively, you can just insert the reference number into the email subject in that function.
Note that this add-on has some limitations: the number of emails sent out (like all of Apps Script) are subject to quota limits. In addition, the add-on isn't really meant used for forms with multiple collaborators/editors. However, Form Notifications should give you a good idea of how to write scripts that respond well to form submissions.

How do I view the invoices for a specific account through a URL in Microsoft Dynamics CRM?

I'm trying to add an iframe into the form for viewing accounts that will display all the invoices that are connected to that account. I've read this MSDN page about accessing specific forms through a URL, which I can achieve, but copying the URL generated into an iframe I have created on my form produces an error message.
I'd like to know whether what I'm trying to accomplish is possible and if so, how I should format the URL so that only the invoices connected to the user account being opened will be displayed. I'll add more details later if I can.
I think what you actually want to do is add a sub-grid. This is different from an iFrame, an iFrame generally contains web resources, or links to pages on the web. A sub-grid specifically exists to show related records - e.g. to show the left hand relationships links on the body of the form.
I think this article should show you what to do.
Edit - based on Jacks comment:
So Crm can't handle this situation quite so easily with out of the box features. But you do have a couple of options. I dont think any of these are perfect solutions, so I'll let you choose.
A sub-grid effectively just runs some FetchXml, you can change this FetchXml with JavaScript, so you could alter the view to return the records not directly related. Green Bible has an example, though this doesnt look like its supported.
Use a report in an iFrame.
Use a plugin, I havnt done this myself, but a colleague told me it was possible to stick a plugin on the retrieve message and basically change the query or results which is used by the view.
Create a second relationship between the invoice and the account. Then whenever you link an invoice to an account, also populate this new relationship (a workflow will do) with the account, and whenever an invoice linked to a contact is created, populate the new relationship with the parent account of the contact (again a workflow will do). Then just base your sub-grid on this new relationship. This approach isnt the cleanest but its probably the quickest and easiest to implement.

Keeping track of whether an email has been opened

I'm using rails 2 for this app, with ActionMailer, but this is a general question about emails.
When we send out emails, i save a record corresponding to the email in a database table. I'd like to keep track of whether people have read the emails, and am wondering the best way to do it. On initial googling, it seems like i've stumbled into an ongoing battle between spammers and email clients!
My first thought was to use the "read receipt" header, but i know that this isn't supported by a lot of clients and is therefore unreliable. After that, i read of the tactic of including an image in the mail, and of detecting that image being loaded. I was thinking that i could put a parameter with the email record's id in the image url, so that when i get a request for that image i can see if it has a (for example) email_id param and if so, mark the corresponding email as having been read.
But, then i remembered that many clients are wise to this tactic and specifically ask the viewer of the mail if they want to display images. Obviously they might say no.
Am i right in thinking that i can't pull in other resources, such as stylesheets, in my mail? Because if i can pull them in, i could do that same trick but with the stylesheet rather than an image.
Grateful for any advice, max
Externally-hosted stylesheets are generally treated the same way as images. The client will not download them without prompting the user, if that works at all with HTML-formatted emails.
One thing to consider- you're looking to determine whether the email was read, not necessarily just received, right? Format your email so that it can't be easily read without viewing the images, and include a "view in browser" link at the top. Track image and page-format views and I think you'll have a fairly reliable way to measure actual reads.
Bit late on this, but we've got a similar problem.
We're tracking the links to our site that are included within the email. We're doing this by, like you, having a DB record per email sent out. We've generated a unique hash key per email and are including that as a parameter on all the links included in the email.
We simply then have a before_filter that looks for the parameter and records the fact against the correct email record by using the unique hash to identify the correct one.
We use a unique hash key (rather than the DB's primary key) just so it is a little bit more secure / reliable.
Obviously this method only helps us track the clicks our emails have generated (and not if they've been read) but it is still useful as we can see which of ours users has clicked on which links.
We are having major problems with this as well.
We have task wek portal, where users create tasks (like paint my house) and then we invite painters to give the task creator an price on painting his house.
For that we had a very advanced email system, that sends an invitation and if they accept the invitation we send them the contact info of the task creator.
We need to be able to track if the email was opened, and then once it's opened, we know that the company got the contact info, and we can now send another email to the task creator, telling them that they can expect to be contacted by that company.
The problem is that tracking if the email was opened is not reliable at all. There are different systems for this like msgtag (which does not support a wide range of mail clients like yahoo and other major clients) and our email API client (elastic email) even offer some API call back functions to tell us if each email was opened or bounced or whatever. But again, it's not reliable. To track if it's open, elastic email just includes a 1x1 px image and track if it's opened. So if people don't click "show images in this email" it's not tracked as opened.
So basically we are down to two options.
Have vital portions of the content printed on images, that they have to view to get the info we want to track if they got (in this case contact info)
Just have a link in the email "click here to get the contact info" and then track if that is clicked.
So in conclusion, the "track if opened" is totally useless and unreliable, unless you can fully control which email clients your recipients are using and how they are using them (like if they are all your employees or something).

In salesforce, can you verify that an email sent by a workflow was opened by the recipient?

I am using a salesforce workflow to send out product information and invoices to clients but I am running into problems thinking of how to verify if a client receives the email and or opens it. Is there any way to prove that a client received my inventory list or invoice? Doing some prior research on this subject I have come across the following suggestions:
Adding a 1x1 invisible image to the email with a unique id
Adding a regular image instead of a 1x1, maybe company logo
Having the recipient click a link to see the invoice
With all these solutions, you have to detect image requests or link request for them and extract/produce a unique id for each client. I am not really sure how to do this in salesforce so any help would be appreciated, along with other detection ideas.
If you have Salesforce Content, there are some ways to expose documents to clients with the features you need. Basically you'll send an email with link and later you can track confirmation of opening, count how many times was it downloaded.. You can also set the expiration date to the document (can't be downloaded anymore after the date).
As for "pure" email from Apex/Visualforce and basically manually recreating the Content's functionality... nowadays most mail clients block external pictures unless explicitly allowed by the mail recipient, so I suspect you'll have poor track of emails marked as opened. Probably you could create a small Visualforce page (no header, no styles, just controller that makes update "invoice viewed" in the database). Display image from Documents on this page (make sure it's "externally available image") or even just display 1 pixel encoded in base64...

Form Journey Tracking using google analytics

Is there anyway, using google analytics, to track a user's journey/selections through a long form so I can see where they drop off?
I've created a 'contact us' form which starts with drop down menu which requires the user to make a choice i.e. apply for job, apply for funding etc. and then each option requires the user to fill out a form, which is completed over serval steps.
Is there a way to track a user's individual form choices from their initial selection on the Contact Us page through to the form being submitted? That way I could see where in the form journey the users are dropping off.
If the form is a multi-page form, then you can use Goal Funnel tracking to obtain reports which will help you understand how users fail to complete the form:
http://www.google.co.uk/support/googleanalytics/bin/answer.py?hl=en-uk&answer=55515
The Regular Expression matching in Goal Funnels is quite useful if you have different paths or different form URLs for the same goal. You could also track multiple page views per actual URL, if you wanted to monitor the users who move onto a different step on a single URL.
If you need to analyze how users complete a particular form, you could use Event Tracking to record when each field is completed. You will need to carefully think about how you wish to use Event Tracking to obtain the information you require.
http://code.google.com/apis/analytics/docs/tracking/eventTrackerGuide.html
But Google Analytics is not good at tracking individual users' behavior. You may wish to take a look at ClickTale if you want to do more advanced form usage analysis.