2017-02-04 1 views
-1

Nous utilisons des téléphones IP Cisco dans notre société.
Je dois créer un service Windows qui détecte les appels entrants vers un certain numéro de téléphone (disons 911) et obtenir des informations sur l'appelant.
Mon langage de programmation serait C#.
Puisque je n'ai aucune idée par où commencer, je n'ai pas de code pour le moment.Cisco IP Phone détecter les appels entrants et les informations de l'appelant

+0

Les sites Web de Google et de Cisco sont alors vos amis. – peval27

Répondre

1

Les téléphones IP utilisent un protocole appelé SIP (Session Initiation Protocol) pour annoncer leur présence et leur adresse IP à un registre central. Cela fonctionne de manière très similaire à un DNS. Le téléphone dit "Salut, je suis sur 192.168.10.45 et mes noms sont les numéros de téléphone 089981283 092349220 et 3482487243"

Lorsqu'un autre appareil compatible SIP (généralement un autre téléphone ou un appel entrant dans votre réseau via un central téléphonique SIP)) veut parler à votre numéro de téléphone, il appelle le registre SIP, obtient l'adresse IP correcte et initie la session IP avec lui. La bonne chose est que le numéro de téléphone pourrait être n'importe quel identifiant - votre nom, le nom de votre département, ou tout autre identifiant. Il n'a même pas besoin d'être unique - et c'est comment vous obtenez "ramassage de groupe". Votre problème est que vous voulez tromper le commutateur SIP en routant les appels vers votre téléphone IP vers votre PC à la place, et contrôlez les appels, avant de le passer sur le téléphone pour un traitement normal. Comme vous pouvez le voir d'après mes explications, le téléphone IP existe sur le réseau en tant qu'appareil Internet Internet indépendant et le téléphone devrait être équipé d'une API logicielle spécifiquement pour vous permettre de faire ce que vous voulez - alors vous allez avoir à tirer les docs sur les téléphones Cisco et voir s'ils ont une API que vous pouvez utiliser.

Si cela peut être fait en C# alors "oui". SIP est un protocole texte très simple basé sur IP, aussi longtemps que le téléphone vous permettra de prendre des appels en son nom et ensuite transmettre les appels valides, alors vous pouvez codez un service compatible SIP en C# et atteignez votre but. Essayez googling "C# SIP" et vous trouverez au moins cet exemple d'implémentation C# https://sipsorcery.codeplex.com/

+0

En fait, les téléphones Cisco utilisent dans la plupart des cas le protocole SCCP non SIP. – pajaja