رفتن به مطلب
  • 0
mohammad_2015

اتصال به سرور Jabber

سوال

درود

همونطور که از عنوان مشخص هست برای اتصال به سرور jabber که بسیار کاربردی هم هست به مشکل خوردم. در واقع ماه هاست به مشکل خوردم و هرچی سرچ گردم چیزی دست گیرم نشد.

یه سروی سورس موجود هست ک دوستان قبلا زحمت کشیدن و قرار دادن اما به سرورهای جدید مثل jabber.hot-chilli.net متصل نمیشه ، سورس های قرار داده شده مشکلی ندارن و به سرورهای قدیمی که نمیتونم اسم ببرم متصل میشد همچنین به سرور jabber.ru وصل میشد که متاسفانه اون سرور دیگه سرویس نمیده ،  اما چند سالی هست ک کللی سرور اضاف شده ک متاسفانه سورس ها متصل نمیشه ، بنظر کدها نیاز ب کمی ویرایش داره اما ماه هاست دارم تلاش میکنم و سودی نداشت

کدهای xml رو بررسی کردم از طریق اپلیکیشن bombusmod اندروید و نرم افزارهایی مثل gajim یا pandion که به راحتی به سرورها وصل میشن و حتی کدهای xml رد و بدل شده رو هم گرفتم اما بعد از یکی دو xml پروسه متوقف میشه . خطایی هم رخ نمیده که متوجه بشم ایراد از کجاست. فقط یجورایی مطمئنم یه نکته ریزی داره ک مشکل حل بشه. لطفا اگر کسی به این موضوع تسلط داره کمک بکنه

در حال حاضر مشکل من اتصال به سرور jabber.hot-chilli.net هست . بتونم کانکت بشم باقی کارهاش راحته ، فقط کد اتصال میخوام

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

15 پاسخ به این سوال تا کنون داده شده است

پست های پیشنهاد شده

  • 0
در 22 دقیقه قبل، mohammad_2015 گفته است :

مرسی از شما ، این کدهایی که دریافت کردین به معنی اتصال موفقیت آمیزه !!! خیلی عجیبه وقتی که کدی که گفتین server.InitializeSSLAcceptAll("server") قرار دادم خطای نات کانکت میده ، یعنی اصلا ب سرور وصل نمیشه و به مرحله ی کدهایی که بهشون مشکوک بودم نمیرسه

الان بیشتر گمراه شدم چون مثل اینکه کدها درست و کاملن ، با چند گوشی تست کردم و همچنین با نت همراه و وای فای ، همچنین با قندشکن و بدون قندشکن، الان دیگه اصلا نمیدونم رو کدوم قسمت زوم کنم که عیب رو پیدا کنم :unknown:

دوست عزیز دقت داشته باشین که پورت روی 5223 تنظیم شده نه 5222

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 43 دقیقه قبل، mohammad_2015 گفته است :

درود

همونطور که از عنوان مشخص هست برای اتصال به سرور jabber که بسیار کاربردی هم هست به مشکل خوردم. در واقع ماه هاست به مشکل خوردم و هرچی سرچ گردم چیزی دست گیرم نشد.

یه سروی سورس موجود هست ک دوستان قبلا زحمت کشیدن و قرار دادن اما به سرورهای جدید مثل jabber.hot-chilli.net متصل نمیشه ، سورس های قرار داده شده مشکلی ندارن و به سرورهای قدیمی که نمیتونم اسم ببرم متصل میشد همچنین به سرور jabber.ru وصل میشد که متاسفانه اون سرور دیگه سرویس نمیده ،  اما چند سالی هست ک کللی سرور اضاف شده ک متاسفانه سورس ها متصل نمیشه ، بنظر کدها نیاز ب کمی ویرایش داره اما ماه هاست دارم تلاش میکنم و سودی نداشت

کدهای xml رو بررسی کردم از طریق اپلیکیشن bombusmod اندروید و نرم افزارهایی مثل gajim یا pandion که به راحتی به سرورها وصل میشن و حتی کدهای xml رد و بدل شده رو هم گرفتم اما بعد از یکی دو xml پروسه متوقف میشه . خطایی هم رخ نمیده که متوجه بشم ایراد از کجاست. فقط یجورایی مطمئنم یه نکته ریزی داره ک مشکل حل بشه. لطفا اگر کسی به این موضوع تسلط داره کمک بکنه

در حال حاضر مشکل من اتصال به سرور jabber.hot-chilli.net هست . بتونم کانکت بشم باقی کارهاش راحته ، فقط کد اتصال میخوام

سلام. کدهایی که در حال حاظر استفاده میکنید برای کانکت رو پیوست کنید.

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 21 ساعت قبل، محمدرضا شاهپیری گفته است :

سلام. کدهایی که در حال حاظر استفاده میکنید برای کانکت رو پیوست کنید.

Sub Connect_Click
	server.Initialize("server")
	server.Connect("jabber.hot-chilli.net",5222 ,5000)
End Sub


Sub server_Connected(Connected As Boolean)As Boolean
	If Connected = True Then
		x.Initialize(server.InputStream,server.OutputStream,"x")
		If x.IsInitialized = False Then Return
		Dim buffer() As Byte
		buffer =( "<stream:stream xmlns='jabber:client' to='jabber.hot-chilli.net' version='1.0' xmlns:stream='http://etherx.jabber.org/streams' xml:lang='ar' >").GetBytes("UTF8")
		x.Write(buffer)
		Dim buffer1() As Byte
		Dim stf As String = Chr(0) & "test" & Chr(0) & "test"
		Dim stU As StringUtils
		Dim str As String = stU.EncodeBase64(stf.GetBytes("UTF8"))
		Dim str1 As String = "<auth id='sasl2' xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='PLAIN'>" & str & "</auth>"
		buffer1 = str1.GetBytes("UTF8")
		x.Write(buffer1)
	Else
	
		ToastMessageShow("please check internet connection.",True)
	End If
End Sub



Sub Server_NewConnection (Successful As Boolean, NewSocket As Socket)
	If Successful Then
		StartService("Test")
		server = NewSocket
		x.InitializePrefix(server.InputStream, False, server.OutputStream, "x")
	Else
		
		ToastMessageShow(LastException.Message, True)
	End If
End Sub


Sub x_NewData (Buffer() As Byte)
	Try
		Dim xml As String
		xml = BytesToString(Buffer, 0, Buffer.Length, "UTF8")
		xml = xml.Replace("""","'")
		
		If xml.Contains("<success xmlns='urn:ietf:params:xml:ns:xmpp-sasl'/>")  Then
			Dim buffers() As Byte
			buffers = ("<stream:stream xmlns='jabber:client' to='jabber.hot-chilli.net' version='1.0' xmlns:stream='http://etherx.jabber.org/streams' xml:lang='ar' >").GetBytes("UTF8")
			x.Write(buffers)
			Dim buffers1() As Byte
			Dim stt As String = "<iq type='set'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><resource>basic4android</resource></bind></iq>"
			buffers1= stt.GetBytes("UTF8")
			x.Write(buffers1)
			Dim buffers2() As Byte
			buffers2= "<iq id='jcl_2' type='set'><session xmlns='urn:ietf:params:xml:ns:xmpp-session'/></iq>".GetBytes("UTF8")
			x.Write(buffers2)
		
		Else If xml.Contains("<bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>") Then
			Dim buffers3() As Byte
			buffers3= "<iq type='get' id='aab9a'><query xmlns='jabber:iq:roster'/></iq>".GetBytes("UTF8")
			x.Write(buffers3)
			Dim buffers4() As Byte
			buffers4= "<presence><show></show></presence>".GetBytes("UTF8")
			x.Write(buffers4)
			
		Else If xml.Contains("<not-authorized/>") Then
			x.Close
			server.Close
			ToastMessageShow("Wrong Password Or Username",False)
		
		Else If xml.Contains("<presence from='test@jabber.hot-chilli.net/basic4android' to='test@jabber.hot-chilli.net/basic4android' xml:lang='ar'><show/><x xmlns='vcard-temp:x:update'><photo/></x></presence>") Then
			ToastMessageShow("Connect Successful",False)
					
		End If
			
		
	Catch		
		Log(LastException)
	End Try

		
	

    
End Sub

ضمنا همونطور که در کدها مشخصه نام کاربری و رمز test هست که براحتی با تمام اپلیکیشن ها کانکت میشه ، همچنین با لایبرری xmpp هم کانکت شد اما چون کتابخونه خریداری نشده اکثر امکاناتش غیر فعال بود

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0

کسی نیست بتونه مشکلمو حل بکنه ؟ :scratch_one-s_head: واقعا کلافه م کرده !!

مطمئنم خیلی ساده میشه کانکت شد چون کدهای xml که تو اپلیکیشن ها دیگه استخراج کردم دقیقا مثل سورس هایی هست که توی سایت هم موجوده ، اما یه نکته ریزی داره که متاسفانه با کدهایی ک پیوست کردم لاگین نمیشه

برای راحتی مشاورین سایت ، نام کاربری و رمز هم تو کامت قبلی گذاشتم ممنون میشم اگر کسی بلد باشه به دادم برسه

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 18 ساعت قبل، mohammad_2015 گفته است :

کسی نیست بتونه مشکلمو حل بکنه ؟ :scratch_one-s_head: واقعا کلافه م کرده 

عزیز کد که میزارید سعی کنید کامل قرار بدید. الان نوع متغیرهاتون مشخص نیست اصلا. در صورت امکان یه سورس ساده همراه با کتابخونه های استفاده شده قرار بدین که بشه تست کرد. چون این موضوع موضوع خاصی هست و هر کسی استفاده نکرده

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 8 ساعت قبل، محمدرضا شاهپیری گفته است :

عزیز کد که میزارید سعی کنید کامل قرار بدید. الان نوع متغیرهاتون مشخص نیست اصلا. در صورت امکان یه سورس ساده همراه با کتابخونه های استفاده شده قرار بدین که بشه تست کرد. چون این موضوع موضوع خاصی هست و هر کسی استفاده نکرده

سورس رو قراردادم به همراه یک فایل داخل پوشه پروژه به اسم xml که حاوی تمام کدهای رد و بدل شده حین کانکت شدن ، که از یه برنامه تحت ویندوز که به سرور وصل شده ، میتونه کمکتون کنه راحتر به مشکل پی ببرین

 

http://s16.picofile.com/file/8410971234/ConnectToJabber.zip.html

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 36 دقیقه قبل، mohammad_2015 گفته است :

سورس رو قراردادم به همراه یک فایل داخل پوشه پروژه به اسم xml که حاوی تمام کدهای رد و بدل شده حین کانکت شدن ، که از یه برنامه تحت ویندوز که به سرور وصل شده ، میتونه کمکتون کنه راحتر به مشکل پی ببرین

http://s16.picofile.com/file/8410971234/ConnectToJabber.zip.html

من نحوه کار با این سرویس رو نمیدونم و متوجه نیستم که دیتاها به چه شکل ردو بدل میشه. اما چیزی که من متوجه شدم مشکل توی ارتباطه که باید متد Connect_Click رو به شکل زیر بنویسید. تست کنید ببینید چه تغییری حاصل میشه



Sub Connect_Click
	server.InitializeSSLAcceptAll("server")
	server.Connect("jabber.hot-chilli.net",5223 ,5000)
End Sub

 

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 1 ساعت قبل، محمدرضا شاهپیری گفته است :

من نحوه کار با این سرویس رو نمیدونم و متوجه نیستم که دیتاها به چه شکل ردو بدل میشه. اما چیزی که من متوجه شدم مشکل توی ارتباطه که باید متد Connect_Click رو به شکل زیر بنویسید. تست کنید ببینید چه تغییری حاصل میشه




Sub Connect_Click
	server.InitializeSSLAcceptAll("server")
	server.Connect("jabber.hot-chilli.net",5223 ,5000)
End Sub

 

تست کردم ، تو قسمت server_Connected(Connected As Boolean) که شرط گذاشتیم اگر سوکت وصل نشده پیغام عدم دسترسی به اینترنت گذاشتم نمایان شد. در صورتی که با کد قبلی به سرور وصل میشد و دوتا xml هم رد و بدل میشد 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 1 ساعت قبل، mohammad_2015 گفته است :

تست کردم ، تو قسمت server_Connected(Connected As Boolean) که شرط گذاشتیم اگر سوکت وصل نشده پیغام عدم دسترسی به اینترنت گذاشتم نمایان شد. در صورتی که با کد قبلی به سرور وصل میشد و دوتا xml هم رد و بدل میشد 

من تست کردم مشکلی نداشت و پیغامها ارسال میشه

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 13 دقیقه قبل، محمدرضا شاهپیری گفته است :

من تست کردم مشکلی نداشت و پیغامها ارسال میشه

متاسفانه برای من عمل نمیکنه ، روی یه گوشی دیگه هم تست کردم دقیقا همین مشکل پابرجاست.

یه دستور دیگه هم هست server.InitializeSSL("server" , Keystorestream, "password") چیزی که من متوجه شدم ایراد از سرتیفیکیت کانکشن هست ، که خود سرور تو سایتش زده TLS requeired اما نمیدونم چجوری اعمالش کنم

تعجب میکنم برای شما مشکلی نداشته !! یعنی پیغام coneccted succesfully هم ظاهر شد ؟

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0

این پروژه رو با کمی تغییرات اومدم طبق روالی که سایت xmpp توضیح داده نوشتم. لینکشم گذاشتم. همچنین سورس این روش

https://xmpp.org/extensions/xep-0178.html

از مشکل <failure xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><encryption-required/></failure>  که پست قبلی اشاره کردم گذر کردم. اما بعدش پروسه ادامه پیدا نکرد. یعنی باید طبق توضیحات لینک بالایی ؛ کد xml قسمت example7 و example8  برام بیاد . اما نمیاد که روند رو ادامه بدم

بازم یادآور میشم تمام کدهای xml رد و بدل شده تا اتصال موفقیت آمیز تو پوشه پروژه قرار دادم.

لینک سورس دوم

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 16 دقیقه قبل، mohammad_2015 گفته است :

 

عزیز خروجی کد زیر وقتی رو دکمه connect کلیک میکنم


Sub Connect_Click
	server.InitializeSSLAcceptAll("server")
	server.Connect("jabber.hot-chilli.net",5223 ,5000)
End Sub

این هست. حالا من نمیدونم دقیقا معنیش چیه. شما این رو بررسی کنید ببینید که معنیش چیه

<?xml version='1.0'?><stream:stream from='jabber.hot-chilli.net' version='1.0' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' id='31b2a6af-b396-40cd-99e7-b0eea3176128' xml:lang='en'><stream:features><auth xmlns='http://jabber.org/features/iq-auth'/><register xmlns='http://jabber.org/features/iq-register'/><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>SCRAM-SHA-1-PLUS</mechanism><mechanism>PLAIN</mechanism><mechanism>SCRAM-SHA-1</mechanism></mechanisms></stream:features>
<success xmlns='urn:ietf:params:xml:ns:xmpp-sasl'/>
<?xml version='1.0'?><stream:stream from='jabber.hot-chilli.net' version='1.0' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' id='9c2bd310-2cfe-42f8-93eb-d78949e15e2d' xml:lang='en'><stream:features><csi xmlns='urn:xmpp:csi:0'/><ver xmlns='urn:xmpp:features:rosterver'/><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><required/></bind><session xmlns='urn:ietf:params:xml:ns:xmpp-session'><optional/></session><sm xmlns='urn:xmpp:sm:2'><optional/></sm><sm xmlns='urn:xmpp:sm:3'><optional/></sm><c hash='sha-1' node='http://prosody.im' ver='El6uWA/34mp8SoqB+68n2PxvV2w=' xmlns='http://jabber.org/protocol/caps'/></stream:features>
<iq type='result'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><jid>test@jabber.hot-chilli.net/basic4android</jid></bind></iq><iq type='result' to='test@jabber.hot-chilli.net/basic4android' id='jcl_2'/>
<iq type='result' to='test@jabber.hot-chilli.net/basic4android' id='aab9a'><query ver='1' xmlns='jabber:iq:roster'/></iq>
<presence from='test@jabber.hot-chilli.net/basic4android'><show/><x xmlns='vcard-temp:x:update'><photo/></x></presence>
<iq type='result' to='test@jabber.hot-chilli.net/basic4android' id='aab9a'><query ver='1' xmlns='jabber:iq:roster'/></iq>
<presence from='test@jabber.hot-chilli.net/basic4android'><show/><x xmlns='vcard-temp:x:update'><photo/></x></presence>

 

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در ۱ ساعت قبل، محمدرضا شاهپیری گفته است :

عزیز خروجی کد زیر وقتی رو دکمه connect کلیک میکنم



Sub Connect_Click
	server.InitializeSSLAcceptAll("server")
	server.Connect("jabber.hot-chilli.net",5223 ,5000)
End Sub

این هست. حالا من نمیدونم دقیقا معنیش چیه. شما این رو بررسی کنید ببینید که معنیش چیه


<?xml version='1.0'?><stream:stream from='jabber.hot-chilli.net' version='1.0' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' id='31b2a6af-b396-40cd-99e7-b0eea3176128' xml:lang='en'><stream:features><auth xmlns='http://jabber.org/features/iq-auth'/><register xmlns='http://jabber.org/features/iq-register'/><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>SCRAM-SHA-1-PLUS</mechanism><mechanism>PLAIN</mechanism><mechanism>SCRAM-SHA-1</mechanism></mechanisms></stream:features>
<success xmlns='urn:ietf:params:xml:ns:xmpp-sasl'/>
<?xml version='1.0'?><stream:stream from='jabber.hot-chilli.net' version='1.0' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' id='9c2bd310-2cfe-42f8-93eb-d78949e15e2d' xml:lang='en'><stream:features><csi xmlns='urn:xmpp:csi:0'/><ver xmlns='urn:xmpp:features:rosterver'/><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><required/></bind><session xmlns='urn:ietf:params:xml:ns:xmpp-session'><optional/></session><sm xmlns='urn:xmpp:sm:2'><optional/></sm><sm xmlns='urn:xmpp:sm:3'><optional/></sm><c hash='sha-1' node='http://prosody.im' ver='El6uWA/34mp8SoqB+68n2PxvV2w=' xmlns='http://jabber.org/protocol/caps'/></stream:features>
<iq type='result'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><jid>test@jabber.hot-chilli.net/basic4android</jid></bind></iq><iq type='result' to='test@jabber.hot-chilli.net/basic4android' id='jcl_2'/>
<iq type='result' to='test@jabber.hot-chilli.net/basic4android' id='aab9a'><query ver='1' xmlns='jabber:iq:roster'/></iq>
<presence from='test@jabber.hot-chilli.net/basic4android'><show/><x xmlns='vcard-temp:x:update'><photo/></x></presence>
<iq type='result' to='test@jabber.hot-chilli.net/basic4android' id='aab9a'><query ver='1' xmlns='jabber:iq:roster'/></iq>
<presence from='test@jabber.hot-chilli.net/basic4android'><show/><x xmlns='vcard-temp:x:update'><photo/></x></presence>

 

مرسی از شما ، این کدهایی که دریافت کردین به معنی اتصال موفقیت آمیزه !!! خیلی عجیبه وقتی که کدی که گفتین server.InitializeSSLAcceptAll("server") قرار دادم خطای نات کانکت میده ، یعنی اصلا ب سرور وصل نمیشه و به مرحله ی کدهایی که بهشون مشکوک بودم نمیرسه

الان بیشتر گمراه شدم چون مثل اینکه کدها درست و کاملن ، با چند گوشی تست کردم و همچنین با نت همراه و وای فای ، همچنین با قندشکن و بدون قندشکن، الان دیگه اصلا نمیدونم رو کدوم قسمت زوم کنم که عیب رو پیدا کنم :unknown:

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 4 ساعت قبل، محمدرضا شاهپیری گفته است :

دوست عزیز دقت داشته باشین که پورت روی 5223 تنظیم شده نه 5222

دست گلت درد نکنه مشکل چند ماهم حل شد ♥

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

مهمان
پاسخ به این سوال ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


×
×
  • جدید...