⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mmsserverimpl.java

📁 应用于华为中国移动甘肃项目组的彩信发送平台全套代码
💻 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 + -