
Security News
Deno 2.2 Improves Dependency Management and Expands Node.js Compatibility
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
twilio-taskrouter
Advanced tools
TaskRouter is Twilio's skills based routing system. With this library, you can manage your Workers in the browser or view the state of your Workspace.
This version of TaskRouter SDK can be used with Twilio Flex and TaskRouter standalone instances.
npm install twilio-taskrouter
The following is a simple example showing a Worker waiting for Reservations. For more information, refer to the API Docs.
const TaskRouter = require("twilio-taskrouter");
const Twilio = require("twilio");
const AccessToken = Twilio.jwt.AccessToken;
const TaskRouterGrant = AccessToken.TaskRouterGrant;
const accountSid = "";
const signingKeySid = "";
const signingKeySecret = "";
const workspaceSid = "";
const workerSid = "";
const token = createAccessToken(
accountSid,
signingKeySid,
signingKeySecret,
workspaceSid,
workerSid
);
const alice = new TaskRouter.Worker(token);
alice.on("ready", (readyAlice) => {
console.log(`Worker ${readyAlice.sid} is now ready for work`);
});
alice.on("reservationCreated", (reservation) => {
console.log(
`Reservation ${reservation.sid} has been created for ${alice.sid}`
);
console.log(`Task attributes are: ${reservation.task.attributes}`);
reservation.on("accepted", (acceptedReservation) => {
console.log(`Reservation ${acceptedReservation.sid} was accepted.`);
});
reservation
.accept()
.then((acceptedReservation) => {
console.log(`Reservation status is ${acceptedReservation.status}`);
})
.catch((err) => {
console.log(`Error: ${err}`);
});
});
function createAccessToken(
accountSid,
signingKeySid,
signingKeySecret,
workspaceSid,
workerSid
) {
const taskRouterGrant = new TaskRouterGrant({
workerSid: workerSid,
workspaceSid: workspaceSid,
role: "worker",
});
const accessToken = new AccessToken(
accountSid,
signingKeySid,
signingKeySecret
);
accessToken.addGrant(taskRouterGrant);
accessToken.identity = "alice";
return accessToken.toJwt();
}
See CHANGELOG.md.
See LICENSE.md.
Fork and clone the repository. Use npm to install node 8 (other versions may run into problems).
Then, install dependencies with:
yarn install
Then run the build
script:
yarn build
The builds and docs will be placed in the dist/
directory.
Before commits, be sure to validate by running:
make lint
Bug fixes welcome! If you're not familiar with the GitHub pull request/contribution process, this is a nice tutorial.
FAQs
Twilio TaskRouter JavaScript library
The npm package twilio-taskrouter receives a total of 10,458 weekly downloads. As such, twilio-taskrouter popularity was classified as popular.
We found that twilio-taskrouter demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers 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
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
Security News
React's CRA deprecation announcement sparked community criticism over framework recommendations, leading to quick updates acknowledging build tools like Vite as valid alternatives.
Security News
Ransomware payment rates hit an all-time low in 2024 as law enforcement crackdowns, stronger defenses, and shifting policies make attacks riskier and less profitable.