CISCO CP-9951 an FritzBox betreiben

Keine Ahnung warum die ganze CISCO Hardware derzeit so dermaßen billig ist. Egal. Ich mach davon einfach mal gebrauch xD
Ich habe mir für ein paar €€ ein CISCO CP-9951 IP-Telefon gekauft und versuche dies nun einzurichten.

Es ist die SIP-Firmware installiert. Zum Glück, denn CISCO hat das Telefon von ihrer Webseite GELÖSCHT!!1elf

Hier nochmal Mecker über CISCO: Warum zum Teufel löscht ihr ALLE Spuren eurer EOL-Hardware von eurer Page?
Jeder „vernünftige“ Hersteller hält die Software auch für seine alten Geräte vor 🤬

Um das Ding zum laufen zu bekommen habe ich mir eine FritzBox im Client-Modus eingerichtet, diese soll als SIP-Gateway dienen.
Da mein Provider kein SIP anbietet, jo, keine Ahnung und kein weiteren Kommentar, musste ich mir mal ein Account bei SIPLoad einrichten. Kostet 15€ im Jahr und die Verbindungskosten sind relativ günstig. Ich will damit nicht Leute anrufen, ich will da einfach nur erreichbar sein. Darum geht es jetzt erstmal vorrangig.

In Zukunft will ich das SIP-Gateway auf meinem OpenWRT-Router einrichten. Dazu dann später mehr. Der Kram muss jetzt erstmal laufen.

Ich hab eine Weile überlegt was ich mir als SIP-Gateway einrichte. Ich hab da ja mehrere Optionen. Ich hätte mir ein Plugin auf meinem OpenWRT installieren können, irgend eine version von Asterisk oder sowas.

Wie gesagt, in sachen VoIP bin ich garnicht so auf dem aktuellen Stand und habe mich in meiner Zeit als Informatiker auch nicht wirklich viel um Telefonie gekümmert. Zum Glück, ist für mich so ein bisschen wie mit Druckern zu arbeiten. Funktioniert NIE irgendwie so richtig. Darum bin ich froh das es für beides (Telefonie und Drucker) Spezialisten gibt! Ich ziehe meinen Hut vor euch und eurer Arbeit!

Oder ich installiere mir etwas auf meinem kleinen Linux-Server. Beide Optionen bisher sehr verlockend, doch wusste ich da schon dass diese ein längeres Unterfangen werden xD

Also Option 3. Ne FritzBox als Gateway, easy, einfacher gehts nicht. Los gehts:

  1. Bringt eure Fritte in den Client-Modus. So daß sie einfach eine IP über DHCP zieht oder ihr eine manuelle IP vergebt. Streckt das Lankabel dann in den Port 1 der Fritte und richtet euren SIP-Anbieter ein. Erstellt dazu eine Neue Telefonummer. All diese Dinge sind im Netz sehr gut Dokumentiert, das schafft ihr schon!
  2. Richtet ein Telefon ein in der Fritte, ein IP-Gerät. Vergebt die Zugangsdaten, merkt sie euch und schon haben wir das Gateway eingerichtet.
  3. Nun zu den Telefonen: Steckt eurer Telefon ein und wartet bis es hochgefahren ist, es wird meckern das es keine Config findet, alles normal soweit.
  4. Wir richten wieder mal einen TFTP-Server ein. Kennt ihr ja bereits. Weiter unten seht ihr 3 XML Config Dateien. Diese passen wir vorher an und legen sie dann ins root des TFTP-Verzeichnises. Die Dateien sind kommentiert, ich hoffe gut genug um zu verstehen was dort abgeht. Ansosten Fragen bitte in die Kommentare!
  5. Neustart des Telefons. Telefon neustarten und warten bis die Configs gezogen werden. WICHTIG: der Name der SEP Datei ist wirklich „SEP<MAC>.cnf.xml“ Bei mir wurde es zu einem Problem, also Uffbasse!
  6. Wenn alles glatt läuft startet das Telefon und sollte 2-3Min nach einstecken bereit sein zum Telefonieren. Mal den Hörer abnhemen und horchen. Nummer Tippen und schauen was passiert xD
  7. Bei mir ging das sehr schnell. Nach 30-45min war ich durch mit dem Spass.

Noch eine wichtitge Info. Ich hatte Glück. Auf meinem Telefon ist eine SIP-Firmware installiert:

Webinterface des Telefon (wenn aktiviert)

Es ist die wohl am besten funktionierende Firmware für dieses Modell. Also wirklich Glück gehabt. Firmware für die Dinger Online zu finden ist echt nicht so einfach wie bei den Accesspoints.
Bei der Version 9.0.4 funktioniert NTP noch. Hier holt sich das Telefon auch die Uhrzeit vom NTP Server. Yay! Nice.

SEP<MAC>.cnf.xml

<?xml version="1.0" encoding="UTF-8"?>
<device>
	<deviceProtocol>SIP</deviceProtocol>
	<sshUserId>admin</sshUserId>
	<sshPassword>einPasswort</sshPassword>
	<devicePool>
		<dateTimeSetting>
			<dateTemplate>D.M.Y</dateTemplate> 
			<timeZone>W. Europe Standard/Daylight Time</timeZone> 
			<ntps> 
				<ntp>
					<name>192.168.10.1</name> <!-- NTP Server, bei mir mein OpenWRT -->
					<ntpMode>unicast</ntpMode> 
				</ntp>
			</ntps> 
		</dateTimeSetting>
		<callManagerGroup>
			<members>
				<member priority="0">
					<callManager>
						<processNodeName>fritz.box</processNodeName> <!-- FritzBox oder SIP-Gateway -->
						<ports>
							<ethernetPhonePort>2000</ethernetPhonePort>                             
							<sipPort>5060</sipPort>
							<securedSipPort>5061</securedSipPort>
						</ports>
					</callManager>
				</member>
			</members>
		</callManagerGroup>
	</devicePool>
	<advertiseG722Codec>1</advertiseG722Codec> <!-- Für HD Telefonie -->
	<sipProfile>
		<sipProxies>
            <registerWithProxy>true</registerWithProxy>
		</sipProxies>
		<preferredCodec>g722</preferredCodec> <!-- Für HD Telefonie -->
		<phoneLabel>Cisco VoIP</phoneLabel> <!-- Name, steht dann im Display vom Phon -->
		<sipLines>
			<line button="1" lineIndex="1"> <!-- SIP Account -->
           		<featureID>9</featureID>
           		<featureLabel>SIPDING</featureLabel> <!-- Nen lustiger Name -->
           		<proxy>USECALLMANAGER</proxy>                   	
				<port>5060</port>	
				<authName>620</authName>
				<name>620</name>           		
				<authPassword>620</authPassword>		
           		        <messageWaitingLampPolicy>2</messageWaitingLampPolicy>
				<messagesNumber>**600</messagesNumber> <!-- Kurzwahl für Fritz AnBea auf Brieftaste -->
				<ringSettingIdle>4</ringSettingIdle> <!-- Anklopfzeugs -->
				<ringSettingActive>5</ringSettingActive>
			</line>
			<line button="4"> <!-- Service auf KWT für Stuff, geht eh net -->
				<featureID>20</featureID>
				<featureLabel>Service</featureLabel>
				<serviceURI>http://cisco.internect.net/</serviceURI>
			</line>
			<line button="5"> <!-- Kurzwahlkram auf **610 -->
				<featureID>21</featureID>
				<featureLabel>**621</featureLabel>
				<speedDialNumber>**621</speedDialNumber>
			</line>
			</sipLines>
		<dialTemplate>dialplan.xml</dialTemplate> <!-- Dialplan XML, wird dann ausgelesen -->
	</sipProfile>
	<userLocale> <!-- Umstelln uff doitsch -->
		<name>Germany</name> 
		<uid>1</uid> 
		<langCode>de_DE</langCode> 
		<winCharSet>iso-8859-1</winCharSet> 
	</userLocale>
 	<networkLocale>Germany</networkLocale> 
		<networkLocaleInfo> 
		<name>Germany</name> 
		<version>8.8.2.5</version> 
	</networkLocaleInfo>
	<vendorConfig>
		<g722CodecSupport>2</g722CodecSupport> <!-- Für HD Telefonie -->
		<displayOnWhenIncomingCall>1</displayOnWhenIncomingCall> <!-- Einstellungen für DP Beleuchtung -->
		<displayIdleTimeout>00:30</displayIdleTimeout>
		<daysDisplayNotActive>1,7</daysDisplayNotActive> 
		<displayOnTime>06:00</displayOnTime> 
		<displayOnDuration>01:00</displayOnDuration>  
		<settingsAccess>1</settingsAccess> <!-- loakler Zugriff-Admin Menü erlaubt 1 aus 0 ein -->
		<webAccess>0</webAccess> <!-- Web Zugriff ja/nein -->
	</vendorConfig>
	<phoneServices useHTTPS="true">
		<provisioning>0</provisioning>
		<phoneService  type="1" category="0"> <!-- verpasste Anrufe -->
			<name>Missed Calls</name>
			<url>Application:Cisco/MissedCalls</url>
			<vendor></vendor>
			<version></version>
		</phoneService>
		<phoneService  type="2" category="0"> <!-- für die Brieftaste  -->
			<name>Voicemail</name>
			<url>Application:Cisco/Voicemail</url>
			<vendor></vendor>
			<version></version>
		</phoneService>
		<phoneService  type="1" category="0"> <!-- Empfangene Anrufe -->
			<name>Received Calls</name>
			<url>Application:Cisco/ReceivedCalls</url>
			<vendor></vendor>
			<version></version>
		</phoneService>
		<phoneService  type="1" category="0"> <!-- Getätigte Anrufe -->
			<name>Placed Calls</name>
			<url>Application:Cisco/PlacedCalls</url>
			<vendor></vendor>
			<version></version>
		</phoneService>
		<phoneService type="1" category="0"> <!-- Telefonbuch einbinden - hier habe ich noch weiter gebastelt - Das kann hier evtl weg -->
			<name>Kontakte</name>
			<url>http://IPAdresse/directory.php</url>
			<vendor/>
			<version/>
		</phoneService> 
	</phoneServices>
	<featurePolicyFile>DefaultFP.xml</featurePolicyFile> <!-- zB Wahlwiederholung und Stuff - Config XML -->
	<commonConfig> <!-- Zubehör Optionen, wifi nur mit 9971 -->
		<usb1>1</usb1>
		<usb2>1</usb2>
		<ciscoCamera>1</ciscoCamera>
		<videoCapability>1</videoCapability>
		<usbClasses>0,1,2</usbClasses>
		<sdio>1</sdio>
		<bluetooth>1</bluetooth>
		<wifi>1</wifi>
		<bluetoothProfile>0,1</bluetoothProfile>
	</commonConfig>
	<authenticationURL>http://192.168.0.2/ciscoauth.php</authenticationURL> <!-- zB für Screenshots&Stuff -->
	<loadInformation>sip9951.9-0-4</loadInformation> <!-- FirmWare Version -->
</device>

dialplan.xml

<DIALTEMPLATE>
	<TEMPLATE MATCH="*" Timeout="3"/>
</DIALTEMPLATE>

DefaultFP.xml

<?xml version="1.0" encoding="utf-8"?>
<featurePolicy name="Default Policy">
	<versionStamp>0000000000</versionStamp>
	<featureDef name="ForwardAll">
		<id>1</id>
		<enable>false</enable>
	</featureDef>
	<featureDef name="Park">
		<id>2</id>
		<enable>false</enable>
	</featureDef>
	<featureDef name="iDivert">
		<id>3</id>
		<enable>false</enable>
	</featureDef>
	<featureDef name="ConfList">
		<id>4</id>
		<enable>false</enable>
	</featureDef>
	<featureDef name="SpeedDial">
		<id>5</id>
		<enable>true</enable>
	</featureDef>
	<featureDef name="Callback">
		<id>6</id>
		<enable>false</enable>
	</featureDef>
	<featureDef name="Redial">
		<id>7</id>
		<enable>true</enable>
	</featureDef>
	<featureDef name="Barge">
		<id>8</id>
		<enable>false</enable>
	</featureDef>
</featurePolicy>

Links:
Konfiguration für Cisco 9951 9971 an FritzBox inkl. HD Telefonie G722 und Services | IP Phone Forum

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert