Bugsnag notification add-in and bot for RingCentral app.
$ git clone https://github.com/ringcentral/bugsnag-notification-app.git
Inside project root:
$ npm install
$ npm run ngrok
Keep this process active, and you will get a publish uri as https://xxxxxxxxxx.ngrok.io
that connected with your local port localhost:6066
.
Please follow here to create a RingCentral notification app.
In App Features
, enable Interactive Messages
, then input URI https://xxxxxx.ngrok.io/interactive-messages
. Please replace with your ngrok domain.
In Integrated installation in RingCentral app
section, enable This app can be installed via the web
, then input URI https://xxxxxx.ngrok.io/webhook/new
.
Please follow here to create a RingCentral Bots app.
In App Permissions
section, add Read Accounts
, Team Messaging
and Webhook Subscriptions
.
In OAuth Redirect URI
section, input https://xxxxxx.ngrok.io/bot/oauth
. Please replace with your ngrok domain.
In App Features
, enable Interactive Messages
, then input URI https://xxxxxx.ngrok.io/interactive-messages
. Please replace with your ngrok domain.
$ cp .env.default .env
Edit .env
file as .env.default
to set environment variables.
The APP_SERVER
is publish uri that we get from ngrok.
For DATABASE_CONNECTION_URI
, we can just keep sqlite:https://./db.sqlite
. We will use sqlite as local database.
We will use sqlite as local database. Please install sqlite3 in your machine firstly.
Init Database:
$ npm run initDB
$ npm start
Go to https://app.devtest.ringcentral.com/apps/sandbox
with your sandbox account, you can get your apps in development here. Click Plus icon to add your notification app or bots to test.
$ cp serverless-deploy/env.default.yml serverless-deploy/env.yml
Edit serverless-deploy/env.yml
to set environment variables.
We will get APP_SERVER
after first deploy. So now just keep it blank.
$ cp serverless-deploy/serverless.default.yml serverless-deploy/serverless.yml
Edit serverless-deploy/env.yml
to update serverless settings.
The Dynamo TableName
should be ${DYNAMODB_TABLE_PREFIX}webhooks
. DYNAMODB_TABLE_PREFIX is environment variable that we set upper.
$ npm run serverless-build
$ npm run serverless-deploy
In first deploy, you will get lambda uri in console output: https://xxxxxx.execute-api.us-east-1.amazonaws.com/prod
.
Copy the uri, and update environment variable APP_SERVER
with it in serverless-deploy/env.yml
file. Then deploy again:
$ npm run serverless-deploy
Then update app settings in RingCentral developer portal, with your new APP_SERVER
.