Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

CSharp Anrufbefehl an Linksys SPA962 via UDP

Mitglied: smorod

smorod (Level 1) - Jetzt verbinden

03.02.2014 um 12:00 Uhr, 1157 Aufrufe

Hallo Community,

ich wollte mir ein Tool basteln, mit dem ich Telefonnummern am PC eingeben (kopieren/einfügen) kann, daraus dann ein UDP Paket zusammengestellt wird und dieses an das Linksys SPA962 geschickt wird, um den Wahlvorgang einzuleiten.

Jetzt habe ich mir schon mehrere Beiträge im Internet durchgelesen, aber keiner dieser Beiträge hat meine Problematik behandelt.


Die ersten wichtigen Punkte die ich gefunden habe waren folgende:

Im Webinterface vom SPA962 müssen die Optionen "CTI Enable:" und "Linksys Key System:" auf "yes" gestellt werden.

Dies wurde auch gemacht.

Da ich nicht sicher bin, wo der Fehler liegt, schreibe ich euch mal den ausgeführten Code hier hin:


Definition der Variablen:

string proxy = "xx.xxx.xxx.xxx"; SIP Server
int extension = 70;
die Druchwahl von meinem SPA 962
string myHost = "192.168.1.20"; Mein Rechner
string myHostName = System.Environment.MachineName;
Mein Hostname
string phoneIPAddress = "192.168.1.83"; IP Adresse von meinem SPA962
int port = 5060;
SIP Port


Code:
01.
private void btnCall_Click(object sender, RoutedEventArgs e)
02.
        {
03.
            // Prüfung ob eine Telefonnummer eingegeben wurde
04.
            if (tbCallTo.Text == "")
05.
            {
06.
                MessageBox.Show("Bitte eine Telefonnummer eintragen!");
07.
            }
08.
            else
09.
            {
10.
                contactPhone = 0 + tbCallTo.Text;
11.
                string packetPrep0 = @"NOTIFY sip:" + extension + "@" + phoneIPAddress + ":" + port + " SIP/2.0\r\n" +
12.
                    "Via: SIP/2.0/UDP " + myHost +"\r\n" +
13.
                    "Max-Forwards: 70\r\n" +
14.
                    "From: <sip:" + myHostName + "@" + myHost + ">\r\n" +
15.
                    "To: <sip:"+ extension  + "@" + phoneIPAddress + ">\r\n" +
16.
                    "Call-ID: 70\r\n" +
17.
                    "CSeq: 1 NOTIFY\r\n" +
18.
                    "Contact: <sip:" + extension + "@" + proxy + ":" + port + ">\r\n" +
19.
                    "Content-Type: application/x-spa-control\r\n" + 
20.
                    "Content-Length: 75\r\n" +
21.
                    "Event: x-spa-cti\r\n\r\n" +
22.
                    "<spa-control>\r\n"+
23.
                    "<newcall uri=\"" + contactPhone + "@"+ proxy +"\" call=\"1\" />\r\n"+
24.
                    "</spa-control>";
25.

26.

27.
                byte[] packetData0 = System.Text.ASCIIEncoding.ASCII.GetBytes(packetPrep0);
28.
                IPEndPoint ep = new IPEndPoint(IPAddress.Parse(phoneIPAddress), port);
29.

30.
                Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
31.
                client.SendTo(packetData0, ep);
32.

33.

34.
                MessageBox.Show("Anruf an Telefon gesendet!");
35.
            }
36.
        }
Um zu prüfen was genau geschickt wird, hab ich mir einen kleine UDP Empfänger geschrieben bei dem folgendes Ankommt:

NOTIFY sip:70@192.168.1.83:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.20
Max-Forwards: 70
From: <sip:GALAXY@192.168.1.20>
To: <sip:70@192.168.1.83>
Call-ID: 70
CSeq: 1 NOTIFY
Contact: <sip:70@xx.xxx.xxx.xxx:5060>
Content-Type: application/x-spa-control
Content-Length: 75
Event: x-spa-cti
<spa-control>
<newcall uri="012345678@xx.xxx.xxx.xxx" call="1" />
</spa-control>


Vom Telefon erhalte ich dann folgende Antwort:


SIP/2.0 404 Not Found
To: <sip:70@192.168.1.83>;tag=4ba06ef99966d84i0
From: <sip:GALAXY@192.168.1.20>
Call-ID: 70
CSeq: 1 NOTIFY
Via: SIP/2.0/UDP 192.168.1.20
Server: Linksys/SPA962-6.1.5(a)
Content-Length: 0


Das Telefon selbst zeigt dabei keine Reaktion...
Ich konnte leider nicht heraus finden, auf was genau diese 404 Meldung verweist.
Kann mir hier vielleicht jemand auf die Sprünge helfen?

Vielen Dank und lieben Gruß
Smorod
Ähnliche Inhalte
Netzwerkgrundlagen
UDP Flusskontrolle?
Frage von MimemmmNetzwerkgrundlagen2 Kommentare

Ich weiß UDP hat keine Flusskontrolle. Aber was passiert eigentlich bei folgendem Beispiel? Ich möchte eine sehr große gespeicherte ...

C und C++
CSharp Keydown Problem
gelöst Frage von IT-NukeC und C++2 Kommentare

Programmieranfänger Guten Morgen, bei folgendem Programm soll er auf Pfeiltasten reagieren wenn ein gewisses Panel zu sehen ist und ...

C und C++
Fehler bei if (Csharp)
gelöst Frage von homeromaC und C++7 Kommentare

Hallo zusammen, ich hab mal wieder ein Blackout bei C#. Auch wenn ich das Richtige eingebe, springt es auf ...

Visual Studio
CSharp wpf Datenbankabruf optimieren
Frage von it4baerVisual Studio7 Kommentare

Hi, ich habe einen SELECT welcher im SQL-Developer ~0,03 Sekunden braucht. <- es geht hier nicht um den Select ...

Neue Wissensbeiträge
Internet

EU Urheberrechtsreform: Eingriff in die Internetkultur

Information von Frank vor 15 StundenInternet1 Kommentar

Liebe Besucherin, lieber Besucher, warum erscheint das obere Banner in allen Beiträgen? Aus Protest gegen Teile der geplanten EU-Urheberrechtsreform ...

Windows Server
Windows Backup - FilterManager Event 3
Tipp von NixVerstehen vor 1 TagWindows Server

Hallo zusammen, ich bin kein gelernter ITler und auch beruflich nicht in dem Feld tätig. Wir setzen in unserem ...

Windows 10

Windows 10 - Programme laufen schneller, wenn Sie mit Administratorrechten ausgeführt werden

Erfahrungsbericht von 1Werner1 vor 2 TagenWindows 1013 Kommentare

Moin, das wollte ich erst nicht glauben, aber es ist so. Wenn Ihr ein Programm mit Administratorrechten unter Windows ...

Sicherheits-Tools
Putty hat heftige Bugs korrigiert!
Information von Lochkartenstanzer vor 3 TagenSicherheits-Tools8 Kommentare

Moin, Wie man aus herauslesen kann, sind in den Versionen vor 0.71 gravierende Bugs, die es angeraten erscheinen lassen, ...

Heiß diskutierte Inhalte
Server-Hardware
Kompatibilität Tray für HP Proliant DL385 G10 vs. G8, G9
Frage von chris123Server-Hardware19 Kommentare

Hallo, weiß einer der hier anwesenden, ob die Trays für 2,5 " HDDs zwischen einem DL 385 G10 und ...

Outlook & Mail
Office 365 mit Email-Profil installieren
gelöst Frage von 139221Outlook & Mail18 Kommentare

Hallo, kurz zu meiner Person: Vor ungefahr 10 Jahren habe ich eine Umschuldung zum Fachinformatiker für Systemintegration gemacht aber ...

LAN, WAN, Wireless
Glasfaserkabel verlegen und Anschlüsse setzen
Frage von LLL0rdLAN, WAN, Wireless13 Kommentare

Hallo Leute, ich muss demnächst ein Netzwerkkabel auf einer Länge von ca. 70 Metern verlegen. Das Netzwerkkabel soll dabei ...

Server-Hardware
Server Hardwareempfehlung für Projekt
gelöst Frage von heax22Server-Hardware12 Kommentare

Hallo zusammen, ich bin auf der Suche nach einer geeigneten Server Plattform um unter Hyper-V einen virtuellen Server 2016 ...