twin-protocol-dev
v1.0.9
Published
Twin Platform SDK is a Node.js library that provides seamless integration with the Twin Platform API. This SDK allows developers to easily interact with AI-based twin models and perform other key operations within the Twin Platform Customer Portal.
Downloads
192
Readme
Twin Protocol SDK
Twin Platform SDK is a Node.js library that provides seamless integration with the Twin Platform API. This SDK allows developers to easily interact with AI-based twin models and perform other key operations within the Twin Platform Customer Portal.
Table of Contents
Requirements
For development, you will only need Node.js and a node global package, npm, installed in your environment.
Node
Node installation on Windows
Just go on the official Node.js website and download the installer. Also, be sure to have
git
available in your PATH, asnpm
might need it (You can find git here).Node installation on Ubuntu
You can install Node.js and npm easily with apt install, just run the following commands:
$ sudo apt install nodejs $ sudo apt install npm
Other Operating Systems
You can find more information about the installation on the official Node.js website and the official NPM website.
If the installation was successful, you should be able to run the following commands:
$ node --version
v20.13.1
$ npm --version
10.5.2
Install
$ npm install twin-protocol
Configure environment variables
ACCESS_KEY
SECRET_KEY
CLIENT_ID
Usage
Initialization
Steps to initialize the SDK:
import TwinProtocol from 'twin-protocol-dev';
const _twin = new TwinProtocol({
accessKey: 'your-access-key',
clientId: 'your-client-id',
secretKey: 'your-secret-key',
});
Text Based Chat
const brain_id = "";
const twinName = "";
const main = async () => {
try {
const { status } = await _twin.init(brain_id, twinName);
if (status) {
const res = await _twin.query("What is your name?");
console.log(res);
return res;
}
} catch (error) {
console.error(error.message);
}
};
main();
Text Audio Based Chat
const brain_id = "";
const twinName = "";
const main = async () => {
try {
await _twin.init(brain_id, twinName);
await _twin.stream("Who are you?");
// Listen for messages
_twin.on("message", (msg) => {
console.log("Message received: ");
console.log(msg);
});
} catch (error) {
console.error(error.message);
}
};
main();
Talking Avatar Video Generation
const main = async () => {
try {
// text to be spoken by avatar
let input = "Hi There, I am Olivia. Hope you would enjoy the communication.";
// id of an avatar
let twinId = "";
await _twin.init();
const resp = await _twin.twinVideoResponse(input, twinId)
console.log(resp);
} catch (error) {
console.error(error.message);
}
};
main();
Talking Avatar Compressed Video Generation
const main = async () => {
try {
let input = "Hi There, I am Olivia. Hope you would enjoy the communication.";
let twinId = "";
await _twin.init();
const resp = await _twin.twinCompressedVideo(input, twinId)
console.log(resp);
} catch (error) {
console.error(error.message);
}
};
main();
License
Twin Protocol, Inc 2024