Security News
JSR Working Group Kicks Off with Ambitious Roadmap and Plans for Open Governance
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
A Hubot script handling webhooks and retrieving info from esa: https://esa.io
A Hubot script handling webhooks and retrieving info from esa: https://esa.io
hubot esa stats
$ npm install hubot-esa --save
Then add hubot-esa
to your external-scripts.json
.
Also you need some variables to environment your Hubot runs. See below.
export HUBOT_ESA_ACCESS_TOKEN='access_token' # Required, your personal access token
export HUBOT_ESA_TEAM_NAME='gingypurrs' # Required, your team name
export HUBOT_ESA_WEBHOOK_DEFAULT_ROOM='random' # Required, room name you get notification by webhook
export HUBOT_ESA_WEBHOOK_ENDPOINT='/ginger/esa' # Optional, Default: "/hubot/esa"
export HUBOT_ESA_WEBHOOK_SECRET_TOKEN='stoken' # Optional
HUBOT_ESA_ACCESS_TOKEN
Requiredhttps://[your-team].esa.io/user/applications
.HUBOT_ESA_TEAM_NAME
RequiredHUBOT_ESA_WEBHOOK_DEFAULT_ROOM
Requiredgeneral
HUBOT_ESA_WEBHOOK_ENDPOINT
Optional (Default: /hubot/esa
)https://[your-team].esa.io/team/webhooks
for Generic webhookHUBOT_ESA_WEBHOOK_SECRET_TOKEN
Optionalhttps://[your-team].esa.io/team/webhooks
for Generic webhookHUBOT_ESA_JUST_EMIT
Optional (Default: false
)true
is set, disables messagingHUBOT_ESA_SLACK_DECORATOR
Optional (Default: false
)true
is set, decorates message for SlackHUBOT_ESA_DEBUG
Optional (Default: false
)true
, then log receiving/emitting eventsIf you're using Hubot for Slack with hubot-slack, you can use built-in Slack decorator implemented for slack.attachment
event.
Set env values like below.
export HUBOT_ESA_WEBHOOK_JUST_EMIT='true' # Optional, Default: "false"
export HUBOT_ESA_SLACK_DECORATOR='true' # Optional, Default: "false"
Select notified channel(room) dynamically by title of post on esa.
export HUBOT_ESA_SLACK_ROOM_SELECTOR='true' # Optional, Default: "false"
If title includes tags like #dev
#programming
and channel which corresponds with that tag exist, notifications will be posted to each channels.
When not exist, try to find deepest directory name which corresponds with channel.
e.g. There are 3 channels in Slack: #dev
, #programming
, web
(private)
Title of post on esa | Notified Channel |
---|---|
awesome article | default room |
awesome article #dev #programming | #dev #programming |
awesome article #dev #programming #ruby #web | #dev #programming web |
dev/awesome article | #dev |
dev/programming/awesome article | #programming |
hubot must exist in each channels which is be notified.
You can implement your script handles above events. For example your can build original message on your own :)
By below setting, disable posting by hubot-esa. Then you can get just emitted event.
export HUBOT_ESA_WEBHOOK_JUST_EMIT='true' # Optional, Default: "false"
esa.hear.stats
hubot esa stats
stats
object: https://docs.esa.io/posts/102#5-1-0 and hubot Response objectrobot.on 'esa.hear.stats', (res, stats) ->
console.log(stats)
esa.hear.post
post
object: https://docs.esa.io/posts/102#7-2-0 and hubot Response objectrobot.on 'esa.hear.post', (res, post) ->
console.log(post)
esa.hear.comment
comment
object: https://docs.esa.io/posts/102#8-2-0, post
object: https://docs.esa.io/posts/102#7-2-0 and hubot Response objectrobot.on 'esa.hear.comment', (res, comment, post) ->
console.log(comment)
console.log(post)
esa.webhook
kind
https://docs.esa.io/posts/37 and data
objectrobot.on 'esa.webhook', (kind, data) ->
console.log(comment)
data:
team: 'team name'
user: 'user object by webhook'
post: 'post object by webhook'
comment: 'comment object by webhook'
FAQs
A Hubot script handling webhooks and retrieving info from esa: https://esa.io
We found that hubot-esa demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
Security News
Research
An advanced npm supply chain attack is leveraging Ethereum smart contracts for decentralized, persistent malware control, evading traditional defenses.
Security News
Research
Attackers are impersonating Sindre Sorhus on npm with a fake 'chalk-node' package containing a malicious backdoor to compromise developers' projects.