2015-05-14 34 views
1

我想有可能阻止某些基於呼叫者ID的SIP來電。SIP Linux客戶端阻止不需要的呼叫

我的想法到目前爲止是有一個sip客戶端的linux盒子,當recive調用(INVITE)它只是檢查列表中的調用者id,如果在列表中它掛斷(BYE)。沒有語音不需要媒體流,只需註冊到SIP服務器並掛斷即可。

任何想法或任何軟件已經這樣做? 你會如何建議這樣做? (約瑟夫,SIPP,exosip ...)

謝謝你, DK

PS:我有SIP服務器不能訪問了,我不能有像星號SIP代理/服務器塊對我的呼籲,我可以有一個客戶。

回答

1

您可以使用re sip library創建一個非常基本的SIP客戶端。請檢查鏈接中的代碼以獲取基本的SIP客戶端。 http://pastebin.com/4uDWQf1B

要阻止某個caller_id,請使用connect_handler函數中的以下代碼。

if(!pl_strcmp(&msg->from.uri.user,"your_caller_id")){ 
    (void)sip_treply(NULL, sip, msg, 486, "Busy Here"); 
    return; 
} 
+0

謝謝您的回覆,我不知道這個庫,同時我嘗試了pjsip。這似乎很好,我正在修改call.py python示例..到目前爲止,它似乎很好。 – d82k