Skip to content

Latest commit

 

History

History
111 lines (83 loc) · 2.95 KB

getting-started.md

File metadata and controls

111 lines (83 loc) · 2.95 KB

Getting Started

Navigation

Installation

Get the installation package in any of the available methods:

Build

Self-assembly package is as follows:

  • Clone the repository:
git clone https://github.com/valentineus/moodle-webhooks.git moodle-webhooks
  • Run the build script:
cd ./moodle-webhooks
/bin/sh build.sh

User guide

After you install the plug-in, the Service Manager appears on the Server tab in the administration panel.

To open the page, go: Site administration -> Server -> WebHooks.

Guide to the manager

The main window looks like this:

Service Manager

On the main page you can see the list of services and manage each service separately.

Column description

  • "Name" shows the name of the service.
  • "URL" indicates the address of the service to which notifications are received.
  • "Actions" allows you to enable / disable the service, edit and delete.

Description of control buttons:

  • "Add service" opens a page for creating a new service.
  • "Backup" loads the backup file of the service list.
  • "Restore" redirects the data recovery page from the backup.

Guide to the editor

During the editing and creation of the service, this page opens:

Service Editor

Description of fields:

  • "Name" stores an arbitrary name for the service.
  • "URL" stores the address of the service to which notifications will be sent as a POST request.
  • "Token" allows you to specify an individual key that will allow an external service to identify requests.
  • "Advanced" stores a large string passed to the service. This can be useful for some services or users.
  • "Content Type" allows you to configure the type of outbound requests if there are compatibility issues.

The "All events" list contains a list of all events registered in the system. The selected events will notify the service.

Request format

Events come in JSON format.

An example of an observed course event:

{
    "eventname": "\\core\\event\\course_viewed",
    "component": "core",
    "action": "viewed",
    "target": "course",
    "objecttable": null,
    "objectid": null,
    "crud": "r",
    "edulevel": 2,
    "contextid": 2,
    "contextlevel": 50,
    "contextinstanceid": "1",
    "userid": "2",
    "courseid": "1",
    "relateduserid": null,
    "anonymous": 0,
    "other": null,
    "timecreated": 1512961456,
    "host": "localhost",
    "token": "",
    "extra": ""
}

Detailed description of the fields.