Events
This section describes events generated by User Activity Watcher modules, its corresponding URIs and resulting objects.
Events model is available here
Event
Event represents all events generated by User Activity.
Valid URIs
- N/A
- No URIs are defined - this event cannot be created and serves as base class only
Event attributes
- eventTypeUri [string]
- URI defining specific type of event. See Valid URIs description of each event
- timestamp [DateTime]
- Time when event occured. Time is in UTC
- user [string]
- User who has generated the event
- workstation [string]
- Machine that was the source of the event
- eventId [Guid]
- Event (correlation) identifier generatad by client User Activity Central Application (UACA)
- wasCommitForcedByUser [bool]
- Indicates, if Event was sent to server by user command or by regular commit
Application Event
Application Event represents all events generated by Watcher plug-ins of monitored applications.
Valid URIs
- N/A
- No URIs are defined - this event cannot be created and serves as base class only
Event attributes
- applicationName [string]
- Name of the application from which event was genereted
- applicationVersion [string]
- Version of the application from which event was genereted
- sessionId [string]
- Identifier of the application session/instance
Monitoring Started Event
Monitoring Started Event occurs when UACA starts to monitor activities.
Valid URIs
- http://perconik.gratex.com/useractivity/event/system/monitoringstarted
- UACA has started to monitor activities
Event attributes
- inherited from Application Event
- See Application Event
Web Event
Web Event represents events generated by Browser (Chrome, Firefox, IE).
Valid URIs
- N/A
- No URIs are defined - this event cannot be created and serves as base class only
Event attributes
- inherited from Application Event
- See Application Event
- url [string]
- Web address of the content the event was generated for
Web Bookmark Event
Web Bookmark Event occurs allways when user creates bookmark.
Valid URIs
- http://perconik.gratex.com/useractivity/event/web/bookmark
- User has created new bookmark
Event attributes
- inherited from Web Event
- See Web Event
- name [string]
- Bookmark name
Web Save Document Event
Web Save Document Event occurs allways when user creates saves or downloads content.
Valid URIs
- http://perconik.gratex.com/useractivity/event/web/savedocument
- User has saved or downloaded content
Event attributes
- inherited from Web Event
- See Web Event
- name [string]
- File name
Web Tab Event
Web Tab Event occurs allways when user opens, closes or swithes to browser window or tab.
Valid URIs
- http://perconik.gratex.com/useractivity/event/web/tab/switchto
- User has switched to browser tab or opened new browser window
- http://perconik.gratex.com/useractivity/event/web/tab/open
- User has opened new browser tab
- http://perconik.gratex.com/useractivity/event/web/tab/close
- User has closed browser tab
Event attributes
- inherited from Web Event
- See Web Event
- tabId [string]
- Browser tab identifier
IDE Event
IDE Event represents events generated by Integrated Development Environment - IDE (Eclipse/STS, Visual Studio).
Valid URIs
- N/A
- No URIs are defined - this event cannot be created and serves as base class only
Event attributes
- inherited from Application Event
- See Application Event
- solutionName [string]
- Name of the software solution event has occured for
- projectName [string]
- Name of the software project event has occured for
IDE State Change Event
IDE State Change Event occurs when the state/view/working mode/perspective of the IDE has changed.
Valid URIs
- http://perconik.gratex.com/useractivity/event/ide/statechange
- State of the IDE has changed
Event attributes
- inherited from IDE Event
- See IDE Event
- stateTypeUri [string]
- The actual IDE state. See Ide State Type Uri
IDE Project Event
IDE Project Event occurs when user manipulates with software solution or project structure.
Valid URIs
- http://perconik.gratex.com/useractivity/event/ide/project/switchto
- User has switched to the software solution/project
- http://perconik.gratex.com/useractivity/event/ide/project/add
- User has added new software solution/project
- http://perconik.gratex.com/useractivity/event/ide/project/remove
- User has removed the software solution/project
- http://perconik.gratex.com/useractivity/event/ide/project/rename
- User has renamed the software solution/project
- http://perconik.gratex.com/useractivity/event/ide/project/open
- User has opened the software solution/project
- http://perconik.gratex.com/useractivity/event/ide/project/close
- User has closed the software solution/project
- http://perconik.gratex.com/useractivity/event/ide/project/refresh
- User has refreshed the view of the software solution/project
Event attributes
- inherited from IDE Event
- See IDE Event
IDE Code Element Event
IDE Code Element Event describes user operations with code elements.
Valid URIs
- http://perconik.gratex.com/useractivity/event/ide/codeelement/visiblestart
- Code element has begun to be part of the user viewfield
- http://perconik.gratex.com/useractivity/event/ide/codeelement/visibleend
- Code element has ended to be part of the user viewfield
- http://perconik.gratex.com/useractivity/event/ide/codeelement/editstart
- User has started editing code element
- http://perconik.gratex.com/useractivity/event/ide/codeelement/editend
- User has ended editing code element
Event attributes
- inherited from IDE Event
- See IDE Event
- elementFullName [string]
- Full identifier of the code element
- codeElementTypeUri [string]
- Code element type (namespace, class, ...). See Code Element Type Uri
IDE Document Event
IDE Document defines operations with documents, generally with source code files.
Valid URIs
- http://perconik.gratex.com/useractivity/event/ide/document/switchto
- User has switched to the document
- http://perconik.gratex.com/useractivity/event/ide/document/add
- User has added new document
- http://perconik.gratex.com/useractivity/event/ide/document/remove
- User has removed the document
- http://perconik.gratex.com/useractivity/event/ide/document/rename
- User has renamed the document
- http://perconik.gratex.com/useractivity/event/ide/document/open
- User has opened the document
- http://perconik.gratex.com/useractivity/event/ide/document/close
- User has closed the document
- http://perconik.gratex.com/useractivity/event/ide/document/save
- User has saved the content of the document
Event attributes
- inherited from IDE Event
- See IDE Event
- document [IdeDocument]
- Document for which event occured
IDE Code Event
IDE Code Event represents source code operations.
Valid URIs
- http://perconik.gratex.com/useractivity/event/ide/code/paste
- User has pasted text into the source code
- http://perconik.gratex.com/useractivity/event/ide/code/pastefromweb
- User has pasted text into the source code. Text has been copied from web
- http://perconik.gratex.com/useractivity/event/ide/code/selectionchanged
- Source code or its part has been selected by user
- http://perconik.gratex.com/useractivity/event/ide/code/copy
- Source code or its part has been copied by user
- http://perconik.gratex.com/useractivity/event/ide/code/cut
- Source code or its part has been cut from the source code document by user
Event attributes
- inherited from IDE Event
- See IDE Event
- document [IdeDocument]
- Document for which event occured
- text [string]
- Text user has operated with
- startRowIndex [int]
- Start row of the text in the source code document
- endRowIndex [int]
- End row of the text in the source code document
- startColumnIndex [int]
- Start column of the text in the source code document
- endColumnIndex [int]
- End column of the text in the source code document
- webUrl [string]
- In case of the PasteFromWeb, URL of the web the text has been copied from
IDE Find Event
IDE Find Event occurs when user searches for information in source code.
Valid URIs
- http://perconik.gratex.com/useractivity/event/ide/find
- User has searched for information in source code using bulit-in search engine
Event attributes
- inherited from IDE Event
- See IDE Event
- derivedResources [bool]
- Find out derived resources also
- fileTypes [string]
- File types to search in
- lookinTypeUri [string]
- Scope of the search. See Lookin Type Uri
- matchCase [bool]
- Determine if the search is case sensitive
- matchWholeWord [bool]
- Whole word must match search query
- patternSyntaxTypeUri [string]
- Search query pattern. See Pattern Syntax Type Uri
- queryText [string]
- Search query text
- searchSubfolders [bool]
- Defines if search engine has searched recursively in the file system hierarchy
- totalFilesSearched [int]
- Number of files searched based on search request
- resultsPerFile [List of IdeFindFileResult]
- List of results matching search query
IDE Chceckin Event
IDE Chceckin Event occurs when user commits source code version to the revision control system (GIT, TFS, ...).
Valid URIs
- http://perconik.gratex.com/useractivity/event/ide/checkin
- User has commited source code version to the revision control system
Event attributes
- inherited from IDE Event
- See IDE Event
- changesetIdInRcs [string]
- Identifier assigned by revision control system to identify commited source code version
- rcsServer [RcsServer]
- Revision control system user has commited to
Processes Changed Since Check Event
Processes Changed Since Check Event represents changes in running processes since last chceck.
Valid URIs
- http://perconik.gratex.com/useractivity/event/system/processeschangedsincechceck
- Running processes have changed since last chceck. Occurs periodically
Event attributes
- inherited from Event
- See Event
- startedProcesses [List of Process]
- Processes started from last chceck
- killedProcesses [List of Process]
- Processes killed from last chceck
Bash Command Event
Bash Command Event represents commands executed in the Bash.
Valid URIs
- http://perconik.gratex.com/useractivity/event/bash/command
- Command has been executed in the Bash
Event attributes
- inherited from Application Event
- See Application Event
- commandLine [string]
- Command line executed in the Bash. Command line can consists of multiple commands with its parameters
- commandId [nullable int]
- Identifier of the command executed in the Bash
Data types
This section describes data types used in Events.
IdeDocument
Represents IdeDocument included int the IDE workspace (source code file, resource file, ...).
Attributes
- ChangesetIdInRcs [string]
- Process name
- serverPath [string]
- Path to IdeDocument on Revision control system server
- localPath [string]
- Path to IdeDocument on local machine
- branch [string]
- Branch in Revision control system the IdeDocument belongs to
- rcsServer [RcsServer]
- Revision control system the IdeDocument is managed by
IdeFindFileResult
Represents the IDE Find Event results that has been found in one file.
Attributes
- file [IdeDocument]
- File containing the find results
- rows [List of IdeFindResultRow]
- Rows containing the the find results
IdeFindResultRow
Represents the row containing IDE Find Event result.
Attributes
- row [nullable int]
- Row index in the document containing IDE Find Event result
- column [nullable int]
- Column index in the document containing IDE Find Event result
- text [string]
- Text matching IDE Find Event result
RcsServer
Represents information about Revision Control System server.
Attributes
- url [string]
- URL of the RCS server
- typeUri [string]
- RCS server type (Git, TFS, ...). See RCS Server Type Uri
Process
Represents Operating system process information.
Attributes
- name [string]
- Process name
- pid [int]
- Process identifier
Enum URIs
This section describes URIs and its valid values for defined enums.
Web Transition Type Uri
Describes the way user has navigated to content.
Format
http://perconik.gratex.com/useractivity/enum/webnavigateevent/transitiontype#[value]
Values
- bylink
- User has navigated by clicking link
- byurl
- User has navigated by entering URL
- bybookmark
- User has navigated through bookmark
- unknown
- Unknown transition type
- ...
- More appropriate values can be defined
Ide State Type Uri
Describes the state of the Integrated Development Environment.
Format
http://perconik.gratex.com/useractivity/enum/idestatechangeevent/statetype/[idename]#[value]
IDE names
- vs
- Visual studio
- eclipse
- ...
- More names can be defined
Values
- debug
- IDE is in the design mode
- build
- IDE is in the build mode
- design
- IDE is in the design mode
- IDE custom perspective names (usual in Eclipse)
- IDE is in some custom perspective. Name of the current perspective
- ...
- More appropriate values can be defined
Code Element Type Uri
Describes code element types.
Format
http://perconik.gratex.com/useractivity/enum/idecodeelementevent/codeelementtype#[value]
Values
- namespace
- Element is namespace
- class
- Element is class
- method
- Element is method
- property
- Element is property
- ...
- More values defining code element types
Lookin Type Uri
Describes the lookin type for IDE Find Event.
Format
http://perconik.gratex.com/useractivity/enum/idefindevent/lookintype/[idename]#[value]
IDE names
- vs
- Visual studio
- eclipse
- ...
- More names can be defined
Values
- currentdocument
- Search scope is set to current document
- currentproject
- Search scope is set to current project
- entiresolution
- Search scope is set to entire solution
- ...
- More values defining search scope
Pattern Syntax Type Uri
Describes the pattern syntax type for IDE Find Event.
Format
http://perconik.gratex.com/useractivity/enum/idefindevent/patternsyntaxtype/[idename]#[value]
IDE names
- vs
- Visual studio
- eclipse
- Eclipse
- ...
- More names can be defined
Values
- regex
- Search by regular expression
- wildchar
- Search by wildchar convention
- ...
- More values defining search scope
RCS Server Type Uri
Describes the RCS server type.
Format
http://perconik.gratex.com/useractivity/enum/rcsserver/type#[value]
Values
- tfs
- MS Team Foundation Server
- git
- GIT
- ...
- More values defining RCS server types
User Activity Services
This section describes User Activity Services.
Get
Get Event by ID.
URL
http://perconik.fiit.stuba.sk/UserActivity/api/useractivity/{EventId}
Input
- eventId [Guid]
- Event (correlation) identifier generatad by client User Activity Central Application (UACA)
Output
- event [Event]
- Returns Event of type specified by EventTypeUri. See Events
Search
Search Events by filter.
URL
http://perconik.fiit.stuba.sk/UserActivity/api/useractivity
Input
- filter [Event Filter]
- Filter values are entered as Query parameters
Output
- response [Search Event Response]
- Returns paged list of Events
Call Examples
- Find events by user
- Find all events from marcus http://perconik.fiit.stuba.sk/UserActivity/api/useractivity?user=marcus
- Find marcus', matt's, ... events http://perconik.fiit.stuba.sk/UserActivity/api/useractivity?user=ma
- Find events by type
- Find all Web Navigate events .../useractivity?eventtypeuri=http://perconik.gratex.com/useractivity/event/web/navigate&exacttype=true
- Find all Web events .../useractivity?eventtypeuri=http://perconik.gratex.com/useractivity/event/web
- Find all Web events by defining relative Uri .../useractivity?eventtypeuri=web
- Find events by time
- Find all events during within May 16th 2014 from 12:00 to 22:05:30.555 http://perconik.fiit.stuba.sk/UserActivity/api/useractivity?timefrom=2014-05-16T12:00Z&timeto=2014-05-16T22:05:30.555
- Find all events newer then May 16th 2014 http://perconik.fiit.stuba.sk/UserActivity/api/useractivity?timefrom=2014-05-16Z
- Find all events during within May 2014 http://perconik.fiit.stuba.sk/UserActivity/api/useractivity?timefrom=2014-05-01Z&timeto=2014-06-01Z
- Get find results on specified page
- Get 3rd results page. One page contains 20 results. http://perconik.fiit.stuba.sk/UserActivity/api/useractivity?pageIndex=2&pagesize=20
- Get 2nd results page. One page contains default number (20) of results http://perconik.fiit.stuba.sk/UserActivity/api/useractivity?pageIndex=1
- Without specifiing page and pagesize, service returns results from 1st page containing default number (20) of results
BashWho
Gets the list of users that executed a given bash command. For each user, the count of executions is provided
URL
http://perconik.fiit.stuba.sk/UserActivity/api/useractivity/bashwho
Query parameters
- command [string]
- command which executions should be searched for. null = all bash commands
- timeFrom [nullable DateTime]
- Search for events with Timestamp later than TimeFrom
- timeTo [nullable DateTime]
- Search for events with Timestamp earlier than TimeTo
Output - list of
- user [string]
- user name
- count [int]
- number of executions
Call Examples
- Gets the list of users that executed "build-coding-rules-java" in past
- http://perconik.fiit.stuba.sk/UserActivity/api/useractivity/bashwho?command=build-coding-rules-java
Event Filter
Used as request in search for events.
Attributes
- pageIndex [int]
- Zero based index of the results page
- pageSize [int]
- Demanded size of the results page. Default page size is 20 items. Limited by server configuration to 100 items
- timeFrom [nullable DateTime]
- Search for events with Timestamp later than TimeFrom
- timeTo [nullable DateTime]
- Search for events with Timestamp earlier than TimeTo
- eventTypeUri [string]
- Search for events of types defined by URIs, which start with EventTypeUri - allows hierarchical type filtering
- exactType [bool]
- Search for events of type defined by exact URI. Default is false
- user [string]
- Search for events from users with names starting with given string
- workstation [string]
- Search for events from workstations with names starting with given string
- ascending [bool]
- Defines results order. Results are ordered by Event Timestamp.
- Default is false, which means results are ordered descending or from the newest to the oldest events
- If true, results are ordered ascending or from the oldest to the newest events
Search Event Response
Used as response in search for events.
Attributes
- pageIndex [int]
- Index of the results page
- pageCnt [int]
- Number of pages with results matching search request
- pageSize [int]
- Page size demanded in request or defined by default page size (20). Limited by server configuration to 100 items
- links [list of Link]
- Links to previous and next results page. Link contains Relation (previous or next) and Href (url to related results page)
- resultSet [list of Event]
- Set of events matching search request. Events have types specified by EventTypeUri. See Events