{jenkins-plugin-info:pluginId=instant-messaging}

This plugin provides generic support for build notifications and a 'bot' via instant messaging protocols.

This plugin itself is of no use for end users. Please use one of the derived plugins like the Jabber or the IRC plugin!

Plugins that Use Instant Messaging Plugin

Features

Build Notifications

You can configure per job to get notifications for finished or started builds (optional). Notifications can be send to chatrooms or individual users (aka. private messages in IRC).

You can choose from a number of strategies for which build outcomes notification will be send:

Notify culprits and fixers

If your job is build from a SCM,  you can choose to notify:

Notifying upstream committers

For this feature to work you need to fingerprint your build artifacts. For Maven jobs this should work out-of-the-box. For other job types see the Blame Upstream Committers plugin for how to configure it (haven't tried it myself yet, though)

The following happens if this option is enabled:

If a build fails and there are no committers to the job itself the IM plugin looks for committers to upstream builds. If there are any, all of them are notified. If there are no committers to the immediate upstream builds, the plugin looks one level higher and notifies possible committers there. And so on, if needed.

Notify about build start

In freestyle and similar legacy jobs, the post-build action from a protocol plugin such as an "IRC Notification" has a checkbox to also "Notify on build starts".

Equivalent effect can be achieved in a pipeline with an explicit step at an early stage, e.g. ircNotify notifyOnStart:true - this may be changed in the future.

Manage jobs via a 'bot'

You can control various features of jobs via a bot. To do so you can send commands to it within a chatroom (or as private messages).

To execute a command send the command and its parameters send it to the bot in chatroom (or as a private message) and prefix it with the command prefix which is configured in the global configuration.

For example to schedule a build for the My project job if the prefix is ! send:

!build 'My project'

Most commands can be invoked on a single job, all jobs in a view or all configured jobs. Notable commands are:

Regex support in bot commands

The currentlyBuilding (cb) and queue (q) commands now support an optional argument to apply regular expression filters to the lines they would output, and count and report hits compared to the full job lists.

The key argument for this is ~ and the rest of the argument string is assumed to be the regular expression (note however that whitespace between tokens of the argument string is converted during argument processing; for clarity it would be preferable to pass a single-token argument with \s+ in positions where whitespace matches are expected).

For example, to see any "OVA"-related builds in IRC I would type:

(15:07:34) developer: jenkins: cb @ ~ OVA
(15:07:34) jenkins: (notice) Currently building (10 items total, of which 1 items matched the filter):
(15:07:34) jenkins: (notice) - NOTE: got @ argument for currentlyBuilding: will add URLs to reported strings
(15:07:35) jenkins: (notice) - NOTE: got ~ filtering argument for currentlyBuilding: applying regex filter to reported strings: OVA
(15:07:35) jenkins: (notice) - ova-build-machine-1#0: build-OVA-image #5939 @ https://jenkins.localdomain/job/build-OVA-image/5939/console (Elapsed time: 1 min 0 sec, Estimated remaining time: 3 min 58 sec)

Beside ordinarily matching what is present in a line, this can be used with "negative lookups" for matching lines that do not contain certain patterns. Certain know-how applies to such expressions:

Issues/Gotchas

Changelog

Version 1.38 (2019-08-09)

https://github.com/jenkinsci/instant-messaging-plugin/compare/instant-messaging-1.37...jenkinsci:instant-messaging-1.38

Version 1.37 (2019-08-06)

https://github.com/jenkinsci/instant-messaging-plugin/compare/instant-messaging-1.36...jenkinsci:instant-messaging-1.37

Version 1.36 (2019-08-02)

https://github.com/jenkinsci/instant-messaging-plugin/compare/instant-messaging-1.35...jenkinsci:instant-messaging-1.36

Version 1.35 (2015-05-12)

https://github.com/jenkinsci/instant-messaging-plugin/compare/instant-messaging-1.34...jenkinsci:instant-messaging-1.35

Version 1.34 (2015-03-14)

Version 1.30 (August 30th, 2014)

Version 1.29 (June 8th, 2014)

Version 1.28 (October 17th 2013)

Version 1.26 (August, 10th 2013)

Version 1.25 (January, 1st 2013)

Version 1.23, 1.24

No user visible changes.

Version 1.22

Version 1.21

Version 1.20

Version 1.19

Version 1.18

Version 1.17

Version 1.16

Version 1.15

Version 1.14

Version 1.13

Version 1.12

Versions 1.11

Version 1.10

Version 1.9

Version 1.8

Version 1.7

Version 1.5

Version 1.4