public void ProcessRequest(HttpContext context)
        {
            var count = 0;

            if (context.Request.Url != null && !string.IsNullOrEmpty(context.Request.Url.Query))
            {
                foreach (var query in context.Request.Url.Query.Trim().Trim('?').Split('&'))
                {
                    if (query.StartsWith("u=", StringComparison.CurrentCultureIgnoreCase))
                    {
                        var username = query.Substring(2);
                        count = TalkAddon.GetMessageCount(username);
                    }
                }
            }
            context.Response.Cache.SetCacheability(HttpCacheability.Public);
            context.Response.ContentType = "application/xml";
            context.Response.Charset     = Encoding.UTF8.WebName;
            var xml = new XDocument(new XElement("response", new XElement("value", count))).ToString();

            context.Response.Write(Encoding.UTF8.GetString(Encoding.Convert(Encoding.Unicode, Encoding.UTF8, Encoding.Unicode.GetBytes(xml))));
        }
 protected string GetJabberClientPath()
 {
     return(TalkAddon.GetClientUrl());
 }
 protected string GetMessageStr()
 {
     return(TalkAddon.GetMessageStr());
 }
 protected string GetTalkClientURL()
 {
     return(TalkAddon.GetTalkClientURL());
 }