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, 1068 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
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
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 ...

C und C++
gelöst Fehler bei CSharp-programm (1)

Frage von homeroma zum Thema C und C ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...