Custom:IO Actions

From Unified Remote

Jump to: navigation, search

Contents

Read (from file)

Reads text from a file.

Extras:

  • File: file name
  • Line (optional): 'head', 'tail', or line number

Example:

<Actions>
   <Action Name="ReadAllText">
      <ActionRef Name="Read" Target="IO">
         <Extra Name="File">C:/Test.txt</Extra>
      </ActionRef>
   </Action>

   <Action Name="ReadFirstLine">
      <ActionRef Name="Read" Target="IO">
         <Extra Name="File">C:/Test.txt</Extra>
         <Extra Name="Line">Head</Extra>
      </ActionRef>
   </Action>

   <Action Name="ReadLastLine">
      <ActionRef Name="Read" Target="IO">
         <Extra Name="File">C:/Test.txt</Extra>
         <Extra Name="Line">Tail</Extra>
      </ActionRef>
   </Action>

   <Action Name="ReadLineN">
      <ActionRef Name="Read" Target="IO">
         <Extra Name="File">C:/Test.txt</Extra>
         <Extra Name="Line">3</Extra>
      </ActionRef>
   </Action>

   <Action Name="Test">
      <ActionRef Name="ReadLastLine" />
      <ActionRef Name="Msg" Target="Util" Extra="Got: $res" />
   </Action>
</Actions>

The result is returned to the $res variable.

Read (from pipe)

Reads text from a named pipe.

Extras:

  • Pipe: pipe name
  • Line (optional): true/false
  • Timeout (optional) : number seconds before timeout

Example:

<Actions>
   <Action Name="ReadAll">
      <ActionRef Name="Read" Target="IO">
         <Extra Name="Pipe">MyTestPipe</Extra>
      </ActionRef>
   </Action>

   <Action Name="ReadLine">
      <ActionRef Name="Read" Target="IO">
         <Extra Name="Pipe">MyTestPipe</Extra>
         <Extra Name="Line">true</Extra>
      </ActionRef>
   </Action>

   <Action Name="ReadLineTimeout">
      <ActionRef Name="Read" Target="IO">
         <Extra Name="Pipe">MyTestPipe</Extra>
         <Extra Name="Line">true</Extra>
         <Extra Name="Timeout">5</Extra>
      </ActionRef>
   </Action>

   <Action Name="Test">
      <ActionRef Name="ReadLine" />
      <ActionRef Name="Msg" Target="Util" Extra="Got: $res" />
   </Action>
</Actions>

The result is returned to the $res variable.

Write (to file)

Writes text to a file.

Extras:

  • File: file name
  • Data: text
  • Line (optional): true, false
  • Truncate (optional): true, false

Example:

<Actions>
   <Action Name="Write">
      <ActionRef Name="Write" Target="IO">
         <Extra Name="File">C:/Test.txt</Extra>
         <Extra Name="Data">Hello World!</Extra>
      </ActionRef>
   </Action>

   <Action Name="WriteLine">
      <ActionRef Name="Write" Target="IO">
         <Extra Name="File">C:/Test.txt</Extra>
         <Extra Name="Line">true</Extra>
         <Extra Name="Data">Hello World!</Extra>
      </ActionRef>
   </Action>

   <Action Name="WriteTruncate">
      <ActionRef Name="Write" Target="IO">
         <Extra Name="File">C:/Test.txt</Extra>
         <Extra Name="Truncate">true</Extra>
         <Extra Name="Data">Hello World!</Extra>
      </ActionRef>
   </Action>

   <Action Name="Test">
      <ActionRef Name="WriteTruncate" />
   </Action>
</Actions>

Write (to pipe)

Writes text to a named pipe.

Extras:

  • Pipe: pipe name
  • Data: text
  • Line (optional): true, false
  • Timeout (optional) : number seconds before timeout

Example:

<Actions>
   <Action Name="Write">
      <ActionRef Name="Write" Target="IO">
         <Extra Name="Pipe">MyTestPipe</Extra>
         <Extra Name="Data">Hello World!</Extra>
      </ActionRef>
   </Action>

   <Action Name="WriteLine">
      <ActionRef Name="Write" Target="IO">
         <Extra Name="Pipe">MyTestPipe</Extra>
         <Extra Name="Line">true</Extra>
         <Extra Name="Data">Hello World!</Extra>
      </ActionRef>
   </Action>

   <Action Name="WriteTimeout">
      <ActionRef Name="Write" Target="IO">
         <Extra Name="Pipe">MyTestPipe</Extra>
         <Extra Name="Timeout">5</Extra>
         <Extra Name="Data">Hello World!</Extra>
      </ActionRef>
   </Action>

   <Action Name="Test">
      <ActionRef Name="WriteTruncate" />
   </Action>
</Actions>
Personal tools