• homepage
  • sitmap
  • contact
yahoo yahoo "به روزها دل مبند،روزها به فصل که می‌رسند،رنگ عوض می‌کنند. با شب بمان،شب همیشه یک رنگ است."
امروز: جمعه, ۲۹ اردیبهشت ۱۳۹۱ - ساعت: ۱۰:۲۸ -  Today: Friday, 18th May 2012 - 06:58 AM
آموزش طراحی صفحات وب در 10 دقیقه
حافظه نامحدود

پایگاه اینترنتی یک وب

یک وب: گذاشتن تصویر دلخواه برای وضعیت یاهو در ASP.NET

یکی از امکاناتی که یاهو در اختیار کاربران خود قرار داده است، امکان تعیین وضعیت یک کاربر است که با قرار دادن کد مربوط به آن و تعیین شناسه مورد نظر، وضعیت فرد با تصاویر خاص به صورت آنلاین یا آفلاین نشان داده می شود.
مثلا کد زیر وضعیت کاربر sepidweb را در یک صفحه وب نشان می دهد و کاربر با کلیک بر روی تصویر نشان داده شده می تواند از طریق یاهو مسنجر با آن کاربر ارتباط برقرار کند.

<a href = 'ymsgr:sendim?sepidweb'>
<img src="http://opi.yahoo.com/online?u=sepidweb&m=g&t=14" border=0>
</a>

به طور پیش فرض یاهو ۲۴ تصویر دارد که با تعیین پارامتر t در انتهای کد می توانیم معین کنیم کدام تصویر برای تعیین وضعیت نمایش داده شود. البته امکان دارد تعداد این تصاویر در آینده افزایش یابد.
برای دیدن این تصاویر می توان آدرس:

http://opi.yahoo.com/online?u=sepidweb&m=g&t=1

 

را در مرورگر وارد کرد و با تغییر عدد انتهای آدرس که در آدرس بالا ۱ است، باقی ۲۳ تصویر ممکن را نیز دید.
البته شما می‌توانید یرای دریافت بیشتر عکس‌های وضعیت یاهو که توسط ما گردآوری و
تهیه شده، به انتهای مطلب مراجعه کنید.

 

یک وب: گذاشتن تصویر دلخواه برای وضعیت یاهو در ASP.NET

 

در این پست قصد دارم نحوه نمایش یک تصویر دلخواه برای وضعیت یاهو را شرح دهم.
مراحل کار بسیار ساده است. ابتدا باید معین کنیم آیا فرد مورد نظر در یاهو آنلاین هست یا خیر. سپس براساس وضعیت فرد دو تصویر آنلاین و آفلاین دلخواه خود را نشان دهیم.
تعیین آنلاین یا آفلاین بودن ساده است. کافی است آدرس یکی از تصاویر بالا را به طور نرم افزاری درخواست کنیم، و تصویر برگردانده شده را بررسی کنیم. اگر تصویر همانی بود که به عنوان آنلاین نشان داده می شود، پس فرد مورد نظر آنلاین است.
برای این کار من از تصویر با t=5 استفاده می کنم. سپس دو تصویر آنلاین و آفلاین را در یک Hex Editor باز کردم تا اختلاف آن دو را مشاهده کنم. براساس اولین بایتی که اختلاف دارند معین می شود کدام تصویر برگردانده شده است.
برای t=5 دو تصویر در بایت دوازدهم با هم اختلاف دارند و تصویر آنلاین مقدار بایت دوازدهم آن ۱۰۹ است.

کد زیر آنلاین یا آفلاین بودن کاربر یاهو را معین می کند.

(البته با دانلود SepidYahooStatus.dll و استفاده از SepidWeb.Yahoo.IsOnline می توانید در کد خود معین کنید آیا کاربر مورد نظر آنلاین است یا آفلاین)

using System;
using System.Configuration;
using System.Web;
using System.Net;

namespace SepidWeb
{
    /// <summary>
    /// Gets the status of the provided yahoo id (either online or offline) in boolean. true for online.
    /// </summary>
    public class Yahoo
    {
        public static bool IsOnline(string YahooId)
        {
            try
            {
                string yahooStatusImageUrl = "http://opi.yahoo.com/online?u=" + YahooId + "&m=g&t=5";

                HttpWebRequest YahooStatusRequest = (HttpWebRequest)WebRequest.Create(yahooStatusImageUrl);

                YahooStatusRequest.Accept = "image/*";
                YahooStatusRequest.AllowAutoRedirect = true;

                HttpWebResponse YahooStatusResponse = (HttpWebResponse)YahooStatusRequest.GetResponse();

                //first read 11 bytes which are equal in both online and offline streams.
                for (int i = 0; i < 11; i++)
                    YahooStatusResponse.GetResponseStream().ReadByte();

                //decide based on the different byte.
                int decidingByte = YahooStatusResponse.GetResponseStream().ReadByte();

                if (decidingByte == 109)
                    return true;
                else
                    return false;
            }
            catch (WebException e)
            {
                //possibly theres a problem with the internet connection.
                //simply show it offline.
                e.ToString();
                return false;
            }
        }
    }
}

اکنون که می توانیم وضعیت یک کاربر را در یاهو تشخیص دهیم، تعیین تصاویر برای دو وضعیت آنلاین و آفلاین کار سختی نیست.
کافی است براساس یک if ساده وضعیت کاربر معین شود و سپس براساس وضعیت وی آدرس تصویر مورد نظر استفاده گردد. مثلا

<% if(SepidYahooStatus.Yahoo.IsOnline("sepidweb")
{%>
<asp:Image ImageUrl="images/online.png" runat="server" />
<%}else(){ %>
<asp:Image ID="Image1" ImageUrl="images/offline.png" runat="server" />
<%} %>	

 

یک وب: گذاشتن تصویر دلخواه برای وضعیت یاهو در ASP.NET دانلود عکس‌های بیشتر وضعیت یاهو (حجم ۹۰۳ کیلوبایت)

یک وب: گذاشتن تصویر دلخواه برای وضعیت یاهو در ASP.NET منبع : سپید وب

یک وب: گذاشتن تصویر دلخواه برای وضعیت یاهو در ASP.NET گردآوری: یک وب



درباره‌ي نويسنده

نوشته شده توسط « »

پیشنهاد می‌کنیم از مطالب زیر هم دیدن نمایید:

بهرام ISLAMIC REPUBLIC OF IRAN Mozilla Firefox Windows
نوع: دیدگاه
تاریخ: ۱۴ام اردیبهشت ۱۳۹۱ @ ۴:۰۱ ب.ظ

salam
man motavajeh nashodam id koja vared mishe ?


۸-| p-: o:-) l-) i-) b-) >:p >:) >-) =)) =(( ;;) ;-) :x :> :-| :-x :-w :-ss :-s :-p :-l :-a :-D :-: :-/ :-* :-) :-( :- :)) :) /:) (-: (%)

قبل از ارسال نظر:


  • توجه کنید که نظرتان در ارتباط با همین مطلب باشد. در غیر اینصورت می‌توانید از فرم تماس استفاده نمایید.
  • نظراتی که با کلمات کلیدی ثبت شوند و یا حاوی الفاظ زشت، تبلیغاتی، سیاسی و یا توهین به اشخاص باشند، منتشر نخواهند شد.
  • در فرم نظرات می‌توانید از برخی کدهای ساده HTML استفاده نمایید.
  • لطفاً فینگلیش ننویسید!
 
تبليغات متني

تبلیغات متنی شما در اینجا