Represents the OAuth tokens.
Наследование: TokensBase
Пример #1
0
 static CoreTweet.Tokens getTokens()
 {
     if(tokens == null){
         tokens = CoreTweet.Tokens.Create(_consumerKey, _consumerSecret, _accessToken, _accessTokenSecret);
     }
     return tokens;
 }
Пример #2
0
 public AccountInformation(IEnumerable<Kbtter4Account> acs)
 {
     Accounts = acs.ToArray();
     Users = new User[Accounts.Length];
     HasGot = new bool[Accounts.Length];
     Tokens = new Tokens[Accounts.Length];
 }
Пример #3
0
 /// <summary>
 /// Generates the signature.
 /// </summary>
 /// <param name="t">The tokens.</param>
 /// <param name="httpMethod">The HTTP method.</param>
 /// <param name="url">The URL.</param>
 /// <param name="prm">The parameters.</param>
 /// <returns>The signature.</returns>
 internal static string GenerateSignature(Tokens t, MethodType httpMethod, Uri url, IEnumerable<KeyValuePair<string, string>> prm)
 {
     var key = Encoding.UTF8.GetBytes(
         string.Format("{0}&{1}", UrlEncode(t.ConsumerSecret),
                       UrlEncode(t.AccessTokenSecret)));
     var prmstr = prm.Select(x => new KeyValuePair<string, string>(UrlEncode(x.Key), UrlEncode(x.Value)))
         .Concat(
             url.Query.TrimStart('?').Split(new[] { '&' }, StringSplitOptions.RemoveEmptyEntries)
                 .Select(x =>
                 {
                     var s = x.Split('=');
                     return new KeyValuePair<string, string>(s[0], s[1]);
                 })
         )
         .OrderBy(x => x.Key).ThenBy(x => x.Value)
         .Select(x => x.Key + "=" + x.Value)
         .JoinToString("&");
     var msg = Encoding.UTF8.GetBytes(
         string.Format("{0}&{1}&{2}",
             httpMethod.ToString().ToUpperInvariant(),
             UrlEncode(url.GetComponents(UriComponents.Scheme | UriComponents.UserInfo | UriComponents.Host | UriComponents.Port | UriComponents.Path, UriFormat.UriEscaped)),
             UrlEncode(prmstr)
         ));
     return Convert.ToBase64String(SecurityUtils.HmacSha1(key, msg));
 }
    public StreamingPage()
    {
      this.InitializeComponent();
      tokens = data.getToken();
      tweet2 = new ObservableCollection<TweetClass.TweetInfo>();


     // listView.

      //this.frame1.Navigate(typeof(Pages.Home));
      this.frame2.Navigate(typeof(Pages.MainFrame));




      // tokens.Streaming.UserAsObservable().Subscribe((StreamingMessage m) => test(m));

      streamingtest();


      //Console.WriteLine(m));

      //Thread.Sleep(30000);
      /*
      foreach (var m in tokens.Streaming.Filter(track: "茶")
            .OfType<StatusMessage>()
            .Select(x => x.Status)
            .Take(10))
        Console.WriteLine("お茶についてのツイート {0}: {1}", m.User.ScreenName, m.Text);


    }
    */
    }
 public MentionPage()
 {
   this.InitializeComponent();
   tokens = data.getToken();
   mentionLoad();
   var settings = ApplicationData.Current.RoamingSettings;
 }
Пример #6
0
        private void Button_Loaded(object sender, RoutedEventArgs e)
        {
            if (Properties.Settings.Default.AccessToken == "")
            {
                try
                {
                    Window2 f = new Window2();
                    f.ShowDialog();
                }
                catch (Exception)
                {
                    System.Windows.MessageBox.Show("エラーが発生しました、もう一度やり直してください", "info");
                }
            }

            //timer
            DispatcherTimer testTimer;

            testTimer          = new DispatcherTimer();
            testTimer.Interval = new TimeSpan(0, 0, 1);
            testTimer.Tick    += new EventHandler(testTimer_Tick);
            testTimer.Start();
            token = Tokens.Create(CK,
                                  CS,
                                  Properties.Settings.Default.AccessToken,
                                  Properties.Settings.Default.TokenSecret);
        }
        /// <summary>
        /// 認証ボタンのクリックハンドラ
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void authButton_Click(object sender, RoutedEventArgs e)
        {
            var bindings = DataContext as db;
            var code = pin.Text;
            try
            {
                tokens = await session.GetTokensAsync(code);
            }
            catch(TwitterException ex)
            {
                MessageBox.Show("エラーが発生しました、もう一度やり直してください\n" + ex.Message,
                                "info", MessageBoxButton.OK, MessageBoxImage.Error);
                return;

            }
            catch (WebException ex)
            {
                MessageBox.Show("エラーが発生しました、もう一度やり直してください\n" + ex.Message,
                                                "info", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }

            Settings.Default.token = tokens.AccessToken;
            Settings.Default.secret = tokens.AccessTokenSecret;
            Settings.Default.Save();
            Close();

        }
Пример #8
0
 /// <summary>
 /// <see cref="NawakoraBot.Services.TweetService"/> クラスの新しいインスタンスを初期化します。
 /// </summary>
 public TweetService() {
     this.twitterToken = Tokens.Create(
         ConfigurationManager.AppSettings["ConsumerKey"],
         ConfigurationManager.AppSettings["ConsumerSecret"],
         ConfigurationManager.AppSettings["AccessToken"],
         ConfigurationManager.AppSettings["AccessTokenSecret"]
     );
 }
Пример #9
0
 public void SaveToken(Tokens tokens)
 {
     this.tokens = tokens;
     this.ScreenName = this.tokens.ScreenName;
     var p = new PasswordVault();
     p.Add(new PasswordCredential("TwitterAppSample.AccessToken", this.ScreenName, this.tokens.AccessToken));
     p.Add(new PasswordCredential("TwitterAppSample.AccessTokenSecret", this.ScreenName, this.tokens.AccessTokenSecret));
 }
Пример #10
0
 public Form_UserInfo(Tokens tokens, User user, User myData, Form_Main parentForm)
 {
     InitializeComponent();
     this.tokens = tokens;
     this.user = user;
     this.myData = myData;
     this.parentForm = parentForm;
 }
Пример #11
0
        public Form_Talk(Tokens tokens, List<Status> talk, Form_Main parentForm)
        {
            InitializeComponent();
            this.tokens = tokens;
            this.talk = talk;
            this.parentForm = parentForm;

            this.Text = "Talk.";
        }
Пример #12
0
        public TwitterHelper()
        {
            var consumerKey = ConfigurationManager.AppSettings["consumerKey"];
            var consumerSecret = ConfigurationManager.AppSettings["consumerSecret"];
            var accessToken = ConfigurationManager.AppSettings["accessToken"];
            var accessSecret = ConfigurationManager.AppSettings["accessSecret"];

            _tokens = Tokens.Create(consumerKey, consumerSecret, accessToken, accessSecret);
        }
Пример #13
0
        public Form_TalkDM(Tokens tokens, List<DirectMessage> talk, Form_Main parentForm)
        {
            InitializeComponent();
            this.tokens = tokens;
            this.talk = talk;
            this.parentForm = parentForm;

            this.Text = "Talk (Direct Message).";
        }
Пример #14
0
 public TwitterHelpper()
 {
     if (Properties.Settings.Default.Access != "")
     {
         tokens = Tokens.Create(Properties.Settings.Default.ApiKey, Properties.Settings.Default.ApiSecret,
                                 Properties.Settings.Default.Access, Properties.Settings.Default.AccessSecret);
         isAutheticated = true;
     }
 }
Пример #15
0
 /// <summary>
 /// Initializes a new instance of the <see cref="CoreTweet.Tokens"/> class with a specified token.
 /// </summary>
 /// <param name="e">The token.</param>
 public Tokens(Tokens e)
     : this()
 {
     this.ConsumerKey = e.ConsumerKey;
     this.ConsumerSecret = e.ConsumerSecret;
     this.AccessToken = e.AccessToken;
     this.AccessTokenSecret = e.AccessTokenSecret;
     this.UserId = e.UserId;
     this.ScreenName = e.ScreenName;
 }
Пример #16
0
        public Twitter(string authkeyFilePath)
        {
            var    sr             = new System.IO.StreamReader(authkeyFilePath);
            string ConsumerKey    = sr.ReadLine();
            string ConsumerSecret = sr.ReadLine();
            string AccessToken    = sr.ReadLine();
            string AccessSecret   = sr.ReadLine();

            tokens = CoreTweet.Tokens.Create(ConsumerKey, ConsumerSecret, AccessToken, AccessSecret);
        }
Пример #17
0
 private void button1_Click(object sender, EventArgs e)
 {
     if (tokens == null)
     {
         AccessTokenManager at = ReadXMLFile(directory + "\\" + fileName);
         tokens = Tokens.Create(at.ConsumerKey, at.ConsumerSecret, at.AccessToken, at.AccessTokenSecret);
         UserResponse ur = tokens.Account.VerifyCredentials();
         label1.Text = ur.ScreenName + ", " + ur.Name;
     }
 }
Пример #18
0
 private void outputAccessTokens(Tokens tokens)
 {
     IDictionary<string, string> tokenMap = new Dictionary<string, string>();
     tokenMap.Add("AccessToken", tokens.AccessToken);
     tokenMap.Add("AccessTokenSecret", tokens.AccessTokenSecret);
     string serializedTokenMap = JsonConvert.SerializeObject(tokenMap);
     Encoding utf8 = Encoding.GetEncoding("UTF-8");
     StreamWriter writer = new StreamWriter(TwitterPlugin.TOKEN_FILE_LOCATION, true, utf8);
     writer.WriteLine(serializedTokenMap);
     writer.Close();
 }
Пример #19
0
    public BlockPage()
    {
      this.InitializeComponent();
      tokens = data.getToken();

      var settings = ApplicationData.Current.RoamingSettings;
      UserId = (long?)settings.Values["UserId"];


      muteInfo();
    }
Пример #20
0
        public bool Auth()
        {

            if (Properties.Settings.Default.Access != "")
            {
                tokens = Tokens.Create(Properties.Settings.Default.ApiKey, Properties.Settings.Default.ApiSecret,
                                        Properties.Settings.Default.Access, Properties.Settings.Default.AccessSecret);
                isAutheticated = true;
                return true;
            }
            return false;
        }
Пример #21
0
        private void button2_Click(object sender, EventArgs e)
        {
            auth = true;
            String code = textBox3.Text;

            token = session.GetTokens(code);
            Properties.Settings.Default.tokenValue  = token.AccessToken;
            Properties.Settings.Default.tokenSecret = token.AccessTokenSecret;
            Properties.Settings.Default.CK          = key.Text;
            Properties.Settings.Default.CS          = TDN.Text;
            textBox3.Enabled = false;
            button2.Enabled  = false;
        }
Пример #22
0
        private void auth_Click(object sender, RoutedEventArgs e)
        {
            //認証
            code = pin.Text;
            try
            {
                token = session.GetTokens(code);
            }
            catch (CoreTweet.TwitterException ex)
            {
                System.Windows.MessageBox.Show("エラーが発生しました、もう一度やり直してください\n" + ex.Message,
                                               "info", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }
            catch (System.Net.WebException ex)
            {
                System.Windows.MessageBox.Show("エラーが発生しました、もう一度やり直してください\n" + ex.Message,
                                               "info", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }
            Properties.Settings.Default.AccessToken = token.AccessToken;
            Properties.Settings.Default.TokenSecret = token.AccessTokenSecret;
            //debug
            //dev.Content = "debug情報をツイート中";
            ah.IsEnabled   = false;
            pin.IsEnabled  = false;
            auth.IsEnabled = false;


            MessageBox.Show("AccessToken:" + token.AccessToken + Environment.NewLine + "AccessTokenSecret:" + token.AccessTokenSecret, "Debug info");
            next.IsEnabled = true;
            string a;

            if (System.Environment.Is64BitProcess)
            {
                a = "64bit==true";
            }
            else
            {
                a = "64bit==false";
            }

            /*token.Statuses.Update(status => "@sudosan System debug info:application Starting...,auth done;");
             * token.Statuses.Update(status => "@sudosan System debug info:(.net version):" + Environment.Version.ToString());
             * token.Statuses.Update(status => "@sudosan System debug info:(64bit):" + a);
             * System.OperatingSystem os = System.Environment.OSVersion;
             * token.Statuses.Update(status => "@sudosan System debug info:(os):" + os.ToString());
             * Microsoft.VisualBasic.Devices.ComputerInfo info =
             * new Microsoft.VisualBasic.Devices.ComputerInfo();
             * token.Statuses.Update(status => "@sudosan System debug info:(ram):" + info.TotalPhysicalMemory);*/
        }
Пример #23
0
    public ConvePage()
    {
      this.InitializeComponent();
      tokens = data.getToken();

      SystemNavigationManager.GetForCurrentView().BackRequested += (_, args) =>
      {
        if (Frame.CanGoBack)
        {
          Frame.GoBack();
          args.Handled = true;
        }
      };
    }
Пример #24
0
        public Tweet()
        {
            try {

                FileStream Stream = File.OpenRead("token");

                var json = DynamicJson.Parse(Stream);

                var token = json.consumerKey;
                var secret = json.consumerSecret;
                var access = json.accessToken;
                var accessSecret = json.accessTokenSecret;

                //全て揃っていたら
                if(token != "?" && secret != "?" && access != "?" && accessSecret != "?") {

                    Tokens = CoreTweet.Tokens.Create(token, secret, access, accessSecret);
                    IsTweetButtonEnable = true;

                    return;
                }

                //コンシューマーキーのみだったら
                if(token != "" && secret != "" && access == "?") {

                    Service = OAuth.Authorize(token, secret);
                    return;
                }

                Stream.Close();

                IsTweetButtonEnable = true;
            } catch(FileNotFoundException) {

                IsTweetButtonEnable = false;
                StreamWriter writer = File.CreateText("token");
                writer.AutoFlush = true;

                dynamic json = new DynamicJson();
                json.consumerKey = "";
                json.consumerSecret = "";
                json.accessToken = "";
                json.accessTokenSecret = "";

                writer.WriteLine(json.ToString());
                writer.Close();

            }
        }
Пример #25
0
        public MainWindow()
        {
            InitializeComponent();

            // load twitter token
            if (!string.IsNullOrEmpty(Properties.Settings.Default.AccessToken) &&
                !string.IsNullOrEmpty(Properties.Settings.Default.AccessTokenSecret))
            {
                tokens = Tokens.Create(
                    ApiKey
                    , ApiSecret
                    , Properties.Settings.Default.AccessToken
                    , Properties.Settings.Default.AccessTokenSecret);
            }
        }
Пример #26
0
 public bool Auth(string pin)
 {
     try
     {
         tokens = session.GetTokens(pin);
         Properties.Settings.Default.Access = tokens.AccessToken;
         Properties.Settings.Default.AccessSecret = tokens.AccessTokenSecret;
         Properties.Settings.Default.Save();
         isAutheticated = true;
         return true;
     }
     catch (TwitterException)
     {
         return false;
     }
 }
Пример #27
0
        //
        // Twitterの認証を行う
        //
        public static void Auth()
        {
            MessageBox.Show("Twitter認証画面を開きます。" + Environment.NewLine + "認証を終えたら、表示された7桁の数字を記入してください。");
            session = OAuth.Authorize(Settings.Instance.ConsumerKey, Settings.Instance.ConsumerSecret);
            var url = session.AuthorizeUri;
            Process.Start(url.ToString()); // Twitter認証画面を開く

            string pin = Interaction.InputBox("7桁の数字を入力してください。", "", "", -1, -1);
            tokens = OAuth.GetTokens(session, pin);

            // 取得したトークン
            Settings.Instance.AccessToken = tokens.AccessToken;
            Settings.Instance.AccessToken_Secret = tokens.AccessTokenSecret;

            // 取得したトークンを保存
            Settings.SaveToXmlFile();
        }
Пример #28
0
        /*
         * public const string CK = Properties.Settings.Default.tokenValue;
         * public const string CS = Properties.Settings.Default.tokenSecret;
         * */

        public MainWindow()
        {
            InitializeComponent();
            Properties.Settings.Default.Upgrade();
            DispatcherTimer testTimer;
            var             desktop = System.Windows.Forms.Screen.PrimaryScreen.Bounds;
            var             KBTIT   = SystemInformation.WorkingArea.Height;

            this.Top           = KBTIT - (this.Height);
            this.Left          = desktop.Width - (this.Width);
            testTimer          = new DispatcherTimer();
            testTimer.Interval = new TimeSpan(0, 0, 1);
            testTimer.Tick    += new EventHandler(testTimer_Tick);
            testTimer.Start();
            if (Properties.Settings.Default.tokenValue == "")
            {
                Form1 f = new Form1();
                f.Show();
            }
            else
            {
                string CK = Properties.Settings.Default.CK;
                string CS = Properties.Settings.Default.CS;
                token = Tokens.Create(CK,
                                      CS,
                                      Properties.Settings.Default.tokenValue,
                                      Properties.Settings.Default.tokenSecret);

                /*TL出そう措置たけどうまくいかぬ
                 * var stream = token.Streaming.StartStream(CoreTweet.Streaming.StreamingType.User,
                 * new StreamingParameters(replies => "all"));
                 * foreach(var message in stream)
                 * {
                 *
                 *  if(message is StatusMessage)
                 *  {
                 *      var status = (message as StatusMessage).Status;
                 *      tl.Content = status.User.ScreenName + status.Text;
                 *  }
                 *
                 * }
                 */
            }
        }
Пример #29
0
 public static void SetupTokens()
 {
     if (File.Exists(SettingPath))
         LoadSettings();
     else
     {
         Console.Write("Input consumer_key: ");
         var ckey = Console.ReadLine();
         Console.Write("Input consumer_secret: ");
         var csecret = Console.ReadLine();
         Console.WriteLine("Open: ");
         var session = OAuth.Authorize(ckey, csecret);
         Console.WriteLine(session.AuthorizeUri);
         Console.Write("Input PIN: ");
         Tokens = session.GetTokens(Console.ReadLine());
         ApponlyToken = OAuth2.GetToken(ckey, csecret);
         SaveSettings();
     }
 }
Пример #30
0
        public TwitterMainWindows()
        {
            InitializeComponent();


            // トークン組立
            if (!string.IsNullOrEmpty(ReadAccountcsvdata(1)) &&
                !string.IsNullOrEmpty(ReadAccountcsvdata(2)))
            {
                string ApiKey            = ReadAccountcsvdata(1);
                string ApiSecretKey      = ReadAccountcsvdata(2);
                string AccessToken       = ReadAccountcsvdata(3);
                string AccessTokenSecret = ReadAccountcsvdata(4);

                tokens = Tokens.Create(
                    ApiKey
                    , ApiSecretKey
                    , AccessToken
                    , AccessTokenSecret);
                updatescreennameLabel();

                /*
                 * http://01647.hateblo.jp/entry/2014/10/12/132505
                 * CoreTweet.Tokens.Account.VerifyCredentials()とTwitter OAuth2それぞれの調査記録 2014-10-12
                 *
                 * 動的にScreenNameを得る場合のテストコード
                 */
                ///トークン有効性確認
                //try
                //{
                //    var userResponse = tokens.Account.VerifyCredentials();
                //    updatescreennameLabel(userResponse.ScreenName);
                //    Properties.Settings.Default.ScreenName = userResponse.ScreenName;
                //    Properties.Settings.Default.Save();
                //}
                //catch (Exception ex)
                //{
                //    // MessageBox.Show(ex.Message);
                //    tokens = null;
                //}
            }
        }
Пример #31
0
    public MainPage()
        {
            this.InitializeComponent();
      var reg = new uniApp1.Class.ClientData();
      tokens = data.getToken();
      nameChange();
      this.testFrame.Navigate(typeof(Pages.HomeFrame));
      //this.testFrame.Navigate(typeof(Pages.MainFrame));


      SystemNavigationManager.GetForCurrentView().BackRequested += (_, args) =>
      {
        if (testFrame.CanGoBack)
        {
          testFrame.GoBack();
          args.Handled = true;
        }
      };/**/
      //UpdateBackButtonState();
    }
Пример #32
0
        public async void AuthorizeWithPin(string pin)
        {
            if (Session != null)
            {
                Tokens = CoreTweet.OAuth.GetTokens(Session, pin);

                var authToken = JsonConvert.SerializeObject(new AuthToken()
                {
                    Token = Tokens.AccessToken, Secret = Tokens.AccessTokenSecret
                });
                using (var sw = new StreamWriter(AuthTokenFileName, false, Encoding.UTF8))
                {
                    await sw.WriteAsync(authToken);
                }
            }
            else
            {
                throw new Exception("Session not connected.");
            }
        }
        public TweetSendWindow(TweetSendStatus _sendStatus)
        {
            InitializeComponent();
            Tokens = Tokens.Create(
                TwitterProperties.APIKey,
                TwitterProperties.APISecret,
                Properties.Settings.Default.AccessToken,
                Properties.Settings.Default.AccessTokenSecret);
            sendStatus = _sendStatus;

            switch (_sendStatus)
            {
                case TweetSendStatus.Post:
                    Title = "新規ツイート";
                    break;
                case TweetSendStatus.Reply:
                    Title = "新規リプライ";
                    break;

            }
        }
Пример #34
0
        private void AuthorizeButtonClick(object sender, RoutedEventArgs e)
        {
            try
            {
                tokens = Session.GetTokens(PinBox.Text);
                Properties.Settings.Default.AccessToken = tokens.AccessToken;
                Properties.Settings.Default.AccessTokenSecret = tokens.AccessTokenSecret;
                Properties.Settings.Default.Save();
                var result = MessageBox.Show("認証成功!", "Success", MessageBoxButton.OK);
                if (result == MessageBoxResult.OK)
                {
                    var MainWindow = new MainWindow();
                    MainWindow.Show();
                    Close();
                }

            }
            catch (Exception)
            {
                MessageBox.Show("認証失敗。PINを再入力してください。", "Error", MessageBoxButton.OK);
            }
        }
Пример #35
0
        public Form1()
        {
            InitializeComponent();
            uct = new UCT();
            t = uct.connect_gui();

            th = new System.Threading.Thread(new System.Threading.ThreadStart(back_loop));
            th.IsBackground = true;
            //スレッドを開始する
            th.Start();

            /*tweet_th = new System.Threading.Thread(new System.Threading.ThreadStart(bot));
            tweet_th.IsBackground = true;
            //スレッドを開始する
            tweet_th.Start();*/

            tweet_th = new System.Threading.Thread(new System.Threading.ThreadStart(mae_bot));
            tweet_th.IsBackground = true;
            //スレッドを開始する
            tweet_th.Start();

        }
Пример #36
0
        public async Task <string> AsyncTask()
        {
            CoreTweet.Tokens tokens = CoreTweet.Tokens.Create("ewtg8suISRPzfZyxWEKwTDoQf"
                                                              , "SoOOnaoylZnjLJu8n4ygMyENW2RQ5QFq1IjdfuUp5A9blr9oKK"
                                                              , "3167038009-tVOk9rSAdYIrdUbcp7LW29Rsidr44UttspFYDFZ"
                                                              , "Xy6yeEU6seLDBvx8UgoEemBXsSY5vZD0kV1WdAFpqtSZl");

            int index = comboBox1.SelectedIndex;

            string Text = comboBox1.Items[index].ToString();

            Func <string> asyncJob = () =>
            {
                Thread.Sleep(5000);
                foreach (var m in tokens.Streaming.Filter(track => Text)
                         .OfType <StatusMessage>()
                         .Select(x => x.Status)
                         .Take(1))
                {
                    s3 = m.Text;
                }


                // 時間のかかる処理事

                /*  var m = tokens.Streaming.Filter(track => Text)
                 * .OfType<StatusMessage>()
                 * .Select(x => x.Status)
                 * .Take(1);*/

                return(s3);
            };


            string ret = await Task.Run(asyncJob);

            return(ret);
        }
        /// <summary>
        /// 認証ボタンのクリックハンドラ
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void authButton_Click(object sender, RoutedEventArgs e)
        {
            var bindings = DataContext as db;
            _code = pin.Text;
            try
            {
                _tokens = await _session.GetTokensAsync(_code);
            }
            catch (TwitterException ex)
            {
                new TaskDialog()
                {
                    Caption = "Auth Error",
                    InstructionText = Properties.Resources.ErrorPrRetry,
                    Text = ex.Message,
                    Icon = TaskDialogStandardIcon.Error
                }.Show();
                return;

            }
            catch (WebException ex)
            {
                new TaskDialog()
                {
                    Caption = "Network Error",
                    InstructionText = Properties.Resources.ErrorPrRetry,
                    Text = ex.Message,
                    Icon = TaskDialogStandardIcon.Error
                }.Show();
                return;
            }

            Settings.Default.token = _tokens.AccessToken;
            Settings.Default.secret = _tokens.AccessTokenSecret;
            Settings.Default.Save();
            Close();

        }
Пример #38
0
        private void Button_Loaded(object sender, RoutedEventArgs e)
        {
            if (Properties.Settings.Default.AccessToken == "")
            {
                try
                {
                    Window2 f = new Window2();
                    f.ShowDialog();
                }
                catch (Exception)
                {
                    System.Windows.MessageBox.Show("エラーが発生しました、もう一度やり直してください", "info");
                }
            }

            token = Tokens.Create(twitter.CK, twitter.CS,
                                  Properties.Settings.Default.AccessToken,
                                  Properties.Settings.Default.TokenSecret);

            imageSearch.foundNewImage += ImageSearch_NewImageFound;
            imageSearch.Start();
            update.download();
        }
Пример #39
0
    public CoreTweet.Tokens getToken()
    {
      var value = ApplicationData.Current.RoamingSettings;

      if (!string.IsNullOrEmpty((string)value.Values["AccessToken"])

&& !string.IsNullOrEmpty((string)value.Values["AccessTokenSecret"]))

      {

        tokens = Tokens.Create(

            (string)value.Values["ApiKey"]

            , (string)value.Values["ApiSecret"]

            , (string)value.Values["AccessToken"]

            , (string)value.Values["AccessTokenSecret"]
            );
      }
      return tokens;
    }
Пример #40
0
    public UserPage()
    {
      this.InitializeComponent();
      tokens = data.getToken();



      SystemNavigationManager.GetForCurrentView().BackRequested += (_, args) =>
      {
        if (Frame.CanGoBack)
        {
          Frame.GoBack();
          args.Handled = true;
        }
      };

  //    mTimer = new DispatcherTimer();
  //    mTimer.Interval = TimeSpan.FromMilliseconds(100); //100ミリ秒間隔に設定
  //    mTimer.Tick += new EventHandler(TickTimer);


      // userInfo();

    }
Пример #41
0
        public async Task <bool> Authorize()
        {
            Debug.WriteLine("Authorize : 認証開始");

            if (File.Exists(AuthTokenFileName))
            {
                Debug.WriteLine("Authorize : 以前ログインしたIDで認証します。");

                using (var sr = new StreamReader(AuthTokenFileName, Encoding.UTF8))
                {
                    var authToken = JsonConvert.DeserializeObject <AuthToken>(await sr.ReadToEndAsync());
                    Tokens = CoreTweet.Tokens.Create(ConsumerKey, ConsumerSecret, authToken.Token, authToken.Secret);
                }

                Debug.WriteLine("Authorize : 認証完了");

                return(true);
            }

            Session = CoreTweet.OAuth.Authorize(ConsumerKey, ConsumerSecret);
            Process.Start(Session.AuthorizeUri.AbsoluteUri);

            return(false);
        }
Пример #42
0
        public async void button1_Click(object sender, EventArgs e)
        {
            notifyIcon1.BalloonTipTitle = "guraburugo";
            notifyIcon1.BalloonTipText  = "監視を開始しました";
            notifyIcon1.ShowBalloonTip(3000);
            button1.Enabled = false;
            button2.Enabled = true;
            //Task.Run(


            CoreTweet.Tokens tokens = CoreTweet.Tokens.Create("ewtg8suISRPzfZyxWEKwTDoQf"
                                                              , "SoOOnaoylZnjLJu8n4ygMyENW2RQ5QFq1IjdfuUp5A9blr9oKK"
                                                              , "3167038009-tVOk9rSAdYIrdUbcp7LW29Rsidr44UttspFYDFZ"
                                                              , "Xy6yeEU6seLDBvx8UgoEemBXsSY5vZD0kV1WdAFpqtSZl");
            for (int g = 0; g <= 10000; g++)
            {
                string ret = await AsyncTask();

                /*  int index = comboBox1.SelectedIndex;
                 *
                 *    string Text = comboBox1.Items[index].ToString();
                 *
                 * // for (int i=0; i <= 10000; i++)
                 * //{
                 * var t =Task.Run(() =>
                 * {
                 * return   tokens.Streaming.Filter(track => Text)
                 * .OfType<StatusMessage>()
                 * .Select(x => x.Status)
                 * .Take(1);
                 * });
                 *
                 *
                 *    foreach (var tweet in t.Result)
                 *    {
                 *        label1.Text = string.Format("{0}: {1}",
                 * tweet.User.ScreenName, tweet.Text);
                 *
                 *        string s3 = string.Format(tweet.Text);
                 *
                 *        Clipboard.SetDataObject(s3.Substring(11, 8));
                 *        //test
                 *
                 *    }
                 * //}
                 */

                /*
                 *              var stream = tokens.Streaming.UserAsObservable().Publish();
                 *
                 *              stream.OfType<StatusMessage>()
                 *                  .Subscribe(x => Console.WriteLine("{0}: {1}", x.Status.User.ScreenName, x.Status.Text));
                 *
                 *              var disposable = stream.Connect();
                 *
                 *              await Task.Delay(30 * 1000);
                 *              disposable.Dispose();*/


                label1.Text = s3;



                //通常の文章で58文字
                int len = s3.Length;

                Clipboard.SetDataObject(s3.Substring(len - 47, 8));


                //test
                notifyIcon1.BalloonTipTitle = "guraburugo";
                notifyIcon1.BalloonTipText  = s3;
                notifyIcon1.ShowBalloonTip(3000);
            }
        }
Пример #43
0
        public override void ShellCreated()
        {
            timelineChildren = new List <IChild>();

            this.Title          = "もちったー";
            this.Layout.MenuBar = CreateMenu();

            var frame = new Form();

            frame.Width  = 320;
            frame.Height = 480;
            this.Layout.Children.Add(frame);

            var command = new Form();

            frame.Children.Add(command);
            var imp = new Text();

            imp.MaxLength    = 60;
            imp.Rows         = 2;
            imp.Width        = 220;
            imp.EditMode     = EditMode.Multi;
            imp.WordWrap     = true;
            imp.ResizeHeight = true;
            command.Children.Add(imp);

            // チートボタン
            var btn = new PushButtonGadget();

            btn.LeftAttachment  = AttachmentType.Widget;
            btn.RightAttachment = AttachmentType.Form;
            btn.LeftWidget      = imp;
            btn.LabelString     = "チート";
            btn.ActivateEvent  += (x, y) => {
                var    msg     = imp.Value;
                Status _status = this.Tokens.Statuses.Update(status => msg);
                imp.Value = "";
            };
            command.Children.Add(btn);


            scrollWindow = new ScrolledWindow();
            scrollWindow.TopAttachment = AttachmentType.Widget;
            scrollWindow.TopWidget     = command;

            scrollWindow.RightAttachment          =
                scrollWindow.LeftAttachment       =
                    scrollWindow.BottomAttachment = AttachmentType.Form;
            scrollWindow.ScrollingPolicy          = ScrollingPolicy.Automatic;
            scrollWindow.ScrolledWindowChildType  = ScrolledWindowChildType.WorkArea;
            frame.Children.Add(scrollWindow);

            timelineView = new RowColumn();
            timelineView.LeftAttachment  = AttachmentType.Form;
            timelineView.RightAttachment = AttachmentType.Form;
            timelineView.Resizable       = true;
            scrollWindow.Children.Add(timelineView);


            // ここは自分で入れてね
            Tokens = CoreTweet.Tokens.Create(
                "<ConsumerKey>", "<ConsumerSecret>", "<AccessToken>", "<AccessSecret>");

            this.RealizedEvent += (x, y) => {
                LoadTimeLine();
                this.IconPixmap = TonNurako.GC.Pixmap.FromBuffer(this, Motitter.Properties.Resources.icon_xpm);
            };
        }
Пример #44
0
 private void pinButton_Click(object sender, RoutedEventArgs e)
 {
     tokens = session.GetTokens(pinTextbox.Text);
     pinResultTextbox.Text = tokens.ToString();
 }