반응형

M = {}

trace.enable()

function M.outbound_INVITE(msg)

   local getTo = msg:getHeader("To")

   trace.format("yyyyyyyyyy %s",getTo)

   local getTo2 = string.match(getTo, "(<.+@)")

   local getTo3 = getTo2:gsub("@","")

   local getTo4 = string.format("%s>",getTo3)

   msg:modifyHeader("To",getTo4)

end 

return M



///////////////////////////////////////////////////////문법 정리////////////////////////////////


SIP 메세지 원본 

To: < sip:40000@10.0.22.142>


//   local getTo = msg:getHeader("To")

   ==> getHeader를 이용하여 To의 데이터를 변수에 넣는다 

   ==> getTo = < sip:40000@10.0.22.142> 해당값이 들어간다

 

//  local getTo2 = string.match(getTo, "(<.+@)")

   ==> getTo 변수에서 <~@ (꺽쇠괄호와 골뱅이를 포함한 데이터를 가지고 온다 

   ==> getTo2 = < sip:40000@ 해당 값이 들어간다


//  local getTo3 = getTo2:gsub("@","")

   ==> getTo2 변수에서 @값을 찾아서 "" 빈 값으로 치환을 한다. 

   ==> getTo3 = < sip:40000 으로 들어간다 (@값이 빈값으로 치환)


// local getTo4 = string.format("%s>",getTo3)

   ==> format으로 문자열을 만든다 %s 에는 문자열이 들어간다 (getTo3)

   ==> getTo4 = < sip:40000> 데이터가 들어간다 


// function M.outbound_INVITE(msg)

   ==> CUCM을 기준으로 Normalization이 들어가있는 Trunk쪽으로 Cucm이 Invite 날리는 메시지가 변경 됨 

   ==> cucm -> trunk invite 메시지 변경됨 


// function M.inbound_INVITE(msg)

   ==> CUCM을 기준으로 Normalization이 들어가있는 Trunk 쪽에서 CUCM으로 Invite를 날렸을 경우 메시지가 변경 됨 

   ==> trunk -> cucm 메시지 변경 됨 


/////////////////////////////////////////////////////////////////////////////////////////////////////////////

Ring을 변경할 경우에는 inbound_180_INVITE로 변경해야 함 


inbound_ANY

inbound_ANY_INVITE로 변경할 수 있음 








==============================================================================================

 ** 한글은 SIP Message가 깨져서 보임 

 ** SDL log에서는 한글이 모두 잘 보임 



M={}

trace.enable()

function M.inbound_INVITE(msg)

  local getFrom = msg:getHeader("From")

  local getFrom2=""

  local getRPID2=""

  

  if getFrom then 

    getFrom = string.match(getFrom, "(<.+>)")

    getFrom2 = string.format("민아야 사귀자 %s",getFrom)

    trace.format("yyyyyyyyyyyy From %s",getFrom2)

    msg:modifyHeader("From",getFrom2)

  else

    trace.format("yyyyyyyyyyyy From no")

  end

  

  local getRPID = msg:getHeader("Remote-Party-ID")

  

  if getRPID then 

    getRPID = string.match(getRPID, "(<.+>)")

    getRPID2 = string.format("민아야 사귀자 %s",getRPID)

    trace.format("yyyyyyyyyyyy RPID2 %s",getRPID2)

    msg:modifyHeader("Remote-Party-ID",getRPID2)

  else

    trace.format("yyyyyyyyyyyy RPID2 no")

    msg:addHeader("Remote-Party-ID","민아야 사귀자")

  end

end 

return M



반응형

'Cisco > CUCM' 카테고리의 다른 글

in band / out of band  (2) 2017.01.10
SDL / SDI 차이  (0) 2017.01.10
CUCM - 3rd Party IVR 연동 문제  (0) 2016.09.30
Device Pool / Inter Cluster 의 상태  (0) 2016.01.21
DB Replication 이 깨졌을 때  (0) 2015.12.28