Skip to content

@tkawen/liqaa-js

English — Official TypeScript SDK for LIQAA Cloud — drop-in video calls + messaging for any website

عربي — الحزمة الرسمية بلغة TypeScript لـ LIQAA — منصّة الاجتماعات المرئية الجزائرية.

Terminal window
npm install @tkawen/liqaa-js

Official TypeScript SDK for LIQAA Cloud — drop-in video calls and messaging for any website.

npm license

Terminal window
npm install @tkawen/liqaa-js
# or
pnpm add @tkawen/liqaa-js
# or
yarn add @tkawen/liqaa-js
import { LIQAA } from '@tkawen/liqaa-js';
const liqaa = await LIQAA.init({
publicKey: 'pk_live_xxxxxxxxxxxxxxxxxxxxx',
sdkToken: 'eyJhbGciOi...', // short-lived JWT from your server
accent: '#1d4ed8',
});
document.querySelector('#call-btn')!.addEventListener('click', () => {
liqaa.startCall('support@yoursite.com', 'Support team');
});

A floating bubble appears in the bottom-right of the page (or bottom-left if position: 'left'). Clicking your button starts a video call inside the bubble — no redirect.

Your server signs your user identity with your secret key (sk_live_…) and exchanges it for a short-lived (1 hour) browser-safe token:

// On your server (Node example):
const r = await fetch('https://liqaa.io/api/public/v1/sdk-token', {
method: 'POST',
headers: {
'Authorization': 'Bearer sk_live_...',
'Content-Type': 'application/json',
},
body: JSON.stringify({
public_key: 'pk_live_...',
identity_base64: btoa(JSON.stringify({ email: user.email, name: user.name, ts: Math.floor(Date.now()/1000) })),
signature: hmacSha256(identity, sk),
}),
});
const { sdk_token } = await r.json();

Pass sdk_token to the browser. Full server-side examples: liqaa.io/docs.

type LIQAAInitOptions = {
publicKey: string; // pk_live_… or pk_test_…
sdkToken: string; // short-lived JWT from your server
accent?: string; // brand color (default '#1d4ed8')
position?: 'left' | 'right'; // default 'right'
rtl?: boolean; // auto-detected from <html dir>
apiBase?: string; // override (default https://liqaa.io/api/public/v1)
embedBase?: string; // override (default https://liqaa.io)
scriptSrc?: string; // override (default https://liqaa.io/sdk.js)
};

Returns a LIQAAClient:

MethodDescription
show()Open the bubble panel.
hide()Close the bubble panel.
toggle()Toggle the bubble panel.
openConversationWith(email, name?)Open chat thread with a user.
startCall(email, name?)Start an instant video call.
on(event, handler)Listen for SDK events. Returns an unsubscribe function.
liqaa.on('call.started', (data) => console.log('call started', data));
liqaa.on('call.ended', (data) => console.log('call ended', data));
liqaa.on('message.sent', (data) => analytics.track('liqaa.message.sent', data));
  • React: @tkawen/liqaa-react — hooks + components.
  • Vue / Svelte / Solid: Use @tkawen/liqaa-js directly. Call LIQAA.init() once on mount.

Modern evergreen browsers (Chrome, Firefox, Safari, Edge — last 2 versions). For older browsers, transpile with your bundler.

MIT © TKAWEN GROUP


🏛️ TKAWEN Ecosystem · منظومة تكوّن

Section titled “🏛️ TKAWEN Ecosystem · منظومة تكوّن”

EN — Part of TKAWEN, Algeria’s software ecosystem: commerce, certification, meetings and AI infrastructure. One organisation, one trust layer.

عربي — جزء من تكوّن، المنظومة البرمجية الجزائرية: تجارة، توثيق، اجتماعات، وبنية ذكاء اصطناعي. مؤسّسة واحدة، طبقة ثقة واحدة.

Packages · الحزم: @tkawen/mystoq-sdk · @tkawen/mystoq-react · @tkawen/mystoq-mcp-server · @tkawen/mystoq-seo-toolkit · @tkawen/mystoq-maystro-bridge · @tkawen/mystoq-whatsapp-bridge · @tkawen/mystoq-yalidine-bridge · @tkawen/liqaa-js · @tkawen/liqaa-react

MCP Gateway: mcp.tkawen.com — official in the Model Context Protocol Registry (com.tkawen/intelligence-gateway)

Web: tkawen.com · Author · المؤلّف: Hartem Yaakoub · License: MIT