Oberfläche angepasst
This commit is contained in:
parent
df6c26245d
commit
45600d2365
@ -6,15 +6,12 @@
|
|||||||
|
|
||||||
package controller;
|
package controller;
|
||||||
|
|
||||||
|
import controller.commands.CommandInvite;
|
||||||
|
import controller.commands.CommandRegister;
|
||||||
import gui.Hauptfenster;
|
import gui.Hauptfenster;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.awt.event.ActionListener;
|
import java.awt.event.ActionListener;
|
||||||
import java.text.ParseException;
|
|
||||||
import java.util.logging.Level;
|
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
import javax.sdp.SdpException;
|
|
||||||
import javax.sip.InvalidArgumentException;
|
|
||||||
import javax.sip.SipException;
|
|
||||||
import logger.OhmLogger;
|
import logger.OhmLogger;
|
||||||
import model.VoIP;
|
import model.VoIP;
|
||||||
|
|
||||||
@ -27,10 +24,12 @@ public class CommandController implements ActionListener
|
|||||||
private static final Logger lc = OhmLogger.getLogger();
|
private static final Logger lc = OhmLogger.getLogger();
|
||||||
private VoIP model;
|
private VoIP model;
|
||||||
private Hauptfenster view;
|
private Hauptfenster view;
|
||||||
|
private CommandInvoker invoker;
|
||||||
public CommandController(VoIP model, Hauptfenster view)
|
public CommandController(VoIP model, Hauptfenster view)
|
||||||
{
|
{
|
||||||
this.model = model;
|
this.model = model;
|
||||||
this.view = view;
|
this.view = view;
|
||||||
|
invoker = new CommandInvoker();
|
||||||
|
|
||||||
}
|
}
|
||||||
public void registerEvents()
|
public void registerEvents()
|
||||||
@ -38,33 +37,20 @@ public class CommandController implements ActionListener
|
|||||||
view.getBtn1().addActionListener(this);
|
view.getBtn1().addActionListener(this);
|
||||||
view.getBtn2().addActionListener(this);
|
view.getBtn2().addActionListener(this);
|
||||||
}
|
}
|
||||||
|
public void registerCommands()
|
||||||
|
{
|
||||||
|
//invoker.addCommand(view.getMnuioeffnen(), new CommandOpen(view, model));
|
||||||
|
|
||||||
|
invoker.addCommand(view.getBtn1(), new CommandRegister(model, view));
|
||||||
|
invoker.addCommand(view.getBtn2(), new CommandInvite(model, view));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e)
|
public void actionPerformed(ActionEvent e)
|
||||||
{
|
{
|
||||||
Object key = e.getSource();
|
Object key = e.getSource();
|
||||||
if (key.equals(view.getBtn1()))
|
|
||||||
{
|
invoker.executeCommand(key);
|
||||||
lc.info("Register Butten geklickt");
|
|
||||||
try
|
|
||||||
{
|
|
||||||
model.sendRegister("123123", 1);
|
|
||||||
}
|
|
||||||
catch (ParseException|InvalidArgumentException|SipException ex)
|
|
||||||
{
|
|
||||||
lc.getLogger(CommandController.class.getName()).log(Level.SEVERE, null, ex);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(key.equals(view.getBtn2()))
|
|
||||||
{
|
|
||||||
try {
|
|
||||||
lc.info("Invite Button geklickt");
|
|
||||||
model.sendInvitation("23", 2);
|
|
||||||
}
|
|
||||||
catch (ParseException|InvalidArgumentException|SdpException|SipException ex) {
|
|
||||||
lc.getLogger(CommandController.class.getName()).log(Level.SEVERE, null, ex);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
17
src/controller/CommandInterface.java
Normal file
17
src/controller/CommandInterface.java
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
/*
|
||||||
|
* To change this license header, choose License Headers in Project Properties.
|
||||||
|
* To change this template file, choose Tools | Templates
|
||||||
|
* and open the template in the editor.
|
||||||
|
*/
|
||||||
|
package controller;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Normal
|
||||||
|
*/
|
||||||
|
public interface CommandInterface
|
||||||
|
{
|
||||||
|
public void execute();
|
||||||
|
public void undo();
|
||||||
|
public Boolean isundoable();
|
||||||
|
}
|
53
src/controller/CommandInvoker.java
Normal file
53
src/controller/CommandInvoker.java
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
/*
|
||||||
|
* To change this license header, choose License Headers in Project Properties.
|
||||||
|
* To change this template file, choose Tools | Templates
|
||||||
|
* and open the template in the editor.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package controller;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Stack;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Normal
|
||||||
|
*/
|
||||||
|
public class CommandInvoker
|
||||||
|
{
|
||||||
|
|
||||||
|
private HashMap<Object, CommandInterface> commands;
|
||||||
|
private Stack<CommandInterface> undoStack;
|
||||||
|
|
||||||
|
public CommandInvoker()
|
||||||
|
{
|
||||||
|
commands = new HashMap<>();
|
||||||
|
undoStack = new Stack<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addCommand(Object key,CommandInterface value)
|
||||||
|
{
|
||||||
|
commands.put(key,value);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void executeCommand(Object key)
|
||||||
|
{
|
||||||
|
commands.get(key).execute();
|
||||||
|
if(commands.get(key).isundoable()==true)
|
||||||
|
{
|
||||||
|
undoStack.push(commands.get(key));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void undoCommand(Object key)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
undoStack.pop().undo();
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
61
src/controller/commands/CommandInvite.java
Normal file
61
src/controller/commands/CommandInvite.java
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
/*
|
||||||
|
* To change this license header, choose License Headers in Project Properties.
|
||||||
|
* To change this template file, choose Tools | Templates
|
||||||
|
* and open the template in the editor.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package controller.commands;
|
||||||
|
|
||||||
|
import controller.CommandInterface;
|
||||||
|
import gui.Hauptfenster;
|
||||||
|
import java.text.ParseException;
|
||||||
|
import java.util.logging.Level;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
import javax.sdp.SdpException;
|
||||||
|
import javax.sip.InvalidArgumentException;
|
||||||
|
import javax.sip.SipException;
|
||||||
|
import logger.OhmLogger;
|
||||||
|
import model.VoIP;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Normal
|
||||||
|
*/
|
||||||
|
public class CommandInvite implements CommandInterface
|
||||||
|
{
|
||||||
|
private static final Logger lginvite = OhmLogger.getLogger();
|
||||||
|
private VoIP model;
|
||||||
|
private Hauptfenster view;
|
||||||
|
public CommandInvite(VoIP model, Hauptfenster view)
|
||||||
|
{
|
||||||
|
this.model = model;
|
||||||
|
this.view = view;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void execute()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{ view.getTxtArea().append("Einladung an " + view.getTxtServerIP().getText() + " gesendet\n");
|
||||||
|
model.sendInvitation(view.getTxtcallIP().getText(), 5078);
|
||||||
|
}
|
||||||
|
catch (ParseException|InvalidArgumentException|SdpException|SipException ex)
|
||||||
|
{
|
||||||
|
view.getTxtArea().append("Einladung fehlgeschlagen");
|
||||||
|
lginvite.getLogger(CommandInvite.class.getName()).log(Level.SEVERE, null, ex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void undo()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean isundoable()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
62
src/controller/commands/CommandRegister.java
Normal file
62
src/controller/commands/CommandRegister.java
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
/*
|
||||||
|
* To change this license header, choose License Headers in Project Properties.
|
||||||
|
* To change this template file, choose Tools | Templates
|
||||||
|
* and open the template in the editor.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package controller.commands;
|
||||||
|
|
||||||
|
import controller.CommandInterface;
|
||||||
|
import gui.Hauptfenster;
|
||||||
|
import java.text.ParseException;
|
||||||
|
import java.util.logging.Level;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
import javax.sip.InvalidArgumentException;
|
||||||
|
import javax.sip.SipException;
|
||||||
|
import logger.OhmLogger;
|
||||||
|
import model.VoIP;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Normal
|
||||||
|
*/
|
||||||
|
public class CommandRegister implements CommandInterface
|
||||||
|
{
|
||||||
|
private static final Logger lgregister = OhmLogger.getLogger();
|
||||||
|
private VoIP model;
|
||||||
|
private Hauptfenster view;
|
||||||
|
public CommandRegister(VoIP model, Hauptfenster view)
|
||||||
|
{
|
||||||
|
this.model = model;
|
||||||
|
this.view = view;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void execute()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
view.getTxtArea().append("Registrierung an " + view.getTxtServerIP().getText() + " gesendet\n");
|
||||||
|
model.sendRegister(view.getTxtServerIP().getText(), 5078);
|
||||||
|
|
||||||
|
}
|
||||||
|
catch (ParseException|InvalidArgumentException|SipException ex)
|
||||||
|
{
|
||||||
|
view.getTxtArea().append("Registrierung fehlgeschlagen");
|
||||||
|
lgregister.getLogger(CommandRegister.class.getName()).log(Level.SEVERE, null, ex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void undo()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean isundoable()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
@ -43,13 +43,6 @@
|
|||||||
</Component>
|
</Component>
|
||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Container>
|
</Container>
|
||||||
<Component class="javax.swing.JTextField" name="textField">
|
|
||||||
<Constraints>
|
|
||||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
|
|
||||||
<BorderConstraints direction="First"/>
|
|
||||||
</Constraint>
|
|
||||||
</Constraints>
|
|
||||||
</Component>
|
|
||||||
<Container class="javax.swing.JPanel" name="jPanel1">
|
<Container class="javax.swing.JPanel" name="jPanel1">
|
||||||
<Constraints>
|
<Constraints>
|
||||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
|
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
|
||||||
@ -77,5 +70,66 @@
|
|||||||
</Component>
|
</Component>
|
||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Container>
|
</Container>
|
||||||
|
<Container class="javax.swing.JPanel" name="jPanel3">
|
||||||
|
<Constraints>
|
||||||
|
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
|
||||||
|
<BorderConstraints direction="First"/>
|
||||||
|
</Constraint>
|
||||||
|
</Constraints>
|
||||||
|
|
||||||
|
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
|
||||||
|
<SubComponents>
|
||||||
|
<Container class="javax.swing.JPanel" name="jPanel4">
|
||||||
|
|
||||||
|
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout">
|
||||||
|
<Property name="axis" type="int" value="1"/>
|
||||||
|
</Layout>
|
||||||
|
<SubComponents>
|
||||||
|
<Component class="javax.swing.JLabel" name="jLabel1">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="My IP:"/>
|
||||||
|
<Property name="focusable" type="boolean" value="false"/>
|
||||||
|
<Property name="inheritsPopupMenu" type="boolean" value="false"/>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JLabel" name="jLabel2">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="Server IP:"/>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JLabel" name="jLabel3">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="Call IP:"/>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
</SubComponents>
|
||||||
|
</Container>
|
||||||
|
<Container class="javax.swing.JPanel" name="jPanel2">
|
||||||
|
|
||||||
|
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout">
|
||||||
|
<Property name="axis" type="int" value="1"/>
|
||||||
|
</Layout>
|
||||||
|
<SubComponents>
|
||||||
|
<Component class="javax.swing.JLabel" name="lblmyIP">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="xxx.xxx.xxx.xxx"/>
|
||||||
|
<Property name="toolTipText" type="java.lang.String" value=""/>
|
||||||
|
<Property name="verticalAlignment" type="int" value="1"/>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JTextField" name="txtServerIP">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="xxx.xxx.xxx.xxx"/>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JTextField" name="txtcallIP">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="xxx.xxx.xxx.xxx"/>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
</SubComponents>
|
||||||
|
</Container>
|
||||||
|
</SubComponents>
|
||||||
|
</Container>
|
||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Form>
|
</Form>
|
||||||
|
@ -30,18 +30,11 @@ public class Hauptfenster extends javax.swing.JFrame
|
|||||||
/**
|
/**
|
||||||
* @return the textField
|
* @return the textField
|
||||||
*/
|
*/
|
||||||
public javax.swing.JTextField getTextField()
|
|
||||||
{
|
|
||||||
return textField;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param textField the textField to set
|
* @param textField the textField to set
|
||||||
*/
|
*/
|
||||||
public void setTextField(javax.swing.JTextField textField)
|
|
||||||
{
|
|
||||||
this.textField = textField;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return the txtArea
|
* @return the txtArea
|
||||||
@ -79,11 +72,19 @@ public class Hauptfenster extends javax.swing.JFrame
|
|||||||
|
|
||||||
jScrollPane1 = new javax.swing.JScrollPane();
|
jScrollPane1 = new javax.swing.JScrollPane();
|
||||||
txtArea = new javax.swing.JTextArea();
|
txtArea = new javax.swing.JTextArea();
|
||||||
textField = new javax.swing.JTextField();
|
|
||||||
jPanel1 = new javax.swing.JPanel();
|
jPanel1 = new javax.swing.JPanel();
|
||||||
btn1 = new javax.swing.JButton();
|
btn1 = new javax.swing.JButton();
|
||||||
btn2 = new javax.swing.JButton();
|
btn2 = new javax.swing.JButton();
|
||||||
jButton1 = new javax.swing.JButton();
|
jButton1 = new javax.swing.JButton();
|
||||||
|
jPanel3 = new javax.swing.JPanel();
|
||||||
|
jPanel4 = new javax.swing.JPanel();
|
||||||
|
jLabel1 = new javax.swing.JLabel();
|
||||||
|
jLabel2 = new javax.swing.JLabel();
|
||||||
|
jLabel3 = new javax.swing.JLabel();
|
||||||
|
jPanel2 = new javax.swing.JPanel();
|
||||||
|
lblmyIP = new javax.swing.JLabel();
|
||||||
|
txtServerIP = new javax.swing.JTextField();
|
||||||
|
txtcallIP = new javax.swing.JTextField();
|
||||||
|
|
||||||
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
|
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
|
||||||
|
|
||||||
@ -92,7 +93,6 @@ public class Hauptfenster extends javax.swing.JFrame
|
|||||||
jScrollPane1.setViewportView(txtArea);
|
jScrollPane1.setViewportView(txtArea);
|
||||||
|
|
||||||
getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);
|
getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);
|
||||||
getContentPane().add(textField, java.awt.BorderLayout.PAGE_START);
|
|
||||||
|
|
||||||
btn1.setText("Register");
|
btn1.setText("Register");
|
||||||
btn1.setToolTipText("Registrierung am Server");
|
btn1.setToolTipText("Registrierung am Server");
|
||||||
@ -106,6 +106,38 @@ public class Hauptfenster extends javax.swing.JFrame
|
|||||||
|
|
||||||
getContentPane().add(jPanel1, java.awt.BorderLayout.PAGE_END);
|
getContentPane().add(jPanel1, java.awt.BorderLayout.PAGE_END);
|
||||||
|
|
||||||
|
jPanel4.setLayout(new javax.swing.BoxLayout(jPanel4, javax.swing.BoxLayout.Y_AXIS));
|
||||||
|
|
||||||
|
jLabel1.setText("My IP:");
|
||||||
|
jLabel1.setFocusable(false);
|
||||||
|
jLabel1.setInheritsPopupMenu(false);
|
||||||
|
jPanel4.add(jLabel1);
|
||||||
|
|
||||||
|
jLabel2.setText("Server IP:");
|
||||||
|
jPanel4.add(jLabel2);
|
||||||
|
|
||||||
|
jLabel3.setText("Call IP:");
|
||||||
|
jPanel4.add(jLabel3);
|
||||||
|
|
||||||
|
jPanel3.add(jPanel4);
|
||||||
|
|
||||||
|
jPanel2.setLayout(new javax.swing.BoxLayout(jPanel2, javax.swing.BoxLayout.Y_AXIS));
|
||||||
|
|
||||||
|
lblmyIP.setText("xxx.xxx.xxx.xxx");
|
||||||
|
lblmyIP.setToolTipText("");
|
||||||
|
lblmyIP.setVerticalAlignment(javax.swing.SwingConstants.TOP);
|
||||||
|
jPanel2.add(lblmyIP);
|
||||||
|
|
||||||
|
txtServerIP.setText("xxx.xxx.xxx.xxx");
|
||||||
|
jPanel2.add(txtServerIP);
|
||||||
|
|
||||||
|
txtcallIP.setText("xxx.xxx.xxx.xxx");
|
||||||
|
jPanel2.add(txtcallIP);
|
||||||
|
|
||||||
|
jPanel3.add(jPanel2);
|
||||||
|
|
||||||
|
getContentPane().add(jPanel3, java.awt.BorderLayout.PAGE_START);
|
||||||
|
|
||||||
pack();
|
pack();
|
||||||
setLocationRelativeTo(null);
|
setLocationRelativeTo(null);
|
||||||
}// </editor-fold>//GEN-END:initComponents
|
}// </editor-fold>//GEN-END:initComponents
|
||||||
@ -163,9 +195,49 @@ public class Hauptfenster extends javax.swing.JFrame
|
|||||||
private javax.swing.JButton btn1;
|
private javax.swing.JButton btn1;
|
||||||
private javax.swing.JButton btn2;
|
private javax.swing.JButton btn2;
|
||||||
private javax.swing.JButton jButton1;
|
private javax.swing.JButton jButton1;
|
||||||
|
private javax.swing.JLabel jLabel1;
|
||||||
|
private javax.swing.JLabel jLabel2;
|
||||||
|
private javax.swing.JLabel jLabel3;
|
||||||
private javax.swing.JPanel jPanel1;
|
private javax.swing.JPanel jPanel1;
|
||||||
|
private javax.swing.JPanel jPanel2;
|
||||||
|
private javax.swing.JPanel jPanel3;
|
||||||
|
private javax.swing.JPanel jPanel4;
|
||||||
private javax.swing.JScrollPane jScrollPane1;
|
private javax.swing.JScrollPane jScrollPane1;
|
||||||
private javax.swing.JTextField textField;
|
private javax.swing.JLabel lblmyIP;
|
||||||
private javax.swing.JTextArea txtArea;
|
private javax.swing.JTextArea txtArea;
|
||||||
|
private javax.swing.JTextField txtServerIP;
|
||||||
|
private javax.swing.JTextField txtcallIP;
|
||||||
// End of variables declaration//GEN-END:variables
|
// End of variables declaration//GEN-END:variables
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return the lblmyIP
|
||||||
|
*/
|
||||||
|
public javax.swing.JLabel getLblmyIP()
|
||||||
|
{
|
||||||
|
return lblmyIP;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param lblmyIP the lblmyIP to set
|
||||||
|
*/
|
||||||
|
public void setLblmyIP(javax.swing.JLabel lblmyIP)
|
||||||
|
{
|
||||||
|
this.lblmyIP = lblmyIP;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return the txtServerIP
|
||||||
|
*/
|
||||||
|
public javax.swing.JTextField getTxtServerIP()
|
||||||
|
{
|
||||||
|
return txtServerIP;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return the txtcallIP
|
||||||
|
*/
|
||||||
|
public javax.swing.JTextField getTxtcallIP()
|
||||||
|
{
|
||||||
|
return txtcallIP;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,7 @@ package model;
|
|||||||
|
|
||||||
import gov.nist.javax.sip.DialogTimeoutEvent;
|
import gov.nist.javax.sip.DialogTimeoutEvent;
|
||||||
import gov.nist.javax.sip.SipListenerExt;
|
import gov.nist.javax.sip.SipListenerExt;
|
||||||
|
import gui.Hauptfenster;
|
||||||
import java.net.InetAddress;
|
import java.net.InetAddress;
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@ -38,6 +39,7 @@ import logger.OhmLogger;
|
|||||||
*/
|
*/
|
||||||
public class VoIP implements SipListenerExt
|
public class VoIP implements SipListenerExt
|
||||||
{
|
{
|
||||||
|
Hauptfenster view; //später entfernen wegen Zugriff
|
||||||
private static final Logger lg = OhmLogger.getLogger();
|
private static final Logger lg = OhmLogger.getLogger();
|
||||||
SipFactory sipFactory; // Used to access the SIP API.
|
SipFactory sipFactory; // Used to access the SIP API.
|
||||||
SipStack sipStack; // The SIP stack.
|
SipStack sipStack; // The SIP stack.
|
||||||
@ -61,9 +63,9 @@ public class VoIP implements SipListenerExt
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
public VoIP() //Konstruktor für eigene Daten
|
public VoIP(Hauptfenster view) //Konstruktor für eigene Daten
|
||||||
{
|
{
|
||||||
|
this.view = view;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
//wird an sich erstmal nicht gebraucht aber später sinnvoll um eigene Daten zu initialisieren
|
//wird an sich erstmal nicht gebraucht aber später sinnvoll um eigene Daten zu initialisieren
|
||||||
@ -76,7 +78,7 @@ public class VoIP implements SipListenerExt
|
|||||||
this.properties = new Properties();
|
this.properties = new Properties();
|
||||||
this.properties.setProperty("javax.sip.STACK_NAME", "stack");
|
this.properties.setProperty("javax.sip.STACK_NAME", "stack");
|
||||||
this.sipStack = this.sipFactory.createSipStack(this.properties);
|
this.sipStack = this.sipFactory.createSipStack(this.properties);
|
||||||
this.messageFactory = this.sipFactory.createMessageFactory();
|
this.messageFactory = this.sipFactory.createMessageFactory();
|
||||||
this.headerFactory = this.sipFactory.createHeaderFactory();
|
this.headerFactory = this.sipFactory.createHeaderFactory();
|
||||||
this.addressFactory = this.sipFactory.createAddressFactory();
|
this.addressFactory = this.sipFactory.createAddressFactory();
|
||||||
this.listeningPoint = this.sipStack.createListeningPoint(this.myIPAddress, this.myPort, this.protocolTyp);
|
this.listeningPoint = this.sipStack.createListeningPoint(this.myIPAddress, this.myPort, this.protocolTyp);
|
||||||
@ -119,6 +121,7 @@ public class VoIP implements SipListenerExt
|
|||||||
request.addHeader(allow);
|
request.addHeader(allow);
|
||||||
request.addHeader(expire);
|
request.addHeader(expire);
|
||||||
this.sipProvider.sendRequest(request);
|
this.sipProvider.sendRequest(request);
|
||||||
|
view.getTxtArea().append("Erfolgreiche Registierung\n");
|
||||||
lg.info("Erfolgreiches Senden der Registrierung");
|
lg.info("Erfolgreiches Senden der Registrierung");
|
||||||
}
|
}
|
||||||
public void sendInvitation(String sipaddresse, int serverPort)throws ParseException, InvalidArgumentException, SipException, SdpException
|
public void sendInvitation(String sipaddresse, int serverPort)throws ParseException, InvalidArgumentException, SipException, SdpException
|
||||||
@ -179,6 +182,7 @@ public class VoIP implements SipListenerExt
|
|||||||
response.addHeader(allow);
|
response.addHeader(allow);
|
||||||
response.addHeader(allowevents);
|
response.addHeader(allowevents);
|
||||||
this.sipProvider.sendResponse(response);
|
this.sipProvider.sendResponse(response);
|
||||||
|
view.getTxtArea().append("Server Option Request erfolgreich beantwortet\n");
|
||||||
lg.info("Erfolgreiches senden des Headers");
|
lg.info("Erfolgreiches senden des Headers");
|
||||||
}
|
}
|
||||||
catch (ParseException | SipException ex)
|
catch (ParseException | SipException ex)
|
||||||
@ -189,6 +193,7 @@ public class VoIP implements SipListenerExt
|
|||||||
//Aktive Kommunikation
|
//Aktive Kommunikation
|
||||||
else if ((Request.INVITE).equals(requestEvent.getRequest().getMethod())) // Invite von anderem Benutzer
|
else if ((Request.INVITE).equals(requestEvent.getRequest().getMethod())) // Invite von anderem Benutzer
|
||||||
{
|
{
|
||||||
|
view.getTxtArea().append("Werde von xxx angerufen");
|
||||||
lg.info("Hab Invitation bekommen");
|
lg.info("Hab Invitation bekommen");
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
@ -359,6 +364,20 @@ public class VoIP implements SipListenerExt
|
|||||||
|
|
||||||
return sessionDescription;
|
return sessionDescription;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Get Methoden falls man mal die Parameter braucht
|
||||||
|
public String getmyName()
|
||||||
|
{
|
||||||
|
return myName;
|
||||||
|
}
|
||||||
|
public Integer getMyPort()
|
||||||
|
{
|
||||||
|
return myPort;
|
||||||
|
}
|
||||||
|
public String getMyIPAdress()
|
||||||
|
{
|
||||||
|
return myIPAddress;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void processTimeout(TimeoutEvent timeoutEvent)
|
public void processTimeout(TimeoutEvent timeoutEvent)
|
||||||
|
@ -8,6 +8,8 @@ package phone;
|
|||||||
|
|
||||||
import controller.CommandController;
|
import controller.CommandController;
|
||||||
import gui.Hauptfenster;
|
import gui.Hauptfenster;
|
||||||
|
import java.net.InetAddress;
|
||||||
|
import java.net.UnknownHostException;
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import model.VoIP;
|
import model.VoIP;
|
||||||
/**
|
/**
|
||||||
@ -16,14 +18,19 @@ import model.VoIP;
|
|||||||
*/
|
*/
|
||||||
public class Start
|
public class Start
|
||||||
{
|
{
|
||||||
public Start() throws ParseException
|
public Start() throws ParseException, UnknownHostException
|
||||||
{
|
{
|
||||||
Hauptfenster view = new Hauptfenster();
|
Hauptfenster view = new Hauptfenster();
|
||||||
VoIP model = new VoIP();
|
VoIP model = new VoIP(view);
|
||||||
|
|
||||||
CommandController controller = new CommandController(model, view);
|
CommandController controller = new CommandController(model, view);
|
||||||
controller.registerEvents();
|
controller.registerEvents();
|
||||||
//view.setExtendedState(Frame.MAXIMIZED_BOTH);
|
controller.registerCommands();
|
||||||
|
|
||||||
|
view.getLblmyIP().setText(InetAddress.getLocalHost().getHostAddress());
|
||||||
|
view.getTxtServerIP().setText("192.168.100.11");
|
||||||
|
view.getTxtcallIP().setText("192.168.100.xxx");
|
||||||
|
view.setExtendedState(view.MAXIMIZED_BOTH);
|
||||||
view.setTitle("TestOberfläche VoIP Phone");
|
view.setTitle("TestOberfläche VoIP Phone");
|
||||||
view.setVisible(true);
|
view.setVisible(true);
|
||||||
|
|
||||||
@ -32,7 +39,7 @@ public class Start
|
|||||||
/**
|
/**
|
||||||
* @param args the command line arguments
|
* @param args the command line arguments
|
||||||
*/
|
*/
|
||||||
public static void main(String[] args) throws ParseException
|
public static void main(String[] args) throws ParseException, UnknownHostException
|
||||||
{
|
{
|
||||||
new Start();
|
new Start();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user