public void Giris(Bilgiler bilgi) // motoru çalýþtýran metod... { if (bilgi == null || !bilgi.GecerliMi()) { this.anaPencere.OturumKapandi(); return; } if (profil != null) // Zaten giriþ yapýlmýþ { return; } int transferTipi = 0; try { if (bilgi.Transfer != null) { if (bilgi.Transfer == "TCP") { transferTipi = Sabitler.RTCTR_TCP; } else if (bilgi.Transfer == "UDP") { transferTipi = Sabitler.RTCTR_UDP; } else if (bilgi.Transfer == "TLS") { transferTipi = Sabitler.RTCTR_TLS; } else { this.anaPencere.OturumKapandi(); return; } } } catch (COMException) { this.anaPencere.OturumKapandi(); } // RTC_EVENT.RTCE_PROFILE olayý tetiklendi... try { istemci.GetProfile(null, null, bilgi.URI, bilgi.Sunucu, transferTipi, 0); } catch (COMException ex) { Trace.WriteLine(ex.ToString()); } }
private void RegistrationStateChangeEvent(IRTCRegistrationStateChangeEvent registerEvent) { switch (registerEvent.State) { case RTC_REGISTRATION_STATE.RTCRS_UNREGISTERING: this.anaPencere.OturumKapatiliyor(registerEvent.Profile.UserName); break; case RTC_REGISTRATION_STATE.RTCRS_NOT_REGISTERED: // DisablePresence() çaðýrýldý, kiþiler artýk bizi offline görür this.BulunmaDurumuPasif(); this.anaPencere.OturumKapandi(); break; case RTC_REGISTRATION_STATE.RTCRS_REGISTERING: this.anaPencere.OturumAciliyor(); break; case RTC_REGISTRATION_STATE.RTCRS_REGISTERED: this.anaPencere.OturumAcildi(registerEvent.Profile.UserName); break; case RTC_REGISTRATION_STATE.RTCRS_REJECTED: case RTC_REGISTRATION_STATE.RTCRS_ERROR: { int durumKodu = registerEvent.StatusCode; // logon baþarýsýz, server yok veya authenticate gerekli if ((durumKodu == Sabitler.RTC_E_STATUS_CLIENT_UNAUTHORIZED) || (durumKodu == Sabitler.RTC_E_STATUS_CLIENT_PROXY_AUTHENTICATION_REQUIRED) || (durumKodu == Sabitler.RTC_E_STATUS_CLIENT_FORBIDDEN) || (durumKodu == Sabitler.RTC_E_STATUS_CLIENT_NOT_FOUND)) { // kullanýcýya authentication ekranýný göster... Bilgiler bilgi = this.anaPencere.DogrulamaFormuGoster(); if (bilgi != null && bilgi.GecerliMi()) { this.DogrulamaYap(bilgi.URI, bilgi.Kimlik, bilgi.Sifre); } else { this.Cikis(); this.BulunmaDurumuPasif(); this.anaPencere.OturumKapandi(); // oturum açýlamadý, kullanýcýyý uyar! if (kayitDurumu == RTC_REGISTRATION_STATE.RTCRS_REGISTERING) { this.anaPencere.MesajGoster("Giriþ Baþarýsýz!", "Hata"); } return; } } else { this.Cikis(); this.BulunmaDurumuPasif(); this.anaPencere.OturumKapandi(); // oturum açýlamadý, kullanýcýyý uyar! if (kayitDurumu == RTC_REGISTRATION_STATE.RTCRS_REGISTERING) { this.anaPencere.MesajGoster("Giriþ Baþarýsýz!", "Hata"); } return; } } break; case RTC_REGISTRATION_STATE.RTCRS_LOGGED_OFF: // sunucu profil kaydýný sildi. this.Cikis(); this.anaPencere.OturumKapatiliyor(registerEvent.Profile.UserName); break; case RTC_REGISTRATION_STATE.RTCRS_LOCAL_PA_LOGGED_OFF: break; case RTC_REGISTRATION_STATE.RTCRS_REMOTE_PA_LOGGED_OFF: break; default: break; } this.kayitDurumu = registerEvent.State; // Durumu güncelle. Önemli!!! }
public void Giris(Bilgiler bilgi) // motoru çalýþtýran metod... { if (bilgi == null || !bilgi.GecerliMi()) { this.anaPencere.OturumKapandi(); return; } if (profil != null) // Zaten giriþ yapýlmýþ { return; } int transferTipi = 0; try { if (bilgi.Transfer != null) { if (bilgi.Transfer == "TCP") transferTipi = Sabitler.RTCTR_TCP; else if (bilgi.Transfer == "UDP") transferTipi = Sabitler.RTCTR_UDP; else if (bilgi.Transfer == "TLS") transferTipi = Sabitler.RTCTR_TLS; else { this.anaPencere.OturumKapandi(); return; } } } catch (COMException) { this.anaPencere.OturumKapandi(); } // RTC_EVENT.RTCE_PROFILE olayý tetiklendi... try { istemci.GetProfile(null, null, bilgi.URI, bilgi.Sunucu, transferTipi, 0); } catch (COMException ex) { Trace.WriteLine(ex.ToString()); } }