📄 mymmreceiver.java~1~
字号:
package mmsproject;import java.util.*;import com.huawei.mms.pdu.*;import com.huawei.mms.vas.*;import java.io.*;import java.sql.*;/** * <p>Title: 彩信发送接收项目</p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2004</p> * <p>Company: data link</p> * @author tomato * @version 1.0 */public class MyMMReceiver implements MMessageHandle,Runnable { public MyMMReceiver() { } //2. 创建接收代理 public static MMReceiver receiver = new MMReceiver(); /** * 将上行取得的数据插入数据库中 * @param strMMContentType 彩信类型 * @param Title 彩信标题 * @param PhoneNum 发送号码 * @param ReceiveNum 接收号码 * return 返回刚刚插入数据库的id号 */ private int addMMSData(int nMMContentType, String strTitle, String strPhoneNum, String strReceiveNum){ String strSql = "INSERT INTO TB_RECEIVE" +"(MMContentType,Title,PhoneNum,ReceiveNum) " +"VALUES" +"(?,?,?,?)"; Connection conn = null; PreparedStatement stmt = null; try{ conn = MySqlConnection.getSqlConnection(); stmt = conn.prepareStatement(strSql); stmt.setInt(1,nMMContentType); stmt.setString(2,strTitle); stmt.setString(3,strPhoneNum); stmt.setString(4,strReceiveNum); stmt.executeUpdate(); }catch(Exception e){ }finally{ MySqlConnection.closeSqlPreparedStatement(stmt); MySqlConnection.closeSqlConnection(conn); } return 0; } //将取得上行彩信内容存入数据库中 private void addMMSContentData(){ } /** * 该方法用于对从MMSC传递过来的消息进行处理 * @param message 原始消息 */ public void handle(MMessage message) { //1. 用户实现消息处理接口 //对接收到的消息进行处理 String str = "收到多媒体消息,内容如下:"; str = str + "来自:" + message.getFrom() + "\n"; str = str + "标题:" + message.getSubject()+ "\n"; str = str + "消息ID:" + message.getMessageId()+ "\n"; str = str + "发送到:" + message.getTo() + "\n"; //message.getMessageType(); //显示信息 String strTemp = FrmMMSManage.m_txtStatus.getText(); FrmMMSManage.m_txtStatus.setText(strTemp + str); //取得To中的信息 String strToNum = ""; Vector to = message.getTo(); if( to != null ) { int size = to.size(); for ( int i = 0; i < size; i ++ ) { MMSAddress tmp = (MMSAddress)to.get( i ); if( tmp != null ) { //System.out.println( "发送方号码:" + tmp.getAddress() ); strToNum = strToNum + tmp.getAddress(); } } } //将取得的数据存入数据库 addMMSData(1,message.getSubject(),message.getFrom().getAddress(),strToNum); //获取消息内容(暂时先不将内容存入数据库) for ( Iterator i = message.getContents().iterator(); i.hasNext(); ) { MMSContent mmc = (MMSContent)i.next(); //通过该函数取得内容的类型mmc.getType(); //或者提取消息并进行相关操作 } } public void run() { //设置侦听端口 receiver.setListenPort(20000); //3. 注册消息处理过程 receiver.setMessageHandle(new MyMMReceiver()); //4. 启动接收线程 receiver.start(); //等待用户在控制台上按回车结束,否则程序会马上终止 try { //System.in.read(); //System.out.println("..........."); //JOptionPane.showMessageDialog(null, "接收到上行信息-" + System.in.read(), // "", JOptionPane.ERROR_MESSAGE, null); //Frame1.jlabStatus.setText("正在执行侦听线程"); } catch(Exception e ) { } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -