SIP Servlet (ClickToDial)

SIP Servlet (ClickToDial)

สวัสดีครับ วันนี้ผมมีตัวอย่างการเขียน SIP Servlet อีกอันหนึ่งชื่อว่า ClickToDial เป็น B2BUA (Back to Back User Agent) Application ซึ่งใช้หลักการคือ ให้ตัว SIP Servlet เป็นคนจัดการในการ call ระหว่าง User agent ทั้งคู่ผ่านทาง Web โดยที่ User ทั้ง 2 จะต้อง Register ตัวเองไว้กับ SIP Servlet ก่อนครับ

ตัวอย่างของ SIP Message Flow ใน SIP Servlet

จาก Flow ข้างบนจะเห็นได้ว่า คนที่ Initial Call จะเป็น SIP Servlet (SailFin) แทนที่จะเป็น Bob หรือ Alice นี่แหละครับ คือ หลักการของ B2BUA  ซึ่งตรงนี้มีประโยชน์อย่างไร?  ที่เห็นชัด ๆ ก็คือ เราสามารถ Add Business logics (เงื่อนไข) ต่าง ๆ เช่น การทำ pre-paid เพราะ user ที่จะโทรหากันนั้นจะต้องผ่านตัว Application Server (ซึ่งก็คือ SIP Servlet) ถ้า credit หมดก็ disconnct, การบันทึก log การโทรเข้าออก เป็นต้น :-)

ตัวอย่างผลการ Run จะเห็นว่า เราสามารถ place call ให้กับ user ผ่านทาง web ได้เลยครับ Project อันนี้ Implement กับ Netbeans วิธีการ ผมก็เอา source code ( Download จากที่นี่ครับ => ClickToDial  ) มาไว้ใน Folder ของ Netbeans project แล้วก็ Run ได้เลย (แต่ต้อง config Sailfin ก่อนนะ)

ชื่อ User ที่ใช้ Login จะต้องเป็น Bob และ Alice (เป็น case sensitive ด้วยนะครับ)

คำอธิบายเพิ่มเติม เกี่ยวกับวิธีการ setup และวิธีใช้งาน ดูจากต้นฉบับเค้าน่าจะเข้าใจกว่า เพราะเขียนอธิบายไว้ค่อนข้างละเอียด Step by Step เลย จากที่นี่ครับ => http://wiki.glassfish.java.net/Wiki.jsp?page=SipClickToDialExample2

แถม Link Video อธิบายการใช้งานเพิ่มเติมครับ =>