static void Main(string[] args) { String guid = Guid.NewGuid().ToString(); RestClient homeClient = new RestClient("http://localhost:52085/Home/"); IRestRequest homeRequest = new RestRequest("SetConnection", Method.POST); homeRequest.AddJsonBody(guid); IRestResponse response = homeClient.Execute(homeRequest); RestClient slackClient = new RestClient("https://slack.com/"); IRestRequest slackRequest = new RestRequest("oauth/authorize", Method.GET); slackRequest.AddQueryParameter("client_id", "18212299189.324327579253"); slackRequest.AddQueryParameter("scope", "channels:history, channels:read, groups:history, groups:read, im:history, im:read," + " links:read, mpim:history, mpim:read, pins:read, reactions:read, search:read, team:read, usergroups:read, users.profile:read, users:read, rtm:stream"); slackRequest.AddQueryParameter("state", guid); slackRequest.AddQueryParameter("redirect_uri", "http://localhost:52085/Home/GetCode"); response = slackClient.Execute(slackRequest); System.Diagnostics.Process.Start(response.ResponseUri.ToString()); string accessToken = ""; while (accessToken == null || accessToken.Length == 0) { homeRequest = new RestRequest("GetConnection", Method.POST); homeRequest.AddJsonBody(guid); accessToken = homeClient.Execute(homeRequest).Content.Replace("\"", ""); Thread.Sleep(500); } SlackManager slack = new SlackManager(accessToken); Channel channel = null; foreach (Channel c in slack.GetChannelList().channels) { System.Diagnostics.Debug.WriteLine(c.name); if (c.name.Equals("random")) { channel = c; break; } } SlackStreamReader reader = new SlackStreamReader(accessToken); while (true) { reader.ReadNextEvent(); } }
public MegaHALSlackWrapper(IMegaHALHandler MegaHAL) { StandardOutput = new SlackStreamReader(MegaHAL.GetStandardOutput().BaseStream, System.Text.Encoding.GetEncoding("iso-8859-1")); StandardInput = new SlackStreamWriter(MegaHAL.GetStandardInput().BaseStream, System.Text.Encoding.GetEncoding("iso-8859-1")); }