voip24h-sip-gateway

1.0.8 • Public • Published

voip24h-sip-gateway

NPM version

Mục lục

Tính năng và các Event

Chức năng Mô tả
CallKit • Kết nối tài khoản SIP
• Gọi đi/Nhận cuộc gọi đến
• Chấp nhận cuộc gọi/Từ chối cuộc gọi đến/Ngắt máy
• Pause/Resume cuộc gọi
• Hold/Unhold cuộc gọi
• Bật/Tắt mic
• Lấy trạng thái mic
• Transfer cuộc gọi
• Send DTMF

• Event khởi tạo và đăng ký tài khoản SIP

Event Mô tả và Response
Registered • Đăng ký tài khoản SIP thành công.
RegistrationFailed • Đăng ký tài khoản SIP thất bại.

• Event cuộc gọi đến

Event Mô tả và Response
Incomingcall • Sự kiện đang có cuộc gọi đến.
• Response: {phonenumer: số_điện_thoại}
Accepted • Sự kiện chấp nhận cuộc gọi đến.
Hangup
EmployerHangup
CustomerHangup
• Sự kiện kết thúc cuộc gọi.
CustomerHangup : Khách hàng cúp máy
EmployerHangup: Nhân viên cúp máy
Reject • Sự kiện từ chối cuộc gọi đến.

• Event cuộc gọi đi

Event Mô tả và Response
Calling • Bắt sự kiện cuộc gọi đi.
Accepted • Chấp nhận cuộc gọi đi từ phía người nhận.
Hangup
EmployerHangup
CustomerHangup
• Sự kiện kết thúc cuộc gọi.
CustomerHangup : Khách hàng cúp máy
EmployerHangup: Nhân viên cúp máy

• Event kiểm tra các xử lý trong cuộc gọi

Event Mô tả và Response
transfer • Chuyển tiếp cuộc gọi.
holding
unholding
• Kiểm tra trạng thái giữ cuộc gọi. Hoặc sử dụng hàm isHold( ).
Hangup
EmployerHangup
CustomerHangup
• Sự kiện kết thúc cuộc gọi.
CustomerHangup : Khách hàng cúp máy
EmployerHangup: Nhân viên cúp máy
Kiểm tra Bật/Tắt mic sử dụng hàm isMute( ).

• Event kiểm tra tiến trình WebRTC

Event Mô tả và Response
Error • Kiểm tra lỗi trong tiến trình.
• Response: {error: thông_tin_lỗi}
Destroyed • Kiểm tra sự kiện hủy tiến trình.
ServerDown • Kiểm tra sự kiện server ngưng hoạt động.
• Response: {event: thông_tin_sự_kiện}
Closing • Kiểm tra sự kiện mất tính hiệu do tắt trang.

Cài đặt

Sử dụng npm:

$ npm install voip24h-sip-gateway

Sử dụng yarn:

$ yarn add voip24h-sip-gateway

Sử dụng

• Import thư viện voip24h-sip-gateway vào

import { Voip24hModule, EventSipGateway } from 'voip24h-sip-gateway';

• Khởi chạy thư viện bằng cách gọi Voip24hModule.getInstance()initializeModule(); trong function 'cha' của hệ thống và truyền chuỗi 'all' để bật debug

//Khởi tạo không có debug
var module = Voip24hModule.getInstance()
await module.initializeModule();
//Khởi tạo có debug
var module = Voip24hModule.getInstance('all')
await module.initializeModule();

• Khởi tạo hàm để bắt các sự kiện của thư viện trả về. Bằng cách gọi hàm pushEventToSide trong hook useEffect
***Lưu ý: Các sự kiện có trả Response và cách lấy Response:

Event Mô tả và Response
Incomingcall • Sự kiện đang có cuộc gọi đến.
• Response: {phonenumer: số_điện_thoại}
Error • Kiểm tra lỗi trong tiến trình.
• Response: {error: thông_tin_lỗi}
ServerDown • Kiểm tra sự kiện server ngưng hoạt động.
• Response: {event: thông_tin_sự_kiện}
useEffect(() => {
  module.pushEventToSide(
    {
      onmessageOutSide: function (event,data) {
        console.log("Trạng thái: " + event);
        if(event === EventSipGateway.Incomingcall){
          console.log("Số gọi đến: " + data.phonenumber)
        }else if(event === EventSipGateway.Error){
          console.log("Thông tin lỗi: " + data.error)
        }
      }
    }
  );
}, []);

• Đăng ký tài khoản SIP sử dụng hàm registerSip(ipAddressSIP, numberSIP, password);

module.registerSip("14.225.254.251", "100", "password");

-Kiểm tra xem trạng thái đã đăng ký tài khoản SIP bằng cách check Event register hoặc sử dụng hàm isRegistered();.

module.isRegistered();
Response Mô tả
true • Đã đăng ký SIP
false • Chưa đăng ký SIP

• Thực hiện cuộc gọi sử dụng hàm call(phonenumber);

module.call("0981998945");

• Ngắt/Hủy cuộc gọi sử dụng hàm hangUp();

module.hangUp();

• Các hàm xử lý cuộc gọi đến

//Nhận cuộc gọi
module.answer();
//Từ chối cuộc gọi
module.reject();

• Các hàm xử lý trong cuộc gọi
-Trong cuộc gọi, hàm Tắt/Bật mic :

module.toggleMute();

-Kiểm tra xem trạng thái của mic đang bật hay tắt:

module.isMute();
Response Mô tả
true • Mic đang tắt
false • Mic đang bật

-Trong cuộc gọi, hàm Hold/Unhold :

module.toggleHold();

-Kiểm tra xem trạng thái Hold/Unhold:

module.isHold();
Response Mô tả
true • Đang hold cuộc gọi
false • Cuộc gọi bình thường

• Trong cuộc gọi, muốn chuyển tiếp cuộc gọi cho số điện thoại khác sử dụng hàm transfer(phonenumber_to_transfer):

module.transfer(102)

• Trong cuộc gọi, sử dụng dtmf, hàm sendDtmf(number) :

module.sendDtmf(2);

• Hàm hủy tiến trình WebRTC sử dụng hàm release():

module.release();

Readme

Keywords

Package Sidebar

Install

npm i voip24h-sip-gateway

Weekly Downloads

11

Version

1.0.8

License

MIT and VOIP24H

Unpacked Size

1.25 MB

Total Files

22

Last publish

Collaborators

  • voip24h-corp