可以在C#WinForms环境中使用“Clicky Web Analytics”吗?

时间:2014-02-03 21:47:34

标签: c# winforms analytics web-analytics web-statistics

可以在C#WinForms环境中使用“Clicky Web Analytics”吗?

我唯一能看到的是网站的HTML代码段。

他们也接受HTTP请求,但我认为它们只是用于轮询数据,而不是用于将新事件/统计数据推送到Clicky。

我意识到它可能被称为'Clicky Web Analytics'有一个原因(即只有基于网站/网络应用程序的统计跟踪),但我现在可以使用C#解决方案。

2 个答案:

答案 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#,您将会很高兴。