سبد (0)

آموزش پروتکل SIP اندروید

آموزش پروتکل SIP اندروید

مخفف Session Initiation Protocol می باشد که پروتکلی می باشد که به راحتی به برنامه ها اجازه می دهد تا تماس های صوتی ورودی و خروجی را تنظیم کنند، بدون اینکه مجبور باشند session ها، سطح انتقال ارتباط، ضبط صدا و یا پلی بک (play back) را مستقیما سازماندهی کنند.

برنامه ها

برخی از برنامه های متداول SIP عبارتند از:

Video conferencing

Instant messaging

پیش نیازها

در اینجا پیش نیازهایی برای یک برنامه ی SIP ارائه شده است.

1)     اندروید OS باید 2.3 و یا بالاتر باشد.

2)     شما باید یک اتصال داده یا Wi Fi داشته باشد.

3)     شما باید یک اکانت SIP برای استفاده از این سرویس داشته باشید.

کلاس های SIP

در اینجا خلاصه ای از کلاس هایی را می بینید که در اندروید SIP وجود دارند.

  • SipAudioCall

    به یک تماس صوتی اینترنتی روی SIP رسیدگی می کند.

  • SipErrorCode

    کدهای خطای گزارش داده شده در طول فعالیت های SIP را تعریف می کند.

  • SipManager

    API ها را برای فعالیت های SIP، مانند برقراری اتصالات SIP، ارائه می دهد و دسترسی به سرویس های SIP مربوط را فراهم می کند.

  • SipProfile

    یک پروفایل SIP را، شامل یک اکانت SIP و اطلاعات حوزه و سرور، تعریف می کند.

  • SipSession

    یک SIP session را نشان می دهد که با یک دیالوگ SIP یا یک کنش تنها و نه در درون دیالوگ، در ارتباط است.

عملکردهای SIP

SIP دارای عملکردهای مهم زیر می باشد.

1)     SIP اجازه ی برقراری موقعیت یوزر را می دهد.

2)     SIP مکانیزمی برای مدیریت تماس ارائه می دهد.

3)     SIP ویژگی مذاکره را ارائه می دهد، طوری که همه ی گروه های حاضر در تماس می توانند با ویژگی های پشتیبانی شده بین آنها موافقت کنند.

مولفه های SIP

SIP دارای دو مولفه ی مهم می باشد که عبارتند از:

  1. User Agent Client (UAC)
  2. User Agent Server (UAS)

UAC

UAC یا User Agent Client آن یوزرهایی هستند که درخواست هایی را تولید می کنند و این درخواست ها را به سرور می فرستند. این درخواست ها توسط برنامه های کاربر که روی سیستم آنها در حال اجراست، تولید می شوند.

UAS

UAS و یا User Agent Server سیستم هایی هستند که درخواست تولید شده به وسیله ی UAC را می گیزند. UAS این درخواست ها را پردازش کرده و سپس طبق آنها پاسخ هایی تولید می کند.

مدیریت SIP

SIPManager یک API اندروید برای فعالیت های SIP می باشد، فعالیت هایی مانند برقراری اتصالات SIP، و دسترسی به سرویس های SIP مربوطه را فراهم می کند. این گروه نقطه ی آغاز برای هر فعالیت SIP می باشد. شما می توانید یک نمونه از آن را با newInstance() به دست آورید.

SipManager عملکردهای زیادی برای سازماندهی کردن فعالیت های SIP دارد. برخی از این عملکردها در جدول زیر ارائه شده اند.

  •  

    close(String localProfileUri)

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

  • getCallId(Intent incomingCallIntent)

    ID تماس را از تماس ورودی مشخصی می گیرد.

  • isOpened(String localProfileUri)

    اگر پروفایل مشخص شده ای از سرویس SIP برای برقراری و یا دریافت تماس باز باشد، آن را چک می کند.

  • isSipWifiOnly(Context context)

    اگر SIP فقط روی WiFi در دسترس باشد، true گزارش می دهد.

  • isRegistered(String localProfileUri)

    اگر سرویس SIP به طور موفقیت آمیزی پروفایل را روی ارائه کننده ی SIP (مشخص شده در پروفایل) برای تماس های دریافتی ثبت کرده باشد، آن را چک می کند.

  • isVoipSupported(Context context)

    اگر سیستم SIP را براساس VOIP API پشتیبانی کند، true گزراش می دهد.

  • takeAudioCall(Intent incomingCallIntent, SipAudioCall.Listener listener)

    یک تماس صوتی SIP برای گرفتن یک تماس ورودی، ایجاد می کند.

  • unregister(SipProfile localProfile, SipRegistrationListener listener)

    به صورت دستی پروفایل را از ارائه کننده ی SIP متناظر حذف می کند تا دریافت تماس های بیشتر را متوقف کند.

تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه