From 7e49f7977c07150323865cab4ee9864f470386d4 Mon Sep 17 00:00:00 2001 From: Dave Horton Date: Sun, 6 Aug 2023 14:27:14 -0400 Subject: [PATCH] tadhack 2023 docs (#76) --- data/docs.yml | 3 +++ markdown/docs/tutorials/tadhack-2023.md | 21 +++++++++++++++++++++ markdown/docs/webhooks/overview.md | 13 ++++++++++++- markdown/docs/ws/overview.md | 6 ++++++ 4 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 markdown/docs/tutorials/tadhack-2023.md diff --git a/data/docs.yml b/data/docs.yml index 97d0f67..9fb0fe4 100644 --- a/data/docs.yml +++ b/data/docs.yml @@ -143,6 +143,9 @@ navi: path: tutorials title: Tutorials pages: + - + path: tadhack-2023 + title: TADHack 2023 - path: getting-started title: Getting started diff --git a/markdown/docs/tutorials/tadhack-2023.md b/markdown/docs/tutorials/tadhack-2023.md new file mode 100644 index 0000000..299da17 --- /dev/null +++ b/markdown/docs/tutorials/tadhack-2023.md @@ -0,0 +1,21 @@ +# TADHack 2023 + +### Developer resources + +jambonz is excited as ever to sponsor TADHACK 2023. For those developers that wish to create a hack using jambonz, all you need to do is to go to [jambonz.cloud](https://jambonz.cloud/register) and create a free account. You will get a free 3-week trial and to extend it beyond that simply email us at support@jambonz.org when your trial expires. Let us know you are part of TADHACK and we will renew it for you through the hackathon. + +If you can, take a few moments to watch [this video](https://youtu.be/A73PDIpoy_8) which will show you the basics of setting up your account on jambonz.cloud. + +Other videos that may be helpful if you are getting started on jambonz: +- [building applications using Node.js](https://youtu.be/42jcqyvCstU) +- Sam Machin's video on [building applications using Node-RED](https://www.youtube.com/watch?v=9c6cSbxjXS4) + +And, of course, please refer to to our [docs page](/docs/webhooks/overview) and [api docs](https://api.jambonz.org). + +Oh, and if you prefer, you can also [build a jambonz application using websockets](/docs/ws/overview) instead of webhooks. So lots of choices. + +**Most Importantly** join our Slack community by going to [joinslack.jambonz.org](https://joinslack.jambonz.org) so you can ask for help before or during the hackathon from the jambonz team as well as the broader community. + +Good hacking! Make something fun! + +~ The jambonz team ~ \ No newline at end of file diff --git a/markdown/docs/webhooks/overview.md b/markdown/docs/webhooks/overview.md index d7818c9..2e3d43b 100644 --- a/markdown/docs/webhooks/overview.md +++ b/markdown/docs/webhooks/overview.md @@ -1,4 +1,15 @@ -# Webhooks +# Webhook API + +>> Note: this page describes how to build applications using webhooks. If you prefer to use the websocket API, please visit [this page](/docs/ws/overview). + +**TLDR;** +- Use `npx create-jambonz-app` to scaffold a webhook application +- See [@jambonz/node-client](https://www.npmjs.com/package/@jambonz/node-client) for Node.js API + +Or: +- use Node-RED and install [@jambonz/node-red-contrib-jambonz](https://flows.nodered.org/node/@jambonz/node-red-contrib-jambonz) + +## Overview jambonz controls calls through the use of JSON payloads that are exchanged either over an HTTP(s) or a websocket connection. When an incoming call for your account is received, jambonz retrieves the URL that you have configured for the application you want to run. If the URL begins with 'http(s)://' jambonz makes an http request to the URL, while if the URL starts with 'ws(s)://' jambonz establishes a websocket connection to that URL. jambonz then sends an initial message describing the incoming call, and your webapp is then responsible for returning a JSON payload that indicates how you want the call handled. diff --git a/markdown/docs/ws/overview.md b/markdown/docs/ws/overview.md index f300fa4..4ab4e8b 100644 --- a/markdown/docs/ws/overview.md +++ b/markdown/docs/ws/overview.md @@ -1,5 +1,11 @@ # Websocket API +>> Note: this page describes how to build applications using websockets. If you prefer to use the webhooks API, please visit [this page](/docs/webhooks/overview). + +**TLDR;** +- Use `npx create-jambonz-ws-app` to scaffold a webhook application +- See [@jambonz/node-client-ws](https://www.npmjs.com/package/@jambonz/node-client-ws) for Node.js API + The websocket API is functionally equivalent to the Webhook API; it is simply an alternative way for an application to interact with and drive jambonz call and message processing. The reason we created this alternative API is that there are some use cases - primarily those involving a lot of asynchronous interaction with jambonz - that can be done much easier over a single websocket connection than over a combination of HTTP webhooks and REST APIs.