Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Frage Entwicklung

Mitglied: smorod

smorod (Level 1) - Jetzt verbinden

03.02.2014 um 12:00 Uhr, 1072 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
Neuester Wissensbeitrag
Ähnliche Inhalte
Router & Routing
gelöst Routing im Heimnetz mit einem Linksys WRT3200ACM (3)

Frage von niklasschaefer zum Thema Router & Routing ...

Router & Routing
InterVlan Routing mit Linksys LRT224 Dual WAN Gigabit VPN Router (1)

Frage von darkliving zum Thema Router & Routing ...

C und C++
gelöst Fehler bei if (Csharp) (7)

Frage von homeroma zum Thema C und C ...

Peripheriegeräte
WRT3200ACM: Linksys kündigt neuen OpenWRT- und DD-WRT-Router an

Link von runasservice zum Thema Peripheriegeräte ...

Heiß diskutierte Inhalte
Linux
gelöst Boot failed: not a bootable disk (10)

Frage von Fleckmen zum Thema Linux ...

Multimedia & Zubehör
gelöst Iphone 6 prob (8)

Frage von jensgebken zum Thema Multimedia & Zubehör ...

Windows Installation
Eine etwas (wirklich) speziellere Frage: Windows 10-Installation über (8)

Frage von DerFurrer zum Thema Windows Installation ...

Windows Server
Probleme mit Client Software Zugriff auf Windows Server 2012 (8)

Frage von it-kolli zum Thema Windows Server ...