Channel Pipeline Modules. 3
Capture Source. 3
DirectShow-Based Video Device. 3
DirectShow-Based Audio Device. 4
Network Camera. 5
Connect to Other CyeWeb. 6
Media URL source. 7
Analytics. 8
Basic Motion Detection. 8
NovoSun Video Content Analysis. 9
Import Notes. 10
Object Tracker. 10
Event Detectors. 14
Object Moving inside Region. 16
Detect Object Enter or Leave
Region(s). 17
Detect loitering object(s). 18
Detect objects congregating in an
area. 19
Detect illegally stopped object(s). 20
Detect object cross line(s). 21
Object Counter. 22
Filters. 23
Timestamp OSD Filter. 23
Mask Region Filter. 23
De-Interlace Filter. 24
Tag Overlay Filter. 24
POS Text Overlay Filter. 26
Event Handler. 28
Basic Event Presenter. 28
Video Content Analysis Result
Presenter. 29
Email Notification Module. 32
Alarm Popup. 34
Net Event Subscriber. 35
Net Event Forward. 35
Devices. 36
PTZ Control 36
RS232 Alarm Box. 37
Compression. 38
NovoSun Compression Module. 38
Application Module Settings. 41
Windows Media Broadcast. 41
Video Server. 42
Web Server. 42
Application Status Log. 44
E-Map. 45
Configuration. 45
Control 48
Spot Screen. 49
Transact (PoS). 49
Settings. 50
Connect to PoS. 50
Filtering. 51
Alarm.. 53
Net Service. 54
Browse and search. 56
Object Counter Statistics Module. 57
Net Service. 58
CyeWeb supports hybrid video and audio source. This means
your USB-webcam, PCI/PCI-E capture card, hardware compression card, IP Camera,
Windows Media Stream, remote CyeWeb…, etc can be connected on the same system.
However, you have to make sure there is no conflict in your hardware.
For example, sometimes PCI capture cards from different bands may not be able
to work together due to driver and hardware conflicts. Your OS may crash
instantly if this situation occurs.

This module allows you to select a DirectShow-based video
device as a video source. Examples of DirectShow-based device are USB webcam
and PCI/PCI-E capture cards (if the card vendor provides a driver with
DirectShow capture filter).
In the setting dialog you can select video standard, pixel
format, resolution (from 160x120 to 1920x1080), and frame rate (from 5fps to 60
fps).
In general, we recommend you to select I420 or YV12 as the
pixel format if your capture device supports them. But you should also test if
your capture device performs better on other pixel formats.
If you checked “Bind Module” but no video show up, you may
check “Use Device Provided Options”. We do not recommend you to use this option
unless it is necessary. In this case CyeWeb will no longer know the settings
and has no way to remember them.
Note: If your computer does not have any DirectShow
compatible devices or devices specially supported by CyeWeb, the “Module Type”
option will disappear. Also, some broken driver may not implement all necessary
interfaces even it is DirectShow compatible. These devices will not show up for
selection.

This module allows you to select a DirectShow-based audio
device as an attached audio source.
The word “attach” is to emphasize that the audio stream is
added independent to the video source; that is, they may not be already
synchronized. If this situation happens, you should tune the “Attach audio time
adjustment” in Misc Setting.

CyeWeb initially comes with some very common network camera
modules under Unconstraint Type. The most important ones are Jpeg and Mjpeg
because most network cameras in the market today support them. You should study
the instruction menu of your camera to figure out the network address and how
to setup an ID and password.

If your network camera supports Mpeg4 stream and the stream
format is windows media (generally the network address would end with “.asf”),
you could try to connect with the Windows Media URL module.
CyeWeb natively support Mpeg4/H.264 streams with Axis
cameras, HikVision cameras/DVS, ACTi cameras, AVTech cameras and Samsung
Techwin camera, etc. More Mpeg4/H.264 cameras will be supported in coming
updates.
For a list of support IP camera, please refer to: http://www.novosun.com/CyeWeb/SupportIPCameras.aspx

This module allows you to connect to a remote CyeWeb Video
Server.
The port number must match that of the Video Server setting
in the remote CyeWeb.
In the dialog you need to enter the remote channel number
you want to connect. The “Login ID” and “Login Password” must match an account
you created on the remote side, and that account must also have the “Remote
Connection to Video Server” permission.
On the right hand site you can build your site book, which
can save much time when you need to occasionally connect to some specific
sites. The site book is shared by all 64 channels. Please note that the site
data is saved in application persistence pool and is not bundled with the
setting data. If you reset the application persistence, your site book will be
clear also. We recommend you to export your site data whenever you finish a modification.

This module allows you to select a media file as video
source. NOT all media file formats are supported. Only those formats (such as
AVI, ASF, MPG…, etc) with corresponding DirectShow filter would work.
You can enable decompression within the DirectShow filter
pipeline. This is recommended if you are not sure whether your OS has the
corresponding windows media codec installed.

This module raises a “Motion Detect” event when motion is
detected on the “unmasked area”.
You can create unlimited number of detectors for a channel.
Each detector can has its own masked area, sensitivity and tag. The tag will be
inserted into the event being triggered and can be used as a keyword in video
searching.

Note: This module is available on CyeWeb Complete Edition
only.
This is a module to analyze video content for counting
objects, detecting loitering objects, detecting objects entering or leaving an
area …, etc.
This module has 2 sub-modules: object tracking and event
detection.
Object tracking is a technology to track objects in video streams. The result
of object tracking is then passed to event detectors, which incorporate some
predefined rules to define in what situation an event happens.
Please note that this module is to analyze content but not
to show result on the screen. Please use the “Video Content Analysis Result
Presenter” in Event Handler to configure how to present analysis result.
Before you use this module or decide to buy the CyeWeb
Edition that has this module, there are very important things you have to know.
-
Video content analysis is still an immature technology for general
environment; we cannot guarantee the accuracy of the result. But in our
tests, this technology is quite useful in some situations with acceptable
accuracy under certain environments and appropriate parameter
settings. Because of this reason, we decide to incorporate this technology
into CyeWeb.
-
This module should be operating under the following constraints:
1) Camera
must be settled fixed.
2) Video
signal must be stable – no illumination fluctuations.
3) Light
must be stable – no flashing.
4) Object
reflection (e.g. reflection from glass) may have negative effect on the accuracy.
5) Shadow
of objects may have negative effect. Try to tune the angle of your camera to
minimize this effect.
6) Object
overlapping may have negative effect. Try to tune the angle of your camera to
minimize object overlapping.
7) Do
not use this module in uncontrolled environment – this module would not work on
rainy or snowy day. If there are trees and leaves, mask those areas.
-
The functions provided by this module are professional. If possible, you
should ask a professional person (e.g. installers in your local area) to help
you. Since how to run this module significantly depends on the environment you
are in, our support to setting this module is quite limited.
Object tracking is the heart of almost all event detectors.
The proper setting of object tracker is one of the most important factors to
the accuracy of detector results. You should study every single setting
carefully, do some experiments, and tune the settings to produce the best
possible result.
You can create multiple object trackers for multiple event
detectors. But one tracker can also be shared by multiple detectors.
Object tracking is computational intensive. If the object
tracker setting for 2 event detectors can be the same, they should share the
same tracker. But in some situation, using multiple trackers is more
appropriate than sharing one tracker. For example, “illegally stopped object
detector” should have its own tracker because generally its tracker settings
should be significantly different from that of other detectors.

-
Object Track Mask Regions
you should mask the regions that you are not interested in. Also, you should
mask cluttering background such as trees and leaves.
Always expose just the area you are interested in. The more areas an object
tracker to process, the more computation time it require.
-
Detection interval
the interval between any 2 frames the tracker to process. If objects are not
moving fast, you can set this value larger. However, a too large value would
produce negative effect on accuracy while a lower value consumes more
computation time.
-
Minimum object life duration
this value tells the minimum time a moving region has existed to be considered
as an object.
-
Object maximum allow motionless time
this value tells when to consider a stop moving object to become a background.
-
Luminance Sensitivity
this value tells the sensitivity to luminance change. Please note that this
value should be properly set according to your environment. A high value does
NOT mean to produce better result.

-
Object maximum allow hidden time
this value tells the maximum allow time that an object disappear (e.g. hide
behind a building or tree). If an object has disappeared for this time, it is
considered dead.
-
Hidden-object life-time threshold
object tracker can remember object that disappears, but the object must have already
existed for some time. This value tells the time.
-
Object must be moving initially
“Moving” is a key to determine the boundary of an object and where it is. In
most case, an object is considered as an object after it has been moving for
some time. However, in some case, such as somebody drops a briefcase on the
ground, an object may appear suddenly and will never move. If you are
encountering these situations, you should uncheck this box.
-
Show Track Result
tell if you want to show tracking result (trajectory, boundary of objects, etc)
on the preview video.

-
Object Size(s)
this setting tell the expect sizes of objects you are interested in. Proper
setting of this item could significantly improve accuracy. You can add just
those sizes of objects you are interested in and ignored others. For example,
if you just want to track vehicle but not trunk, you should just add the
possible sizes of vehicle.
Initially CyeWeb’s video content analysis module cannot classify objects into
real things, such as car, bike, or pedestrian (we will do this later by adding
mathematics model of real things). However, defining sizes of objects could be
a way (though not efficient) to classify real objects at the current stage.
-
Size Variance
this value tells the variance of the defined object sizes.
-
Object moving speed
this value tells the moving speed of objects to be tracked. For example, if the
objects you are interested are pedestrian, you may set this to “slow”. If you
are interested in vehicle, you should set this to “fast”.
Note: It is hard to delivery all possible details for each
single setting. With the basic concepts, you should do experiments yourself to
study how to set the parameters for the best result.

Initially CyeWeb’s video content analysis module provides
seven event detectors. They are “Detect Object Moving inside Region”, “Detect
Object Enter or Leave Region(s)”, “Detect loitering object(s)”, “Detect objects
congregating in an area”, “Detect illegally stopped objects”, “Detect object
cross line(s)”, and “Object counter”.
Some detectors can be used to detect events that are
diverted from the detector’s name. For examples, you could use “Detect Object
Moving inside Region” to detect vehicles moving in illegal direction, or you
could use “Detect illegally stopped objects” to detect suspicious objects.

To add an event detector, press the add button. A dialog
will show up to choose a detector. At this time you should define a tag
for that detector instance. The tag will be inserted with the event being
triggered and can be used as a keyword in video searching. You can add multiple
instances of the same event detector with different settings.

This detector requires you to select an object tracker and
the directions to detect.

This detector requires you to select an object tracker and
the direction (entering or leaving) to detect.

This detector requires you to select an object tracker and a
threshold to define loitering. If an object stays or keeps moving in the
defined region for over the threshold time, it triggers the loitering event.

This detector requires you to select an object tracker and a
threshold of object number to define congregating. If the number of objects in
the defined region exceeds the threshold number, it triggers the event.

This detector requires you to select an object tracker and a
threshold to define “illegally stopped”. If an object stays motionless in the
defined areas for over the threshold time, it triggers the event.
Please note that the “object maximum allow motionless time”
setting in the selected tracker would affect this detector. If the value in the
tracker is smaller than the threshold defined in this detector, the “illegally
stopped” event will never be triggered because object stays motionless for that
long will be already considered as background. So generally this detector
should use its own tracker with a large “object maximum allow motionless time”
setting.

This detector requires you to select an object tracker and
the lines to detect.

This detector requires you to select an object tracker and
the lines to count. You can also configure when to reset the counter.

To embed a timestamp on the video you must bind this filter.
This filter allows you to add additional strings, such as channel number, in
the embedded timestamp.

If your video contains sensitive areas and you want to
exclude those areas from the video, you can use this filter.
You can add a de-interlace filter to a channel pipeline.
Please note that de-interlacing could make video look smoother but the process
cannot be reversed. We recommend you to not use this filter on channel
pipeline. Instead you could use this filter on playback system.
This filter can filter event tag to the screen, as below:

Below is the setting dialog:

You can configure the offset, font, font size, dwell time
(the interval the tag to stay on screen after the event is over), and event of
interest.
This filter overlay POS transaction to the live video, as
below:

This module can be used together with the Transact(POS)
application module, or on a client computer to subscribe POS transaction event
from CyeWeb on another computer and overlay transaction in real-time.
Below is the setting dialog:

In the dialog you can setup offsets, font, font size and
dwell time (the interval the transaction text to stay on screen after the
transaction is over).

This presenter presents events from Motion Detection Module
as alarm.
You can set the duration and color for visual alarm. You can
also configure whether to trigger sound alarm and alarm indicator.
|

|
|
The figure above shows that motion is detected on an area of
interest. The red outline area in the video is the visual alarm, and the red
circle on the channel bar is the alarm indicator. Clicking the
indicator will reset the alarm.
|

This is the module to present result of video content
analysis to the screen.
There are settings for object tracker and event detectors.
For object tracker, you can configure whether to show object
boundary, object direction, object trajectory, object center, alarm and normal colors.

For event detector, you can set the duration and color for
visual alarm. You can also configure whether to trigger sound alarm and alarm
indicator.
The setting for object counter presenter is a little bit
more:

More than the normal event detector setting, you can also
setup the count value font size, as well as select whether to show the tag and
count value on the left upper corner.

This module sends email to your email account whenever event
occurs. Here are descriptions of some selected settings:
-
Alarm Interval: the minimum interval between each email sending.
-
Attach Image: attach channel video images to the email. 5 images
will be attached. The sample interval between each image is 1 second.
You can also configure event of interest and tag of
interest.

Uncheck of “Tags of Interest” means you are interested in
all tags of that event.

This module pops up video window when selected events occur.
You can use regular expression pattern in defining “tags of interest”. Regular
expression is a very powerful tool to express text pattern. For a detail
tutorial you can search the Web. Here we show only the common and simplest
operations:
-
“.” : represent any single character.
-
“.*”: represent a string of zero or more characters.
-
“^” and “$”: indicate there should be no extra character before or after
the patterns.
-
“\”: represent an escape character. You can use escape characters to
tell the search engine to treat expression operators and this escape character
as regular characters.
Here are some examples:
-
“^ABC$”: represent a string of exactly “ABC”.
-
“^refund.*”: represent a string start with “refund” and flowed by any
number of characters.
-
“\$.*.,...\..*”: represent a string that contains a ‘$’ following by any
number of characters and then a ‘,’ and any 3 characters and then a ‘.’ and
then any number of characters. This pattern can search money amount greater
than $999.
Subscribe event from other instance of CyeWeb. This module
connects the Net Service module running on any other CyeWeb.

Note: the security mode must match that in the Net Service
to be connected.
This is a module to actively forward event to other instance
of Cyeweb. For example, in server-client solution, the clients may need to
actively inject event to the server. This is the module to use.

In the setting dialog you need to configure the destination
CyeWeb’s Net Service address, port, login id/password, channel, security mode,
and events to forward, etc.
Note: the security mode must match that in the destination
Net Service to be connected.

CyeWeb initially provide one device module, the PTZ control
module. Currently this module supports only Pelco_D and Pelco_P protocol.
This module allows you to connect external alarm box to integrate
sensors and digital outputs for controlling external devices.

In the setting dialog you can setup the protocol, serial
port, device address, alarm in (digital input), alarm out, etc.
In the “alarm in” setting there is a “check interval” for configuration
of the frequency to check the digital input. When the digital input state match
the setting, the module will post to the system a “Digital Input” event with
the tag you defined.
In the “alarm out” you can select the events of interest to
trigger sending of short or close circuit signal to the selected digital output
ports. Please note that in the “events of interest” there is an event “Alarm
Indicator Reset”. This is useful if you trigger something (e.g. signal a close
circuit signal to an external device) when the other events such as motion
detection occurs, and want to reset the state when the operator press the alarm
indicator.

CyeWeb currently has one compression module, which performs
video/audio compression for local storage and Internet broadcast. The
compression codec for audio and video are WMA Pro and WVC1 (a VC-1 compliant
codec, which is a direct competitor to H.264. You can find more information by
searching the keyword ‘VC-1’ on http://www.wikipedia.org
) respectively.
To locally saved or broadcast a channel, you have to bind
this module.
-
Storage and broadcast tabs: These 2 tabs have almost the same set
of settings; one for local storage and one for broadcast. They can be equal or
different. For example, you can configure that only video samples with motion
will be compressed and propagated to broadcast modules (such as Video Server
and Window Media Broadcast), while compression for local storage is
round-the-clock.
In general, we recommend you to use the same settings for both storage and
broadcast, as in the figure below. If the settings for storage and broadcast
are different, 2 compressors will be used, which is quite CPU-consuming.

-
Use existing compressed stream: Depending on your capture source,
there may be already compressed video/audio stream. For example, source from
network camera typically has a compressed Mjpeg stream. In this case you can
save a compressor.
Using existing compressed stream is not mandatory. You can choose to recompress
video/audio with software WVC1/WMA codec.
-
VBR and CBR: VBR stands for variable bit rate and CBR stands for
constant bit rate. We recommend you to use CBR if you need to webcast the
video. The default CBR bit rate is 512 Kbit/sec (524288 bit). This value is
high enough for D1 video. If your video source is in video resolution lower
than or equal to 720*480, we recommend you to set this to a lower value, such
as 256 Kbit/sec (262144), to lower the data size.
-
Prefer secondary compressed stream: Depending on your capture
source, there may be 2 existing compressed video/audio streams—the primary and
secondary compressed stream. This setting allows you to select which stream to
be used.
In hardware compression card, there is so-call “dual hardware compression”,
which offers 2 compressed streams.
Typically the quality of the primary stream is better than that of the other,
while the data size of the secondary is smaller. This type of capture source
is very appropriate in situation that you want high quality data to be stored
locally, while small-size data to be broadcasted over Internet. Checking this
box will make the secondary compressed stream to be used.
(“Dual hardware compression” capture cards will be available for sell on
NovoSun website soon after CyeWeb is released.)
-
Compressor Complexity: the compressor complexity of WVC1 codec.
Unless you have special reason, we highly recommend you to set this value to 0.
Theoretically a higher complexity value would generate better quality and
smaller-size data at the cost of more computation time. But in our tests, we
see high complexity value causes very high CPU usage but almost insensible
quality gain.
-
Key Frame Interval: The maximum interval between key frames
during compression. If the compressed stream needs to be broadcasted over
Internet, please set this value to around 2000 milliseconds. A bigger interval
would produce smaller-size data. This could be good for local storage but may
cause problem on Internet broadcast due to insufficient network bandwidth,
which causes frame dropping. If a key frame is dropped, all frames until the
next key frame will become useless and be dropped too.
-
Decode profile: Select the decode profile. You should set this
value according to the video resolution of the capture source. There is some
friendly information for the decode profile at wiki: http://en.wikipedia.org/wiki/VC-1
.
-
Pre-event time: adjustment to the start time of an event.
-
Post-event time: adjustment to the end time of an event.
-
Compress on event: compress video/audio data only when events in
the Events of Interest list occur.
-
Pre-compress Cache Size: the size of the buffer that stores
uncompressed data. Bigger size consumes more system memory, while a small size
would cause “Pre-event time” ineffective. You should calculate an appropriate
size according to the frame rate and resolution of your capture source. For
example, a video capture source with resolution 640x480 at 30fps and I420 pixel
format requires 640x480x30x1.5 = around 13 MB per second. So if you set the
“Pre-event time” to 2000 milliseconds (2 seconds), you would need about 26 MB
cache size for just video.
Please note that storage and broadcast share the same cache buffer.
Note: Data filter modules (such as
timestamp OSD, de-interlace, and mask-region filter) tamper data on uncompress
stream, and require software compression to propagate the result to local
storage or Internet broadcast. If you checked “Use existing compressed stream”
and a compressed stream really exists, the result generated in data filters
will not be propagated to storage or broadcast but just reflected on preview.

This module receives compressed video/audio from compression
module and then broadcast to Internet in Windows Media format. In the setting
dialog, you can select the channels to broadcast and set the maximum connection
clients allowed for each channel and also set the seed port. If you set the
seed port to 9801 (default), the broadcast URL for channel 1 is mms://<your_internet_address>:9801,
channel 2 is mms://<your_internet_address>:9802,
and so on. <your_internet_address> is the Internet address of your
computer. Windows Media Broadcast is over RTSP, HTTP or TCP/IP. (If you
broadcast media data that are not compressed in WVC1/WMV3/WMA, you have to
install the corresponding codec on the remote computer. You may download the
codec pack on our website.)
Please note that Windows Media Broadcast does not have
credential setting. If anyone knows your computer’s Internet address and your
seed port, he/she may be able to connect to your CyeWeb and view live video of
the channels you opened.
CyeWeb initially do not offer module that directly supports
remote viewing from mobile devices such as PDA or cell phone. But with this
broadcast module, you may be able to use your Windows Mobile based PDA or smart
phone (if it has a Windows Media Player) to view live videos of your CyeWeb.
This is the CyeWeb video streaming server to stream media to
Internet over TCP/IP protocol. Connection can be made by using Microsoft IE or
NovoSun CyeWeb in other computers.

This is an Http web server module for user to connect
remotely with Microsoft IE. If you bind this module, please also bind the Video
Server module because when IE pull live videos from CyeWeb it actually pull
that from CyeWeb Video Server.

To connect, you must use Microsoft IE. The URL is your
computer’s Internet address (IP or domain name).
Once IE connect to your web server, you will be requested to
install an ActiveX control. Install it.
The connection parameters in the web page should match those in your Video
Server (e.g. port number) and Account Management (user name, password).
On the web page you can select which channel to view. If
video is lagging because of low network bandwidth, you may disable some
channels. Furthermore, you can control your PTZ camera through the page.
The ActiveX is located at “<Program
folder>\Extensions\Web\”. If you need to show the videos in your webpage,
you can use it.


This module posts application logs, such as video server
connection logs, IP camera connection logs, etc. You can configure the number
of lines of log data to keep on the log window.
Once you bind this module, you will see the application log
window on the module view in the main console.

With the e-Map module, you can organize your cameras and
devices into map view. The e-Map has an event viewer where you can quickly
locate the device/camera that trigger the events and open a playback window to
playback the video at the position where the event occurred. You can also quick-view
the live video of any channel (at most 3 channels simultaneously) by just one
click on the device.
To add a map layer, please right click on the map item on
the tree view on right hand side. Select “Add Map”, you will be prompted a
dialog to enter the layer name.
To import a picture for a map layer, please also right click
on the map item and then select “Import Map Picture”. You can select PNG or JPG
or BMP format picture.
There are “import” and “export” buttons below the tree view.
These are to import and export the whole map setting from and to file. This is
useful when you want to share map settings among multiple CyeWebs in different
computers. Or you need to temporarily change the map setting and need to roll
back in some later time.
To add a facility (may be camera or other type of device), right
click on the map; you will see a context menu to “Add Facility”.

In the dialog, you can setup the channel (if this is a
channel facility). You can also configure the events of interest and tags that
you want to see in the event viewer, as well as the event dwell time. The dwell
time means that if an event (with the same tag) happens twice within the range
of the dwell time, they are considered as the same alarm.

You can also define Event Button(s). With event button the
operator can manually post event to the system by just clicking a button on the
facility.

On the map, you can move the facility to any location by dragging.
And you can also edit, delete, and duplicate any facility by right clicking on
it.


1) Tree
view of the map layers
2) Map
here you can see the map and facilities of the selected map layer. If the
facility is a channel device, you can right-click on it and select a quick view
window to see the live video.

3) Quick
Videos
here you can see live video of any channel facility.
4) Event
Viewer
when an event occurs, and the event is any in the event of interest in any
facility, that event will show up here. On the left hand side of the event log
there are 2 buttons that you can immediately locate the facility as well as pop
up a playback window and seek to the position where the event occurred (the
popup playback is effective only on channel facility with compression module
bound).
This module is generally for viewing alarmed channel in a
single large monitor. There is no setting required for this module. What you
need to do is to bind it, and then click on the channel icon (as shown below)
of the alarmed channel.


Transact module can be used for loss prevention to capture
activities at the counters of supermarket, ATM, etc. With this module you can
define rules to alarm on abnormal transactions such as high amount of refund or
money withdrawal. Also you can search back transact-activities and playback the
videos with just a few keywords.

In the setting you can create transact configuration for at
most 64 channels. You have the option to enable or disable transact monitoring
for each channel. And you can also define 2 helper channels for each channel.
This is for the case that you use 2 or 3 cameras to monitor one
transact-location. More importantly, you can define alarm rules to help supervisors
to real-time notice abnormal transaction.
Currently CyeWeb supports serial port transact-source and
Net Service Transact Injection.
For serial port source, you can connect the PoS directly to
your computer with a “crossover” RS-232 cable. The settings (e.g.
bits/sec, data bits, etc) of the transact-source have to match with those in
the PoS system. Please note that not all PoS system can be supported with the
serial port. You have to try. Some minor PoS use windows printer driver to
print receipt, this is not a usual way to print thing in PoS system (the PoS
manufacturer should use the standard Unified POS for receipt printing, most PoS
follows that, but not all.). CyeWeb does not support these PoS system with
serial port. But you still can use the Net Service Transact Injection
Net Service Transact Injection is a way for third-party POS
system developer to connect their system to CyeWeb. With our SDK the developer
can inject transaction to our POS module with a simple function call over IP.
Please check our SDK.
After you finished setting the transact-source you can setup
filtering. Filtering is the rules to filter capture data (generally text data) from
source into readable receipt. You can use the default “Epson” setting. Epson is
a widely used PoS printer band and almost all PoS systems support this. If you
have special need, you can also edit or define your own filtering rules.

In the filtering rule window, you first capture data from
PoS system or load a text file storing raw capture data. (If you capture data
directly from PoS system you can save it to file for future configuration use.)
You may also define the encoding.
In the “raw data” window, you can drag and select some
characters. And there are 5 operations:
(1) Omit: define an
omit-filter to omit the selected characters.
(2) Substitute:
define a substitute-filter to substitute the selected characters with some
other characters
(3) Line Break:
define a line breaking filter to replace the selected characters with line
break.
(4) Start Mask: use
the selected characters as start mask. (See below for start mask.)
(5) Stop Mask: use
the selected characters as stop mask. (See below for stop mask.)
The start and stop mask are to define when the receipt start
and stop. Since data is captured continuously from PoS system there has to be
character patterns to define the start and stop of a receipt.
You can use regular expression for the masks. Regular
expression is a very powerful tool to express text pattern. For a detail
tutorial you can search the Web. Here we show only the common and simplest operations:
-
“.” : represent any single character.
-
“.*”: represent a string of zero or more characters.
-
“^” and “$”: indicate there should be no extra character before or after
the patterns.
-
“\”: represent an escape character. You can use escape characters to
tell the search engine to treat expression operators and this escape character
as regular characters.
Here are some examples:
-
“^ABC$”: represent a string of exactly “ABC”.
-
“^refund.*”: represent a string start with “refund” and flowed by any
number of characters.
-
“\$.*.,...\..*”: represent a string that contains a ‘$’ following by any
number of characters and then a ‘,’ and any 3 characters and then a ‘.’ and
then any number of characters. This pattern can search money amount greater
than $999.
In the setting you can setup to post normal transaction event.
The other modules, such as compression, email notification or e-Map can handle
the event as they handle the others.

The <TRANS_NUM> in the event tag can be used to
represent transact number. The program will automatically substitute this
string with the real number. Please note that the transact number is just the
transaction sequent number being used in CyeWeb and is not relate to the one in
the PoS system.
You can also define the transact alarm rule to real-time
notify operators/supervisors abnormal transactions such as high amount of
refund or money withdrawal.

The condition mask is the rule of the alarm. The program
will check every line of a receipt with the rule. If the rule matches, the
alarm will be triggered. You can use regular expression to define the rule. For
the information about regular expression, please see the filtering section
above.
The alarm is also an event, so you can define a tag. The
other modules, such as compression, email, e-Map, can handle the event as they
handle the others. For example, you can use the e-Map’s Event Viewer to keep
track of abnormal transactions.
POS has a Net Service to accept transaction query and
injection over IP. Any third-party developer can use our SDK to inject
transaction into the POS module.
To setup the Net Service, you need to assign a port, select
a security mode, and optionally define a connection key code.
There are 2 security modes: None and Windows. Selecting
Windows (use Active Directory for encryption and authentication) is safe on
Internet environment. But the computer to connect to this Service must login
with the same Windows ID and password.
You can also define a connection key code to protect the POS
module from being attack. If the key code is defined, any other software to
inject transaction to the POS module will need this key code.


In the main console you can browse
and search back the transact-activities. The control is very similar to the
playback system that you can browse transactions by time and channel, or you
can search back transact-activities with key phrases which can be wildcards.
You can also playback the videos of the main and helper channels with a
timeline control, which allow you to zoom the time down to second with a slider
bar or with your mouse-wheel. (On the record browser by time and channel,
please note that you have to press the ‘refresh’ button to show records after
you selected the channel and date)
|
Important
|
|
(1)
While using the Transact module, you have to take care about
the synchronization between the channels and the PoS system. The time of the
PoS system should be synchronized with that of the main and helper channels,
otherwise the time on the receipt and the videos will be mismatch. Another synchronization
issue is among channels. If some of the channels are connected
remotely via “Connect to other CyeWeb” (in this case the video time will be
defined on the remote side), please make sure that the main and the helper
channels are synchronized. Otherwise when you search back video the program
will seek to a wrong position.
(2)
When you search back transact-activities, please make sure the
corresponding videos are closed recording. Otherwise you will just see the
receipt but cannot see the videos or tags. This generally
happens when you search a transaction immediately after it is produced.
(3)
The maximum size of the database to store transaction data is
4GB, which is enough for a few millions transactions. When the database
reaches this size, the program will automatically release space by deleting
old transactions.
|
This module collects count data and presents it into
statistics graphs. There is no setting required for this module. What you need
to do is just to bind it.
Please note that this statistics module use a separate
database to real-time collect count data. If you don’t bind this module, the
count data will not be collected. In this case you can only search back count
result on the normal playback system but you cannot see graph for the period that
this module is not bound.

After you bind the module you should be able to see the
graph presenter on the main console. In the UI you can select:
1) Channels
of interest
2) 4 groups
of tag conditions
each group is presented into a graph with its own color. So totally you can
compare 4 sets of data. The tag condition can be in 3 modes: “Simple”, “Exact”,
and “Wildcards”. For information about the 3 search modes, please refer to the
Playback chapter.
3) Date
4) Time
unit
time unit can be “Hour”, “Day”, and “Month”. If you select “Hour”, the graph
will use the first hour of the selected date as the starting point. If you
select “Day” or “Month”, the graph will use the selected date as the starting
point.
5) Number
of time unit
there are 12, 24, 30, 60, 90 for selections which should be enough for the 3
time units.
6) Graph
kind
graph kind can be “Curve” or “Bar”
This module is to support event forwarding, injection and
remote playback. Please bind this module if you want to use these functions.

In the general setting please set the service port, data
port, security mode and enable/disable event injection (from other third-party
software with our SDK.)
There are 2 security modes: None and Windows. Selecting
Windows (use Active Directory for encryption and authentication) is safe on
Internet environment. But the computer to connect to this Service must login
with the same Windows ID and password.

In the Channel Event Publisher setting you can select the
channels, events and tags to publish. This is for other instance of CyeWeb or
software using our SDK to subscribe events over IP.
If you uncheck “Send Event Details”, only event id and tag
will be sent. Other event details such as motion region, counting lines, etc
will not be sent. For example, you will not see the red rectangle (visual
alarm) of motion detection event on the client side.