📄 mmsserverimpl.java
字号:
/**
* 基于中移动MM7api开发的彩信服务程序
* 作者:马亮
* 日期:2007-11-28
* com.huawei.bass.gansu.mms.server.MmsServerImpl 服务端彩信发送实现类
*/
package com.huawei.bass.gansu.mms.server;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.List;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import com.cmcc.mm7.vasp.common.MMConstants;
import com.cmcc.mm7.vasp.common.MMContent;
import com.cmcc.mm7.vasp.conf.MM7Config;
import com.cmcc.mm7.vasp.message.*;
import com.cmcc.mm7.vasp.service.MM7Sender;
import com.huawei.bass.gansu.mms.util.*;
public class MmsServerImpl implements MmsServer
{
static {
@SuppressWarnings("unused")
final ApplicationContext factory = new FileSystemXmlApplicationContext(
"./beanServer.xml");
}
public MmsServerImpl ()
{
try{
System.out.println("华为BI彩信平台");
Thread.sleep(2000);
System.out.println("服务启动成功");
System.out.println("版权所有:甘肃BI项目组 作者:马亮");
}catch(Exception e)
{
e.printStackTrace();
}
}
public void sendMms(MmsContent content){
try
{
// System.out.println(content1.getNumbers());
// System.out.println(content1.isAutoPlay());
// List<MediaContent> contents = content1.getContents();
// for(int i = 0; i < contents.size(); i++)
// {
// MediaContent content = contents.get(i);
// System.out.println(new String(content.getContent()));
// System.out.println(content.getType());
// }
final MM7Config mm7Config = new MM7Config("./config/mm7Config.xml");
mm7Config.setConnConfigName("./config/ConnConfig.xml");
final MmscConfig mmscConfig = new MmscConfig("./config/mmscConfig.xml");
MM7SubmitReq submit = new MM7SubmitReq();
submit.setTransactionID("1000000");
String[] numbers = content.getNumbers();
for(int i = 0; i < numbers.length; i++)
{
submit.addTo(numbers[i]);
}
submit.setVASID(mmscConfig.getVasid());
submit.setVASPID(mmscConfig.getVaspid());
submit.setServiceCode(mmscConfig.getService_code());
submit.setSenderAddress(mmscConfig.getSender_address());
submit.setSubject(content.getTitle());
submit.setChargedPartyID(mmscConfig.getCharged_party_id());
submit.setChargedParty((byte)mmscConfig.getCharged_party());
submit.setDeliveryReport(mmscConfig.getDelivery_report());
MMContent mmContent = new MMContent();
mmContent.setContentType(content.isAutoPlay()?MMConstants.ContentType.MULTIPART_RELATED:MMConstants.ContentType.MULTIPART_MIXED);
mmContent.setContentID("mms");
// System.out.println(new String(mm.getContent()));
// sub.setContentID(mm.getId());
// sub.setContentType(mm.getType());
// mmContent.addSubContent(sub);
List<MediaContent> mmlist = content.getContents();
for(int i = 0; i < mmlist.size(); i++)
{
MediaContent mm = mmlist.get(i);
MMContent sub = MMContent.createFromBytes(mm.getContent());
sub.setContentID(mm.getId());
sub.setContentType(mm.getType());
mmContent.addSubContent(sub);
}
// MMContent sub1 = MMContent.createFromFile("2.smil");
// sub1.setContentID("2.smil");
// // sub1.setContentLocation("logo.jpg");
// sub1.setContentType(MMConstants.ContentType.SMIL);
// mmContent.addSubContent(sub1);
//
// MMContent sub2 = MMContent.createFromFile("1.txt");
// sub2.setContentID("1.txt");
// //可以设置成sub2.setContentType("text/plain");也可以用下面方法设置
// // sub2.setContentType("text/plain");
// sub2.setContentType(MMConstants.ContentType.TEXT);
// mmContent.addSubContent(sub2);
submit.setContent(mmContent);
MM7Sender mm7Sender = new MM7Sender(mm7Config);
MM7RSRes rsRes;
rsRes = (MM7RSRes)mm7Sender.send(submit);
if(rsRes instanceof MM7SubmitRes)
{
System.out.println(rsRes.getTransactionID());
System.out.println("after!!submitRes.statuscode=" + rsRes.getStatusCode() + ";submitRes.statusText=" + rsRes.getStatusText());
}else{
System.out.println("不正确消息!rsRes.statuscode="+rsRes.getStatusCode() + ";rsRes.statusText=" + rsRes.getStatusText());
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
public static void main(String[] args)
{
while(true)
{
try
{
Thread.sleep ( 2000 ) ;
}
catch ( Exception ex )
{
ex.printStackTrace();
}
}
}
/**
* 从文件中获取消息内容
* @param file_name
* @return
* @throws IOException
*/
public static byte[] readFromFile(String file_name) throws IOException
{
FileInputStream fin = new FileInputStream(file_name);
byte [] buf = new byte[fin.available()];
fin.read(buf);
fin.close();
return buf;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -