示例#1
0
        /// <summary>
        /// Опрос новых событий
        /// </summary>
        /// <param name="session">Сессия (следует вызвать Messages_GetLongPollServer)</param>
        /// <returns></returns>
        public UserLongPoll.Response UserLongPoll(Messages.GetLongPollServer.Response session)
        {
            var uri = new UriBuilder("https://" + session.Server);
            NameValueCollection parameters = System.Web.HttpUtility.ParseQueryString("act=a_check");

            parameters["key"]     = session.Key;
            parameters["ts"]      = session.TS.ToString();
            parameters["wait"]    = wait.ToString();
            parameters["mode"]    = mode.ToString();
            parameters["version"] = lpVersion.ToString();
            uri.Query             = parameters.ToString();
            // Десериализатор JSON

            var    ser  = new DataContractJsonSerializer(typeof(UserLongPoll.Response));
            string json = GetJson(uri.Uri);

#if DEBUG
            Console.WriteLine(json);
#endif
            var ms = new MemoryStream(Encoding.UTF8.GetBytes(json));
            // Десериализация
            return(ser.ReadObject(ms) as UserLongPoll.Response);
        }
示例#2
0
 /// <summary>
 /// Инициализация сеанса связи
 /// </summary>
 internal void InitSessionAsync()
 {
     // Получение данных сеанса обмена данными с сообществом
     VK.Messages.GetLongPollServer.Result result = api.Messages_GetLongPollServer(Program.Cfg.CommunityID);
     session = result.Response;
 }