Arkadaşlar merhaba, bu serinin bir önceki yazısında (önceki yazıya gitmek için tıklayınız) twitter hesabı aracılığı ile uygulama oluşturma, izinleri ayarlama ve bağlantı için token alma işlemlerini yapmıştık. Bu yazımızda ise, almış olduğumuz token’lar ile .net ile twitter mesajı nasıl gönderilir onu anlatmaya çalışacağım.
Visual studio ile açacağımız herhangi bir proje (ben bunu asp.net –asp.net mvc ile yapacağım) içerisine, gerekli işlemleri yapabilmemiz için tweet sharp kütüphanesi indirilip kurulmalıdır. Aşağıdaki görselde hangi api’nin indirileceği belirtilmiştir. Ben Visual Studio 2015 kullandığımdan, ekran görüntüleri bu durum dikkate alınarak incelenmelidir. Siz d ekendi versiyonunuzda benzer yollardan kütüphaneye erişim yapabilirsiniz.
Yükleme işlemini yaptıktan sonra sıra geldi kod yazmaya.
protected void btnTwitter_Click(object sender, EventArgs e) { var oauth_consumer_key = "kendi_uygulamamızdan_aldığımız_consumer_key"; var oauth_consumer_secret = "kendi_uygulamamızdan_aldığımız_consumer_secret"; var oauth_TokenKey = "kendi_uygulamamızdan_aldığımız_token_key"; var oauth_TokenSecretKey = "kendi_uygulamamızdan_aldığımız_token_secret_key"; //link, bağlantı verilebilir. herhangi birinden bahsetme imkanı da vardır. string link = "https://kod5.org - #kod5 - @avnibabaoglu"; //tweet içerisine görsel eklenebilir. eklenen resim herhangi bir server'da bulunmak zorundadır. gidip o yoldan bulmaktadır string imageUrl = "https://kod5.org/wp-content/uploads/kod5_logo.png"; //burada yazılmak istenen tweet metni veya başlığı yazılır. string subject = "kod5 | eğitim, kodlama, paylaşım ."; //twitter paylaşımı için bir fonksiyon oluşturulmuştur. Parametrik olarak veriler gönderilir. SendTwitter (oauth_consumer_key, oauth_consumer_secret, oauth_TokenKey, oauth_TokenSecretKey, subject, null, link, imageUrl, "kod5.net"); } public static void SendTwitter(string _consumerKey, string _consumerSecret, string _tokenKey, string _tokenSecret, string _subject, string _message, string _link, string _imagePath, string _dictionaryString) { StringBuilder str = new StringBuilder(); //başlık(konu) ve link metin olarak düzenlenir. str.AppendLine(_subject.Trim()); str.AppendLine(_link); //referans olarak aldığımız TweetSharp kütüphanesini kullanıyoruz. //tanımlanan servise, aldığımız tokenlar gönderilir. hesaba bağlanma işlemleri yapılır. var service = new TweetSharp.TwitterService(_consumerKey, _consumerSecret); service.AuthenticateWith(_tokenKey, _tokenSecret); //servis'lere tanıtım ve bağlantı işlemleri tamamlandıktan sonra, tweet gönderek twitter'a mesaj atma işlemini tamamlıyoruz. service.SendTweetWithMedia(new SendTweetWithMediaOptions { //atanan metin ifadeleri (link ve başlık) gönderilir Status = str.ToString(), //server'daki yeri gösterilen resim, twitter formatına uygun olsun diye UrlToStream() ile dönüştürülür Images = new Dictionary<string, Stream> { { "kod5.net", UrlToStream(_imagePath) } } }); } public static Stream UrlToStream(string url) { WebClient wc = new WebClient(); byte[] bytes = wc.DownloadData(url); Stream stream = new System.IO.MemoryStream(bytes); return stream; }
Yukarıda twitter’ a mesaj atmak işlemi btnTwitter_Click() antında gerçekleştirilmiştir. Bu işlem sonucunda tanımlı hesabımda çıkan tweet görüntüsü aşağıdaki gibidir;
Bu kadar 🙂
Bir sonraki yazımda facebook hesabımıza ve facebook hayran sayfamıza mesaj/post atma işlemlerini yapmayı anlatmaya çalışacağım.
Takipte kalınız efendim
Selamet ile.
.NET ile Facebook-Twitter Kullanımına Dair Tüm Yazılar
- Twitter uygulaması oluşturma, izin ve uygulama kodları alma (twitter tokenları almak)
- ASP.NET ve ASP.NET MVC üzerinden twitter’a mesaj göndermek (twitter api ile tweet atmak)
- Facebook uygulaması oluşturma, izin ve uygulama kodları alma (facebook tokenı almak)
- ASP.NET ve ASP.NET MVC üzerinden facebook duvarına ve sayfasına paylaşım yapmak (facebook api ile post atmak)
merhaba, makaleniz için çok teşekkürler. Sorunum şu; link tanımlıyken hiçbir paylaşım yapılmıyor, linki SendTwitter metodundan ve diğer tanımlı yerlerden kaldırınca paylaşım yaptı. Çözüm ne olabilir?