コード例 #1
0
        public ActionResult Auth(string channel_name, string socket_id)
        {
            var applicationId = ConfigurationManager.AppSettings["pusher_app_id"];
            var applicationKey = ConfigurationManager.AppSettings["pusher_key"];
            var applicationSecret = ConfigurationManager.AppSettings["pusher_secret"];

            //var channelData = new PresenceChannelData()
            //{
            //    user_id = Guid.NewGuid().ToString()
            //};
            var channelData = new PresenceChannelData();
            if (User.Identity.IsAuthenticated)
            {
                channelData.user_id = User.Identity.Name;
            }
            else
            {
                channelData.user_id = Guid.NewGuid().ToString();
            }
            channelData.user_info = new PusherUserInfo();

            var provider = new PusherProvider(applicationId, applicationKey, applicationSecret);
            string authJson = provider.Authenticate(channel_name, socket_id, channelData);

            return new ContentResult { Content = authJson, ContentType = "application/json" };
        }
コード例 #2
0
        public void ProcessRequest(HttpContext context)
        {
            SetupDefaultProvider(context);

            var provider = new PusherProvider(applicationId, applicationKey, applicationSecret);
            string authJson = provider.Authenticate(socketID, channelName);

            context.Response.Write(authJson);
        }
コード例 #3
0
        public void ProcessRequest()
        {
            var provider = new PusherProvider("18353", "272a4f27cd993f2801a9", "c846a22521b7ed4c7f83");

            ObjectPusherRequest request = new ObjectPusherRequest("my-channel", "my-event", new
            {
                message = "hello world"
            });
            provider.Trigger(request);
        }
コード例 #4
0
        protected void Button2_Click(object sender, EventArgs e)
        {
            using (SqlConnection myConnection = new SqlConnection())
            {
                myConnection.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["WeatherDBConnectionString"].ConnectionString;
                SqlCommand myCommand = new SqlCommand();
                myCommand.Connection = myConnection;
                myCommand.CommandText = "dbo.uspGetAllClients";
                myCommand.CommandType = CommandType.StoredProcedure;

                DataSet ds = new DataSet();
                SqlDataAdapter daAdapter = new SqlDataAdapter();
                daAdapter.SelectCommand = myCommand;
                daAdapter.Fill(ds);
                var provider = new PusherProvider("18353", "272a4f27cd993f2801a9", "c846a22521b7ed4c7f83");
                foreach (DataRow DR in ds.Tables[0].Rows)
                {
                    string value1;
                    string value2;
                    value1 = DR[0].ToString().Trim();
                    value2 = DR[1].ToString().Trim();
                    WeatherBug wb = new WeatherBug();
                    WeatherInfo wi = wb.checkWeather(value1, value2);
                    Label1.Text = wi.humidity;
                    ObjectPusherRequest request = null;
                    String channel;
                    if (value1 == "0")
                    {
                        channel = "CITY" + value2;
                        request = new ObjectPusherRequest(channel, "my-event", wi);
                    }
                    else if (value1 == "1")
                    {
                        channel = "ZIP" + value2;
                        request = new ObjectPusherRequest(channel, "my-event", wi);

                    }
                    provider.Trigger(request);
                    Literal1.Text += value1 + value2 + "<br />";

                }

                GridView1.DataSource = ds;
                GridView1.DataBind();

            }
        }
コード例 #5
0
        public ActionResult Auth(string channel_name, string socket_id)
        {
            var channelData = new PresenceChannelData();
            if (User.Identity.IsAuthenticated)
            {
                channelData.user_id = User.Identity.Name;
            }
            else
            {
                channelData.user_id = GetUniqueUserId();
            }
            channelData.user_info = GetUserInfo();

            var provider = new PusherProvider(applicationId, applicationKey, applicationSecret);
            string authJson = provider.Authenticate(channel_name, socket_id, channelData);

            return new ContentResult { Content = authJson, ContentType = "application/json" };
        }
コード例 #6
0
        public void DoWork()
        {
            using (SqlConnection myConnection = new SqlConnection())
            {
                myConnection.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["WeatherDBConnectionString"].ConnectionString;
                SqlCommand myCommand = new SqlCommand();
                myCommand.Connection = myConnection;
                myCommand.CommandText = "dbo.uspGetAllClients";
                myCommand.CommandType = CommandType.StoredProcedure;

                DataSet ds = new DataSet();
                SqlDataAdapter daAdapter = new SqlDataAdapter();
                daAdapter.SelectCommand = myCommand;
                daAdapter.Fill(ds);

                foreach (DataRow DR in ds.Tables[0].Rows)
                {
                    string value1;
                    string value2;
                    value1 = DR[0].ToString().Trim();
                    value2 = DR[1].ToString().Trim();
                    WeatherBug wb = new WeatherBug();
                    WeatherInfo wi = wb.checkWeather(value1, value2);
                    ObjectPusherRequest request = null;
                    String channel;
                    var provider = new PusherProvider("18353", "272a4f27cd993f2801a9", "c846a22521b7ed4c7f83");
                    if (value1 == "0")
                    {
                        channel = "CITY" + value2;
                        request = new ObjectPusherRequest(channel, "my-event", wi);
                    }
                    else if (value1 == "1")
                    {
                        channel = "ZIP" + value2;
                        request = new ObjectPusherRequest(channel, "my-event", wi);

                    }
                    provider.Trigger(request);
                }

            }
        }
コード例 #7
0
        protected void Button3_Click(object sender, EventArgs e)
        {
            WeatherBug wb = new WeatherBug();
            WeatherInfo wi = wb.checkWeather("0", "70577");
            Label1.Text = wi.humidity;
            var provider = new PusherProvider("18353", "272a4f27cd993f2801a9", "c846a22521b7ed4c7f83");

            ObjectPusherRequest request = new ObjectPusherRequest("my-channel", "my-event", wi);
            provider.Trigger(request);
        }
コード例 #8
0
        private int ProcessRecords(string fullPath)
        {
            List<string> records = new List<string>();
            int count = 0;
            try
            {
                try
                {
                    // Attempt to open the file exclusively.

                    using (FileStream fs = File.Open(fullPath, FileMode.Open, FileAccess.ReadWrite,
                             FileShare.None))
                    {
                        string line;
                        StreamReader sr = new StreamReader(fs);
                        while ((line = sr.ReadLine()) != null)
                        {
                            records.Add(line);
                        }

                        fs.SetLength(0L);
                        sr.Close();
                    }
                }
                catch (IOException ioe)
                {
                    throw ioe;
                }

                // If we got this far send the data
                if (records.Count > 0)
                {
                    ExperimentStorageProxy essProxy = new ExperimentStorageProxy();
                    essProxy.OperationAuthHeaderValue = new OperationAuthHeader();
                    essProxy.OperationAuthHeaderValue.coupon = opCoupon;
                    essProxy.Url = essUrl;

                    //replace DataSocket code with 'Pusher' interface
                    IPusherProvider provider = new PusherProvider(pusherID, pusherKey, pusherSS, null);

                    foreach (string rec in records)
                    {
                        string[] vals = rec.Split(delim, 2);
                        DateTime timeStamp = new DateTime(0L, DateTimeKind.Local);
                        bool status = DateTime.TryParseExact(vals[0].Replace("\"", ""), "yyyy-MM-dd HH:mm:ss", null, DateTimeStyles.None, out timeStamp);
                        string record = "\"" + timeStamp.ToString("o") + "\"," + vals[1];
                        try
                        {
                            essProxy.AddRecord(experimentID, submitter, recordType, false, record, null);
                        }
                        catch (Exception essEx)
                        {
                            Logger.WriteLine("BeeEventHandler: OnChange ESS: " + essEx.Message);
                        }
                        try
                        {
                            string str = @"{'rawData': [" + record + "]}";
                            ObjectPusherRequest request =
                                new ObjectPusherRequest(pusherChannel, "meassurement-added", str);
                            provider.Trigger(request);
                        }
                        catch (Exception dsEx)
                        {
                            Logger.WriteLine("BeeEventHandler: OnChange DS: " + dsEx.Message);
                        }
                        count++;
                    }
                    //Pusher interface Close not needed
                }
            }
            catch (Exception e)
            {
            }
            return count;
        }