CampfireHoon.CampfireRoom.StartStreaming C# (CSharp) Method

StartStreaming() private method

private StartStreaming ( ) : void
return void
        private async void StartStreaming()
        {
            string url = string.Format("{0}streaming.campfirenow.com/room/{1}/live.json", Scheme, _roomId);
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
            request.Method = "GET";
            request.Accept = "application/json";
            request.Headers[HttpRequestHeader.Authorization] = string.Format("Basic {0}", EncodedAuthToken);

            HttpWebResponse response = null;
            try
            {
                response = (HttpWebResponse) request.GetResponse();
            }
            catch (WebException ex)
            {
                response = (HttpWebResponse)ex.Response;
            }

            LogHttpWebResponse("Streaming", response);

            if (response.StatusCode == HttpStatusCode.OK)
            {
                StreamReader reader = new StreamReader(response.GetResponseStream());
                
                while (true)
                {
                    string line = await reader.ReadLineAsync();
                    ChatMessageDTO chatMessage = await ParseChatMessage(line);
                    if (chatMessage != null)
                    {
                        //Ensure we have the details for this user
                        GetUserInfo(chatMessage.user_id);
                        DataEmitted(FormatUserChatMessage(chatMessage));
                    }
                }
            }
        }