IEnumerator Start() { profanityClass = new ProfanityClass(); tweetClient = FindObjectOfType <TweetClient>(); if (!tweetClient) { GameObject tweetClientObject = new GameObject("TweetClient"); tweetClient = tweetClientObject.AddComponent <TweetClient>(); } fishController.LinkFishDataList(fishDataList); WaitForSeconds waitTimer = new WaitForSeconds(refreshTimerInSeconds); timerTime = refreshTimerInSeconds; UnityEvent refreshTweetEvent = new UnityEvent(); refreshTweetEvent.AddListener(RefreshTweets); while (refreshTimerInSeconds > 0) { RefreshBlacklist(blacklist, refreshTweetEvent); if (timerTime != refreshTimerInSeconds) { waitTimer = new WaitForSeconds(refreshTimerInSeconds); timerTime = refreshTimerInSeconds; } yield return(waitTimer); } }
public void FetchAllTweets_Method_Should_Throw_Error_When_End_Date_Is_Null() { var loggerObj = new Mock <ILogger>(); TweetClient client = new TweetClient(loggerObj.Object); client.FetchAllTweets(DateTime.Now.ToString(), null); }
public static async Task <List <M3u8Playlist> > GetVideoPlaylist(string id, TweetClient client) { var videoHtml = await client.GetHtmlAsync($"https://twitter.com/i/videos/tweet/{id}"); var jsFileUrl = videoHtml.QuerySelector("script").GetAttribute("src"); var jsScript = await client.GetStringAsync(jsFileUrl); var bearerRegex = new Regex("Bearer ([a-zA-Z0-9%-])+"); var match = bearerRegex.Match(jsScript); if (match.Success) { var token = match.Value; var playerConfigString = await client.GetStringAsync($"https://api.twitter.com/1.1/videos/tweet/config/{id}.json", token); var playerConfig = System.Text.Json.JsonSerializer.Deserialize <Models.Video>(playerConfigString); if (playerConfig is null) { throw new Exception($"Could not get playback item for {id}"); } var playbackUri = playerConfig.Track.PlaybackUrl; var m3u3Text = await client.GetStringAsync(playbackUri.ToString(), token); return(M3U3Parser.ParsePlaylist(m3u3Text, token, $"{playbackUri.Scheme}://{playbackUri.Host}")); } throw new Exception($"Could not get Authentication Token for playlist item {id}"); }
public static async Task <List <M3u8VideoSegment> > GetVideoSegments(M3u8Playlist playlistItem) { using (var client = new TweetClient()) { return(await GetVideoSegments(playlistItem, client)); } }
public async Task <List <Tweet> > GetTweets() { ITweetClient tweetClient = new TweetClient(); var response = await tweetClient.GetTweetInfo(startDate, endDate); return(response); }
public static async Task <List <M3u8Playlist> > GetVideoPlaylist(string id) { using (var client = new TweetClient()) { return(await GetVideoPlaylist(id, client)); } }
public static async Task <Tweet> Get(string username, string id, TweetClient client, Config config) { var tweetsDiv = await client.GetHtmlAsync($"https://twitter.com/{username}/status/{id}"); var tweetDiv = tweetsDiv.QuerySelector($"[data-tweet-id='{id}']"); var tweet = new Tweet(); tweet.Scrape(config, tweetDiv); return(tweet); }
public static async Task <User> GetAsync(string username) { using (var client = new TweetClient()) { var user = new User(); var dom = await client.GetHtmlAsync($"https://www.twitter.com/{username}?lang=en"); user.Scrape(dom); return(user); } }
public TwitterBot(int webhookPort, string pfxPath, string pfxPassword, long recipient, string consumerKey, string consumerSecret, string accessToken, string accessTokenSecret, LogLevel logLevel = DefaultLogLevel) : base(webhookPort, pfxPath, pfxPassword, recipient, consumerSecret, logLevel) { isWebhookEnabled = true; ConsumerKey = consumerKey; // ApiSecret assigned into webhook AccessToken = accessToken; AccessTokenSecret = accessTokenSecret; usersClient = new UsersClient(consumerKey, consumerSecret, accessToken, accessTokenSecret); directMessagesClient = new DirectMessagesClient(consumerKey, consumerSecret, accessToken, accessTokenSecret); welcomeMessageClient = new WelcomeMessageClient(consumerKey, consumerSecret, accessToken, accessTokenSecret); tweetClient = new TweetClient(consumerKey, consumerSecret, accessToken, accessTokenSecret); }
void Awake() { Texture2D tex = new Texture2D(canvasTexture.width, canvasTexture.height, TextureFormat.RGB24, false); var fillColorArray = tex.GetPixels(); for (var i = 0; i < fillColorArray.Length; ++i) { fillColorArray[i] = Color.white; } tex.SetPixels(fillColorArray); tex.Apply(); baseMaterial.mainTexture = tex; cursorSprite = brushCursor.GetComponent <SpriteRenderer>(); targetSprite = cursorSprite.sprite; GameObject tweetClientObject = new GameObject("TweetClient"); tweetClient = tweetClientObject.AddComponent <TweetClient>(); profanityClass = new ProfanityClass(); origProfanityMsgTxt = ProfanityMessage.text; }
public static async Task <List <M3u8VideoSegment> > GetVideoSegments(M3u8Playlist playlistItem, TweetClient client) { if (string.IsNullOrEmpty(playlistItem.AuthenticationToken)) { throw new Exception($"No Authorization Bearer Token set for m3u8 file!"); } var m3u3Text = await client.GetStringAsync(playlistItem.Url.ToString(), playlistItem.AuthenticationToken); return(M3U3Parser.ParseVideoSegments(m3u3Text, playlistItem.Resolution, $"{playlistItem.Url.Scheme}://{playlistItem.Url.Host}")); }
public Search() { _config = new Config(); _client = new TweetClient(); }
public Search(TweetClient client, Config config) { _config = config; _client = client; }
public Search(Config config) { _config = config; _client = new TweetClient(); }
public void Intitialize() { client = new TweetClient(ConsumerKey, ConsumerSecret, AccessToken, AccessTokenSecret); }