2011-01-11 6 views
7

Java에서 다중 메시지 SMS 메시지를 보내려고합니다.Java에서 SMPP를 통해 다중 메시지 SMS 메시지를 보낼 수 없습니다.

public static void main(String[] args) throws Exception { 
    SMPPSession session = new SMPPSession(); 
    session.connectAndBind("0.0.0.0", 00000, new BindParameter(
       BindType.BIND_TX, "User", "Pass", "SMPP", TypeOfNumber.UNKNOWN, 
       NumberingPlanIndicator.UNKNOWN, null)); 
    Random random = new Random(); 

    final int totalSegments = 3; 
    OptionalParameter sarMsgRefNum = OptionalParameters.newSarMsgRefNum((short) random.nextInt()); 
    OptionalParameter sarTotalSegments = OptionalParameters.newSarTotalSegments(totalSegments); 

    for (int i = 0; i < totalSegments; i++) { 
     final int seqNum = i + 1; 
     String message = "Message part " + seqNum + " of " + totalSegments + " "; 
     OptionalParameter sarSegmentSeqnum = OptionalParameters 
       .newSarSegmentSeqnum(seqNum); 
     String messageId = session.submitShortMessage("CMT", TypeOfNumber.INTERNATIONAL, 
       NumberingPlanIndicator.UNKNOWN, "919999999999", TypeOfNumber.INTERNATIONAL, 
       NumberingPlanIndicator.UNKNOWN, "919999999999", new ESMClass(), 
       (byte) 0, (byte) 1, timeFormatter.format(new Date()), null, 
       new RegisteredDelivery(SMSCDeliveryReceipt.DEFAULT), (byte) 0, 
       new GeneralDataCoding(false, false, MessageClass.CLASS1, 
         Alphabet.ALPHA_8_BIT), (byte) 0, message.getBytes(),sarSegmentSeqnum, sarTotalSegments, sarMsgRefNum); 
     System.out.println("Message submitted, message_id is " + messageId); 
    } 
    session.unbindAndClose(); 
} 

하지만이 코드는 작동하지 않는 것 같습니다. 내가받는 메시지는 서로 다른 메시지로 나뉘어져 있으며 핸드셋에서 연결되어 있지 않습니다.

내가 뭘 잘못하고 있는지에 대한 안내입니다.

+0

[Wireshark] (http://www.wireshark.org/)와 함께 보내는 네트워크 추적을받는 것이 좋습니다. 패킷의 모든 플래그와 옵션을 표시하는 훌륭한 SMPP 프로토콜 핸들러가 있습니다. 문제가 계속 남아 있으면 세부 정보를 게시하면 도와 드릴 수 있습니다. – alexrs

답변

1

락스,

세계에서 세상의 모든 네트워크 없으며, 모든 단말기가 여러 부분의 SMS 메시지를 송신/수신 올바르게 구성하지 않는 것이 기억

.

실제 SMSC 커넥터를 (올바르게) 위장했기 때문에 어떤 통신 업체/애그리 게이터를 연결해야할지 모르겠습니다. 따라서 이것이 귀하의 특정 상황에서 문제가되는 경우 나는 논평 할 수 없습니다.

그러나 Alexrs가 말했듯이 TCP Dump 출력을 포함 시키므로 앱에서 나오는 올바른 출력에 대해 최소한 언급 할 수 있습니다.

+0

내가 알고있는 이동 통신사와 전화기에서도 여러 부분 메시지를 보내고 받았다고해도 위와 비슷한 코드로 보낼 때 여러 부분 메시지가 여러 개의 단일 메시지로 수신되는 문제가 있습니다. – ADTC

관련 문제