2011-01-11 10 views
7

में एसएमपीपी पर मल्टीपार्ट एसएमएस संदेश नहीं भेज सकता है मैं जावा में एक मल्टीपार्ट एसएमएस संदेश भेजने की कोशिश कर रहा हूं।जावा

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/) के साथ भेजने का नेटवर्क पता प्राप्त हो। इसमें एक महान एसएमपीपी प्रोटोकॉल हैंडलर है जो पैकेट के सभी झंडे और विकल्पों को दिखाएगा। यदि आपको अभी भी विवरण पोस्ट करने में समस्याएं हैं और मैं सहायता करने में सक्षम हूं। – alexrs

उत्तर

1

Raks,

याद रखें कि दुनिया में दुनिया में सभी नेटवर्क, और न ही सभी हैंडसेट भेजने/बहु-भाग एसएमएस संदेश प्राप्त करने के लिए सही ढंग से कॉन्फ़िगर कर रहे हैं।

जैसा कि आपने (सही) अपने वास्तविक एसएमएससी कनेक्टर को छिपाया है, मुझे यकीन नहीं है कि आप कौन से वाहक/एग्रीगेटर से कनेक्ट हैं। इसलिए यदि आप अपनी विशिष्ट स्थिति में समस्या है तो मैं टिप्पणी नहीं कर सकता।

लेकिन जैसा कि एलेक्सर्स ने कहा, टीसीपी डंप आउटपुट शामिल करें और हम कम से कम आपके ऐप से आने वाले सही आउटपुट पर टिप्पणी कर सकते हैं।

+0

यहां तक ​​कि वाहक और फोन जो मुझे पता है, मल्टीपार्ट संदेशों का समर्थन करता है (दोनों को भेजकर और प्राप्त किया गया है), मुझे अभी भी उपरोक्त के समान कोड के साथ भेजे जाने पर कई एकल संदेशों के रूप में प्राप्त होने वाले बहु-भाग संदेशों की समस्या है। – ADTC