рдЬрд╛рд╣рд┐рд░ рд╣реИ, рд╣рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рдЬреАрд╡рди рдореЗрдВ, рдПрдХ рд╕рдордп рдЖрддрд╛ рд╣реИ рдЬрдм рдЙрд╕рдХреЗ рд▓рд┐рдП рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╡рд╣
рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢ рдХреИрд╕реЗ рднреЗрдЬреЗрдВред рдХрд▓, рдРрд╕реЗ рд╣реА рдПрдХ рдХреНрд╖рдг рдореЗрд░реЗ рд▓рд┐рдП рдЖрдпрд╛ред рдореБрдЭреЗ рддреБрд░рдВрдд рдХрд╣рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдЬрд╝рд░реВрд░рдд рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдореЗрд▓рд┐рдВрдЧ рдФрд░ рдЕрдиреНрдп рд╕реНрдкреИрдо рд╕реЗ рдЬреБрдбрд╝реА рдирд╣реАрдВ рд╣реИред рдЙрдкрдХрд░рдг рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рджреМрд░рд╛рди рдкрддрд╛ рдЪрд▓рд╛ рдШрдЯрдирд╛рдУрдВ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдПрд╕рдПрдордПрд╕-рдХреА рдХреЛ рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рд╢рд╛рдВрддрд┐рдкреВрд░реНрдг рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рднреЗрдЬрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рдорд╛рдЪрд╛рд░ рдкрддреНрд░ рдХреЗ рдорд╣рддреНрд╡ рдХреЛ рдХрдо рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рджреБрд░реНрдШрдЯрдирд╛ рдХреА рд╕реВрдЪрдирд╛ рдИрдПрдордЖрдИрдПрд▓ рд╕рдВрдкрд░реНрдХ рд╡реНрдпрдХреНрддрд┐ рдХреЛ рднреЗрдЬрдХрд░, рд╣рдо рддрддреНрдХрд╛рд▓ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдпрд╣ рдЬреНрдЮрд╛рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдХрдм рдЕрдкрдирд╛ рдореЗрд▓ рдкрдврд╝реЗрдЧрд╛ред рдПрд╕рдПрдордПрд╕ рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рдиреЗ
рдПрд╕рдПрдордкреАрдкреА рд╕реЗрд╡рд╛ рдХреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рд▓рдВрдмрд╛ рдФрд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдЬрд╛рд╡рд╛ рдореЗрдВ рдПрдХ рддреИрдпрд╛рд░ рдПрд╕рдПрдордкреАрдкреА рдХреНрд▓рд╛рдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдореБрдЭреЗ рддрд░реНрдХрд╕рдВрдЧрдд рд▓рдЧрд╛ред рд╣рд┐рдореНрдордд рд╕реЗ рд╢рдмреНрдж "рдЬрд╛рд╡рд╛ smpp рдХреНрд▓рд╛рдЗрдВрдЯ" рдХреЛ
рдЧреВрдЧрд▓ рд╕рд░реНрдЪ рдмрд╛рд░ рдореЗрдВ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рддреБрд░рдВрдд рд╡рд╣
рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдорд┐рд▓ рдЧрдИ рдЬрд┐рд╕рдХреА рдореБрдЭреЗ рдЬрд░реВрд░рдд рдереАред рдЖрдЧреЗ рдХреНрдпрд╛ рд╣реБрдЖ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдЬ рдореЗрд░реА рдкреЛрд╕реНрдЯ рдмрддрд╛рддреА рд╣реИред
рдЪреВрдВрдХрд┐ рдореИрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП
рдорд╛рд╡реЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВрдиреЗ рд╕рд╛рдЗрдЯ рд╕реЗ
рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛, рдЗрд╕реЗ рдирд┐рдореНрди рдЖрджреЗрд╢ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдиреАрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛:
mvn install:install-file -Dfile=jsmpp-2.1.0.jar -DgroupId=org.jsmpp -DartifactId=smpp -Dversion=2.1.0 -Dpackaging=jar
рдлрд┐рд░ рдПрдХ рдкреЛрдо рдлрд╛рдЗрд▓ рдмрдирд╛рдИ:
pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.acme.ae.tests.smpp</groupId> <artifactId>SMPPTest</artifactId> <version>1.0.0</version> <packaging>jar</packaging> <name>smppTest-${project.version}</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <resource_dir>${project.basedir}/src/main/resources</resource_dir> </properties> <build> <finalName>${project.name}-${project.version}</finalName> <resources> <resource> <directory>${resource_dir}</directory> </resource> </resources> </build> <dependencies> <dependency> <groupId>org.jsmpp</groupId> <artifactId>smpp</artifactId> <version>2.1.0</version> </dependency> </dependencies> </project>
рдкрд░реАрдХреНрд╖рдг рдЖрд╡реЗрджрди рдХреА рддреИрдпрд╛рд░реА рдХрд╛рдлреА рдорд╛рдирдХ рд▓рдЧ рд░рд╣реА рдереА:
Test.java package com.acme.ae.tests.smpp; public class Test { private void start() throws IOException { } private void stop() throws IOException { } private void test() { } public static void main(String[] args) { Test t = new Test(); try { try { t.start(); t.test(); } finally { t.stop(); } } catch (Exception e) { System.out.println(e.toString()); } } }
рдЗрд╕рдХреЗ рдмрд╛рдж рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдП рдЧрдП
рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдПрдХ рдЕрдиреБрд╡рд╛рдж
рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рджреВрд╕рд░реЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк
рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛
рдЧрдпрд╛ рдерд╛ ред
рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдКрдкрд░ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:
рд╕рд░реНрд╡рд░ рдХрдиреЗрдХреНрд╢рди ... private SMPPSession session = null; private void start() throws IOException { session = new SMPPSession(); session.connectAndBind(SMPP_IP, SMPP_PORT, new BindParameter( BindType.BIND_TX, SMPP_LOGIN, SMPP_PASS, "cp", TypeOfNumber.UNKNOWN, NumberingPlanIndicator.UNKNOWN, null)); } private void stop() throws IOException { if (session != null) { session.unbindAndClose(); } } ...
рдпрд╣рд╛рдВ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдПрдХ рд╣рд┐рд╕реНрд╕реЗ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд╕рдВрджрд░реНрдн рд╕реЗ рдХрд╛рдлреА рд╕реНрдкрд╖реНрдЯ рд╣реИред рд╢реЗрд╖ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдирдореВрдирд╛ рдХреЛрдб рд╕реЗ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЪреВрдБрдХрд┐ рд╣рдо рдХреЗрд╡рд▓ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рд╡рд╛рд▓реЗ рд╣реИрдВ, рд╣рдо BindType.BIND_TX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдЙрджрд╛рд╣рд░рдг рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╕рдВрджреЗрд╢ рдЕрдВрддрд░рдг рдХреЛрдб (рдпрд╛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд╛рд░реНрдп), рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛:
... new GeneralDataCoding(Alphabet.ALPHA_DEFAULT, MessageClass.CLASS1, false) ...
GitHub рдХреЗ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд╕рд╛рде рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрдИ рд▓рд╛рдЗрдмреНрд░реЗрд░реА (рдирд╡реАрдирддрдо рдЙрдкрд▓рдмреНрдз рд╕рдВрд╕реНрдХрд░рдг 2.1.0) рдХреЗ рд╕реНрд░реЛрддреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕, рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛, рдбрд┐рдЬрд╛рдЗрдирд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛:
- public GeneralDataCoding(boolean compressed, boolean containMessageClass, - MessageClass messageClass, Alphabet alphabet) { + public GeneralDataCoding(Alphabet alphabet, MessageClass messageClass, + boolean compressed) throws IllegalArgumentException { ... }
рдЪреВрдВрдХрд┐ рдореИрдВрдиреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдХреЛрдб рдореЗрдВ рд╕рдорд╛рдпреЛрдЬрди рдХрд░рдирд╛ рдкрдбрд╝рд╛ (рдХреЛрдб рдореЗрдВ рдкреНрд░реЗрд╖рдХ рдФрд░ рд░рд┐рд╕реАрд╡рд░ рдХреЗ рдкрддреЗ рдмрджрд▓ рджрд┐рдП рдЧрдП):
рд▓рдШреБ рд╕рдВрджреЗрд╢ рд╕реНрдерд╛рдирд╛рдВрддрд░рдг ... private static TimeFormatter timeFormatter = new AbsoluteTimeFormatter(); private void test() throws PDUException, ResponseTimeoutException, InvalidResponseException, NegativeResponseException, IOException { String messageId = session.submitShortMessage( "CMT", TypeOfNumber.ALPHANUMERIC, NumberingPlanIndicator.UNKNOWN, "ACME", TypeOfNumber.INTERNATIONAL, NumberingPlanIndicator.ISDN, "7XXXXXXXXXX", 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_DEFAULT), (byte)0, "jSMPP simplify SMPP on Java platform".getBytes()); System.out.println("Message submitted, message_id is " + messageId); } ...
рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЪрд▓рд╛рдирд╛ рдЕрд╕рдлрд▓ рд░рд╣рд╛ред рдЬрдм рдПрдХ SMPPSession рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдПрдХ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at org.jsmpp.session.AbstractSession.<clinit>(AbstractSession.java:51) at com.amfitel.m2000.ae.tests.smpp.Test.start(Test.java:56) at com.amfitel.m2000.ae.tests.smpp.Test.main(Test.java:179) Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) ... 3 more
рджрд░рдЕрд╕рд▓,
рдЧреЗрдЯрд╕реНрдЯрд╛рд░реНрдЯреЗрдб рдореЗрдВ
SLF4J рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рдПрдХ рдорддрд▓рдм рдерд╛ред рдореБрдЭреЗ pom.xml рдореЗрдВ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рдирд╛ рдерд╛:
... <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.6.1</version> </dependency> ...
рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ (1.6.1, 1.4.3 рдирд╣реАрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдЧреЗрдЯрд╕реНрдЯрд╛рд░реНрдЯреЗрдб рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдЧрд┐рдЯрд╣рдм рдкрд░
рдкреЛрдо рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЕрдм рд▓реЙрдЧ рдореЗрдВ рдПрдХ рдЕрдкреНрд░рд┐рдп рддреНрд░реБрдЯрд┐ рд▓рд┐рдЦреА рдЬрд╛рдиреЗ рд▓рдЧреА, рд▓реЗрдХрд┐рди рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдХрдо рд╕реЗ рдХрдо рд╕рдВрдмрдВрдз рд╕реНрдерд╛рдкрд┐рдд рд╣реЛ рдЧрдпрд╛:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
рдЯрд┐рдкреНрдкрдгреАGitHub рдХреЗ рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рд▓реА рдЧрдИ рдПрдХ рдФрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛:
... <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.6.1</version> </dependency> ...
рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж, log4j.properties рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд▓реЙрдЧ рдмрдирдирд╛ рд╢реБрд░реВ рд╣реБрдЖред рдЯрд┐рдк рдХреЗ рд▓рд┐рдП
Googolplex рдХрд╛ рдзрдиреНрдпрд╡рд╛рджред
рдПрдХ рд╕рдВрджреЗрд╢ рднреЗрдЬрдирд╛ рднреА рд╕рдлрд▓ рд░рд╣рд╛, рд▓реЗрдХрд┐рди "рдЪреМрд░рд╛рд╣реЗ" рдкрддреНрд░ рдХреЗ рдмрдЬрд╛рдп рдлреЛрди рдкрд░ рдЖрдПред
рд╡рд╛рдпрд░рд╢рд░реНрдХ рдмрдЪрд╛рд╡ рдореЗрдВ рдЖрдП:

рд╣рдорд╛рд░реЗ рдПрд╕рдПрдордкреАрдкреА рд╕рд░реНрд╡рд░ рдбреЗрд╡рд▓рдкрд░ рдиреЗ рддрд░реНрдХ рджрд┐рдпрд╛ рдХрд┐ рд▓реИрдЯрд┐рди рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдбреЗрдЯрд╛ рдХреЛрдбрд┐рдВрдЧ рдХреЛ 0. рднреЗрдЬрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореБрдЭреЗ рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЬреЗрдПрд╕рдПрдордкреАрдкреА рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╡рд┐рднрд┐рдиреНрди рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдХреЛрдб рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред рд╕реНрд░реЛрдд рдХреЛрдб рдкрд░ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдзреНрдпрд╛рди рдХреЗ рдмрд╛рдж, рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИ рдереА:
... new GeneralDataCoding( false, false, - MessageClass.CLASS1, + MessageClass.CLASS0, Alphabet.ALPHA_DEFAULT) ...
рдЕрдм рдпрд╣ рд╕реАрдЦрдирд╛ рдЬрд╛рд░реА рд░рд╣рд╛ рдХрд┐ рд╕рд┐рд░рд┐рд▓рд┐рдХ рд╡рд░реНрдгрдорд╛рд▓рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рдВрдмреЗ рд╕рдВрджреЗрд╢ рдФрд░ рд╕рдВрджреЗрд╢ рдХреИрд╕реЗ рднреЗрдЬреЗрдВред рд▓рдВрдмреЗ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ
рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ MESSAGE_PAYLOAD рдХреЗ рд╕рд╛рде рдмреБрджреНрдзрд┐рдорд╛рди рдирд╣реАрдВ рд╣реБрдЖред
рд╕рд┐рд░рд┐рд▓рд┐рдХ рд╡рд░реНрдгрдорд╛рд▓рд╛ рдХреЛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЛ рдмрджрд▓рдирд╛ рдФрд░ рд╕рдВрджреЗрд╢ рдХреЛ UCS-2 рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдмрд╛рдж рдореЗрдВ UTF-16 рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдореЗрдВ рдмрд╛рдЗрдЯреНрд╕ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдкрд╛рда рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╣реБрдЖ (рдЖрдк рдпрд╣рд╛рдВ UCS-2 рдФрд░ UTF-16 рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ)ред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ:
рдПрдХ рд▓рдВрдмреЗ рд╕рд┐рд░рд┐рд▓рд┐рдХ рд╕рдВрджреЗрд╢ рдХрд╛ рдкреНрд░рд╕рд╛рд░рдг GeneralDataCoding coding = new GeneralDataCoding( false, false, MessageClass.CLASS0, Alphabet.ALPHA_UCS2); final int totalSegments = 3; Random random = new Random(); 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 = " " + seqNum + " of " + totalSegments + " "; OptionalParameter sarSegmentSeqnum = OptionalParameters.newSarSegmentSeqnum(seqNum); String messageId = session.submitShortMessage( "CMT", TypeOfNumber.ALPHANUMERIC, NumberingPlanIndicator.UNKNOWN, "ACME", TypeOfNumber.INTERNATIONAL, NumberingPlanIndicator.ISDN, "7XXXXXXXXXX", new ESMClass(), SMPP_PROTOCOL_ID,
рдЗрд╕ рд▓реЗрдЦ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдореИрдВ рдЗрд╕ рдмрд╛рдд рдкрд░ рдЬреЛрд░ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ JSMPP рдХреА рдЖрд▓реЛрдЪрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ред рдПрд╕рдПрдордкреАрдкреА рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдЬрдЯрд┐рд▓ рд╣реИ, рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рд╕рдВрднрд╡ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рдРрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдорд╛рдореВрд▓реА рдЦрд╛рдорд┐рдпрд╛рдВ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп рд╣реИрдВред
рдореИрдВрдиреЗ рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЛ рдХрд┐рд╕реА рдХреЛ рдбрд╛рдВрдЯрдиреЗ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдерд╛, рдмрд▓реНрдХрд┐ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдЗрдЪреНрдЫрд╛ рдХреЗ рд╕рд╛рде рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрд╕реА рд░реЗрдХ рдкрд░ рдЪрд▓рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛ рджрд┐рдпрд╛ рдерд╛ рдЬрд┐рд╕рд╕реЗ рд╡рд╣ рдЦреБрдж рдЧреБрдЬрд░рддреА рдереАред рдХреГрдкрдпрд╛ рдореЗрд░реЗ рдмрдбрд╝рдмреЛрд▓реЗрдкрди рдХреЛ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рди рд▓реЗрдВред