public void Execute(IActivityRequest request, IActivityResponse response) { String sourcePath = request.Inputs["FTP File Path"].AsString(); String savePath = request.Inputs["File Save Path"].AsString(); bool useSSL = Convert.ToBoolean(request.Inputs["UseSSL"].AsString()); // Get the object used to communicate with the server. FtpWebRequest ftpWebRequest = (FtpWebRequest)WebRequest.Create(sourcePath); ftpWebRequest.Method = WebRequestMethods.Ftp.DownloadFile; ftpWebRequest.EnableSsl = useSSL; ftpWebRequest.Credentials = new NetworkCredential(settings.UserName, settings.Password); FtpWebResponse ftpWebResponse = (FtpWebResponse)ftpWebRequest.GetResponse(); Stream responseStream = ftpWebResponse.GetResponseStream(); StreamReader reader = new StreamReader(responseStream); StreamWriter writer = new StreamWriter(savePath); writer.Write(reader.ReadToEnd()); writer.Close(); reader.Close(); ftpWebResponse.Close(); response.Publish("Downloaded File Path", savePath); }
public void Execute(IActivityRequest request, IActivityResponse response) { String deletePath = request.Inputs["FTP File Path"].AsString(); bool useSSL = Convert.ToBoolean(request.Inputs["UseSSL"].AsString()); DeleteFileOnServer(new Uri(deletePath), useSSL); }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String objID = request.Inputs["CI_ID"].AsString(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CMInterop.connectSCCMServer(SCCMServer, userName, password); using (connection) { String[] propertyNameChoices = CMInterop.getSCCMObjectPropertyNames(connection, "SMS_AuthorizationList"); foreach (String propertyName in propertyNameChoices) { if ((request.Inputs.Contains(propertyName + " : Property Type")) && (request.Inputs.Contains(propertyName + " : Property Value"))) { CMInterop.modifySCCMAuthorizationList(connection, objID, request.Inputs[(propertyName + " : Property Type")].AsString(), propertyName, request.Inputs[(propertyName + " : Property Value")].AsString()); } } IResultObject col = null; col = CMInterop.getSCCMAuthorizationList(connection, "CI_ID LIKE '" + objID + "'"); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Authorization Lists", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String filter = request.Inputs["Filter Query"].AsString(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CMInterop.connectSCCMServer(SCCMServer, userName, password); using (connection) { IResultObject col = CMInterop.getSCCMObject(connection, "SMS_R_System", filter); List <system> systemCollection = new List <system>(); foreach (IResultObject obj in col) { ObjCount++; systemCollection.Add(new system(obj)); } if (systemCollection != null) { response.WithFiltering().PublishRange(getObjects(systemCollection)); } response.Publish("Number of Systems", ObjCount); CMInterop.removeSCCMObject(connection, filter, "SMS_R_System"); } }
public void Execute(IActivityRequest request, IActivityResponse response) { string ouName = request.Inputs["New OU Name"].AsString(); string parentLDAPPath = CapitalizeLDAPPath(request.Inputs["Parent OU LDAP Path"].AsString()); string ouDescription = string.Empty; if (request.Inputs.Contains("New OU Description")) { ouDescription = request.Inputs["New OU Description"].AsString(); } string connectionPrefix = parentLDAPPath; DirectoryEntry dirEntry = new DirectoryEntry(connectionPrefix, credentials.UserName + "@" + credentials.Domain, credentials.Password); DirectoryEntry newOU = dirEntry.Children.Add("OU=" + ouName, "OrganizationalUnit"); try { if (!ouDescription.Equals(string.Empty)) { newOU.Properties["description"].Value = ouDescription; } newOU.CommitChanges(); } catch (Exception e) { response.ReportErrorEvent("Error setting description", e.Message.ToString()); } string ouLDAPPath = newOU.Path; response.Publish("Organization Unit LDAP Path", ouLDAPPath); }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String DisplayName = request.Inputs["Display Name"].AsString(); String Description = request.Inputs["Description"].AsString(); String InformativeURL = request.Inputs["Informative URL"].AsString(); String LocaleID = request.Inputs["LocaleID"].AsString(); String UpdatesList = request.Inputs["Updates List (CSV)"].AsString(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CM2012Interop.connectSCCMServer(SCCMServer, userName, password); using (connection) { try { IResultObject col = CM2012Interop.createSCCMAuthorizationList(connection, DisplayName, Description, InformativeURL, LocaleID, UpdatesList); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } } catch (Exception ex) { response.LogErrorMessage(ex.Message); } response.Publish("Number of Packages", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String objID = request.Inputs["Collection ID"].AsString(); String ruleName = request.Inputs["Rule Name"].AsString(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CM2012Interop.connectSCCMServer(SCCMServer, userName, password); using (connection) { CM2012Interop.removeSCCMCollectionMember(connection, objID, ruleName); IResultObject col = null; col = CM2012Interop.getSCCMCollection(connection, "CollectionID LIKE '" + objID + "'"); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Collections", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { userName = settings.UserName; password = settings.Password; domain = settings.Domain; port = settings.Port; virtualCenter = settings.VirtualCenter; VM = request.Inputs["VM"].AsString(); Name = request.Inputs["Name"].AsString(); MemoryMB = request.Inputs["MemoryMB"].AsString(); NumCpu = request.Inputs["NumCpu"].AsString(); GuestId = request.Inputs["GuestId"].AsString(); AlternateGuestName = request.Inputs["AlternateGuestName"].AsString(); OSCustomizationSpec = request.Inputs["OSCustomizationSpec"].AsString(); HARestartPriority = request.Inputs["HARestartPriority"].AsString(); HAIsolationResponse = request.Inputs["HAIsolationResponse"].AsString(); DRSAutomationLevel = request.Inputs["DRSAutomationLevel"].AsString(); VMSwapfilePolicy = request.Inputs["VMSwapfilePolicy"].AsString(); Description = request.Inputs["Description"].AsString(); Template = request.Inputs["Template"].AsString(); Snapshot = request.Inputs["Snapshot"].AsString(); response.WithFiltering().PublishRange(getVM()); }
public void Execute(IActivityRequest request, IActivityResponse response) { string comment = string.Empty; string DfsEntryPath = request.Inputs[ResourceStrings.DfsEntryPath].AsString(); string ServerName = request.Inputs[ResourceStrings.ServerName].AsString(); string PathName = request.Inputs[ResourceStrings.DfsEntryPath].AsString(); bool DFS_ADD_VOLUME = Convert.ToBoolean(request.Inputs[ResourceStrings.DFS_ADD_VOLUME].AsString()); if (request.Inputs.Contains(ResourceStrings.Comment)) { comment = request.Inputs[ResourceStrings.Comment].AsString(); } int result = 0; if (DFS_ADD_VOLUME) { result = NetDfsAdd(DfsEntryPath, ServerName, PathName, comment, ResourceStrings.Value_DFS_ADD_VOLUME); } else { result = NetDfsAdd(DfsEntryPath, ServerName, PathName, comment, ResourceStrings.Value_NO_DFS_ADD_VOLUME); } response.Publish(ResourceStrings.NERR_Success, result); response.Publish(ResourceStrings.DfsEntryPath, DfsEntryPath); }
public void Execute(IActivityRequest request, IActivityResponse response) { String results = "Success"; String KeyPath = request.Inputs["Key Path: HKLM:\\"].AsString(); String ServerName = request.Inputs["Server Name"].AsString(); try { RegistryKey rk = RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, ServerName); rk.DeleteSubKeyTree(KeyPath); rk.OpenSubKey(KeyPath); if (rk.Name == null) { results = "Success"; } else { results = "Failure"; } } catch (Exception ex) { response.LogErrorMessage(ex.Message.ToString()); throw ex; } response.Publish("Results", results); }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; int referenceID = (int)request.Inputs["Reference Computer Resource ID"].AsUInt32(); int destinationID = (int)request.Inputs["Destination Computer Resource ID"].AsUInt32(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CMInterop.connectSCCMServer(SCCMServer, userName, password); using (connection) { CMInterop.associateComputer(connection, referenceID, destinationID); IResultObject col = null; col = CMInterop.getSCCMComputer(connection, Convert.ToString(destinationID), "", ""); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Systems", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String objID = request.Inputs["Package ID"].AsString(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CM2012Interop.connectSCCMServer(SCCMServer, userName, password); try { String[] propertyNameChoices = CM2012Interop.getSCCMObjectPropertyNames(connection, "SMS_SoftwareUpdatesPackage"); foreach (String propertyName in propertyNameChoices) { if ((request.Inputs.Contains(propertyName + " : Property Type")) && (request.Inputs.Contains(propertyName + " : Property Value"))) { CM2012Interop.modifySCCMSoftwareUpdatesPackage(connection, objID, request.Inputs[(propertyName + " : Property Type")].AsString(), propertyName, request.Inputs[(propertyName + " : Property Value")].AsString()); } } IResultObject col = CM2012Interop.getSCCMSoftwareUpdatesPackage(connection, "PackageID LIKE '" + objID + "'"); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Packages", ObjCount); } finally { connection.Close(); connection.Dispose(); } }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String pkgID = request.Inputs["Existing Package ID"].AsString(); String prgName = request.Inputs["Existing Program Name"].AsString(); String prgOSMaxVersion = request.Inputs["New Max Version"].AsString(); String prgOSMinVersion = request.Inputs["New Min Version"].AsString(); String prgOSName = request.Inputs["New Name"].AsString(); String prgOSPlatform = request.Inputs["New Platform"].AsString(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CM2012Interop.connectSCCMServer(SCCMServer, userName, password); using (connection) { CM2012Interop.modifySCCMProgramSupportedPlatforms(connection, pkgID, prgName, prgOSMaxVersion, prgOSMinVersion, prgOSName, prgOSPlatform); IResultObject col = CM2012Interop.getSCCMProgram(connection, "PackageID LIKE '" + pkgID + "' AND ProgramName LIKE '" + prgName + "'"); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Programs", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { String sourcePath = request.Inputs["Source File Path"].AsString(); String savePath = request.Inputs["Destination File Path"].AsString(); bool useSSL = Convert.ToBoolean(request.Inputs["UseSSL"].AsString()); // Get the object used to communicate with the server. FtpWebRequest ftpWebRequest = (FtpWebRequest)WebRequest.Create(savePath); ftpWebRequest.Method = WebRequestMethods.Ftp.UploadFile; ftpWebRequest.EnableSsl = useSSL; // This example assumes the FTP site uses anonymous logon. ftpWebRequest.Credentials = new NetworkCredential(settings.UserName, settings.Password); // Copy the contents of the file to the request stream. StreamReader sourceStream = new StreamReader(sourcePath); byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd()); sourceStream.Close(); ftpWebRequest.ContentLength = fileContents.Length; Stream requestStream = ftpWebRequest.GetRequestStream(); requestStream.Write(fileContents, 0, fileContents.Length); requestStream.Close(); FtpWebResponse ftpWebResponse = (FtpWebResponse)ftpWebRequest.GetResponse(); ftpWebResponse.Close(); response.Publish("Status", ftpWebResponse.StatusDescription); }
public async Task SetActivityResponseAsync(IActivityResponse activityResponse) { if (ReferenceEquals(this._ActivityResponse, activityResponse)) { return; } if (activityResponse is null) { throw new ArgumentNullException(nameof(activityResponse)); } var prev = System.Threading.Interlocked.CompareExchange(ref this._ActivityResponse, activityResponse, null); if (prev is null) { var activityEvent = activityResponse.GetAsActivityEvent(this); await this.AddActivityEventAsync(activityEvent); this._ActivityCompletion.TrySetResult(activityResponse); } else { throw new ArgumentException("already set", nameof(activityResponse)); } }
public void Execute(IActivityRequest request, IActivityResponse response) { computerName = request.Inputs["Computer Name"].AsString(); taskName = request.Inputs["Task Name"].AsString(); response.WithFiltering().PublishRange(getScheduledTasks()); response.Publish("Number of Tasks", numberOfTasks); }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String pkgName = request.Inputs["New Package Name"].AsString(); String pkgDescription = request.Inputs["New Package Description"].AsString(); int pkgSourceFlag = (int)request.Inputs["New Package Source Flag"].AsUInt32(); String pkgSourcePath = request.Inputs["New Package Source Path"].AsString(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CM2012Interop.connectSCCMServer(SCCMServer, userName, password); using (connection) { IResultObject col = CM2012Interop.createSCCMPackage(connection, pkgName, pkgDescription, pkgSourceFlag, pkgSourcePath); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Packages", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String objID = request.Inputs["Collection ID"].AsString(); String ruleName = request.Inputs["Rule Name"].AsString(); String wqlQuery = request.Inputs["WQL Query"].AsString(); String limitCollectionID = String.Empty; if (request.Inputs.Contains("Collection ID to Limit Query To")) { limitCollectionID = request.Inputs["Collection ID to Limit Query To"].AsString(); } //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CMInterop.connectSCCMServer(SCCMServer, userName, password); using (connection) { CMInterop.addSCCMCollectionRule(connection, objID, ruleName, wqlQuery, limitCollectionID); IResultObject col = null; col = CMInterop.getSCCMCollection(connection, "CollectionID LIKE '" + objID + "'"); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Collections", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String objID = request.Inputs["Advertisement ID"].AsString(); DateTime startTime = request.Inputs["Start Time"].AsDateTime(); int dayDuration = request.Inputs["Day Duration"].AsInt32(); int hourDuration = request.Inputs["Hour Duration"].AsInt32(); int minuteDuration = request.Inputs["Minute Duration"].AsInt32(); bool isGMT = request.Inputs["Is GMT"].AsBoolean(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CMInterop.connectSCCMServer(SCCMServer, userName, password); using (connection) { CMInterop.modifySCCMAdvertisementAddAssignmentScheduleNonReccuring(connection, objID, isGMT, dayDuration, hourDuration, minuteDuration, startTime); IResultObject col = CMInterop.getSCCMAdvertisement(connection, "AdvertisementID LIKE '" + objID + "'"); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Advertisements", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String objID = request.Inputs["Collection ID"].AsString(); String contentIDList = request.Inputs["Content ID List (CSV)"].AsString(); bool refreshDPs = request.Inputs["Refresh DPs"].AsBoolean(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CM2012Interop.connectSCCMServer(SCCMServer, userName, password); using (connection) { CM2012Interop.modifySCCMSoftwareUpdatesPackageRemoveCIs(connection, objID, contentIDList, refreshDPs); IResultObject col = null; col = CM2012Interop.getSCCMSoftwareUpdatesPackage(connection, "PackageID LIKE '" + objID + "'"); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Collections", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { string EndingBefore = request.Inputs["Clear History Before Date"].AsString(); string actionResult = FimSyncWmiServices.ClearPasswordHistory(connectionSettings, EndingBefore); response.Publish("Action Result", actionResult); }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String filter = request.Inputs["Filter Query"].AsString(); String objClass = request.Inputs["Class"].AsString(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CMInterop.connectSCCMServer(SCCMServer, userName, password); using (connection) { IResultObject col = CMInterop.getSCCMObject(connection, objClass, filter); CMInterop.removeSCCMObject(connection, filter, objClass); foreach (IResultObject obj in col) { ObjCount++; } response.Publish("Number of Objects", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { userName = settings.UserName; password = settings.Password; domain = settings.Domain; exchangeVersion = settings.ExchangeVersion; serviceURL = settings.ServiceUrl; AppointmentID = request.Inputs["Appointment Id"].AsString(); StartDate = request.Inputs["Start Date"].AsString(); EndDate = request.Inputs["End Date"].AsString(); Calendar = request.Inputs["Calendar Name"].AsString(); string alternateMailbox = string.Empty; if (request.Inputs.Contains("Alternate Mailbox")) { alternateMailbox = request.Inputs["Alternate Mailbox"].AsString(); } ExchangeService service = new ExchangeService(); switch (exchangeVersion) { case "Exchange2007_SP1": service = new ExchangeService(ExchangeVersion.Exchange2007_SP1); break; case "Exchange2010": service = new ExchangeService(ExchangeVersion.Exchange2010); break; case "Exchange2010_SP1": service = new ExchangeService(ExchangeVersion.Exchange2010_SP1); break; default: service = new ExchangeService(); break; } service.Credentials = new WebCredentials(userName, password, domain); String AccountUrl = userName + "@" + domain; if (serviceURL.Equals("Autodiscover")) { service.AutodiscoverUrl(AccountUrl); } else { service.Url = new Uri(serviceURL); } if (!alternateMailbox.Equals(String.Empty)) { service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, alternateMailbox); } response.WithFiltering().PublishRange(getAppointment(service)); }
public void Execute(IActivityRequest request, IActivityResponse response) { string messageQueue = request.Inputs[destinationQueue].AsString(); string message = request.Inputs[inputMessage].AsString(); bool useAuthentication = request.Inputs[authentiation].AsBoolean(); // check if queue exists, if not create it MessageQueue msMq = null; if (!MessageQueue.Exists(messageQueue)) { throw new Exception(String.Format("The message queue\n{0}\ndoes not exist", messageQueue)); } else { msMq = new MessageQueue(messageQueue); } using (msMq) { Message msg = new Message(message); msg.UseAuthentication = useAuthentication; msMq.Send(msg, MessageQueueTransactionType.Single); } response.Publish(destinationQueue, messageQueue); response.Publish(inputMessage, message); response.Publish(authentiation, useAuthentication); response.Publish(status, "Success"); }
public void Execute(IActivityRequest request, IActivityResponse response) { computerName = request.Inputs["Computer Name"].AsString(); taskName = request.Inputs["Task Name"].AsString(); response.WithFiltering().PublishRange(AddTrigger()); }
public void Execute(IActivityRequest request, IActivityResponse response) { String sourceForestName = request.Inputs["Source Forest Name"].AsString(); String targetForestName = request.Inputs["Target Forest Name"].AsString(); String TargetForestUsername = String.Empty; String TargetForestUserPassword = String.Empty; TargetForestUsername = request.Inputs["Target Forest Username"].AsString(); TargetForestUserPassword = request.Inputs["Target Forest User Password"].AsString(); Forest sourceForest; Forest targetForest; sourceForest = Forest.GetForest(new DirectoryContext(DirectoryContextType.Forest, sourceForestName, credentials.UserName + "@" + credentials.Domain, credentials.Password)); if (TargetForestUsername != String.Empty && TargetForestUserPassword != String.Empty) { targetForest = Forest.GetForest(new DirectoryContext(DirectoryContextType.Forest, targetForestName, TargetForestUsername, TargetForestUserPassword)); } else { targetForest = Forest.GetForest(new DirectoryContext(DirectoryContextType.Forest, targetForestName, credentials.UserName + "@" + credentials.Domain, credentials.Password)); } sourceForest.DeleteTrustRelationship(targetForest); response.Publish("Source Forest Name", sourceForestName); response.Publish("Target Forest Name", targetForestName); }
public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String pkgID = request.Inputs["Existing Package ID"].AsString(); String prgName = request.Inputs["New Program Name"].AsString(); String prgComment = request.Inputs["New Program Comment"].AsString(); String prgCommandLine = request.Inputs["New Program Command Line"].AsString(); int prgMaxRunTime = (int)request.Inputs["New Program Max Runtime"].AsUInt32(); String prgWorkingDirectory = request.Inputs["New Program Working Directory"].AsString(); //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CMInterop.connectSCCMServer(SCCMServer, userName, password); using (connection) { IResultObject col = CMInterop.createSCCMProgram(connection, pkgID, prgName, prgComment, prgCommandLine, prgMaxRunTime, prgWorkingDirectory); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Programs", ObjCount); } }
public void Execute(IActivityRequest request, IActivityResponse response) { String sourcePath = request.Inputs["Source File Path"].AsString(); String savePath = request.Inputs["Destination File Path"].AsString(); bool useSSL = Convert.ToBoolean(request.Inputs["UseSSL"].AsString()); // Get the object used to communicate with the server. FtpWebRequest ftpWebRequest = (FtpWebRequest)WebRequest.Create(savePath); ftpWebRequest.Method = WebRequestMethods.Ftp.ListDirectoryDetails; ftpWebRequest.EnableSsl = useSSL; // This example assumes the FTP site uses anonymous logon. ftpWebRequest.Credentials = new NetworkCredential(settings.UserName, settings.Password); FtpWebResponse ftpWebResponse = (FtpWebResponse)ftpWebRequest.GetResponse(); Stream responseStream = ftpWebResponse.GetResponseStream(); using (StreamReader sr = new StreamReader(responseStream)) { while (sr.Peek() >= 0) { response.Publish("File Details", sr.ReadLine()); } } }
public void Execute(IActivityRequest request, IActivityResponse response) { SecureString password = new SecureString(); settings.Password.ToCharArray().ToList().ForEach(password.AppendChar); PSCredential creds = new PSCredential(settings.UserName, password); PSRunspaceCreationData creationData = new PSRunspaceCreationData(); creationData.Credentials = creds; creationData.Hostname = request.Inputs["Computer name"].AsString(); creationData.Port = request.Inputs["Connection port"].AsInt32(); creationData.UseSsl = request.Inputs["Use SSL"].AsBoolean(); creationData.LoadMachineProfile = request.Inputs["Load host profile"].AsBoolean(); creationData.Name = request.Inputs["Session name"].AsString().ToUpper(); IRunspaceManager runspaceManager = PSRunspaceManger.CreateClient(); RemoteOperationResult result = runspaceManager.OpenRunspace(creationData); if (!result.Success) { throw new Exception(result.Message); } response.Publish("Session name", creationData.Name); }
public void Execute(IActivityRequest request, IActivityResponse response) { userName = settings.UserName; password = settings.Password; domain = settings.Domain; serviceURL = settings.ServiceUrl; exchangeVersion = settings.ExchangeVersion; emailID = request.Inputs["Email ID"].AsString(); ExchangeService service = new ExchangeService(); switch (exchangeVersion) { case "Exchange2007_SP1": service = new ExchangeService(ExchangeVersion.Exchange2007_SP1); break; case "Exchange2010": service = new ExchangeService(ExchangeVersion.Exchange2010); break; case "Exchange2010_SP1": service = new ExchangeService(ExchangeVersion.Exchange2010_SP1); break; default: service = new ExchangeService(); break; } service.Credentials = new WebCredentials(userName, password, domain); String AccountUrl = userName + "@" + domain; if (serviceURL.Equals("Autodiscover")) { service.AutodiscoverUrl(AccountUrl); } else { service.Url = new Uri(serviceURL); } PropertySet propSet = new PropertySet(BasePropertySet.FirstClassProperties, ItemSchema.MimeContent, EmailMessageSchema.IsRead); EmailMessage message = EmailMessage.Bind(service, emailID, propSet); getAttachments(message); if (message.HasAttachments) { response.Publish("Email Exported", message.Id.ToString()); response.WithFiltering().PublishRange(getAttachments(message)); } else { response.Publish("Email Exported", message.Id.ToString()); response.WithFiltering().PublishRange(getAttachments(message)); } }