All Projects → unknwon → orbiter

unknwon / orbiter

Licence: Apache-2.0 license
Orbiter is a tool for collecting and redistributing webhooks over the network.

Programming Languages

go
31211 projects - #10 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to orbiter

discord-twitter-webhooks
🤖 Stream tweets to Discord
Stars: ✭ 47 (+135%)
Mutual labels:  webhook
SQFDiscordEmbedBuilder
Send discord webhook embeds from your Arma 3 Server
Stars: ✭ 27 (+35%)
Mutual labels:  webhook
zoom-slack-status-updater
Update your Slack status automatically when you join a Zoom meeting.
Stars: ✭ 23 (+15%)
Mutual labels:  webhook
hook-slinger
A generic service to send, retry, and manage webhooks.
Stars: ✭ 88 (+340%)
Mutual labels:  webhook
Discord-AIO
Discord AIO (All In One) - discord stealer/token grabber builder with token checks, webhook spammer, obfuscation, encryption, crypto miner, RAT and a lot of extra features.
Stars: ✭ 105 (+425%)
Mutual labels:  webhook
notify
推送通知 sdk(Bark、Chanify、钉钉群机器人、Discord、邮件、飞书群机器人、Gitter、Google Chat、iGot、Logger、Mattermost、Now Push、PushBack、Push、PushDeer、PushPlus、QQ 频道机器人、Rocket Chat、Server 酱、Showdoc Push、Slack、Telegram、Webhook、企业微信群机器人、息知、Zulip)。
Stars: ✭ 335 (+1575%)
Mutual labels:  webhook
YappyGitHub
A github monitor bot for Discord
Stars: ✭ 64 (+220%)
Mutual labels:  webhook
imageswap-webhook
Image Swap Mutating Admission Webhook for Kubernetes
Stars: ✭ 72 (+260%)
Mutual labels:  webhook
workflow-webhook
A Github workflow action to call a webhook with payload data from the event. Support for JSON or URL encoded endpoints.
Stars: ✭ 90 (+350%)
Mutual labels:  webhook
create-shopify-app
Create Shopify App With JWT Authentication using NodeJs, React, Shopify Polaris and MongoDb
Stars: ✭ 58 (+190%)
Mutual labels:  webhook
gohook
【Souvenir】Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目。
Stars: ✭ 52 (+160%)
Mutual labels:  webhook
alerta-contrib
Contributed integrations, plugins and custom webhooks
Stars: ✭ 107 (+435%)
Mutual labels:  webhook
drf-stripe-subscription
An out-of-box Django REST framework solution for payment and subscription management using Stripe.
Stars: ✭ 42 (+110%)
Mutual labels:  webhook
django-rok
Public url for your local django web server
Stars: ✭ 19 (-5%)
Mutual labels:  webhook
Limg
An image hosting service powered by Laravel
Stars: ✭ 41 (+105%)
Mutual labels:  webhook
gogs-webhook-plugin
Jenkins Gogs Webhook
Stars: ✭ 76 (+280%)
Mutual labels:  webhook
collector-integration
Multi Language repository that contains documentation and sample code for creating custom URL schemes in Collector for ArcGIS.
Stars: ✭ 18 (-10%)
Mutual labels:  collector
DiscordWebhook
Discord webhook library in C#
Stars: ✭ 22 (+10%)
Mutual labels:  webhook
GitHub-Webhook-Bot
It is a Simple Telegram Bot, which will listen to GitHub Webhook and inform via Telegram
Stars: ✭ 33 (+65%)
Mutual labels:  webhook
pr-reviews-reminder-action
A GitHub Action to send Slack/Teams notification for Pull Request that are waiting for reviewers.
Stars: ✭ 18 (-10%)
Mutual labels:  webhook

Orbiter is a tool for collecting and redistributing webhooks over the network.

NOTICES

  • This project comes with absolutely NO warranty for break changes,
  • ... but you can file bugs, feature requests and usage questions if you have to.

Features

  • Receive and save webhook by time, type (GitHub, etc) and tags (repository, owner, etc).
  • Redistribute webhook by APIs whenever and whatever it gets requested.
  • Nice admin dashboard to config and do statistics.

WTF?

Oh well, it is just a tool to collect webhook history when you don't have time to process them at the moment.

Or, maybe you want to study the history later to understand a basic user action flow.

And nothing else, sorry!

Installation

First of all, you need to install MySQL (WHAT?!).

Then, install Orbiter:

$ go get unknwon.dev/orbiter

Configuration

The default configuration is located at conf/app.ini, please create another file called custom/app.ini to adjust your own values.

Finally, execute ./orbiter.

The server should start listening on 0.0.0.0:8085 by default, visit http://localhost:8085.

Quick start

Config new collector

Collector defines what the type (currently only support GitHub) and secret token should be.

Secret token is auto-generated by Orbiter, you can ask to regenerate as many times as you prefer.

Normally, one collector is for an individual repository, but that's up to you.

After creation, setup the webhook with secret token in corresponding hosting site.

For example, in GitHub:

  • Payload URL: https://orbiter.unknwon.io/hook?secret=mysecretweapon
  • Content type: application/json
  • Secret: REMAIN EMPTY
  • Events: ORBITER DOES NOT CARE

View recent history

You can go to /webhooks to view recent receive history of webhooks, and their payloads.

Important tags such as repository owner, repository name, event type and sender are extracted for payload automatically and can be used as query conditions for applications.

Add new application

Application is basically nothing but contains a access token which is needed for calling APIs.

APIs

All parameters and access token is passed by URL query parameters.

List webhooks

GET /api/v1/webhooks
Parameters

Following parameters are all optional, and combine with condition AND.

Name Description
collector_id List webhooks that were received by certain collector
owner List webhooks that belongs to certain repository owner
repo_name List webhooks that belongs to certain repository
event_type List webhooks that have certain event type
sender List webhooks that were triggered by someone
after List webhooks that received after certain time point, this value is Unix nanoseconds
limit Maximum number of webhooks to response
Example
GET /api/v1/webhooks?token=mysecretdefense&event_type=issue_comment&after=1454740438165946316&limit=10

Acknowledgments

Open-source, not open-contribution

Quote from benbjohnson/litestream:

I am grateful for community involvement, bug reports, & feature requests. I do not wish to come off as anything but welcoming, however, I've made the decision to keep this project closed to contributions for my own mental health and long term viability of the project.

License

This project is under the Apache License, Version 2.0. See the LICENSE file for the full license text.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].