Skip to content

Instantly share code, notes, and snippets.

View psanders's full-sized avatar

Pedro Sanders psanders

View GitHub Profile
package org.astivetoolkit.agi;
public enum HangupCause {
AST_CAUSE_NOT_DEFINED(0),
AST_CAUSE_UNALLOCATED(1),
AST_CAUSE_NO_ROUTE_TRANSIT_NET(2),
AST_CAUSE_NO_ROUTE_DESTINATION(3),
AST_CAUSE_MISDIALLED_TRUNK_PREFIX(5),
AST_CAUSE_CHANNEL_UNACCEPTABLE(6),
@psanders
psanders / timezones
Last active August 29, 2015 14:14 — forked from ykessler/timezones
[
{"group":"US (Common)",
"zones":[
{"value":"America/Puerto_Rico","name":"Puerto Rico (Atlantic)"},
{"value":"America/New_York","name":"New York (Eastern)"},
{"value":"America/Chicago","name":"Chicago (Central)"},
{"value":"America/Denver","name":"Denver (Mountain)"},
{"value":"America/Phoenix","name":"Phoenix (MST)"},
{"value":"America/Los_Angeles","name":"Los Angeles (Pacific)"},
{"value":"America/Anchorage","name":"Anchorage (Alaska)"},
@psanders
psanders / API.md
Created February 14, 2018 22:20 — forked from iros/API.md
Documenting your REST API

Title

<Additional information about your API call. Try to use verbs that match both request type (fetching vs modifying) and plurality (one vs multiple).>

  • URL

    <The URL Structure (path only, no root url)>

  • Method:

Java.type('spark.Spark').get("/hello", function() { return "Hello World" })
...
public void jsLaunch() {
Context polyglot = Context
.newBuilder()
.allowExperimentalOptions(true)
.allowIO(true)
.allowAllAccess(true).build();
polyglot.eval("js", "const System = Java.type('java.lang.System');"
// jvm-npm needs this variable
const System = Java.type('java.lang.System')
load('./node_modules/jvm-npm/src/main/javascript/jvm-npm.js')
require('./app.js')
The following scenarios must work with verb dial
1. Agent's call is sent to ingress application. Call is transfer to another Agent ✔️
2. Agent's call is sent to ingress application. Call is then transfer to landline number via SP
The call gets transfer if the From header is setup correctly (using endpoint/from_domain: ...) but call setup is not
completed due to NAT issues
3. Call is received by ingress application and then transfer to softphone
@psanders
psanders / rexray-s3fs
Created December 15, 2020 01:59 — forked from cocoastorm/README.md
rexray/s3fs Docker Plugin Install with Minio
# Getting Started
Make sure Docker is installed!
Get your Minio endpoint url, accesskey, and secretkey ready!
## Install Docker Plugin
```bash
docker plugin install rexray/s3fs \

Docker Swarm with Macvlan, Consul and Autoscaling

TL;DR:

This will get you routable containers with IPs on your existing subnets, advertising to Consul. They will also be scalable and placed across a cluster of Swarm hosts. It's assumed that you are already running Consul, so if not, there are a ton of tutorials out there. It's also assumed you know how to install Docker and various Linux kernels.

Bonus: We add an autoscaling API called Orbiter (https://gianarb.it/blog/orbiter-the-swarm-autoscaler-moves).

I just want to run containers, like now, on my existing infrastructure and networks!

So you have an existing environment. You use Consul for service discovery. Life is good. Containers are now a thing and you want to work them in without having to worry about overlay networking or reverse proxies. You also don't want to add extra latency (as some naysayers could use it as fuel to kill your hopes and dreams). Lastly, you don't have a lot of time to invest in a complex orchestration tool, such a

@psanders
psanders / call.js
Created July 3, 2021 13:31
Using the SDK to start a call
const Fonos = require("@fonos/sdk");
const callManager = new Fonos.CallManager();
callManager.call({
from: "9842753574",
to: "17853178070",
webhook: "https://5a2d2ea5d84d.ngrok.io"
})
.then(console.log)
.catch(console.error);