public IObservable <TdApi.Ok> EnableProxy(TdApi.Proxy proxy) { return(_agent.Execute(new TdApi.EnableProxy { ProxyId = proxy.Id })); }
public IObservable <Unit> EnableProxy(TdApi.Proxy proxy) { return(_agent.Execute(new TdApi.EnableProxy { ProxyId = proxy.Id }) .Select(_ => Unit.Default)); }
public IObservable <TdApi.Proxy> AddProxy(TdApi.Proxy proxy) { return(_agent.Execute(new TdApi.AddProxy { Server = proxy.Server, Port = proxy.Port, Type = proxy.Type })); }
public IObservable <TdApi.Proxy> UpdateProxy(TdApi.Proxy proxy) { return(_agent.Execute(new TdApi.EditProxy { ProxyId = proxy.Id, Server = proxy.Server, Port = proxy.Port, Type = proxy.Type })); }
public static ProxyModel FromProxy(TdApi.Proxy proxy) { var model = new ProxyModel { Id = proxy.Id, Proxy = proxy, IsEnabled = proxy.IsEnabled, IsSaved = proxy.Id != 0 }; model.Server = proxy.Server ?? ""; model.Port = proxy.Port == 0 ? "" : proxy.Port.ToString(); model.Username = ""; model.Password = ""; model.Secret = ""; switch (proxy.Type) { case TdApi.ProxyType.ProxyTypeSocks5 socks5: model.IsSocks5 = true; model.Username = socks5.Username ?? ""; model.Password = socks5.Password ?? ""; break; case TdApi.ProxyType.ProxyTypeHttp http: model.IsHttp = true; model.Username = http.Username ?? ""; model.Password = http.Password ?? ""; break; case TdApi.ProxyType.ProxyTypeMtproto mtproto: model.IsMtProto = true; model.Secret = mtproto.Secret ?? ""; break; } model.IsServerInputVisible = true; model.IsUsernameInputVisible = model.IsSocks5 || model.IsHttp; model.IsPasswordInputVisible = model.IsSocks5 || model.IsHttp; model.IsSecretInputVisible = model.IsMtProto; model.IsRemovable = true; model.IsEditable = true; return(model); }
private static IObservable <ProxyModel> AddProxy( this ProxyPopupContext context, IProxyManager proxyManager) { var proxy = new TdApi.Proxy { Server = null, Port = 0, Type = new TdApi.ProxyType.ProxyTypeSocks5 { Username = null, Password = null } }; var proxyModel = ProxyModel.FromProxy(proxy); return(Observable.Return(proxyModel)); }
private IObservable <Unit> AddProxy(IProxyManager proxyManager) { var proxy = new TdApi.Proxy { Server = null, Port = 0, Type = new TdApi.ProxyType.ProxyTypeSocks5 { Username = null, Password = null } }; var proxyModel = ProxyModel.FromProxy(proxy); Model.Proxies.Add(proxyModel); return(Observable.Empty <Unit>()); }
public TdApi.Proxy ToProxy() { var proxy = new TdApi.Proxy { Id = Proxy?.Id ?? 0, IsEnabled = Proxy?.IsEnabled ?? false, LastUsedDate = Proxy?.LastUsedDate ?? 0 }; int.TryParse(Port, out var port); proxy.Port = port; proxy.Server = Server; if (IsSocks5) { proxy.Type = new TdApi.ProxyType.ProxyTypeSocks5 { Username = Username, Password = Password }; } if (IsHttp) { proxy.Type = new TdApi.ProxyType.ProxyTypeHttp { Username = Username, Password = Password }; } if (IsMtProto) { proxy.Type = new TdApi.ProxyType.ProxyTypeMtproto { Secret = Secret }; } return(proxy); }
public static ProxyModel FromProxy(TdApi.Proxy proxy) { var model = new ProxyModel { Proxy = proxy }; model.Server = proxy.Server; model.Port = proxy.Port == 0 ? "" : proxy.Port.ToString(); switch (proxy.Type) { case TdApi.ProxyType.ProxyTypeSocks5 socks5: model.IsSocks5 = true; model.Username = socks5.Username; model.Password = socks5.Password; break; case TdApi.ProxyType.ProxyTypeHttp http: model.IsHttp = true; model.Username = http.Username; model.Password = http.Password; break; case TdApi.ProxyType.ProxyTypeMtproto mtproto: model.IsMtProto = true; model.Secret = mtproto.Secret; break; } model.IsUsernameInputVisible = model.IsSocks5 || model.IsHttp; model.IsPasswordInputVisible = model.IsSocks5 || model.IsHttp; model.IsSecretInputVisible = model.IsMtProto; return(model); }