Facebook chat uygulaması
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Facebook chat uygulaması
Facebook chat uygulaması yapmak istiyorum. Normalde Facebook webbrowser parse işlemi ile bağlanıp gezinebiliyorum. Fakat chat uygulamasını parse ederek kullanamayacağımı gördüm. Facebook taki chat uygulamasını msn gibi ayrı bir programdan kullanmak istiyorum. Bununla ilgili nereden başlamalıyım, nasıl yapılır veya bildiğiniz komponent , api varsa veya fikirleriniz ,paylaşırsanız sevinirim.
Re: Facebook chat uygulaması
https://developers.facebook.com/docs/chat/
Bu apiyi kullanan varmı, nasıl kullanılıyor.
Bu apiyi kullanan varmı, nasıl kullanılıyor.
Re: Facebook chat uygulaması
Merhaba.
Senin için bir bakayım dedim, benim için biraz karmaşık bir durum görüyorum.
Şöyle ki...
1. "Facebook Chat" sunucusuna "Jabber/XMPP service" üzerinde bağlanıldığını söylüyor.
2. "Jabber/XMPP service" bağlantısı için Youtube üzerinde Almanca bir video var onda Jabber client projesinde SSL bağlantı için yaptığı işlemleri ifade ediyor. Belki bu kişiyle yazışabilirsin.
3. Çok fazla kaynak göremedim ama "spectrum-2.0.0-beta2" adıyla bir C projesi indirip inceledim. "XMPP transport/gateway" olduğunu yani "ICQ, XMPP (Jabber, GTalk), AIM, MSN, Facebook, Twitter, Gadu-Gadu, IRC and SIMPLE" gibi geniş bir ağı desteklediğini ifade ediyor.
vs.vs.
- Bu işi ücreti karşılığı yapmayacaksam yukarıda saydığım ve nicesinin olduğu API ile erişim kanalına girmezdim diye düşündüm.
- O zaman kısa zamanda sonuç almak için ne yapardım diye kendime sordum. Bu bağlantı işini bizzat kendi sunucusuna bırakıp, yapabiliyorsam amiyane tabir ile "bu sunucuya semer takıp ona binmek" dedim.
- Yani bir browser içerisinde facebook'a login olmayı, mesajları parse ederek okumayarak formuma almayı ve mesaj satırına istediğimi yazıp post ettirmeyi denerdim.
Senin için bir bakayım dedim, benim için biraz karmaşık bir durum görüyorum.

1. "Facebook Chat" sunucusuna "Jabber/XMPP service" üzerinde bağlanıldığını söylüyor.
2. "Jabber/XMPP service" bağlantısı için Youtube üzerinde Almanca bir video var onda Jabber client projesinde SSL bağlantı için yaptığı işlemleri ifade ediyor. Belki bu kişiyle yazışabilirsin.
3. Çok fazla kaynak göremedim ama "spectrum-2.0.0-beta2" adıyla bir C projesi indirip inceledim. "XMPP transport/gateway" olduğunu yani "ICQ, XMPP (Jabber, GTalk), AIM, MSN, Facebook, Twitter, Gadu-Gadu, IRC and SIMPLE" gibi geniş bir ağı desteklediğini ifade ediyor.
vs.vs.
- Bu işi ücreti karşılığı yapmayacaksam yukarıda saydığım ve nicesinin olduğu API ile erişim kanalına girmezdim diye düşündüm.
- O zaman kısa zamanda sonuç almak için ne yapardım diye kendime sordum. Bu bağlantı işini bizzat kendi sunucusuna bırakıp, yapabiliyorsam amiyane tabir ile "bu sunucuya semer takıp ona binmek" dedim.
- Yani bir browser içerisinde facebook'a login olmayı, mesajları parse ederek okumayarak formuma almayı ve mesaj satırına istediğimi yazıp post ettirmeyi denerdim.

Re: Facebook chat uygulaması
Mrmarman hocam , bende facebook kaynak kodları inceledim. Kendime belli sabitler belirledim. Html parse ile yapılabileceğini gördüm. Forma bir tane ListView
ekleyip htm parse ile online olan kişileri ona çekmeyi deniyorum.
Facebookta bulduğum sabitlerim. Facebooka bağlandıktan sonra, bir text dosyasına sayfa kaynağını alarak aşağıda belirttiğim başlangıç ve bitiş kısmı hariç geri kalanları siliyorum.
Başlangıç noktası <ul class="fbChatOrderedList clearfix">
Bitiş Noktası </div><div class="fbChatTypeaheadView hidden_elem" id=
Kalan kod içerisinde
li tagı ile başlayanların her biri bir kullanıcı demek.
_42fz yazanlar kapalı olanlar
_42fz active yazanlar oturum açmış olanlar
_42fz mobile telefondan girmiş fakat kapalı ( yanında telefon simgesi çıkanlar)
_554m moreOnlineFriends daha fazla arkadaş kısmındakiler
her li tagından sonraki href="/messages/100009526200434" kısmı tıkladığımda o kişiye ait mesajlaştığım mesaj sayfası geliyor.
<span class="accessible_elem">AHMET YAZGIN</span>< kısmında ise mesajlaştığın kişi adı geliyor.
webMessengerRecentMessages id li ul nin altındaki her webMessengerMessageGroup clearfix kişi listenizdeki bir kişiyi ve bu webMessengerMessageGroup clearfix altındaki <div class="_38 direction_ltr içindeki her bir span taqı da gönderilen mesaj oluyor.
bunları htm parse ederek gelen mesajı alabilir, aynı şekilde o kişiye mesaj gönderebileceğimi gördüm. Bu arada şunu da belirtmek isterim
Ekranın en üst köşesinde facebook yazısının hemen yanında mesaj ikonuna tıklayarak mesajlara giderseniz adresin şöyle olduğunu görebilirsiniz
https://www.facebook.com/messages/
istediğiniz bir kişinin mesajlarını açmak isterseniz. yukarıdaki parse işleminde href="/messages/100006016200434" kısmını ekleyerek
direk o kişinin mesajlarına ulaşmış oluyorsunuz. buradaki 10000 gibi rakam yerine o kişinin adınıda alıp yapabiliriz. göstermek gerekise
https://www.facebook.com/messages/100006016200434 kodu alıp böylede navigate edilebilir
https://www.facebook.com/messages/ahmet.yorgun böylede edilebilir ( sondaki ahmet.yorgun bilgisini dilerseniz o kişinin hakkında bölümündeki mail adresi kısmından da alabilirsiniz mail adresindeki ismi çekiyor buraya )
Denemelere başladım, yapabilirsem projeyi ve açık kodunu buraya paylaşacağım. Şuan parse işlemi için basit yöntem aramaktayım. Parse işlemini sabitleye bilirsem mesaj gönderme işlemini deneyeceğim.
Saygılar.
ekleyip htm parse ile online olan kişileri ona çekmeyi deniyorum.
Facebookta bulduğum sabitlerim. Facebooka bağlandıktan sonra, bir text dosyasına sayfa kaynağını alarak aşağıda belirttiğim başlangıç ve bitiş kısmı hariç geri kalanları siliyorum.
Başlangıç noktası <ul class="fbChatOrderedList clearfix">
Bitiş Noktası </div><div class="fbChatTypeaheadView hidden_elem" id=
Kalan kod içerisinde
li tagı ile başlayanların her biri bir kullanıcı demek.
_42fz yazanlar kapalı olanlar
_42fz active yazanlar oturum açmış olanlar
_42fz mobile telefondan girmiş fakat kapalı ( yanında telefon simgesi çıkanlar)
_554m moreOnlineFriends daha fazla arkadaş kısmındakiler
her li tagından sonraki href="/messages/100009526200434" kısmı tıkladığımda o kişiye ait mesajlaştığım mesaj sayfası geliyor.
<span class="accessible_elem">AHMET YAZGIN</span>< kısmında ise mesajlaştığın kişi adı geliyor.
webMessengerRecentMessages id li ul nin altındaki her webMessengerMessageGroup clearfix kişi listenizdeki bir kişiyi ve bu webMessengerMessageGroup clearfix altındaki <div class="_38 direction_ltr içindeki her bir span taqı da gönderilen mesaj oluyor.
bunları htm parse ederek gelen mesajı alabilir, aynı şekilde o kişiye mesaj gönderebileceğimi gördüm. Bu arada şunu da belirtmek isterim
Ekranın en üst köşesinde facebook yazısının hemen yanında mesaj ikonuna tıklayarak mesajlara giderseniz adresin şöyle olduğunu görebilirsiniz
https://www.facebook.com/messages/
istediğiniz bir kişinin mesajlarını açmak isterseniz. yukarıdaki parse işleminde href="/messages/100006016200434" kısmını ekleyerek
direk o kişinin mesajlarına ulaşmış oluyorsunuz. buradaki 10000 gibi rakam yerine o kişinin adınıda alıp yapabiliriz. göstermek gerekise
https://www.facebook.com/messages/100006016200434 kodu alıp böylede navigate edilebilir
https://www.facebook.com/messages/ahmet.yorgun böylede edilebilir ( sondaki ahmet.yorgun bilgisini dilerseniz o kişinin hakkında bölümündeki mail adresi kısmından da alabilirsiniz mail adresindeki ismi çekiyor buraya )
Denemelere başladım, yapabilirsem projeyi ve açık kodunu buraya paylaşacağım. Şuan parse işlemi için basit yöntem aramaktayım. Parse işlemini sabitleye bilirsem mesaj gönderme işlemini deneyeceğim.
Saygılar.
Re: Facebook chat uygulaması
Facebook chat XMPP (Jabber) kullanıyormuş. Delphi ile birlikte gelen IP Works bileşen setinde XMPP bileşeni var. Onu denemenizi tavsiye ederim. (Hatta demoları arasında jabber adında bir demo var)Lord_Ares yazdı:Facebook chat uygulaması yapmak istiyorum. Normalde Facebook webbrowser parse işlemi ile bağlanıp gezinebiliyorum. Fakat chat uygulamasını parse ederek kullanamayacağımı gördüm. Facebook taki chat uygulamasını msn gibi ayrı bir programdan kullanmak istiyorum. Bununla ilgili nereden başlamalıyım, nasıl yapılır veya bildiğiniz komponent , api varsa veya fikirleriniz ,paylaşırsanız sevinirim.
There's no place like 127.0.0.1
Re: Facebook chat uygulaması
Selam. En kolay parse yapma işlemi kodu bu kardeşim.
Kod: Tümünü seç
function aradansec(text, ilk, son:String ): WideString;
begin
Delete(Text, 1, pos(ilk, Text) + Length(ilk)-1);
Result := Copy(Text, 1, Pos(Son, Text)-1);
end;
function html_temizle(S: string): string;
var
TagBegin, TagEnd, TagLength: integer;
begin
TagBegin := Pos( '<', S);
while (TagBegin > 0) do begin
TagEnd := Pos('>', S);
TagLength := TagEnd - TagBegin + 1;
Delete(S, TagBegin, TagLength);
TagBegin:= Pos( '<', S);
end;
Result := S;
end;
Edit1.Text := aradansec(WebBrowser1.OleObject.document.body.innerHTML, '<TD>Ad:</TD>', '</TD></TR>');
Edit1.Text := aradansec(memo1.text, '<TD>Ad:</TD>', '</TD></TR>');
Edit1.Text := html_temizle(Edit1.Text);
Re: Facebook chat uygulaması
SimaWB, bu söylediğiniz harika hemen inceliyorum.
AliZairov sağolasın kardeşim güzel bir kod çok işime yaradı.
Html parse ederken, id 'si ve name olmayan sadece class ile oluşturulmuş <a> tagı ile link var buna bir türlü click gönderemedim. Umarım çözüm bulurum
))
AliZairov sağolasın kardeşim güzel bir kod çok işime yaradı.
Html parse ederken, id 'si ve name olmayan sadece class ile oluşturulmuş <a> tagı ile link var buna bir türlü click gönderemedim. Umarım çözüm bulurum

Re: Facebook chat uygulaması
index ile göndermeyi dene.
gibisinden. Deneme yanılma ile bulursun. Başarılar.
Kod: Tümünü seç
WebBrowser1.OleObject.Document.forms.item(1).elements.item(8).click();
Re: Facebook chat uygulaması
hocam o şekil göndermek istedim fakat item nosunu yakalayamıyorum. İtem no 7 veya 8 diyemedim iç içe bir çok div var
ve bu divin içinde <a> tagı classnameden yakalayayım dedim aynı classı kullanan bir çok item çıktı
))
ve bu divin içinde <a> tagı classnameden yakalayayım dedim aynı classı kullanan bir çok item çıktı

Re: Facebook chat uygulaması
Merhaba.
- O zaman fonksiyon elinde varsa, JavaScript ile fonksiyonu çalıştırmak için aşağıdaki şekilde dener misin?
Unutmadan Uses'a MSHTML eklenecek
- O zaman fonksiyon elinde varsa, JavaScript ile fonksiyonu çalıştırmak için aşağıdaki şekilde dener misin?
Unutmadan Uses'a MSHTML eklenecek
Kod: Tümünü seç
Var
strJava : String;
begin
strJava := 'javascript:LoginSubmit( document.forms[''Login''].submit() )';
(WebBrowser1.Document as IHTMLDocument2).parentWindow.execScript( strJava, 'JavaScript' ); // Uses MSHTML eklenecek
end;
Re: Facebook chat uygulaması
Selam. Ben böyle sorunlarda hep bu proğramla çözüm bulurum. post get olaylarında. HttpAnalyzer isimli çok mütiş bir proğram. Proğramı seçmekle giden gelen verileri anında alıyorsunuz. Önce siz postu normal tarayıcıda yapın ve proğramla linkleri yakalayın ve inceleyin. Bu yoldan izleseniz daha çabuk çözüme ulaşırsınız diye düşünüyorum. google tarayıcısında kullanmayın mozilla bu iş için uyğun.
Re: Facebook chat uygulaması
SimaWB, dediğiniz bileşeni indirdim örnek projeyi denedim fakat bağlanamadı. Nette araştırma yapıyorum fakat çok fazla kaynak yok.
Mrman hocam dediğinizi inceledim , iç içe okadar çok kod var ki umarım bulup birde o şekil deneyeceğim.
))
Mrman hocam dediğinizi inceledim , iç içe okadar çok kod var ki umarım bulup birde o şekil deneyeceğim.
