خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف أحمد مناع في الإثنين أغسطس 19, 2013 12:53 pm

بسم الله الرحمن الرحيم

أهلا وسهلا بكم إخوانى الكرام فى درس جديد من دروس منتدى مصر التقنى ....درسنا اليوم عن كيفية التواصل مع مستخدمى جوجل توك (بالإنجليزية: Google Talk) هو برنامج دردشة للتراسل الفوري والصوتي، مقدم من جوجل....وتتم تلك الدردشة من خلال استخدام البروكسي المفتوح أو بروتوكول إكس إم بي بي XMPP الذي يمكن المستخدمين للتوصل مع مستخدمي جوجل تولك

صورة من التطبيق


صورة من برنامج Google Talk و كيفية استقبال الرسالة من تطبيقك


قبل البدء فى الشروع فى برمجة التطبيق يجب استخدام أحد المكتبات التى تدعم XMPP ...فى هذا الشرح سأقوم المكتبة باستخدام المكتبة  agsXMPP  يمكنك تحميل المكتبة من على العنوان التالى .

 http://www.ag-software.de/index.php?page=agsxmpp-sdk

والان دعونا نبدأ.

الخطوة الاولى :فتح الفجوال Visual Studio و انشاء تطبيق نوافذ جديد .
الخطوة الثانية :إضافة عناصر التحكم التالية إلى النافذة مع تغير الاسم البرمجى على النحو التالى :

 TextBox : txtUserName, txtPassword, txtMessage

 CheckBox : chkStartAutomatic

 Button : btnSave

 Label : lblStatus

الخطوة الرابعة : فتح صفحة كتابة الشفرة لكتابة الشفرات التالية :

1_ أستيراد المكتبة agsXMPP و المكتبة Microsoft.Win32 على النحو التالى :
الرمز:
Imports agsXMPP
Imports Microsoft.Win32
2_ نقوم بإنشاء مثيل للكائن agsXMPP على النحو التالى :
الرمز:
Dim objXmpp As agsXMPP.XmppClientConnection
3_ نقوم بالاعلان عن المتغيرات اللازمة فى التطبيق على النحو التالى :
الرمز:
Dim UserName As String
    Dim Password As String
    Dim Message As String
    Dim AutomaticStart As Boolean
4_ فى حدث التحميل للنافذة Form1_Load نقوم بكتابة الشفرة التالية :
الرمز:
Control.CheckForIllegalCrossThreadCalls = False
    'Load settings
txtUserName.Text = My.Settings.UserName
txtPassword.Text = My.Settings.Password
txtMessage.Text = My.Settings.Message
If My.Settings.AutomaticStart = True Then
 chkStartAutomatic.Checked = True
Else
 chkStartAutomatic.Checked = False
End If
في التعليمات البرمجية أعلاه قمنا بتحميل تفاصيل المستخدم في متغيرات التطبيق إلى عناصر التحكم المناسبة .

5_نقوم بكتابة الشفرة التالية فى حدث CheckedChanged لمربع الاختيار و الذى يهدف الى بدء التطبيق تلقائيا على بدء التشغيل ويندوز على النحو التالى :

الرمز:
If chkStartAutomatic.Checked = True Then
    My.Settings.AutomaticStart = True
    Dim regKey As RegistryKey
    regKey = Registry.CurrentUser.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Run", True)
    regKey.SetValue(Application.ProductName, Application.ExecutablePath)
    regKey.Close()
Else
    My.Settings.AutomaticStart = False
    Dim regKey As RegistryKey
    regKey = Registry.CurrentUser.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Run", True)
    regKey.DeleteValue(Application.ProductName)
    regKey.Close()
End If
6_ نقوم بكتابة الشفرة التالية فى حدث النقر على زر الامر btnSave على النحو التالى :

الرمز:
If txtUserName.Text.Trim = "" Then
    lblStatus.Text = "Please enter Username."
    txtUserName.Focus()
    Exit Sub
End If
 
If txtPassword.Text.Trim = "" Then
    lblStatus.Text = "Please enter Password."
    txtPassword.Focus()
    Exit Sub
End If
 
If txtMessage.Text.Trim = "" Then
    lblStatus.Text = "Please enter Message."
    txtMessage.Focus()
    Exit Sub
End If
 
lblStatus.Text = "Logging in. Please wait..."
objXmpp = New agsXMPP.XmppClientConnection
    Dim jid As agsXMPP.Jid
jid = New agsXMPP.Jid(txtUserName.Text.Trim + "@gmail.com")
objXmpp.Password = txtPassword.Text.Trim
objXmpp.Username = jid.User
objXmpp.Server = jid.Server
objXmpp.AutoResolveConnectServer = True
 
Try
    AddHandler objXmpp.OnMessage, AddressOf messageReceived
    AddHandler objXmpp.OnAuthError, AddressOf loginFailed
    AddHandler objXmpp.OnLogin, AddressOf loggedIn
    objXmpp.Open()
Catch ex As Exception
    MsgBox(ex.Message)
End Try
فى الشفرة اعلاه ومن السطر الاول حتى الخامس عشر هى للتأكد من وجود بيانات المستخدم فى حساب gmail ...ثم بعد ذلك قمنا باشتقاق كائن جديد من objXmpp و هو الذى سيقوم بمحاولة الدخول الى gmail وتم اسناد كافة البيانات اللازمة للدخول فى حساب gmail الية ...ويمكنك ان ترى اننا قمنا بإنشاء ثلاثة إجراءات وهما :

_messageReceived ...لتلقى الرسال من مستخدمى Google Talk
_loginFailed .............للتعامل مع خطأ مصادقة إذا كان اسم المستخدم / كلمة المرور غير صحيحة
_loggedIn ...............حفظ الإعدادات اللازمة فى المتغيرات لتسجيل الدخول بنجاح.

و يتم انشأهم على النحو التالى :

_الاجراء messageReceived
الرمز:
Private Sub messageReceived(ByVal sender As Object, ByVal msg As protocol.client.Message)
Dim chatMessage() As String
chatMessage = msg.From.ToString.Split("/")
Dim jid As agsXMPP.Jid
jid = New agsXMPP.Jid(chatMessage(0))
Dim autoReply As protocol.client.Message
autoReply = New protocol.client.Message(jid, protocol.client.MessageType.chat, txtMessage.Text)
objXmpp.Send(autoReply)
End Sub
_ الاجراء loginFailed
الرمز:
Me.Show()
       lblStatus.Text = "Login failed. Please check your details."
_ الاجراء loggedIn

الرمز:
Private Sub loggedIn()
        Me.Hide()
        NotifyIcon.Visible = True
        lblStatus.Text = "Logged in and Active."
        My.Settings.UserName = txtUserName.Text.Trim
        My.Settings.Password = txtPassword.Text.Trim
        My.Settings.Message = txtMessage.Text
End Sub

الان قم بحفظ وتشغيل التطبيق وهكذا يمكنك التوصل مع مستخدمي Google Talk من خلال مشروعك


اتمنى ان يكون الدرس مفيد لكم

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم

إن فقدت مكان بذورك التي بذرتها يوما ما سيخبرك المطر أين زرعتها ..لذا إبذر الخير فوق أي أرض وتحت أي سماء ومع أي أحد.. فأنت لا تعلم أين تجده ومتى تجده؟! إزرع جميلا ولو في غير موضعه .... فلا يضيع جميلا أينما زرعا .. فما أجمل العطاء... فقد تجد جزاءه في الدنيا أو يكون لك ذخرا في الآخرة

أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 810
النقاط : 1479
التقيم : 69
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف لمار عادل في الثلاثاء أغسطس 20, 2013 10:04 am


اشكرك اخى اخى احمد ....لكن هل ممكن ان ننشىء تطبيق مثل هذا بالجافا

لمار عادل
..
..

تاريخ التسجيل : 29/05/2013
المساهمات : 28
النقاط : 46
التقيم : 2
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف أحمد مناع في الثلاثاء أغسطس 20, 2013 10:07 am

لمار عادل كتب:
اشكرك اخى اخى احمد ....لكن هل ممكن ان ننشىء تطبيق مثل هذا بالجافا
و الشكر موصول لكى اتيها الكريمة لمار .....سنحاول بإذن الله تعالى فعل ذلك بالجافا المهم خبرتك معانا

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم

إن فقدت مكان بذورك التي بذرتها يوما ما سيخبرك المطر أين زرعتها ..لذا إبذر الخير فوق أي أرض وتحت أي سماء ومع أي أحد.. فأنت لا تعلم أين تجده ومتى تجده؟! إزرع جميلا ولو في غير موضعه .... فلا يضيع جميلا أينما زرعا .. فما أجمل العطاء... فقد تجد جزاءه في الدنيا أو يكون لك ذخرا في الآخرة

أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 810
النقاط : 1479
التقيم : 69
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف لمار عادل في الثلاثاء أغسطس 20, 2013 10:22 am

أحمد مناع كتب:

و الشكر موصول لكى اتيها الكريمة لمار .....سنحاول بإذن الله تعالى فعل ذلك بالجافا المهم خبرتك معانا
هههههههه خبرتة ايه يا استاذ ....انا مليش اى خبرة فى الجافا تذكر ...اعمل انا ايه بقى معاكم

لمار عادل
..
..

تاريخ التسجيل : 29/05/2013
المساهمات : 28
النقاط : 46
التقيم : 2
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف أحمد مناع في الثلاثاء أغسطس 20, 2013 10:25 am

.اعمل انا ايه بقى معاكم كتب:
أعملى لينا شاى و صندوتشات Very Happy Very Happy 

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم

إن فقدت مكان بذورك التي بذرتها يوما ما سيخبرك المطر أين زرعتها ..لذا إبذر الخير فوق أي أرض وتحت أي سماء ومع أي أحد.. فأنت لا تعلم أين تجده ومتى تجده؟! إزرع جميلا ولو في غير موضعه .... فلا يضيع جميلا أينما زرعا .. فما أجمل العطاء... فقد تجد جزاءه في الدنيا أو يكون لك ذخرا في الآخرة

أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 810
النقاط : 1479
التقيم : 69
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف لمار عادل في الثلاثاء أغسطس 20, 2013 10:26 am

من عيونى .....فى الحاجات دى أنا أستاذة Very Happy 

لمار عادل
..
..

تاريخ التسجيل : 29/05/2013
المساهمات : 28
النقاط : 46
التقيم : 2
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف أيمن الإبراهيم في الثلاثاء أغسطس 20, 2013 10:44 am

مشكور جدا على شرح رائع
ننتظر تطبيق مماثل على J2ME

أيمن الإبراهيم
........
........

تاريخ التسجيل : 19/03/2013
المساهمات : 251
النقاط : 397
التقيم : 0
الدولة : سوريا
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف أيمن الإبراهيم في الثلاثاء أغسطس 20, 2013 7:23 pm

استاذ احمد مشكور جدا بس لي طلب ممكن رفع مشروع بالكامل

أيمن الإبراهيم
........
........

تاريخ التسجيل : 19/03/2013
المساهمات : 251
النقاط : 397
التقيم : 0
الدولة : سوريا
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف أحمد مناع في الأربعاء أغسطس 21, 2013 7:30 am

أيمن الإبراهيم كتب:استاذ احمد مشكور جدا بس لي طلب ممكن رفع مشروع بالكامل
إن شاء الله تعالى سيتم رفع الكود بالمساء ....و أكيد حضرتك عارف السبب Very Happy 

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم

إن فقدت مكان بذورك التي بذرتها يوما ما سيخبرك المطر أين زرعتها ..لذا إبذر الخير فوق أي أرض وتحت أي سماء ومع أي أحد.. فأنت لا تعلم أين تجده ومتى تجده؟! إزرع جميلا ولو في غير موضعه .... فلا يضيع جميلا أينما زرعا .. فما أجمل العطاء... فقد تجد جزاءه في الدنيا أو يكون لك ذخرا في الآخرة

أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 810
النقاط : 1479
التقيم : 69
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: خطوة بخطوة لانشاء تطبيق دردشة للتوصل مع مستخدمي Google Talk

مُساهمة من طرف م/موسي في الخميس أغسطس 22, 2013 2:15 pm


اشكرك اخى احمد ....وياريت السورس كود

م/موسي
الاشراف
الاشراف

تاريخ التسجيل : 18/02/2011
المساهمات : 130
النقاط : 252
التقيم : 8
الدولة : تونس
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى