sip.js
Version:
A SIP library for JavaScript
87 lines (86 loc) • 2.89 kB
TypeScript
import { IncomingReferRequest } from "../core/messages/methods/refer.js";
import { IncomingRegisterRequest } from "../core/messages/methods/register.js";
import { IncomingSubscribeRequest } from "../core/messages/methods/subscribe.js";
import { Invitation } from "./invitation.js";
import { Message } from "./message.js";
import { Notification } from "./notification.js";
import { Referral } from "./referral.js";
import { Subscription } from "./subscription.js";
/**
* Delegate for {@link UserAgent}.
* @public
*/
export interface UserAgentDelegate {
/**
* Called upon transport transitioning to connected state.
*/
onConnect?(): void;
/**
* Called upon transport transitioning from connected state.
* @param error - An error if disconnect triggered by transport. Otherwise undefined.
*/
onDisconnect?(error?: Error): void;
/**
* Called upon receipt of an invitation.
* @remarks
* Handler for incoming out of dialog INVITE requests.
* @param invitation - The invitation.
*/
onInvite?(invitation: Invitation): void;
/**
* Called upon receipt of a message.
* @remarks
* Handler for incoming out of dialog MESSAGE requests.
* @param message - The message.
*/
onMessage?(message: Message): void;
/**
* Called upon receipt of a notification.
* @remarks
* Handler for incoming out of dialog NOTIFY requests.
* @param notification - The notification.
*/
onNotify?(notification: Notification): void;
/**
* @alpha
* Called upon receipt of a referral.
* @remarks
* Handler for incoming out of dialog REFER requests.
* @param referral - The referral.
*/
onRefer?(referral: Referral): void;
/**
* @alpha
* Called upon receipt of a registration.
* @remarks
* Handler for incoming out of dialog REGISTER requests.
* @param registration - The registration.
*/
onRegister?(registration: unknown): void;
/**
* @alpha
* Called upon receipt of a subscription.
* @remarks
* Handler for incoming out of dialog SUBSCRIBE requests.
* @param subscription - The subscription.
*/
onSubscribe?(subscription: Subscription): void;
/**
* @internal
* Called upon receipt of an out of dialog REFER. Used by test suite.
* @param request - The request.
*/
onReferRequest?(request: IncomingReferRequest): void;
/**
* @internal
* Called upon receipt of a REGISTER request. Used by test suite.
* @param request - The request.
*/
onRegisterRequest?(request: IncomingRegisterRequest): void;
/**
* @internal
* Called upon receipt of an out of dialog SUBSCRIBE request. Used by test suite.
* @param request - The request.
*/
onSubscribeRequest?(request: IncomingSubscribeRequest): void;
}