/// <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); }
/// <summary> /// Инициализация сеанса связи /// </summary> internal void InitSessionAsync() { // Получение данных сеанса обмена данными с сообществом VK.Messages.GetLongPollServer.Result result = api.Messages_GetLongPollServer(Program.Cfg.CommunityID); session = result.Response; }