Automated publishing into AVAIL Channels
AVAIL Stream is an Enterprise service that monitors selected folders for changes and publishes these changes in AVAIL automatically, based on guidelines you provide. Stream automates the process of making content readily available to your users.
A Basic Example
Stream could be monitoring a folder called “Revit Families.” A rule (called a Stream Definition) could be set to automatically index RFAs into a designated Channel in AVAIL. If an RFA and a JPG are added to this folder, Stream would add the RFA to the Channel in AVAIL, but exclude the JPG.
If the RFA is removed or changed in the file system, it will automatically be removed or updated in the AVAIL Channel.
More explicitly, Stream is a rules-based content routing/event management system with the ability to monitor and route dynamically changing content on a File System into AVAIL. It is installed as a service directly on your network. Stream does not modify content on the file system.
Stream is a companion to the AVAIL Desktop that allows publishers to automate their workflows by monitoring file activity in targeted file system folders. Stream is configured with user-defined rules called Stream Definitions. Stream Definitions are created and managed through the Stream interface in AVAIL Desktop.
Stream Definitions define:
- Which folders on your network you want to monitor
- What content you want to index into AVAIL
- What Channels you want this content to appear in
- And what Tags you want to be attached to this content
Stream offers an efficient way to manage the dynamic files that your teams are using, modifying, and creating during the lifecycle of a project.
Stream Installation
Stream is available for Enterprise customers. Arrange a Stream installation call by contacting support@getavail.com. We provide the installer during the call, ensure it is working properly, and answer any questions you have. The call normally lasts about 30-45 minutes.
What is a Stream Definition?
A Stream Definition is a set of rules that defines what content on your file system will be added to an AVAIL Channel, as well as what Tags will be associated with this content.
As mentioned in the overview, Stream Definitions define:
- Which folders on your network you want to monitor
- What content you want to index into AVAIL
- What Channels you want this content to appear in
- What Tags you want to be associated to this content
General Things to Know About a Stream Definition
- A Stream Definition targets a single Channel to drive content into
- To drive content into two separate channels, you must create two separate Stream Definitions.
- A Stream Definition can monitor content from multiple folders
- Stream Definitions can be edited after being created
Managing Stream
Once installed, Stream can be accessed from the Navigation panel on the left side of the AVAIL Desktop application. To open the Navigation panel, select the Navigation button and then select Stream. If you don’t see Stream, it is an indicator that you do not have publishing privileges in AVAIL or the Stream service has not been activated by the AVAIL team yet.
Creating a Stream Definition
Indexing content automatically into AVAIL using Stream is very similar to manually indexing content.
To get started creating your Stream Definition, select the server where the Stream Definition will be monitoring.
Note: A Green Arrow indicates the server is communicating with AVAIL, a Red Arrow indicates it is not communicating with AVAIL.
Step 1 — Create
Click the New Stream Definition icon.
To begin, name your Stream Definition and select which Channel to target. Optionally, you can also add a description to your Stream definition that can be seen when browsing Stream Definitions in the Stream tab.
Step 2 — Monitor
Next, choose what folders on the File System you want Stream to monitor. A few caveats exist in this step.
- Only UNC or DFS paths are accepted. They can be mapped to a drive letter but be sure the drive letter is consistent across all users.
- If you choose to monitor a DFS path, ensure the Stream file server exists as a DFS namespace for the selected path or else an error message will appear. (In Windows Explorer, right click the folder and go to the DFS tab for a list of namespaces that the folder exists in).
IMPORTANT NOTE: When choosing what directories to monitor, it is important to choose folder paths that your employees use to access your file server. All published Stream content within AVAIL will point to the base path that you select here. This means that mapped drives selected during this step must be mapped identically on end users’ machines (same drive letter and mapped location).
For each of these folders you can monitor subfolders by checking the box as indicated. This means that any file changes within the subfolders of these directories will also be reflected in our AVAIL channel. Unchecking this box means that we will ONLY see changes that occur in that specific folder. Any subfolder changes are ignored.
You can remove any one of these folders from the Stream definition by clicking the button in the respective folder’s row.
Step 3 — Filter
In step three, filters can limit what content is indexed into the AVAIL Channel from the targeted folder(s).
If no filters are added, all files and folders being monitored will be reflected in the target AVAIL Channel.
NOTE: If you are monitoring a very large File System without filters, everything in that directory will be indexed into your Channel.
Getting your filters just right can sometimes be tricky - we recommend testing on a smaller amount of content before applying to a large volume.
Filters are broken down into 4 components
From left to right: Type, Scope, Specification, and Condition.
These components will appear in this order from left to right.
- Type indicates whether the filter will be including or excluding content
- Scope indicates whether the filter will be applied to Files or Folders (and all of the files therein)
- Specification determines what methodology will be used to determine whether something matches the filter
- Condition determines what exactly the filter is looking for with regards to all the aforementioned components of the filter.
You should also notice in the above image the presence of terms OR & AND, respectively dividing or combining each filter. These terms adhere to the logic of boolean expressions, allowing you to apply this logic to your filters for more robust filtering options.
- The OR term means a file needs to only match against one of the two filters that the term is dividing to be considered a match.
- The AND term means a file must match against both of the filters it is combining to be considered a match.
TIP: It’s often helpful to read the filter as a sentence.
Examples:
Only Include Files where the File type is RFA or RVT.
Exclude indexing Folders Exactly matching Content for Review (therefore include anything else not in that folder).
For more on filtering, see our Content Filtering Reference Guide
Step 4 — Add Tags
The final step in creating our Stream Definition is telling it which Tags to associate to the content. The Tags here are added to every piece of content that’s indexed by this Stream definition.
It’s as simple as typing in the desired name of a Tag and hitting enter. As shown above, there are two Tags that are going to be added to our content from this Stream Definition.
The checkbox at the bottom provides an option for Stream to automatically import folder names beginning at the root level of the folder structure being monitored and including any subfolders.
For Revit-specific content, Stream also takes advantage of AVAIL’s Revit Tag Generator, located in C:\ProgramData\AVAIL\addins to automatically add designated Revit parameters as Tags. Open the RevitTagGenerator.xml in that location to view directions on its use.
Editing or Deleting Stream Definitions
To edit a Stream Definition, right-click on the definition and select Edit.
Editing an existing Stream definition triggers a rescan of any directories that the Stream Definition is monitoring. An easy edit is to add an exclusion for a random file type
To delete a Stream Definition, right-click on the definition and select Delete.
Additional Considerations Using Stream
- We recommend “starting small.” Test your Stream Definitions on a smaller subset of content to ensure you are getting your intended results before applying to a larger volume of content.
- When possible, be “inclusive” rather than “exclusive,” as it is more specific.
- Like in Ghostbusters, “crossing” Streams is possible, but there may be unintended consequences. Avoid overlapping Stream Definitions and Channels to reduce complexity.
Troubleshooting Stream
The most common reason content is not publishing as expected is the configuration of the Stream Definition itself. Start by reviewing the monitored folders and filters of your Stream Definitions for any accidental errors (i.e. selected the wrong folder to monitor or configured a definition incorrectly).
Article: Why are my Stream filters not filtering out content?
If Stream stops publishing content to your designated AVAIL Channels, use the following checklist to identify the problem.
Check the following on the file server that is running the AVAIL Stream Service
- The AVAIL Stream Service status is Running in the Services control panel
- The AVAIL Stream Sync Service status is Running in the Services control panel
- Navigate to “C:\ProgramData\Avail\Outbound” and ensure there are no files queued up in this directory.
- If files are present, wait 15 seconds and then refresh the directory. If no files have been removed from the directory, there could be an issue with the AVAIL Stream Sync Service. Restarting the service may resolve the issue.
Additionally, the service logs may list errors. The following logs can be found in C:\ProgramData\AVAIL\Stream
- client_hash_log.txt
- client_log.txt
- client_pipeline_log.txt
- application_log.txt
If additional help is required, please reach out to support@getavail.com