الاتصال بنا



النتائج 1 إلى 10 من 10

الموضوع: مكتبة YahooWeather مفتوحة المصدر من برمجتي

  1. #1
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2007
    المشاركات
    373

    مكتبة YahooWeather مفتوحة المصدر من برمجتي



    السلام عليكم أخبار أعضاء سوالف جميعاً ... طيبين إن شاء الله

    على العموم و بدون مقدمات فأنا أملك فن عدم إجادة المقدمات بدرجة إمتياز

    قام أحد الأعضاء بطلب طريقة جلب الطقس من موقع yahoo Weather

    و مواقع أخرى فقمت ببرمجة مكتبة كاملة لـ yahoo Weather بالإعتماد على yahoo Weather API
    و ينقصها الشئ البسيط جداً و اتمنى من الأعضاء المشاركة بسد النقص


    طريقة إستخدامها بسيطة جداً ما عليك سواء إضافة المكتبة إلى مشروعك

    و من ثم إنشاء جديد للصنف YWClient الموجود في المكتبة

    و الذي يحتوي على دالة واحدة GetForecast و تحمل متغيرين أحدهما إجباري
    و الآخر اختياري

    المتغير location و هو إجباري لإستقبال WOEID للمكان المراد عرض طقسه
    المتغير type و هو اختياري و من النوع UnitType الذي يحتوي على:
    Fahrenheit لطلب درجات الطقس بالفهرنهايت أو Celsius للدرجات المئوية و الإفتراضي
    يكون Fahrenheit

    و الدالة GetForecast تقوم بإرجاع متغير من النوع YChannel و الذي يحتوي على
    كل ما تريده من الخدمة


    مثال :
    كود:
    قمنا بتعريف متغير جديد للصنف YWClient
    YWClient YWClient = new YWClient();
    
    تعريق متغير جديد للدالة GetForecast 
    الرقم 1939897 هو  WOEID لمكة المكرمة
    YChannel YWChannel = YWClient.GetForecast("1939897", UnitType.Celsius);
    الآن المتغير YWChannel نوعه YChannel الذي يحمل جميع المعلومات عن الطقس
    لمكة المكرمة

    و عندما نريد الحصول على درجة الحرارة المتوقعة سنقوم بكتابة التالي:

    كود:
    int temperature = YWChannel.Channel.Item.Condition.Temperature;
    و ستكون درجة الحرارة بالمتغير temperature


    لا نطول على الأعضاء
    فكما قلت لا اجيد فن المقدمات و لا الكتابة و لا الشرح و إيصال المعلومة :anger2:


    هذا مثال قمت بعمله لمعرفة طريقة إستخدام المكتبة :






    في النهاية هذا رابط لتحميل المكتبة + المثال بالأعلى و كلها مفتوحة المصدر

    للتحميل اضغط هنا

    و لا تنسونا و الأمة الإسلامية من دعواتكم


    حفظكم الله.







  2. #2
    عضو جديد
    تاريخ التسجيل
    Apr 2010
    المشاركات
    23


    جربتها وعملت معي بشكل رائع

    أخوي عبدالله أعتقد تحتاج تضيف استثناء عندما لايتوفر اتصال بالنت ، جرب تشغيله " أقصد البرنامج النموذج" وستحصل على رسالة خطأ

    ملاحظة : لمن لا يوجد لديه Visual Studio

    لتجربة البرنامج اذهب إلى

    AbdullaHasan.YahooWeather\SimpleSwalifWeather\bin\Debug\SimpleSwalifWeather.exe





    __________________
    الإبداع أن تأتي بالمألوف بطريقة غير مألوفة :]

    مدونة صفحتي

    مدونة نشاطكم

  3. #3
    عضو نشيط
    تاريخ التسجيل
    Sep 2006
    المشاركات
    134


    ماشاء الله تعمل بشكل رائع اخي جزاك الله كل الخير





    __________________
    شكرا سوالف سوفت

    نجوم العرب

  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2007
    المشاركات
    373


    جربتها وعملت معي بشكل رائع

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

    و نترك إضافة الإستثناء للبرنامج في حال لم يتوفر اتصال بالإنترنت:court:
    و بإمكان الأعضاء المحاربين و ليس الخبراء استخدام الدالة التالية: :court:
    حيث استخدمها في برامجي و لنرى ماذا سيفعل المحاربون :app:

    كود:
            public static bool IsConnectedToInternet()
            {
                bool status;
                isConnectionAvailable(out status);
                return status;
            }
            private static void isConnectionAvailable(out bool status)
            {
                status = false;
                string[] sitesList = { "www.google.com", "www.microsoft.com", "www.yahoo.net" };
                Ping ping = new Ping();
                PingReply reply;
                int notReturned = 0;
    
                try
                {
                    for (int i = 0; i <= sitesList.Length; i++)
                    {
                        reply = ping.Send(sitesList[i], 10);
    
                        if (reply.Status != IPStatus.Success)
                        {
                            notReturned += 1;
                        }
    
                        if (notReturned == sitesList.Length)
                        {
                            status = false;
                        }
                        else
                        {
                            status = true;
                            break;
                        }
                    }
                }
                catch
                {
                    status = false;
                }
            }
    و كما قلت المكتبة تنقصها القليل منها دعم استخدام البروكسي للطلب و غيرها
    و أيضاً هناك خصائص متعلقة بالتاريخ في المكتبة موجودة و لم أقم بتنشيطها
    ووضعتها كتعليق لأني لم أجد الصيغة الصحيحة للتاريخ موقع Yahoo يقول
    انه يستخدم الصيغة RFC822 للتاريخ لكن لم انجح في الوصول إلى الصيغة المطلوبة
    رغم أني وضعت صيغتها كما هو مذكور في الموقع .


    إن شاء الله في حال توفر لدي القليل من الوقت بالمستقبل أقوم بإضافة ما تم ذكره

    ماشاء الله تعمل بشكل رائع اخي جزاك الله كل الخير
    و إياك أخي الكريم
    تشرفت بمروك أيضاً.






  5. #5
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2007
    المشاركات
    373


    إضافات بسيطة للمكتبة
    تم إضافة خاصية ImageURL لعرض صورة تعريفية لحالة الطقس

    و أيضاًً تحديث المثال و استخدام الصور التوضيحية (المثال بسيط)





    للتحميل اضغط هنا





    التعديل الأخير تم بواسطة عبدالله حسن ; 12-04-2010 الساعة 10:12 AM

  6. #6
    عضو جديد
    تاريخ التسجيل
    Apr 2010
    المشاركات
    5


    ماشاء الله
    اخي الكريم انت وضعتها على فورم مثل ونديوز فورم
    ماذا لوكنت اريد الواجهه صفحه ويب ماذا افعل؟

    شكرا لك






  7. #7
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2007
    المشاركات
    373


    ماشاء الله
    اخي الكريم انت وضعتها على فورم مثل ونديوز فورم
    ماذا لوكنت اريد الواجهه صفحه ويب ماذا افعل؟

    شكرا لك
    :anger1::anger1::anger1:

    و انت باقي تريد بناء موقع و تسئل هذا السؤال
    لو قمت بالتجربة قبل ان تسئل لكان أفضل

    المهم بإمكانك إستخدام مكتبة AbdullaHasan.YahooWeather مع تطبيقات الويندوز
    أو تطبيقات الويب فلا يوجد هناك مشاكل


    طيب بما أنك مشغول و لا تريد التعب قليلاً قمت ببناء مثال لتطبيق الويب
    و هو بشكل مبسط و لا اريد أحد يقول ان المثال تنقصه الميزة الفلانية فهو يبقى مثال بسيط

    هذه صورة توضيحية للمثال عن طريق المتصفح






    للتحميل اضغط هنا - يحتوي الملف على: المكتبة + مثال لتطبيق ويندوز + مثال لتطبيق ويب






  8. #8
    عضو فعال
    تاريخ التسجيل
    Dec 2008
    المشاركات
    1,898


    كيف ندمجها مع ملفات البي اتش بي بارك الله فيك
    و الله قبل يومين ابحث عنها.





    __________________
    راسلني

  9. #9
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2007
    المشاركات
    373


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

    مرحبا فيك أخي وضاء
    المكتبة خاصة بتطبيقات .NET فقط

    لكن بإمكانك استخدام مكتبة ياهو YUI من هنـــــا
    أو استخدم الكلاس التالي PHP Yahoo Weather Class
    من الموقع الشهير تبعكم www.phpclasses.org

    وفقك الله






  10. #10
    عضو جديد
    تاريخ التسجيل
    Apr 2010
    المشاركات
    5


    الله يعطيك الف عافيه

    معليش تحملني انا مبتدئه










ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  
0