可以在C#WinForms环境中使用“Clicky Web Analytics”吗?
我唯一能看到的是网站的HTML代码段。
他们也接受HTTP请求,但我认为它们只是用于轮询数据,而不是用于将新事件/统计数据推送到Clicky。
我意识到它可能被称为'Clicky Web Analytics'有一个原因(即只有基于网站/网络应用程序的统计跟踪),但我现在可以使用C#解决方案。
答案 0 :(得分:1)
以下是如何从C#跟踪自定义事件到您的clicky网站:
private static void TrackStatWithClicky(string eventValue)
{
// Prepare HTTP request
WebRequest request = WebRequest.Create
(
"http://in.getclicky.com/in.php?" +
"site_id=" + ClickySiteID + //click site id , found in preferences
"&sitekey_admin=" + ClickySiteAdminKey + //clicky site admin key, found in preferences
"&ip_address=" + GetLocalIPAddressString() + //ip address of the user - used for mapping action trails
"&type=custom" +
"&href=" + eventValue.Replace(" ", "_") + //string that contains whatever event you want to track/log
"&title=APPNAME Action" +
"&type=click"
);
request.Method = "GET";
// Get response
WebResponse response = request.GetResponse();
response.Close();
}
public static string GetLocalIPAddressString()
{
if (!System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable())
{
return "";
}
IPHostEntry host = Dns.GetHostEntry(Dns.GetHostName());
return host.AddressList.FirstOrDefault(ip => ip.AddressFamily == AddressFamily.InterNetwork).ToString();
}
此处的一些信息对于解决问题非常有用:https://clicky.com/help/custom/manual#internal
答案 1 :(得分:0)
他们似乎有Manual data logging的API。具体来说,他们提到Logging internal events:
记录内部脚本中的数据
Clicky允许您记录来自内部脚本的数据,例如PHP,ASP,Perl等。其他服务不提供此功能,因为它们不记录其传入的“API”,并且它们仅验证来自推荐人。 Clicky与众不同。
您的后端网络服务器脚本似乎也是为了提供用户数据,但我很确定您可以使用您喜欢的任何语言(包括WinForms脚本)进行Web API调用。不是真正的它,但嘿,为什么不呢?只需使用URL编码的参数发出GET请求:
如何与我们的跟踪服务器交谈
您要与之对话的页面位于
http://in.getclicky.com/in.php
。这与我们的跟踪代码谈到的脚本相同。您只需要发送正确的参数,我们就会记录它。
因此,您需要将他们的示例PHP Script移植到C#,您将会很高兴。