What happens if I visit a page with a campaign id? - sitecore

if open a page with a campaign id, for example
mysite.com?sc_camp=0ED397C4784E4FA1834897A35461992A
can anyone tell me what exactly should happen in that moment?
If I look into my analytics dashboard, everything under Campaigns it is empty (No data to display). Checked Mongo DB but did not find anything that looked like campaigns. Checked the reporting DB, there is a campaigns table but there are no columns for a count or a last triggered date.
We made some changes to our tracking for GDPR but I am not sure if the campaigns and goals are still working correctly, can anyone tell me in which Table I need to check after I have triggered a campaign?
Thanks in Advance

Have you checked if that campaign ID actually matches any campaign defined in your site? The information should be visible in the Experience Analytics.
Also, check the logs as it might give you some information.

Related

"Recent interactions" pull via People API

I am trying to use Google's People API to pull the date of my last interaction (either email or calendar invite) with all my contacts. Basically whatever is in the red box in the screenshot below.
Google Contacts screenshot
I doesn't seem to be something that can be access via the People API, but I'd appreciate a confirmation. If anyone has found an alternative to get a similar data point (when was a person last contacted), it would be great !
I've tried pulling all the fields available through the API, or exporting contacts as a CSV, neither returned the date of last interaction.

Passing a value from one Sharepoint page to a table in a second Sharepoint page

I made a table on a SharePoint page using a webpart/snippet and some coding. My goal is to add code to pull a value for a couple of the cells in the table from another SharePoint page using a QueryString. My issue, I'm newer to SharePoint, and not sure how to set up the page that I'm pulling the information from. Ultimately, the page with the table will only be editable by a few owners. The page with the info to populate the cells will have multiple people that have the permission to edit the page to update their information daily. Now, here is where I'm not sure how to proceed. I don't want the users, most of which have no coding experience, to have to deal with entering their daily values into a coded snippet. But I'm not sure how to call the value from randomly entered data on a SharePoint page line. I believe it is SharePoint 2013. I can insert a table using the SharePoint feature rather than a snippet code, and that would be easily editable for the users. But Then I'm right back with not being sure how to call the information. I believe I can come up with the code once I figure out how I need to set up page with the information, but can edit the question as deemed necessary.
Follow the below thread
There are many way to send data from one page to another page
Query string is better if you are using table, redirect the link using custom code else follow the below link it might be help you to clarify or achieve something
https://social.technet.microsoft.com/Forums/sharepoint/en-US/b9d62eb1-57ed-4251-975d-13f9ae35f29f/how-to-pass-query-string-parameter-from-sharepoint-list-view-web-part-?forum=sharepointdevelopmentprevious
have a nice day
Regards
Vinod

Is there a way to figure out how often a SharePoint user clicked on a SiteCollection?

I'd like to know if there is a way to figure out how often a SharePoint (2013) user clicked on a SiteCollection or Web. Is there a specific service that is capable of the logging or is there a log in the database anyway? My idea is to display the result as a graph. For example:
(user a)-[40 clicks]->(SiteCollection X)<-[60 clicks]-(user b)
Read this for analytics in Sharepoint
https://technet.microsoft.com/en-us/library/jj219554.aspx
But, if this report is important to you I strongly recommend using something like google analytics (which is free of course) to track the data by your self.
You can create your own account, and send an event each time user enters your site or web.
I did some more research and found the "SharePoint audit log reports". They do almost exactly what I want. Information about how often items in a SiteCollection have been clicked is provided and reports are saved as exel sheets. Example

Sitecore ECM how to track the same user's activities in different target audiences

We are using Sitecore 6.5, and the Email Campaign Manager 1.3.3 rev.130212 is installed.
Currently, when i add a Sitecore user, for example 'UserA' to multiple target audiences, lets say 'TargetAudience_A' and 'TargeAudience_B', after I send out these two target audiences, 'UserA' clicks the link in the email which comes from 'TargetAudience_A', then the link will bring user to the site, user visits several pages, Sitecore Analytics will be able to track 'UserA' VisitPageCount and Value, and creates the corresponding campaign of 'TargetAudience_A' with that data.
When the user opens the email sent from 'TargetAudience_B' and clicks the link, visits the site, NO campaign is created for 'TargetAudience_B' in the database, I can see all the data should use to create a new campaign for 'TargeAudience_B' is used to update campaign of 'TargetAudience_A'.
The whole link in the sent email has been modified by Sitecore, the corresponding campaign id is added, which makes the link looks like this:'httP:xx.domain.com/?ec_camp=xxxx&ec_as=xxxx'.
It seems that Sitecore just adds an Id to the url, but does not create a campaign for the 'TargeAudience_B' with that Id.
I use this sql query to check the visits data:
Select * From Visits join Automations on Visits.CampaignId = Automations.CampaignId
Where Automations.data = '{EmailTemplateId}'
the data column on Automations table is the email template id of the target audience.
Does any one know, how to track one user's activities for multiple campaigns? Is this possible to do? Or is this something which needs to be fixed by Sitecore?
Any help will be much much appreciated.
Thanks
EDIT: Sitecore does create Campaign for each target audience, but does not create Visits record for every one of them; Sitecore associates Campaign with the Visits, Sitecore cannot find\create Visits of 'TargeAudience_B', it finds the Visits of 'TargeAudience_A', for some reason it just updates the Visits record of 'TargetAudience_A'.
This does look right, does Sitecore create just one visit for a visitor a day no matter how many target audience this visitor in?
Neither target audience, the Visitor.ExternalUser or anything other than a fresh Visitor cookie will make DMS re-consider your visitor. So to answer your question, I do believe you are correct in your observation, and that this behavior is by design.
Also keep in mind; if your users click the email you send out from say their iPhone and come visit the site, they will be granted a Visitor ID. Later, when they're back home at their PC and click the same email again, they will get a fresh Visitor ID and will not be recognized by DMS as one and the same Visitor. This too, is by design.
If you want to achieve what I believe you're aiming to achieve, you're going to have to "tag" your Visitors with a key you recognize - like the email address - and then hook into the APIs and "grab" all Visitors that match your tagged email address. Not sure how well this will work with all areas of the DMS.
In my example above; if a user was triggered to enter an Engagement Plan or a State in an Engagement Plan - the "iPhone Visitor" would get attached to it - and any actions undertaken by the same person on his personal PC visitor profile on his desktop PC would not be affecting anything in this state.
Yes, it is a bit confusing - I may even have some slight details of this wrong - the DMS API changes a lot. But as far as I can determine, the above is correct and all by design.

Sitecore: tracking of the last visited page

On the site that I'm developing we need to track the last visited page for each user (users login to the site). What's the best way to do this? We are already using a custom profile so adding a new field is easy. The site will not have a lot of traffic so updating this field wont be an issue, i think. Are there better ideas? Does sitecore already offers something that we can possible use?
OMS has a "Top Exit Pages" report by default... but that is tracked across sessions, not users.
A good IIS log parser should also be able to give you this information... again, that would be by session (or IP) and not logged in user.
If you really want to get every exit page AND filter by logged in user... what I would do is add a new pipeline processor to httpRequestBegin, and place it after the ItemResolver. Then save the Item.Paths.Path. I would advise against writing this data to the user Profile if you are using the default ASP.NET Profile handler and you have a decent amount of traffic, because it is highly inefficient. Roll your own simple storage solution here, or just dump the data to a log.
My first question would be: Why do you need only the last visited page of the user? What are you trying to determine?
In a lot of cases, you are probably starting down an analytics route, or perhaps even trying to drive some marketing.
If the analytics is what you are going for, you can probably just pop an event out to your google analytics account with the current username as an event variable to allow you to look at analytics by user and by page. Alternatively, you could use the Sitecore OMS/DMS features for tracking all that data and looking at the analytics there.
If you are looking at driving marketing, you probably want to use OMS/DMS, especially if you want to start getting into personalization or engagement plans. OMS/DMS will track user activity, and all the pages they visit, though not by user account. With some customizations, you can probably add that data in, but it will depend on what you are trying to use the information for. The username may not be what is important to you.
If, however, you just want to know what page to send the user back to after logging them in, it would be better to just store that in session or pass as a post parameter if session is not a viable option for you.