<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.innovaphone.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Aci</id>
	<title>innovaphone wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.innovaphone.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Aci"/>
	<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Special:Contributions/Aci"/>
	<updated>2026-05-08T01:35:38Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.3</generator>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r2:Gateway/Interfaces/SIP&amp;diff=76456</id>
		<title>Reference13r2:Gateway/Interfaces/SIP</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r2:Gateway/Interfaces/SIP&amp;diff=76456"/>
		<updated>2025-04-25T11:53:48Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== SIP Registration section ==&lt;br /&gt;
The entry fields for a &#039;&#039;&#039;SIP registration&#039;&#039;&#039; are:&lt;br /&gt;
{|&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Name&#039;&#039;&#039;&lt;br /&gt;
|Descriptive name for this registration.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Disable&#039;&#039;&#039;&lt;br /&gt;
|A switch to temporarily disable this interface without deleting the configuration.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Type&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
*Provider: Creates a registration at a remote SIP server (of a SIP provider)&lt;br /&gt;
*Open Federation: SIP/TLS interface without registration used to send and receive calls to federation partners.&lt;br /&gt;
*Closed Federation: Like &#039;Open Federation&#039; but even more restricted to pre-configured set of federation partners. In the &#039;Closed Federation&#039; mode, the DNS queries for resolving the domain name of the federation partner are made without the &#039;&#039;&#039;Recursion Desired&#039;&#039;&#039; (RD) Flag. This means only DNS entries configured on the local DNS server are resolved, so the list of the partners for &#039;Closed Federation&#039; must be maintained on the local DNS server.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Transport&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
*UDP: SIP signaling using UDP as transport protocol (RFC 3261).&lt;br /&gt;
*TCP: SIP signaling using TCP as transport protocol (RFC 3261).&lt;br /&gt;
*TLS: SIP signaling using TLS as transport protocol (RFC 3261). [[Howto:Security works with innovaphone]]&lt;br /&gt;
*Without registration: By default sip trunks are using with registration. Can be disabled here.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;AOR&#039;&#039;&#039;&lt;br /&gt;
|Address of Record: SIP-URI used to register. Enter the registration ID followed by the SIP provider domain name (for example 8111111e0@sipgate.de or 8111111e0@x.x.x.x:5080 if you need to use the IP-address and a different Port number).&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Local Hostname&#039;&#039;&#039;&lt;br /&gt;
|The Local Domain for SIP Federation enables to select the TLS Certificate according to the Domain Name. On the incoming SIP calls the host part of the URI is removed if equals with the Local Domain configured here, and the user part is used as Name (H323-ID) or Number (E164).&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Local Port&#039;&#039;&#039;&lt;br /&gt;
|The local source port for SIP signalling can be configured here. If its empty a random port will be used. &#039;&#039;Dont use the same static port on multiple SIP Accounts!&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Proxy&#039;&#039;&#039;&lt;br /&gt;
|DNS name or IP address of the SIP proxy where SIP messages (REGISTER,INVITE,etc) are to be sent to. Proxy can be omitted if domain part of AOR can be used as remote signaling destination. (append &amp;quot;:&amp;lt;port&amp;gt;&amp;quot; if you need a different destination Port)&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;STUN Server&#039;&#039;&#039;&lt;br /&gt;
|The STUN servers to use.  See [[{{NAMESPACE}}:IP4/General/STUN | STUN]] for details regarding the format. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Authorization ==&lt;br /&gt;
Username and password for authorization. Username can be omitted if equal to userpart of AOR.&lt;br /&gt;
&lt;br /&gt;
== Media Properties ==&lt;br /&gt;
&lt;br /&gt;
The configuration of the media properties is evaluated for calls from/to this interface to/from a physical (ISDN, analog, TEST, ...) only. If media relay is active for a call using this interface an &#039;exclusive&#039; coder config is used to prohibit the use of any other coder. This &#039;exclusive code media-relay&#039; config can be used to solve interop problems with other equipment which does not support media renegotiation, because with this config no media renegotiation will be performed.&lt;br /&gt;
&lt;br /&gt;
For more information see [[{{NAMESPACE}}:Gateway/Interfaces/Media_Properties | Media Properties]] and [[Howto:Security works with innovaphone]]&lt;br /&gt;
&lt;br /&gt;
== SIP Interop Tweaks ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Proposed Registration Interval&#039;&#039;&#039;&lt;br /&gt;
|Set in seconds, default is 120 seconds&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Accept INVITE&#039;s from Anywhere&#039;&#039;&#039;&lt;br /&gt;
|If disabled, registered interfaces will reject INVITE&#039;s not coming from the SIP server with &amp;quot;305 Use Proxy&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Enforce Sending Complete&#039;&#039;&#039;&lt;br /&gt;
|Affects handling of &amp;quot;484 Address Incomplete&amp;quot; responses. If enabled and &amp;quot;484 Address Incomplete&amp;quot; is received, the call is cleared. If not enabled and &amp;quot;484 Address Incomplete&amp;quot; is received, the call is retained and re-initiated in case of new dialing digits.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;No Video&#039;&#039;&#039;&lt;br /&gt;
|Removes Video Capabilities from outgoing media offer.&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;No Early Media&#039;&#039;&#039;&lt;br /&gt;
|Ignore any SDP answer received before final connect response.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;No Inband Information on Error&#039;&#039;&#039;&lt;br /&gt;
|Controls interworking of Q.931 DISC message. If this option is set, DISC message is always interworked into BYE request.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;No Inband Disconnect&#039;&#039;&#039;&lt;br /&gt;
|TBD.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;No Remote Hold Signaling&#039;&#039;&#039;&lt;br /&gt;
|Disables interworking of &amp;quot;inactive&amp;quot; into RemoteHold (affects connected SIP calls only).&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Take Refer-To URI as Remote Target URI&#039;&#039;&#039;&lt;br /&gt;
|TBD.&lt;br /&gt;
|-&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;To Header when Sending INVITE&#039;&#039;&#039;&lt;br /&gt;
|Affects only outgoing diverted calls . &lt;br /&gt;
*&#039;&#039;&#039;Called Party&#039;&#039;&#039;: If set we write CDPN into To header of outgoing INVITE (and DGPN into History-Info header). &lt;br /&gt;
*&#039;&#039;&#039;Original Called Party&#039;&#039;&#039;: If set we write the DGPN into To header of outgoing INVITE (and CDPN into Request-URI).&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;From Header when Sending INVITE&#039;&#039;&#039;&lt;br /&gt;
|Controls the local URI (From header) of outgoing calls. Applys to registered interfaces only. &lt;br /&gt;
*&#039;&#039;&#039;Fixed AOR&#039;&#039;&#039;: Fixed AOR is used as From-URI regardless of the actual calling party number. &lt;br /&gt;
*&#039;&#039;&#039;AOR with CGPN as Display&#039;&#039;&#039;: Fixed AOR is used as From-URI and calling party number is added as display string. &lt;br /&gt;
*&#039;&#039;&#039;CGPN in user part of URI&#039;&#039;&#039;: Variable From-URI with actual calling party number.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Identity Header when Sending INVITE&#039;&#039;&#039;&lt;br /&gt;
|Controls the identity header (P-Preferred-Identity, P-Asserted-Identity and Remote-Party-Id) sent on outgoing calls&lt;br /&gt;
*&#039;&#039;&#039;CGPN in user part of URI&#039;&#039;&#039;: Variable Identity-URI with actual calling party number &lt;br /&gt;
*&#039;&#039;&#039;Fixed AOR&#039;&#039;&#039;: Fixed AOR is used as Identity-URI regardless of the actual calling party number&lt;br /&gt;
*&#039;&#039;&#039;UUI&#039;&#039;&#039;: the relayed call must include &#039;&#039;user-to-user-info&#039;&#039; (UUI). This UUI is used as Identity-URI. [[Howto:How_to_customize_the_From/Identity_header_value_at_SIP_interfaces|In the UUI]], the string &amp;lt;code&amp;gt;{initiator}&amp;lt;/code&amp;gt; is replaced by the the call&#039;s &#039;&#039;diversion-info&#039;&#039; (a.k.a. &#039;&#039;leg-2-info&#039;&#039;) if available or the calling party number otherwise&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Reliability of Provisional Responses&#039;&#039;&#039;&lt;br /&gt;
|Controls the support of PRACK (RFC-3262). &lt;br /&gt;
*&#039;&#039;&#039;Supported&#039;&#039;&#039;: Supported as optional extension. &lt;br /&gt;
*&#039;&#039;&#039;Required&#039;&#039;&#039;: Required as mandatory extension. &lt;br /&gt;
*&#039;&#039;&#039;Disabled&#039;&#039;&#039;: Hide support for PRACK extension.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Advanced&#039;&#039;&#039;&lt;br /&gt;
|Allows the configuration of additional, not further documented, interop tweaks(e.g. /pai on). The same tweaks can be configured also globally(i.e. not for this SIP-Interface) at the SIP(or TSIP/SIPS)-module. Any tweaks configured at the SIP-Interface will overwrite globally configured tweaks.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== More frequently used &#039;&#039;Advanced&#039;&#039; Parameters ===&lt;br /&gt;
There are some options which influence the stack behaviour to handle ambiguities in the SIP standard:&lt;br /&gt;
&lt;br /&gt;
; /pai on  : send identity URI in &amp;lt;code&amp;gt;P-Asserted-Identity&amp;lt;/code&amp;gt; header. By default, it is sent in the &amp;lt;code&amp;gt;P-Asserted-Identity&amp;lt;/code&amp;gt; header for calls from the PBX to the endpoint, in the &amp;lt;code&amp;gt;P-Preferred-Identity&amp;lt;/code&amp;gt; header otherwise&lt;br /&gt;
; /ppi on : send identity URI in &amp;lt;code&amp;gt;P-Preferred-Identity&amp;lt;/code&amp;gt; header &lt;br /&gt;
&lt;br /&gt;
Other options are available which instruct the stack to use non-standard or deprecated behaviour.  Note that this should only be used in rare cases.  Better have the vendor of your 3rd party SIP equipment fix its stack implementation:&lt;br /&gt;
&lt;br /&gt;
; /send-deprecated-diversion-header on : send call history information in the deprecated &amp;lt;code&amp;gt;Diversion&amp;lt;/code&amp;gt; header in addition to the &amp;lt;code&amp;gt;History-Info&amp;lt;/code&amp;gt; header &lt;br /&gt;
; /single-audio-description : don&#039;t send SAVP+AVP, but SAVP or AVP media description in SDP&lt;br /&gt;
; /no-authentication-info : don&#039;t send &amp;lt;code&amp;gt;Authentication-Info&amp;lt;/code&amp;gt; header in REGISTER response&lt;br /&gt;
; /send-no-historyinfo : don&#039;t send call history information (i.e. call forward) in outgoing Invite&lt;br /&gt;
; /contact-addr [option] : adjust the Contact header to a fixed value necessary in scenarios of SIP Provider trunk without registration using TCP/TLS and uses Contact Header for Authentication. Example /contact-addr x.x.x.x:5061;user=phone;transport=TLS&lt;br /&gt;
; /options-interval n : Send SIP options every &amp;quot;n&amp;quot; seconds to the configured remote SIP Address configured on the Interface.&lt;br /&gt;
; /get-cdpn-from-to-uri : get CDPN of incoming provider-calls from To-URI instead of Request-URI&lt;br /&gt;
; /prefer-pai : get CGPN from PAI/PPI/RPID if present&lt;br /&gt;
; /no-diverting-name: don&#039;t add display name to diverting party URI&lt;br /&gt;
&lt;br /&gt;
=== Extra Options ===&lt;br /&gt;
{{3rd_Party_Input}}&lt;br /&gt;
&lt;br /&gt;
==== Disable Interworking of Hold Notifications to SIP Provider ====&lt;br /&gt;
&lt;br /&gt;
During the tests we concluded that when interworking the hold-notify message to SIP and sending to the SIP Provider two consecutive Re-Invites with &amp;quot;send-only&amp;quot; attributes, the IMS platform replies to the second re-invite with &amp;quot;inactive&amp;quot;. By doing so this call is put on hold without any Music on Hold - just silence.&lt;br /&gt;
To avoid this behaviour we need to disable the interworking of the hold-notify message by this setting: &lt;br /&gt;
&lt;br /&gt;
 !config add SIP /no-hr-notify  (Alternative: TSIP / SIPS)&lt;br /&gt;
 !config write&lt;br /&gt;
 !config activate&lt;br /&gt;
&lt;br /&gt;
==== SIP Options Interval (Optional) ====&lt;br /&gt;
&lt;br /&gt;
Some Provider uses SIP Options to monitor the SIP Trunks, so it&#039;s mandatory that Innovaphone replies to incoming SIP Options received. This is done by default. Additionally we can also send SIP Options to the SIP Proxy and have similar mechanism for redundancy. If the remote Proxy doesn&#039;t reply to outgoing SIP Options, the Innovaphone Gateway will send the call to the next interface. To enable sending of Options - messages, the following setting must be done:&lt;br /&gt;
&lt;br /&gt;
 !config add SIP /options-interval 30  (Alternative: TSIP / SIPS)&lt;br /&gt;
 !config write&lt;br /&gt;
 !config activate&lt;br /&gt;
&lt;br /&gt;
This option will only take effect on connections &amp;quot;without registration&amp;quot;. In connections with a registration there already exist a keep alive.&lt;br /&gt;
&lt;br /&gt;
==== Remove Comfort Noise (CN) Capability from SDP ====&lt;br /&gt;
&lt;br /&gt;
During the tests we found out that some specific 3rd party devices connected to the IMS network support only a single coder/payload in the offer. When doing the coder negotiation, this devices repeat the coder negotiation until they have only 1 coder in the offer or until they reach a specific number of retries. Since Innovaphone by default always include the payload 13 (Comfort Noise) in addition to the used voice coder/payload, this would make the remote device to do multiple re-invites to try to reach the single coder/payload in the offer.&lt;br /&gt;
To avoid unnecessary signalling, we should disable the sending of Comfort Noise capability.&lt;br /&gt;
&lt;br /&gt;
 !config add SIP /rem-cn-capability  (Alternative: TSIP / SIPS)&lt;br /&gt;
 !config write&lt;br /&gt;
 !config activate&lt;br /&gt;
&lt;br /&gt;
==== Setting of P-Asserted ID instead of P-Preferred ID ====&lt;br /&gt;
&lt;br /&gt;
When using the feature of ReRouting the call (SIP 302 Move Temporary) to the SIP Trunk, the IMS platform checks the P-Asserted ID setting. By default we send as P-Preferred ID instead, so that will not work. As a result, we need to configure the following setting:&lt;br /&gt;
&lt;br /&gt;
 !config add SIP /pai  (Alternative: TSIP / SIPS)&lt;br /&gt;
 !config write&lt;br /&gt;
 !config activate&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference15r1:IP1202/IP1203_DECT_System&amp;diff=76455</id>
		<title>Reference15r1:IP1202/IP1203 DECT System</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference15r1:IP1202/IP1203_DECT_System&amp;diff=76455"/>
		<updated>2025-04-24T17:39:22Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This article describes the IP1202/IP1203 DECT system and provides further helpful information.&lt;br /&gt;
&lt;br /&gt;
==Applies To==&lt;br /&gt;
This information applies to:&lt;br /&gt;
*IP1202, IP1202/4, IP1202/4s, IP1202e&lt;br /&gt;
*IP1203, IP1203/4, IP1203e&lt;br /&gt;
*IP64&lt;br /&gt;
*IP65&lt;br /&gt;
*Ascom d83&lt;br /&gt;
*Firmware Version 15&lt;br /&gt;
&lt;br /&gt;
==Product Availability==&lt;br /&gt;
===IP-DECT base stations===&lt;br /&gt;
* &#039;&#039;&#039;[[Datasheet IP1203|IP1202/4s]]&#039;&#039;&#039;: Singlecell DECT basestation, offering up to 4 concurrent DECT-channels. Minimum required firmware 13r1sr8.&lt;br /&gt;
* &#039;&#039;&#039;[[Datasheet IP1203|IP1203]]&#039;&#039;&#039;: Multicell capable DECT basestation, offering up to 8 concurrent DECT-channels. Successor of IP1202.&lt;br /&gt;
* &#039;&#039;&#039;[[Datasheet IP1203|IP1203/4]]&#039;&#039;&#039;: Multicell capable DECT basestation, offering up to 4 concurrent DECT-channels. Successor if IP1202/4.&lt;br /&gt;
* &#039;&#039;&#039;[[Datasheet IP1203|IP1203e]]&#039;&#039;&#039;: Multicell capable DECT basestation, offering up to 8 concurrent DECT-channels, two external antenna connectors and two included dipole omni directional antennas. Successor of IP1202e.&lt;br /&gt;
===IP-DECT handsets===&lt;br /&gt;
Current innovaphone portfolio includes the following DECT devices (as of August 2022):&lt;br /&gt;
* &#039;&#039;&#039;[[Datasheet IP64|IP64]]&#039;&#039;&#039;: Entry level handset. Successor of IP61.&lt;br /&gt;
* &#039;&#039;&#039;[[Datasheet IP65|IP65]]&#039;&#039;&#039;: Advanced level handset with messaging abilities. Successor of IP63.&lt;br /&gt;
* Ascom &#039;&#039;&#039;[[Datasheet d83|d83 Talker]]&#039;&#039;&#039;: DECT phone for rough environments. Successor of d81.&lt;br /&gt;
* Ascom &#039;&#039;&#039;[[Datasheet d83|d83 Messenger]]&#039;&#039;&#039;: DECT phone for rough environments with messaging functionality &lt;br /&gt;
* Ascom &#039;&#039;&#039;[[Datasheet d83|d83 Protector]]&#039;&#039;&#039;: DECT phone for rough environments with alarming and messaging functionality&lt;br /&gt;
&lt;br /&gt;
===IP-DECT Antennas===&lt;br /&gt;
{{IP-DECT External Antennas}}&lt;br /&gt;
For details about external antennas and their usage, refer to [[Reference:IP1202e DECT base station with external antennas|this article]].&lt;br /&gt;
===Base station housings===&lt;br /&gt;
{{IP-DECT Outdoor Housings}}&lt;br /&gt;
===Accessories===&lt;br /&gt;
* simple charger (50-00060-001) for both IP64 and IP65 (DC3-UAAA)&lt;br /&gt;
* simple charger (50-00083-019) for d83 (DC3-AAAD)&lt;br /&gt;
* programming device (50-00060-021) for both IP64 and IP65 for administration purposes via WinPDM (DP1-UAAA - same as for Wifi-device IP73, no Firmware Update for the device itself is required)&lt;br /&gt;
* programming device (50-00083-020) for Ascom d83 for administration purposes via WinPDM (DP1-AAAD)&lt;br /&gt;
Remarks: &lt;br /&gt;
* Chargers and programming devices are not part of the handset delivery and &#039;&#039;&#039;have to be ordered separately&#039;&#039;&#039;.&lt;br /&gt;
* Any previously available DECT devices are end-of-life and no more supported.&lt;br /&gt;
==Firmware==&lt;br /&gt;
Firmware for DECT-basestations (IP1202, IP1202e, IP1202/4, IP1202/4s, IP1203, IP1203e, IP1203/4), handsets (IP61, IP63, IP64, IP65) and WinPDM can be downloaded via the [https://store.innovaphone.com/release/134513/download.htm innovaphone AppStore].&lt;br /&gt;
&lt;br /&gt;
IP1203x is supported by major firmware version 13 and higher. It can be operated together with IP1202 devices with the same V13 firmware version.&lt;br /&gt;
&lt;br /&gt;
Starting with 15r1, the VARs flash space for IP1203 base stations [[ReleaseNotes15r1:Firmware#189353_-_ip1203:_increase_VARs_flash_space|was increased]]. If you want to &#039;&#039;&#039;downgrade&#039;&#039;&#039; an IP1203 base station to prior 15r1 firmware, you have to download the current config, downgrade the IP1203 and upload the config afterward again.&lt;br /&gt;
&lt;br /&gt;
==OTA (Over the Air) Features==&lt;br /&gt;
===Important===&lt;br /&gt;
If you have your IP120x radios already included in an Ascom Unite system, you can&#039;t use these features, since the unite module inside the IP120x configuration is used for the innovaphone OTA features also.&amp;lt;br&amp;gt;&lt;br /&gt;
So either you use a Unite system (which includes paramter configuration and firmware updates) or our OTA features.&lt;br /&gt;
&lt;br /&gt;
A running call won&#039;t be affected by the firmware update and the handset will only restart, if the call is ended. But keep in mind, that the update progress will take much longer, since the resources of the IP120x are primary used for running calls.&lt;br /&gt;
&lt;br /&gt;
===Devices App (recommended)===&lt;br /&gt;
* You can configure an update job to roll out handset updates: [[{{NAMESPACE}}:Concept_App_Service_Devices#DECT_handsets]].&lt;br /&gt;
* You can configure a DECT handset configuration to roll out handset configuration options: [[{{NAMESPACE}}:Concept_App_Service_Devices#DECT_handsets_2]].&lt;br /&gt;
* See [[{{NAMESPACE}}:Concept_App_Service_Devices#Supported_DECT_handsets | Supported DECT handsets]].&lt;br /&gt;
&lt;br /&gt;
===Firmware update (manual configuration)===&lt;br /&gt;
Firmware of IP64, IP65 and Ascom d81 and d83 handsets can be updated via parameter definition on the dect master.&lt;br /&gt;
&lt;br /&gt;
Upon registering of the handsets, they give the dect master their current firmware version information. If this version differs from the configured firmware version parameter, the base station on which the handset is registered on, starts a download of the firmware.&amp;lt;br&amp;gt;&lt;br /&gt;
After the download is completed, the handsets restarts automatically with the new firmware.&lt;br /&gt;
&lt;br /&gt;
The following config lines need to be added to the IP120x configuration, to update all registered IP64 and IP65 handsets, for example to firmware 3.0.16:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
!config change DEVMANBW /hs-param-url&amp;lt;br&amp;gt;&lt;br /&gt;
!config change DEVMANPP /firm-dh7 3.0.16 /firm-dh7-url http://&amp;lt;PATH to Webserver&amp;gt;/IP65/DH7-M_v3.0.16.bin /firm-dh6 3.0.16 /firm-dh6-url http://&amp;lt;PATH to Webserver&amp;gt;/IP64/DH6_v3.0.16.bin&amp;lt;br&amp;gt;&lt;br /&gt;
!config write&amp;lt;br&amp;gt;&lt;br /&gt;
!config activate&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Explanation of the parameters====&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;/hs-param-url&#039;&#039;&#039;&#039;&#039; enables the over-the-air feature in the &#039;&#039;&#039;DEVMANBW&#039;&#039;&#039; module. The firmware parameters need to be configured in the &#039;&#039;&#039;DEVMANPP&#039;&#039;&#039; module.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;/firm-dh7&#039;&#039;&#039;&#039;&#039; sets the firmware value for IP65 handsets to the wanted firmware version. If the handset already have that firmware, no update is executed.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;/firm-dh7-url&#039;&#039;&#039;&#039;&#039; URL where the firmware binary for IP65 handsets can be downloaded.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;/firm-dh6&#039;&#039;&#039;&#039;&#039; sets the firmware value for IP64 handsets to the wanted firmware version. If the handset already have that firmware, no update is executed.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;/firm-dh6-url&#039;&#039;&#039;&#039;&#039; URL where the firmware binary for IP64 handsets can be downloaded.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====More information====&lt;br /&gt;
* Only the .bin files can be used as download. If you&#039;ve downloaded the firmware via our store, it is in .pkg format and includes more data. You need to unpack the .pkg (for example via 7zip or WinRAR) to get the .bin file.&lt;br /&gt;
* For each handset, a separate download of the firmware will be executed. So if you have three IP65 handsets registered on the same IP120x, three downloads will be started.&lt;br /&gt;
** The DEVMANPP module in the master will limit it to max 10 downloads in parallel. There are also some limitations in the handset that will make sure that there are not more than 5 downloads per radio.&lt;br /&gt;
* If a handset is shut down or deregistered while the download is running, the download is cancelled and will be started again, the next time the handset is registered.&lt;br /&gt;
&lt;br /&gt;
===Configuration of Handset parameters ===&lt;br /&gt;
&#039;&#039;&#039;Important:&#039;&#039;&#039; This Feature is available with firmware version &#039;&#039;&#039;4.3.2&#039;&#039;&#039; onwards for IP64 and IP65 Handsets.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IP64 and IP65 handsets can receive different configurations via a parameter .xml-file from the base station.&lt;br /&gt;
&lt;br /&gt;
The following config lines need to be added to the IP120x configuration:&lt;br /&gt;
&lt;br /&gt;
 !config change DEVMANBW /hs-param-url http://&amp;lt;PATH to Webserver&amp;gt;/&amp;lt;parameter-file&amp;gt;.xml&lt;br /&gt;
 !config write&lt;br /&gt;
 !config activate&lt;br /&gt;
&lt;br /&gt;
The base station will retrieve the parameter file on restart of the base itself or on the configured timeout value (default is 60 minutes).&amp;lt;br&amp;gt;&lt;br /&gt;
You can adjust the default timeout to a lower value, e.g. 1 minute, by adding the following config:&lt;br /&gt;
&lt;br /&gt;
 !config add DEVMANBW /cfg-poll-interval 1&lt;br /&gt;
 !config write&lt;br /&gt;
 !config activate&lt;br /&gt;
&lt;br /&gt;
For the handsets to get the parameters, they need to be restarted. After connecting to the base station, the handsets will retrieve the parameters.&lt;br /&gt;
&lt;br /&gt;
An example .xml-file can be downloaded [[Media:Parameter.zip|here]].&amp;lt;br&amp;gt;&lt;br /&gt;
This file will set the following parameters on the handset:&lt;br /&gt;
* Language = German&lt;br /&gt;
* Date format = DD/MM/YYYY&lt;br /&gt;
* Voicemail number = 99&lt;br /&gt;
&lt;br /&gt;
A list with all available parameters can be found [[Media:Parameter id.pdf|here]].&lt;br /&gt;
&lt;br /&gt;
====Explanation of the parameter list====&lt;br /&gt;
&lt;br /&gt;
Parameter id range 4-7 is for configuring the call menu options, which comes in pairs. So even numbers define the menu text and odd numbers the action (4 and 5, 6 and 7 etc.). Typically used for defining feature access codes.&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting OTA ====&lt;br /&gt;
If the handset is not updated, please send us (support@innovaphone.com) a trace with following options:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;All IPv4 TCP/UDP Traffic&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;All IPv4 TLS Traffic&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Also enable further trace options, via commands on the base station:&lt;br /&gt;
 !config add CUNITE /trace /module-trace verbose&lt;br /&gt;
 !config add CUNITE FILEGET /trace /module-trace verbose&lt;br /&gt;
 !config add DEVMANPP /trace /module-trace verbose&lt;br /&gt;
 !config add DEVMANBW /trace /module-trace verbose&lt;br /&gt;
 !config add MATP /trace /module-trace verbose&lt;br /&gt;
 !config write&lt;br /&gt;
 !reset&lt;br /&gt;
&lt;br /&gt;
==Licensing==&lt;br /&gt;
innovaphone DECT devices are only operational with innovaphone PBX licenses. Operation without innovaphone PBX is not possible.&lt;br /&gt;
&lt;br /&gt;
==Compatibility Statements==&lt;br /&gt;
IP1202 and IP1203 base stations are compatible to each other and can be used in mixed systems in V12 and V13 innovaphone PBX environments (with most recent FW version). When adding an IP1203 to an IP1202 installation, an update of the DECT devices to a V13 firmware is required (PBX can remain on V12 firmware).&lt;br /&gt;
&lt;br /&gt;
===No Base Station and No Handset Compatibility===&lt;br /&gt;
The IP1202/IP1203-based IP-DECT solution is &#039;&#039;&#039;not compatible&#039;&#039;&#039; to IP1200 based IP-DECT solution.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;old&#039;&#039; DECT handset IP50, IP52, IP54, IP55, IP56 will &#039;&#039;&#039;not operate&#039;&#039;&#039; on &#039;&#039;new&#039;&#039; IP1202/IP1203-based IP-DECT system, since not only GAP compliance is required, but also CAP compliance (DECT external handover CAP-N.1).&lt;br /&gt;
&lt;br /&gt;
The DECT handset &#039;&#039;&#039;must support GAP and CAP&#039;&#039;&#039; for operation on IP1202/IP1203 based DECT system.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;new&#039;&#039; DECT handsets IP61, IP63, IP64 and IP65 will &#039;&#039;&#039;not operate&#039;&#039;&#039; on &#039;&#039;old&#039;&#039; IP1200 based IP-DECT system.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;new&#039;&#039; DECT base stations IP1202/IP1203 and IP1202e/IP1203e &#039;&#039;&#039;can not be used&#039;&#039;&#039; to extend an existing &#039;&#039;old&#039;&#039; IP1200 based IP-DECT system.&lt;br /&gt;
&lt;br /&gt;
=&amp;gt; This means &#039;&#039;&#039;NO HANDOVER&#039;&#039;&#039; between different systems (move with active call on a specific handset from an IP1200-system to an IP1202/IP1203-based-system or vice versa)&lt;br /&gt;
&lt;br /&gt;
=&amp;gt; This means &#039;&#039;&#039;NO ROAMING&#039;&#039;&#039; between different systems (usage of a specific handset in a non-compatible IP-DECT system - see above)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
===Parallel usage of IP1200 and IP1202/IP1203 IP-DECT systems===&lt;br /&gt;
&lt;br /&gt;
The operation is only possible as two independent systems. No handover or roaming between the systems is possible. An IP1202/IP1203-based system can and should synchronize the TDM clock with IP1200 based system to avoid interference.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Mixed Ascom/innovaphone Environments ===&lt;br /&gt;
It is generally not supported to mix Ascom (or any of their OEM-products) and innovaphone DECT products in a single installation, e.g.&lt;br /&gt;
&lt;br /&gt;
* Combination of IP120x and Ascom IPBSx base stations is neither allowed nor supported&lt;br /&gt;
* Usage of IP61/IP63/IP64/IP65 with Ascom IPBSx based networks is not supported&lt;br /&gt;
* Usage of non-innovaphone handsets in IP120x based networks is not supported&lt;br /&gt;
* Usage of IP61/IP63/IP64/IP65 with Ascom UNITE Alarm/Messaging Server is not supported.&lt;br /&gt;
Exception: Messaging is supported by IP65 and can be used via IP1203-Unite-interface. Pay attention to special [[Reference13r3:Unite/|terms and conditions]] for usage.&lt;br /&gt;
* Usage of innovaphone firmware at Ascom devices (bases and/or handsets) is neither allowed nor supported&lt;br /&gt;
Exception: Operation of Ascom d8x in an IP1202/IP1203 environment is supported.&lt;br /&gt;
&lt;br /&gt;
===No Multicell License Required===&lt;br /&gt;
&lt;br /&gt;
The Multicell License is obsolete for IP1202-based IP-DECT systems.&lt;br /&gt;
&lt;br /&gt;
For IP1202/IP1203-based IP-DECT systems a SARI (Secondary Access Right Identity for DECT) certificate is required. The SARI activates an IP-DECT Master based on IP1202/IP1203. One single SARI certificate is required for a single IP-DECT system, regardless how many base stations are used. Also for IP-DECT systems with one single base station and single-cell base stations a SARI certificate is required. The SARI certificate is not an innovaphone license and only required to make sure the DECT Radio Fixed Part Identity used in the DECT system is worldwide unique one.&lt;br /&gt;
&lt;br /&gt;
A Multicell License can not be converted to a SARI certificate (and there is also no need to do so).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: Multicell capability does not apply to IP1202/4s. IP1202/4s is a single cell basestation without expansion capability for another base station. It does not offer handover and roaming capabilities.&lt;br /&gt;
&lt;br /&gt;
===Certifications and Test Reports===&lt;br /&gt;
The innovaphone PBX was tested and certified by Ascom Wireless Solutions with Ascom IPBS based IP-DECT System, on which IP1202 is based (but is not the same product). A [[Index.php?title=Media:Innovaphone PBX and Ascom IP-DECT certified by Ascom.pdf&amp;amp;action=edit&amp;amp;redlink=1|Certificate]] and a [[Index.php?title=Media:Innovaphone and ascom DECT Report.pdf&amp;amp;action=edit&amp;amp;redlink=1|Test Report]] of this certification are available for download.&lt;br /&gt;
&lt;br /&gt;
===Wired Headset Support for IP64/IP65===&lt;br /&gt;
&lt;br /&gt;
The IP64 and IP65 DECT handsets offer a 4-pole 3.5mm phone jack for headset connection.&lt;br /&gt;
&lt;br /&gt;
Following headsets are tested by the manufacturer:&lt;br /&gt;
* in-ear headset, incl. cable with phone jack - order no. 50-00060-29&lt;br /&gt;
* headset with mic on boom, quick disconnect - order no. 50-00060-30 (needs additional adapter for QD to 3.5mm phone jack - order no. 50-00060-032)&lt;br /&gt;
&lt;br /&gt;
There&#039;s no technical support in case of issues for use of other headsets.&lt;br /&gt;
&lt;br /&gt;
====3rd party products====&lt;br /&gt;
Partner reports successful testing of following products:&lt;br /&gt;
* Sennheiser 506090 CMB 01 CRTL - 4-pole 3.5mm adapter to connect Sennheiser headsets at IP64&lt;br /&gt;
* Apple iPhone Headset with 4-pole 3.5mm jack, Tested answer and disconnect by pressing button in headset cord.&lt;br /&gt;
&lt;br /&gt;
Note though, that innovaphone gives no technical support in case of malfunction.&lt;br /&gt;
&lt;br /&gt;
===Bluetooth Headset Support for IP63 / IP65===&lt;br /&gt;
IP63 and IP65 DECT handsets support handsfree and headset profiles for Bluetooth.&lt;br /&gt;
&lt;br /&gt;
Following headsets are tested by the manufacturer - for some models restrictions have been reported to us (as of 11/20/18):&lt;br /&gt;
* Jabra EVOLVE 65 MS Stereo&lt;br /&gt;
* Jabra EVOLVE 75&lt;br /&gt;
* Jabra MOTION UC+ MS&lt;br /&gt;
* Jabra STEALTH&lt;br /&gt;
* Jabra SUPREME UC MS (audio not working correct on outgoing calls with various CTI clients)&lt;br /&gt;
* Peltor WS Headset XP (MT H7 WS5)&lt;br /&gt;
* Plantronics B825-M Voyager Focus&lt;br /&gt;
* Plantronics BackBeat GO 2&lt;br /&gt;
* Plantronics Blackwire 710&lt;br /&gt;
* Plantronics Explorer 500 Bluetooth Headset Black&lt;br /&gt;
* Plantronics ML20 (not for IP65)&lt;br /&gt;
* Plantronics M70&lt;br /&gt;
* Plantronics M90&lt;br /&gt;
* Plantronics Voyager 5200 BT Headset EU&lt;br /&gt;
* Plantronics Voyager Edge&lt;br /&gt;
* Plantronics Voyager Legend UC (audio not working correct on outgoing calls with various CTI clients)&lt;br /&gt;
&lt;br /&gt;
== DECT In-Call Features ==&lt;br /&gt;
IP1202 and IP61/63/64/65 handsets offer In-Call features by R-Key handling accoring to [[Howto:How to use the R-key handling|this description]].&lt;br /&gt;
&lt;br /&gt;
== 3PTY (3 party conference) ==&lt;br /&gt;
Starting with version 9 firmware, the IP1202 DECT system supports 3PTY (3 party conference) on DECT phones. However, be aware that this &#039;&#039;requires innovaphone CONF/SCNF interfaces&#039;&#039; as part of the system. Such CONF/SCNF interfaces may or may not be present on a gateway device running the PBX, depending on the model used. See [[Technical Data|respective gateway datasheets]] for &#039;&#039;voice/audio conference channels&#039;&#039; provided by the device. Note that the CONF/SCNF interface used does not need to be present in the PBX device, it can be provided by just any gateway platform available in the system. There are no conference channels available in the IP1202/IP1203 though.&lt;br /&gt;
&lt;br /&gt;
For details about configuration please refer to [[Courseware:IT_Plus_-_Conferencing_and_DECT#3-way DECT conference|the relevant training document]].&lt;br /&gt;
&lt;br /&gt;
== Usage in non-EU countries ==&lt;br /&gt;
innovaphone DECT prodcuts of type IP1202x, IP1203x, IP64 and IP65 can technically be operated in most countries of the world, as the hardware supports all relevant DECT frequencies (software configurable).&lt;br /&gt;
&lt;br /&gt;
However, the devices are approved in EU/EFTA states only!  Use in other countries will probably be illegal thus.&lt;br /&gt;
&lt;br /&gt;
== Test-SARI ==&lt;br /&gt;
&lt;br /&gt;
DECT Systems are using a worldwide unique system identification (SARI) to be separated from each other.&lt;br /&gt;
&lt;br /&gt;
For test and training purposes, innovaphone offers the following SARI:&lt;br /&gt;
&lt;br /&gt;
 31100422072149&lt;br /&gt;
&lt;br /&gt;
This SARI is intended for use in test/training systems only!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;&#039;&#039;&#039;Usage within productive systems is prohibited and not recommended.&#039;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the SARI is changed, all handsets have to be subscribed again.&lt;br /&gt;
&lt;br /&gt;
DECT systems which are near to each other and are using the same test-SARI, may disturb each other.&lt;br /&gt;
&lt;br /&gt;
==DECT Service Codes==&lt;br /&gt;
===IP64===&lt;br /&gt;
 *#34# - Displays the Device Info&lt;br /&gt;
 *#06# - Displays the IPEI/IPDI &lt;br /&gt;
===IP65===&lt;br /&gt;
 *#34# - Displays the Device Info&lt;br /&gt;
 *#06# - Displays the IPEI/IPDI &lt;br /&gt;
 *#77# - Site Survey Tool&lt;br /&gt;
&lt;br /&gt;
==Admin Menu==&lt;br /&gt;
The handset has a hidden menu for system administrators. The Admin menu contains:&lt;br /&gt;
*Software and hardware information, IPEI/IPDI, and User ID&lt;br /&gt;
*DECT link and system information&lt;br /&gt;
*Site survey tool&lt;br /&gt;
*Fault logging&lt;br /&gt;
*Enhanced system menu with ability to alter protection&lt;br /&gt;
*Factory reset option&lt;br /&gt;
&lt;br /&gt;
To activate the Admin Menu, enter the Call time screen via &amp;quot;Menu-&amp;gt;Call list-&amp;gt;Call time&amp;quot; and press &amp;lt;code&amp;gt;&amp;amp;gt; * &amp;amp;lt; &amp;amp;lt; * &amp;amp;lt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;amp;gt; or &amp;amp;lt;&amp;lt;/code&amp;gt; means pressing the rocker key in the indicated direction ;-)&lt;br /&gt;
&lt;br /&gt;
==Status indication LED==&lt;br /&gt;
The IP1202/IP1203 has one RGB LED to indicate its current status.&lt;br /&gt;
&lt;br /&gt;
Each blink pattern is represented by a number of blocks where each block is 100 ms. Light grey blocks means that the LED is off. Whenever the indication is changed the new pattern always starts from the first block.&lt;br /&gt;
&lt;br /&gt;
Following status are indicated:&lt;br /&gt;
&lt;br /&gt;
* Idle/OK  &amp;quot;Solid blue&amp;quot;&lt;br /&gt;
[[image:solidblue.png|solidblue.png/|solidblue.png/]]&lt;br /&gt;
&lt;br /&gt;
IP1202 operational and no traffic on the IP1202/IP1203. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Starting up/ searching   &amp;quot;100 ms blue, 100 ms off&amp;quot;&lt;br /&gt;
[[Image:100blue100off.png|100blue100off.png/|100blue100off.png/]]&lt;br /&gt;
&lt;br /&gt;
The IP1202 is in start-up phase, e.g. waiting for parameters from PARI Master, or is searching for air synchronization.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Active traffic &amp;quot;400 ms off, 2000 ms blue&amp;quot;&lt;br /&gt;
[[Image:400ms_off_200ms_blue.png|400ms_off_200ms_blue.png/|400ms_off_200ms_blue.png/]]&lt;br /&gt;
&lt;br /&gt;
IP1202/IP1203 operational and traffic on the IP1202/IP1203.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Fully occupied &amp;quot;400 ms red, 2000 ms blue&amp;quot;&lt;br /&gt;
[[Image:400ms_red_2000ms_blue.png|400ms_red_2000ms_blue.png/|400ms_red_2000ms_blue.png/]]&lt;br /&gt;
&lt;br /&gt;
Fully occupied with speech traffic.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Software download &amp;quot;400 ms blue, 600 ms off&amp;quot;&lt;br /&gt;
[[Image:400ms_blue_600ms_off.png|400ms_blue_600ms_off.png/|400ms_blue_600ms_off.png/]]&lt;br /&gt;
&lt;br /&gt;
Firmware download in progress.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Mini firmware &amp;quot;100 ms yellow, 100 ms off&amp;quot;&lt;br /&gt;
[[Image:100ms_yellow_100ms_off.png|100ms_yellow_100ms_off.png/|100ms_yellow_100ms_off.png/]]&lt;br /&gt;
&lt;br /&gt;
The IP1202 is in mini firmware mode.&lt;br /&gt;
&lt;br /&gt;
* TFTP mode &amp;quot;Solid yellow&amp;quot;&lt;br /&gt;
[[Image:solid_yellow.png|solid_yellow.png/|solid_yellow.png/]]&lt;br /&gt;
&lt;br /&gt;
TFTP mode.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Error &amp;quot;100 ms red, 100 ms off&amp;quot;&lt;br /&gt;
[[Image:100ms_red_100ms_off.png|100ms_red_100ms_off.png/|100ms_red_100ms_off.png/]]&lt;br /&gt;
&lt;br /&gt;
No Ethernet connection.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Fatal error &amp;quot;Solid red&amp;quot; &lt;br /&gt;
[[Image:solid_red.png|solid_red.png/|solid_red.png/]]&lt;br /&gt;
&lt;br /&gt;
Fatal hardware error.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Deployment: Good sync  &amp;quot;2000 ms blue, 400 ms yellow&amp;quot; &lt;br /&gt;
[[Image:2000ms_blue_400ms_yellow.png|2000ms_blue_400ms_yellow.png/|2000ms_blue_400ms_yellow.png/]]&lt;br /&gt;
&lt;br /&gt;
The IP1202/IP1203 is in deployment mode and has good air sync coverage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Deployment: Bad sync &amp;quot;400 ms blue, 600 ms off, 400 ms blue, 600 ms off, 400 ms yellow&amp;quot;&lt;br /&gt;
[[Image:bad_sync.png|bad_sync.png/|bad_sync.png/]]&lt;br /&gt;
&lt;br /&gt;
The IP1202/IP1203 is in deployment mode and does not have adequate air sync coverage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Deployment: No sync &amp;quot;2000 ms red, 400 ms yellow&amp;quot;&lt;br /&gt;
[[Image:2000ms_red_400ms_yellow.png|2000ms_red_400ms_yellow.png/|2000ms_red_400ms_yellow.png/]]&lt;br /&gt;
&lt;br /&gt;
The IP1202/IP1203 is in deployment mode and has no air sync coverage&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Known Problems==&lt;br /&gt;
=== H.323/TLS Registrations ===&lt;br /&gt;
If you want to use H.323/TLS as Registration Protocol for the Dect-Handsets on an IP1202/IP1203, there are a few things to consider. Using the [[Reference13r1:PBX/Objects#Device Config Flags|&#039;&#039;TLS only&#039;&#039;]] Flag in the corresponding User Object will not work, because the CN (Common Name) of the IP1202/IP1203-Certificate doesn&#039;t match, with the Username and therefore the Registration at the PBX will fail.&lt;br /&gt;
&lt;br /&gt;
If you still want to use a H.323/TLS Connection between IP1202 and PBX, you have to use other Mechanics to authenticate the DECT-Handsets. This can be done either by using the User Objects Password (not recommended) or activate the Flag [[Reference13r1:PBX/Objects#Device Config Flags|&#039;&#039;PBX Pwd&#039;&#039;]] at the corresponding User Object (recommended). You have to enable [[Reference11r1:DECT2/Config/Master|Registration with system password]] at the IP1202/IP1203&lt;br /&gt;
&lt;br /&gt;
With this Setup, you have H.323/TLS based communication between the IP1202/IP1203 and your PBX and the user himself is authenticated via the [[Reference9:PBX/Config/Security#PBX password|PBX Password]].&lt;br /&gt;
&lt;br /&gt;
=== incoming calls limited to number of radio/DSP channels ===&lt;br /&gt;
Each incoming call towards a radio base station (IP1202/IP1203 or IP1202/4,IP1203/4) allocates a DSP channel during the alert state.&lt;br /&gt;
&lt;br /&gt;
If more DECT-handsets are subscribed to this base than DSP/radio channels are available, call setup will fail for surplus devices, and result in no audio (just noise).&lt;br /&gt;
&lt;br /&gt;
Example: Call Broadcast to 5 DECT users subscribed in a IP1202/4,IP1203/4. One out of these 5 users will alert but without any DSP allocation (random). Answering such a call results in no audio for this user.&lt;br /&gt;
&lt;br /&gt;
=== Blind Transfer ===&lt;br /&gt;
Internal ring tone after external call is blind-transferred to C, which does not save external&lt;br /&gt;
number in call list (per IPBS design)&lt;br /&gt;
&lt;br /&gt;
=== No number resolution from local contacts ===&lt;br /&gt;
In case numbers of local contacts are not resolved in incoming call screen but in call list only, adjust display management settings via WinPDM:&lt;br /&gt;
&lt;br /&gt;
[[image:dect_call_list.png|dect_call_list.png/|dect_call_list.png/]]&lt;br /&gt;
&lt;br /&gt;
=== Firmware Compatibility ===&lt;br /&gt;
Newer IP1202 hardware (such with product code &#039;&#039;IPBS2-M3A &#039;&#039;, &#039;&#039;IPBS2-M4A &#039;&#039; or &#039;&#039;IPBS2-M5A&#039;&#039; on the back, introduced 2Q2015) need at least firmware V11r1 SR3 or V10 SR22. Older versions are not supported!&lt;br /&gt;
&lt;br /&gt;
=== Choppy voice on handsets in noisy environments ===&lt;br /&gt;
If DECT handsets are used in noisy environments (e.g. industry), gaps in the voice can appear, the syllables appear to be dropped from time to time.&lt;br /&gt;
&lt;br /&gt;
This is caused by the echo canceller on the radio (IP1202) serving the connection for the DECT handset.&lt;br /&gt;
&lt;br /&gt;
A config switch for noise optimised echo canceller mode can be used in this case: &lt;br /&gt;
&lt;br /&gt;
 config add MSP0 /ec-type 1&lt;br /&gt;
&lt;br /&gt;
This config switch should be distributed to the base stations serving the radio connections for the DECT handsets in noisy environments only.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;ec-type&#039;&#039; parameter can be configured with values &#039;&#039;0-2&#039;&#039;, 2 being currently (12r2SR14) the default value. &lt;br /&gt;
&lt;br /&gt;
According a report from a customer, setting the ec-type value to 0 (i.e. disable the echo canceller) at the base-stations in the noisy environment (and only there) helped. So if setting &amp;lt;code&amp;gt;ec-type 1&amp;lt;/code&amp;gt; doesn&#039;t help, you can try &amp;lt;code&amp;gt;ec-type 0&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Phone book search of users with * or # is not possible===&lt;br /&gt;
The phone book search is realized via SMS messages.  This protocol defines and works with digits only. Therefore, this function cannot be used by users who contain a * or # in their number. In other words, users who perform the phonebook search cannot use * or # in their number.&lt;br /&gt;
&lt;br /&gt;
===Remarks===&lt;br /&gt;
For a successful registration to the PBX, it is mandatory that an entry with the user&#039;s &#039;&#039;Name&#039;&#039; as &#039;&#039;Hardware Id&#039;&#039; value exists in the &#039;&#039;Devices&#039;&#039; section of the PBX user. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [[Image:DectUser1.png]] --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
*[[Datasheet_IP1203]]&lt;br /&gt;
*[[Datasheet_IP64]]&lt;br /&gt;
*[[Datasheet_IP65]]&lt;br /&gt;
*[[Datasheet_d83]]&lt;br /&gt;
*[[Reference:IP1202e DECT base station with external antennas]]&lt;br /&gt;
*[[Courseware:IT_Plus_-_IP-DECT]]&lt;br /&gt;
*[[Courseware:IT_Plus_-_Conferencing_and_DECT]]&lt;br /&gt;
*[[Howto:How_to_use_the_R-key_handling]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference14r2:Concept_App_Service_Contacts&amp;diff=73753</id>
		<title>Reference14r2:Concept App Service Contacts</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference14r2:Concept_App_Service_Contacts&amp;diff=73753"/>
		<updated>2024-10-16T10:00:24Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Concept|Apps]]&lt;br /&gt;
= Applies To =&lt;br /&gt;
* App Contacts version 14r2&lt;br /&gt;
&lt;br /&gt;
= Overview =&lt;br /&gt;
The App Service Contacts is an App Service which can be installed on an innovaphone App Platform. It is used for information retrieval of a database of contact entries, as well as maintaining personal contact books.&lt;br /&gt;
&lt;br /&gt;
Inside Contacts, personal and general entries can be searched (forward lookup) or be used to resolve incoming numbers to their respective name (reverse lookup).&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
*Import: Semicolon (;) separated CSV file&lt;br /&gt;
*Database for contact entries: A user interface for retrieval purposes is available. &lt;br /&gt;
*API: Search API and Lookup API for other apps&lt;br /&gt;
*Edit Functionality: Contact entries are editable.&lt;br /&gt;
*Personal Address Book: Every user can maintain one or more personal address books.&lt;br /&gt;
*Access Right Management: Owners can maintain access privileges for single users or even groups of users, in order to control visibility of an address book.&lt;br /&gt;
== 14r2 Features ==&lt;br /&gt;
Features added to the version 14r2&lt;br /&gt;
;User-Interface improvements&lt;br /&gt;
: Contact entries retrieved are rendered in a condensed card representation. A &#039;&#039;&#039;Details&#039;&#039;&#039;-button expands and displays remaining contact information&lt;br /&gt;
;Presence Updates&lt;br /&gt;
:Useful in federation scenarios. For displayed and currently visible contact entries, presence monitoring calls are placed, in order to display availablity status. Underlying resources are going to be freed immediately for entries scrolled out of visibility. &lt;br /&gt;
;Fax button&lt;br /&gt;
:Placing a call to a fax number is going to start the fax application&lt;br /&gt;
;Adding Contacts from within the Softphone App or Call List App&lt;br /&gt;
:Contacts can be added by means of a button &#039;&#039;&#039;Softphone/Call List/&amp;lt;entry&amp;gt;/&amp;quot;Add Contact&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
;Import, export for personal directories&lt;br /&gt;
New buttons &#039;&#039;&#039;Hamburger/Directories/&amp;lt;directory&amp;gt;/Import,Export&#039;&#039;&#039; allow for CSV-download and -upload respectively.&lt;br /&gt;
&lt;br /&gt;
= Requirements =&lt;br /&gt;
innovaphone PBX and App Platform from on version 13r3 - version 14r2 is recommended.&lt;br /&gt;
==Upgrade Considerations==&lt;br /&gt;
From 13r3 to 14r2 no special upgrade scenarios need to be considered as the database structure remains the same. On the other hand, if the new com.innovaphone.contacts API will be used (which helps to add contacts from within the phone apps) and a manual update is performed then the Websocket Checkmark should be set on the PBX App Object. &lt;br /&gt;
&lt;br /&gt;
For prior versions please consider the following:&lt;br /&gt;
&lt;br /&gt;
As always, don&#039;t forget to backup an existing App Platform in prior. This 13r3 App Contacts does alter the underlying database scheme.&lt;br /&gt;
;13r3 App on 13r1 App Platform, 13r1 PBX:Doesn&#039;t work. The 13r3 Contacts App does not work on an 13r1 Application Platform/Environment.&lt;br /&gt;
;13r3 App on 13r2 App Platform, 13r2 PBX:The 13r3 Contacts App works with the restriction, that the reverse lookup for private address books doesn&#039;t work. For full feature set, also upgrade the App Platform and PBX to 13r3.&lt;br /&gt;
&lt;br /&gt;
=Apps=&lt;br /&gt;
=== Contacts App (innovaphone-contacts) ===&lt;br /&gt;
The regular app&lt;br /&gt;
=== Contacts Admin App (innovaphone-contacts-admin) ===&lt;br /&gt;
Features a menu (top-right) to manually upload a CSV file&lt;br /&gt;
=== Contacts Search API (innovaphone-contacts-searchapi) ===&lt;br /&gt;
This hidden app rovides a search API and a lookup API to other apps, e.g. for the Phone App&lt;br /&gt;
&lt;br /&gt;
= Concept =&lt;br /&gt;
General contact entries and entries for personal directories are stored within the same database. With the table &#039;&#039;&#039;acl&#039;&#039;&#039; which is acting as an access control list, restricted views and edit rights for personal directories can be granted.&lt;br /&gt;
&lt;br /&gt;
This way, only the owner of a personal directory (and granted user or groups) can see the content.&lt;br /&gt;
&lt;br /&gt;
==Number handling==&lt;br /&gt;
In principle, two versions of a phone number are always stored in the contacts database. &lt;br /&gt;
;Original Number&lt;br /&gt;
:This is the unchanged number imported by the user. This version includes all decorative characters, spaces, etc. (eg. +49-(7031) 730090)&lt;br /&gt;
;Formatted number&lt;br /&gt;
:A filter is applied to the original number before saving to remove all non-dialable characters. (This means that only &amp;lt;code&amp;gt;0-9,+,*,#&amp;lt;/code&amp;gt; remain after that) This formatted version of the call number is saved in addition to the data set. (eg. +497031730090)&lt;br /&gt;
&lt;br /&gt;
If a number is searched for (reverse lookup), the cleaned version is searched for. Thus, it does not matter which decorative characters or formats are imported.&lt;br /&gt;
If an entry is displayed to the user, the originally entered call number (incl. decoration characters) is displayed.&lt;br /&gt;
&lt;br /&gt;
It is therefore best practice to import only international format numbers (Decorations can be imported as they will be removed anyway), as the PBX always converts the number into the international format for a reverse lookup, if the [[Reference13r1:Concept_Number_Adjustments_%28Dialing_Location%29 |dialing location]] was configured correct.&lt;br /&gt;
&lt;br /&gt;
==Assign unique IDs for contacts entries==&lt;br /&gt;
It is recommended to upload CSV files with an additional column &#039;&#039;extAnchor&#039;&#039;. The column extAnchor allows to identify individual entries uniquely and independent of renaming operations. The column &#039;&#039;extAnchor&#039;&#039; is supposed to contain an external unique database id, alike a guid. If &#039;&#039;extAnchor&#039;&#039; was provided the import procedure will perform an UPDATE of previously existing entries, instead of deleting and re-INSERTing the entries. Entries pinned on home are going to remain functional.&lt;br /&gt;
&lt;br /&gt;
==List of Attributes==&lt;br /&gt;
The list of currently available attributes for a contacts entry follows:&lt;br /&gt;
;extAnchor&lt;br /&gt;
: unique id identifying the entry within the database&lt;br /&gt;
;givenname&lt;br /&gt;
:First name&lt;br /&gt;
;sn&lt;br /&gt;
:Surname/Family name&lt;br /&gt;
;company&lt;br /&gt;
:Corporation&lt;br /&gt;
;displayname&lt;br /&gt;
:Name to be displayed&lt;br /&gt;
;email&lt;br /&gt;
:e.g. &#039;&#039;example@example.com&#039;&#039;&lt;br /&gt;
;telephonenumber&lt;br /&gt;
:Internationalized land-line telephone number, e.g.&#039;&#039; +49 7031 730090&#039;&#039;&lt;br /&gt;
;mobile&lt;br /&gt;
:Internationalized mobile telephone number&lt;br /&gt;
;homephone&lt;br /&gt;
:Internationalized home phone number&lt;br /&gt;
;facsimiletelephonenumber&lt;br /&gt;
:Internationalized fax number&lt;br /&gt;
;city&lt;br /&gt;
:City/Town, e.g. &#039;&#039;Milano&#039;&#039;&lt;br /&gt;
;street&lt;br /&gt;
;postalcode&lt;br /&gt;
;state&lt;br /&gt;
:Federal state, e.g. some US states: &#039;&#039;Ca, Wa, Fl&#039;&#039; &lt;br /&gt;
;country&lt;br /&gt;
:e.g. &#039;&#039;Deutschland, Italia&#039;&#039;&lt;br /&gt;
;privatecity&lt;br /&gt;
:Home address&lt;br /&gt;
;privatestreet&lt;br /&gt;
;privatepostalcode&lt;br /&gt;
;privatestate&lt;br /&gt;
;privatecountry&lt;br /&gt;
;title&lt;br /&gt;
:Academic title&lt;br /&gt;
;position&lt;br /&gt;
:Position within company, department&lt;br /&gt;
;department&lt;br /&gt;
;description&lt;br /&gt;
:Common description&lt;br /&gt;
;roomnumber&lt;br /&gt;
;info&lt;br /&gt;
:Common info&lt;br /&gt;
;url&lt;br /&gt;
:Company URL&lt;br /&gt;
;sip&lt;br /&gt;
:Dialable SIP address&lt;br /&gt;
;uuid&lt;br /&gt;
:A constant universal unique id as string. Internally assigned during entry creation.&lt;br /&gt;
&lt;br /&gt;
==List of Text-Indexable Attributes==&lt;br /&gt;
Attributes to be considered for the full-text index&lt;br /&gt;
*cn&lt;br /&gt;
*sn&lt;br /&gt;
*givenname&lt;br /&gt;
*company&lt;br /&gt;
*displayname&lt;br /&gt;
*city&lt;br /&gt;
*street&lt;br /&gt;
*postalcode&lt;br /&gt;
*country&lt;br /&gt;
*state&lt;br /&gt;
*private_city&lt;br /&gt;
*private_street&lt;br /&gt;
*private_postalcode&lt;br /&gt;
*private_country&lt;br /&gt;
*private_state&lt;br /&gt;
*title&lt;br /&gt;
*position&lt;br /&gt;
*department&lt;br /&gt;
*description&lt;br /&gt;
*roomnumber&lt;br /&gt;
*sip&lt;br /&gt;
&lt;br /&gt;
==Built-in LDAP Server==&lt;br /&gt;
The App incorporates a proprietary LDAP server functionality. The purpose of the LDAP server functionality is to service innovaphone LDAP clients, such as desk phones.&lt;br /&gt;
The LDAP server only supports a proprietary search by means of a meta attribute&amp;lt;ref&amp;gt;Meta attribute: Here an attribute with a special meaning and that is non-physical, not existing within the database&amp;lt;/ref&amp;gt;, whereby LDAP is just utilized as a transport vehicle for a user&#039;s search input one-to-one.&lt;br /&gt;
*E.g. a user searching for &#039;&#039;John Doe innovaphone&#039;&#039;&lt;br /&gt;
**Possible user input &#039;&#039;jo do inno&#039;&#039;&lt;br /&gt;
**Resulting LDAP filter &#039;&#039;(metaSearchText=jo do inno)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Important:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Note, that access to restricted/personal phone books requires the proprietary scheme within the LDAP client, mentioned above.&lt;br /&gt;
&lt;br /&gt;
Currently, this is available in the innovaphone IP phone LDAP clients from 13r3 on, but not on 3rd party devices nor our DECT gateways (IP120x). On these clients, only contact data in unrestricted phone books is searched.&lt;br /&gt;
&lt;br /&gt;
===Sample Phone Configuration, innovaphone===&lt;br /&gt;
Phone/User-X/Directories/External LDAP Server&lt;br /&gt;
;Enable: Active&lt;br /&gt;
;Use TLS: Active&lt;br /&gt;
;Server: &amp;lt;host adddress of App Platform&amp;gt;&lt;br /&gt;
;Port: &amp;lt;can be left empty&amp;gt;&lt;br /&gt;
;Username,Pw: &amp;lt;Credentials for LDAP Bind operation&amp;gt;&lt;br /&gt;
;Search Base: &#039;&#039;dc=entries&#039;&#039;&lt;br /&gt;
;Mode: &amp;lt;can be left on &amp;quot;basic&amp;quot;&amp;gt;&lt;br /&gt;
;Object Filter: &amp;lt;leave empty&amp;gt;&lt;br /&gt;
;Sort Results: Inactive&lt;br /&gt;
;Name Attributes: &#039;&#039;givenName,sn,company&#039;&#039;&lt;br /&gt;
;Number Attributes: &amp;lt;can be left empty&amp;gt;&lt;br /&gt;
;H323 ID Attribute:&#039;&#039; sip&#039;&#039;&lt;br /&gt;
;Detail Attributes: &#039;&#039;title,company,street,postalCode,city,country,email,url&#039;&#039;&lt;br /&gt;
;Meta Name Attribute: &#039;&#039;metaSearchText&#039;&#039;&lt;br /&gt;
;Meta Number Attribute: &#039;&#039;metaSearchNumber&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Personal Address Book Details =&lt;br /&gt;
Contact entries can be added, edited and deleted. It is also possible to create and maintain personal address book(s), as well as share them with other users or whole user groups.&lt;br /&gt;
&lt;br /&gt;
Only user/groups with sufficient rights, will be able to see other address books. An Access control list (acl) is used, to control these rights. &lt;br /&gt;
&lt;br /&gt;
Groups correspond to PBX-groups. The Contacts App gets to know only active PBX-group memberships.&lt;br /&gt;
&lt;br /&gt;
By default, only the user who created an address book, is able to see the content.&lt;br /&gt;
&lt;br /&gt;
==Maintain a Personal Address Book==&lt;br /&gt;
;Creating a Personal Address Book&lt;br /&gt;
:Click on &#039;&#039;&#039;+Contact&#039;&#039;&#039; and proceed. If no directory existed before, one will be automatically created by the name pattern &#039;&#039;&#039;Personal Directory: &amp;lt;user&#039;s short name&amp;gt;&#039;&#039;&#039;.&lt;br /&gt;
:Or click on the burger menu in the top right corner inside the Contacts-App, and there on the &#039;&#039;&#039;&amp;quot;Directories&amp;quot;&#039;&#039;&#039;. Now click on the &#039;&#039;&#039;&amp;quot;+&amp;quot;&#039;&#039;&#039;-Symbol, choose a suitable name and confirm your name via &#039;&#039;&#039;&amp;quot;Save&amp;quot;&#039;&#039;&#039; button. A new address book is created.&lt;br /&gt;
;Adding a new contact&lt;br /&gt;
Click on the &#039;&#039;&#039;&amp;quot;+&amp;quot;&#039;&#039;&#039;-Symbol in the top right corner inside the Contacts-App and select an address book, where you want the contact to be stored in. Now fill in the contact information (the fields &#039;&#039;&amp;quot;name&amp;quot;&#039;&#039; and &#039;&#039;&amp;quot;last name&amp;quot;&#039;&#039; &#039;&#039;&#039;have to be filled&#039;&#039;&#039;) and save it via &#039;&#039;&#039;&amp;quot;Save&amp;quot;&#039;&#039;&#039;-button.&lt;br /&gt;
;Editing an existing contact&lt;br /&gt;
Search for the contact you want to edit via the search box inside the Contacts-App. Click on the &#039;&#039;&#039;&amp;quot;Details&amp;quot;&#039;&#039;&#039;-field on the right of the contact entry. Now click on the bottom on the &#039;&#039;&#039;&amp;quot;Edit&amp;quot;&#039;&#039;&#039;-button, click on the entry you want to edit and after your change, save it via &#039;&#039;&#039;&amp;quot;Save&amp;quot;&#039;&#039;&#039;-button on the bottom.&lt;br /&gt;
;Delete an existing contact&lt;br /&gt;
Search for the contact you want to edit via the search box inside the Contacts-App. Click on the &#039;&#039;&#039;&amp;quot;Details&amp;quot;&#039;&#039;&#039;-field on the right of the contact entry. Now click on the bottom on the &#039;&#039;&#039;&amp;quot;Edit&amp;quot;&#039;&#039;&#039;-button, and on the &#039;&#039;&#039;&amp;quot;trashcan&amp;quot;&#039;&#039;&#039;-symbol at the top. After confirmation, the entry is deleted.&lt;br /&gt;
&lt;br /&gt;
==Sharing of Address Book==&lt;br /&gt;
;Share globally&lt;br /&gt;
*Either remove all rules from a personal directory. Such a configuration corresponds to pre-13r3 capabilities. Up to 13r2 there weren&#039;t any visibility rules available.&lt;br /&gt;
*Or make every PBX user an active member of a group e.g. &amp;quot;everybody&amp;quot; and add a directory rule for that group &amp;quot;everybody&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
;Share with single user(s)&lt;br /&gt;
Click on the menu in the top right corner inside the Contacts-App, click on &#039;&#039;&#039;&amp;quot;directories&amp;quot;&#039;&#039;&#039; and select a directory, you want to share.&lt;br /&gt;
&lt;br /&gt;
Now click on the &#039;&#039;&#039;&amp;quot;+&amp;quot;&#039;&#039;&#039;-symbol and select &#039;&#039;&#039;&amp;quot;User&amp;quot;&#039;&#039;&#039; as type. In the input field, you can enter and therefore filter for all available users. Select the user, whom you want to give access and select either if the user should have admin-rights or not. Now click on &#039;&#039;&#039;Ok&#039;&#039;&#039; and submit your change with another click on &#039;&#039;&#039;Ok&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
;Share with a group&lt;br /&gt;
Click on the menu in the top right corner inside the Contacts-App, click on &#039;&#039;&#039;&amp;quot;directories&amp;quot;&#039;&#039;&#039; and select a directory, you want to share.&lt;br /&gt;
&lt;br /&gt;
Now click on the &#039;&#039;&#039;&amp;quot;+&amp;quot;&#039;&#039;&#039;-symbol and select &#039;&#039;&#039;&amp;quot;Group&amp;quot;&#039;&#039;&#039; as type. In the input field, you can enter and therefore filter for all available PBX groups. Also select, if the user should have admin-rights or not. Now click on &#039;&#039;&#039;Ok&#039;&#039;&#039; and submit your change with another click on &#039;&#039;&#039;Ok&#039;&#039;&#039;-button.&lt;br /&gt;
&lt;br /&gt;
;Revoke of granted rights&lt;br /&gt;
You can also revoke previous granted rights by just clicking on the user/group at the access control list, and click on the &#039;&#039;&#039;trashcan&#039;&#039;&#039; symbol. Now submit your change with another click on &#039;&#039;&#039;Ok&#039;&#039;&#039;-button.&lt;br /&gt;
&lt;br /&gt;
==Upload a new Directory==&lt;br /&gt;
The Contacts Admin App allows uploading a CSV file as known from the 13r2 version (&#039;&#039;&#039;Hamburger/Import&#039;&#039;&#039;). In the course of an upload operation, a new directory will be created. The newly assigned directory name will be the name of the CSV file.&lt;br /&gt;
After uploading, the visibility setting of the new directory should be administrated as stated before under [[#Sharing_of_Address_Book|Sharing of Address Book]]&lt;br /&gt;
&lt;br /&gt;
==Terminology==&lt;br /&gt;
;ACL: Access control list. Refers the database table &#039;&#039;acl&#039;&#039; and rows/entries therein.&lt;br /&gt;
;Directory: Refers the database table &#039;&#039;dbs&#039;&#039; and rows/entries therein. All contact entries referencing a &#039;&#039;dbs&#039;&#039;-row make up the content of a directory.&lt;br /&gt;
;Address Book: Synonymous with &#039;&#039;Directory&#039;&#039;&lt;br /&gt;
;Contacts Admin: A user utilizing the Contacts Admin App (via App URL, ending with ../innovaphone-contacts-admin)&lt;br /&gt;
;Directory Admin: A user entitled the admin right for a directory. Either by user-wise or by group-wise ACL entry.&lt;br /&gt;
;Directory User/Viewer: A user entitled the viewing right for a directory. Either by user-wise or by group-wise ACL entry.&lt;br /&gt;
&lt;br /&gt;
==Database Changes==&lt;br /&gt;
Three tables realize the functionality for personal directories.&lt;br /&gt;
*Table &#039;&#039;&#039;dbs&#039;&#039;&#039;. Each row represents a directory. Two new columns &#039;&#039;displayname, sip&#039;&#039; where added.&lt;br /&gt;
**&#039;&#039;&#039;displayname&#039;&#039;&#039; Name display.&lt;br /&gt;
**&#039;&#039;&#039;sip&#039;&#039;&#039; Creator&#039;s sip name, if available.&lt;br /&gt;
*Table &#039;&#039;&#039;acl&#039;&#039;&#039;.New table acting as access control list. Each row references a directory as listed by table &#039;&#039;dbs&#039;&#039; and is going to grant view- and admin-right to a specific user or group. &lt;br /&gt;
**&#039;&#039;&#039;dbsid&#039;&#039;&#039; Reference into table dbs.&lt;br /&gt;
**&#039;&#039;&#039;name&#039;&#039;&#039; The name of a user or a group.&lt;br /&gt;
**&#039;&#039;&#039;acltype&#039;&#039;&#039; A numeric value: user(0), group(1)&lt;br /&gt;
**&#039;&#039;&#039;admin&#039;&#039;&#039; Granting edit right: admin(true), non-admin(false)&lt;br /&gt;
*Table &#039;&#039;&#039;entries&#039;&#039;&#039;. Each row within this pre-exisisting table represents a contact entry. The column &#039;&#039;dbsid&#039;&#039; informs about whether an entry belongs to a specific directory.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Excerpt for an additional directory &#039;&#039;Persönliches Verzeichnis: mst&#039;&#039; with one contact entry.&lt;br /&gt;
&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select * from dbs&amp;quot;&lt;br /&gt;
 id |                         uri                          |          displayname           | sip&lt;br /&gt;
----+------------------------------------------------------+--------------------------------+-----&lt;br /&gt;
  7 | file:///4eaae395-9971-40fb-9a05-dfae1d023f12?sip=mst | Persönliches Verzeichnis: mst  | mst      # Specification for directory (&#039;Persönliches Verzeichnis: mst&#039;)&lt;br /&gt;
&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select * from acl&amp;quot;&lt;br /&gt;
 id | dbsid | name | acltype | admin&lt;br /&gt;
----+-------+------+---------+-------&lt;br /&gt;
  5 |     7 | mst  |       0 | t              #user &#039;mst&#039; can view and edit directory with dbsid=7 (&#039;Persönliches Verzeichnis: mst&#039;)&lt;br /&gt;
&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select sn,givenname,company,id,dbsid from entries where dbsid=7&amp;quot;&lt;br /&gt;
    sn    | givenname |   company    |  id   | dbsid&lt;br /&gt;
----------+-----------+--------------+-------+-------&lt;br /&gt;
 Duck     | Dagobert  | Duck Corp.   | 51394 |     7   # main table entries contains 1 entry belonging to (&#039;Persönliches Verzeichnis: mst&#039;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Reverse Number Lookup for Personal Directories==&lt;br /&gt;
Queries into directories are access-checked by looking-up and enforcing ACL-rules. The information on whose name is being queried and which group memberships are taking effect is needed for this process.&lt;br /&gt;
&lt;br /&gt;
Websocket connections to the Contacts App service carry those infos within the SDK method &#039;&#039;AppWebsocketConnectComplete()&#039;&#039;. &lt;br /&gt;
LDAP connections pass this information within a proprietary LDAP control together with an LDAP searchRequest message. &lt;br /&gt;
&lt;br /&gt;
The PBX&#039;s centralized Reverse Lookup service (see &#039;&#039;PBX/Config/General/Reverse Lookup URL&#039;&#039;) does support this mechanism.  That is, for every LDAP searchRequest the affected user&#039;s name and active group memberships are going to be sent towards the Contacts App&#039;s LDAP server.&lt;br /&gt;
&lt;br /&gt;
See also [[{{NAMESPACE}}:Concept_Reverse_Lookup|concept article on reverse lookup]].&lt;br /&gt;
&lt;br /&gt;
=Upload Data by HTTP Post=&lt;br /&gt;
A CSV file can be uploaded by means of an HTTP POST request. &lt;br /&gt;
The following powershell script aims to demonstrate this procedure with the help of CURL&amp;lt;ref&amp;gt;For a windows distribution: e.g.: https://curl.haxx.se/download.html &amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;CURL is recommended(rather required), because it supports the simple POST mechanism with an initial tentative POST with the data length of 0, in order to get through the authentication phase&amp;lt;/ref&amp;gt;&lt;br /&gt;
The required user and password content corresponds to the configuration underneath &#039;&#039;&#039;PBX Manager/AP Contacts/Configuration/User(HTTP Post)&#039;&#039;&#039; and &#039;&#039;&#039;Password(HTTP Post)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;powershell&amp;quot;&amp;gt;&lt;br /&gt;
# csv.ps1&lt;br /&gt;
# Sample powershell script demonstrating how to HTTP POST a CSV file towards the Contacts App service.&lt;br /&gt;
# .\bin\curl must be present, e.g. from https://curl.haxx.se/download.html&lt;br /&gt;
# Examples:&lt;br /&gt;
# powershell -ExecutionPolicy Bypass -Command .\csv.ps1 -Dest 172.16.18.215 -File &amp;quot;.\myContacts.utf8&amp;quot; -User &amp;quot;contacts01&amp;quot; -Pw &amp;quot;pwd01&amp;quot; -Url &amp;quot;/example.com/contacts01/post/myContacts.utf8?op=csv&amp;quot;&lt;br /&gt;
&lt;br /&gt;
param(&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;Destination host&amp;quot;)]&lt;br /&gt;
	[string]$Dest,&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;Name of file to be POSTed&amp;quot;)]&lt;br /&gt;
	[string]$File,	&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;Authentication: User&amp;quot;)]&lt;br /&gt;
	[string]$User,&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;Authentication: Password&amp;quot;)]&lt;br /&gt;
	[string]$Pw,&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;URL, e.g.: /example.com/contacts01/post/myContacts.csv?op=csv&amp;amp;xml-stats=true&amp;quot;)]&lt;br /&gt;
	[string]$Url&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
Add-Type -AssemblyName System.Web&lt;br /&gt;
&lt;br /&gt;
$Uri = &amp;quot;http://&amp;quot; + $Dest + $Url&lt;br /&gt;
&lt;br /&gt;
function UploadToContacts {&lt;br /&gt;
	# Ensure file&#039;s there and has content&lt;br /&gt;
	if (!(Test-Path -Path $File)) {&lt;br /&gt;
		echo $File+&amp;quot; not downloaded!&amp;quot;&lt;br /&gt;
		exit 1&lt;br /&gt;
	}&lt;br /&gt;
	$lines = 0&lt;br /&gt;
	Get-Content $File |%{ $lines++ }&lt;br /&gt;
	echo &amp;quot;Lines of $File=$lines&amp;quot;&lt;br /&gt;
	if($lines -le 2) {&lt;br /&gt;
		echo &amp;quot;No Data to upload!&amp;quot;&lt;br /&gt;
		exit 1&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	$auth = &amp;quot;${User}:${Pw}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	echo &amp;quot;POSTing towards $Uri&amp;quot;&lt;br /&gt;
	.\bin\curl &amp;quot;--digest&amp;quot; -s -S --trace-time -u $auth -i -H &amp;quot;Content-Type:application/octet-stream&amp;quot; -X POST --data-binary &amp;quot;@${File}&amp;quot; &amp;quot;${Uri}&amp;quot;&lt;br /&gt;
	echo &amp;quot;POSTed towards $Dest&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
$timeStart = Get-Date&lt;br /&gt;
echo &amp;quot;===Begin: ${timeStart} ===&amp;quot;&lt;br /&gt;
UploadToContacts&lt;br /&gt;
$timeEnd = Get-Date&lt;br /&gt;
echo &amp;quot;===End: ${timeEnd} ===&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== The URL ==&lt;br /&gt;
The first part of the URL (&#039;&#039;example.com/contacts01&#039;&#039;) is the &#039;&#039;Webserver path&#039;&#039; configured for the &#039;&#039;Contacts&#039;&#039; instance in the &#039;&#039;App Platform Manager&#039;&#039;. It must be followed by the literal &amp;lt;code&amp;gt;post&amp;lt;/code&amp;gt;. The last part (&#039;&#039;myContacts.csv&#039;&#039;) can be chosen freely. &lt;br /&gt;
&lt;br /&gt;
Note that the last part of the URL used to post the file (&#039;&#039;myContacts.csv&#039;&#039; in the example above) needs to be chose carefully.  &#039;&#039;Contacts&#039;&#039; will remember this name as source for each of the uploaded entries. When the file is posted again (that is, when a new POST using this last URL part is done), &#039;&#039;Contacts&#039;&#039; will first delete all existing entries previously uploaded with this name and then add the new ones.&lt;br /&gt;
&lt;br /&gt;
=Troubleshooting=&lt;br /&gt;
To collect debugging data, activate the &#039;&#039;&#039;&#039;&#039;App&#039;&#039;&#039;&#039;&#039; and &#039;&#039;&#039;&#039;&#039;App WebSocket&#039;&#039;&#039;&#039;&#039; trace options at the contacts instance on the App Platform Manager. Now reproduce the issue and save the logfile.&lt;br /&gt;
&lt;br /&gt;
==Manually Deleting an uploaded File==&lt;br /&gt;
A directory is deleteable by clicking &#039;&#039;&#039;Hamburger/Directories/&amp;lt;directory&amp;gt;/Delete(Symbol: Trash-Can)&#039;&#039;&#039; and a progressing through the confirmation dialog afterwards.&lt;br /&gt;
&lt;br /&gt;
==Manually Deleting all Contacts==&lt;br /&gt;
Sometimes it may become necessary to delete all contacts from the database. This task can be accomplished by simply deleting the main table &#039;&#039;entries&#039;&#039;. The deletion will cascade from there into all sub-tables.&lt;br /&gt;
*The database name, here: &#039;&#039;innovaphone.com_contacts&#039;&#039; can be retrieved from the settings within in the App Manager for the Contacts App.&lt;br /&gt;
Establish an SSH-session by means of e.g. putty&amp;lt;ref&amp;gt;putty: https://putty.org&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#Login&lt;br /&gt;
#===================================================================&lt;br /&gt;
login as: admin&lt;br /&gt;
Using keyboard-interactive authentication.&lt;br /&gt;
Password:&lt;br /&gt;
&lt;br /&gt;
#Elevate to super-user rights, Command &#039;su&#039;&lt;br /&gt;
#===================================================================&lt;br /&gt;
admin@app-platform|/mnt/sda2/home/admin&amp;gt; su&lt;br /&gt;
Password:&lt;br /&gt;
&lt;br /&gt;
#List number of contacts in main table entries&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select count(*) from entries&amp;quot;&lt;br /&gt;
 count&lt;br /&gt;
-------&lt;br /&gt;
    94&lt;br /&gt;
(1 row)&lt;br /&gt;
&lt;br /&gt;
#Delete&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;delete from entries *&amp;quot;&lt;br /&gt;
DELETE 94&lt;br /&gt;
&lt;br /&gt;
#List number of contacts in main table entries&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select count(*) from entries&amp;quot;&lt;br /&gt;
 count&lt;br /&gt;
-------&lt;br /&gt;
     0&lt;br /&gt;
(1 row)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- =Known Problems=== --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Known Issues =&lt;br /&gt;
* [[Support:Contacts_on_HomeScreen_can%27t_be_open_after_modification_on_ContactsAPP | Contacts on HomeScreen can&#039;t be open after modification on ContactsAPP]]&lt;br /&gt;
* [[Support:Contacts_Upload_Fails_From_Within_myApps_Launcher | Contacts Upload Fails From Within myApps Launcher]]&lt;br /&gt;
* [[Support:Forward_search_shows_no_result | Forward Search shows &amp;quot;no result&amp;quot;]]&lt;br /&gt;
== DECT Phones and IP101/IP102 Cannot Access Personal Directories ==&lt;br /&gt;
DECT gateways and IP101/IP102 Phones do not support the mechanism required to query into directories with restricted access rules. Hence, DECT mobile phones and IP101/IP102 cannot search into such directories.&lt;br /&gt;
&lt;br /&gt;
== No automatic ACL update on name changes ==&lt;br /&gt;
If a users h323 name is changed, all ACL entries in address books, to which the user has rights, also need to be changed manually, since there is no automatic update between the PBX and the address books.&lt;br /&gt;
&lt;br /&gt;
= Related =&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r3:Concept_App_Service_Contacts&amp;diff=73752</id>
		<title>Reference13r3:Concept App Service Contacts</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r3:Concept_App_Service_Contacts&amp;diff=73752"/>
		<updated>2024-10-16T09:59:18Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Concept|Apps]]&lt;br /&gt;
= Applies To =&lt;br /&gt;
* App Contacts version 13r3&lt;br /&gt;
&lt;br /&gt;
= Overview =&lt;br /&gt;
The App Service Contacts is an App Service which can be installed on an innovaphone App Platform. It is used for information retrieval of a database of contact entries, as well as maintaining personal contact books.&lt;br /&gt;
&lt;br /&gt;
Inside Contacts, personal and general entries can be searched (forward lookup) or be used to resolve incoming numbers to their respective name (reverse lookup).&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
*Import: Semicolon (;) separated CSV file&lt;br /&gt;
*Database for contact entries: A user interface for retrieval purposes is available. &lt;br /&gt;
*API: Search API for other apps&lt;br /&gt;
*Edit Functionality: Contact entries are editable.&lt;br /&gt;
*Personal Address Book: Every user can maintain one or more personal address books.&lt;br /&gt;
*Access Right Management: Owners can maintain access privileges for single users or even groups of users, in order to control visibility of an address book.&lt;br /&gt;
&lt;br /&gt;
= Requirements =&lt;br /&gt;
innovaphone PBX and App Platform from on version 13r3.&lt;br /&gt;
==Upgrade Considerations==&lt;br /&gt;
As always, don&#039;t forget to backup an existing App Platform in prior. This 13r3 App Contacts does alter the underlying database scheme.&lt;br /&gt;
;13r3 App on 13r1 App Platform, 13r1 PBX:Doesn&#039;t work. This 13r3 Contacts App does not work on an 13r1 Application Platform/Environment.&lt;br /&gt;
;13r3 App on 13r2 App Platform, 13r2 PBX:The 13r3 Contacts App works with the restriction, that the reverse lookup for private address books doesn&#039;t work. For full feature set, also upgrade the App Platform and PBX to 13r3.&lt;br /&gt;
&lt;br /&gt;
=Apps=&lt;br /&gt;
=== Contacts App (innovaphone-contacts) ===&lt;br /&gt;
The regular app&lt;br /&gt;
=== Contacts Admin App (innovaphone-contacts-admin) ===&lt;br /&gt;
Features a menu (top-right) to manually upload a CSV file&lt;br /&gt;
=== Contacts Search API (innovaphone-contacts-searchapi) ===&lt;br /&gt;
This hidden app rovides a search API to other apps, e.g. for the Phone App&lt;br /&gt;
&lt;br /&gt;
= Concept =&lt;br /&gt;
General contact entries and entries for personal directories are stored within the same database. With the table &#039;&#039;&#039;acl&#039;&#039;&#039; which is acting as an access control list, restricted views and edit rights for personal directories can be granted.&lt;br /&gt;
&lt;br /&gt;
This way, only the owner of a personal directory (and granted user or groups) can see the content.&lt;br /&gt;
&lt;br /&gt;
==Number handling==&lt;br /&gt;
In principle, two versions of a phone number are always stored in the contacts database. &lt;br /&gt;
;Original Number&lt;br /&gt;
:This is the unchanged number imported by the user. This version includes all decorative characters, spaces, etc. (eg. +49-(7031) 730090)&lt;br /&gt;
;Formatted number&lt;br /&gt;
:A filter is applied to the original number before saving to remove all non-dialable characters. (This means that only &amp;lt;code&amp;gt;0-9,+,*,#&amp;lt;/code&amp;gt; remain after that) This formatted version of the call number is saved in addition to the data set. (eg. +497031730090)&lt;br /&gt;
&lt;br /&gt;
If a number is searched for (reverse lookup), the cleaned version is searched for. Thus, it does not matter which decorative characters or formats are imported.&lt;br /&gt;
If an entry is displayed to the user, the originally entered call number (incl. decoration characters) is displayed.&lt;br /&gt;
&lt;br /&gt;
It is therefore best practice to import only international format numbers (Decorations can be imported as they will be removed anyway), as the PBX always converts the number into the international format for a reverse lookup, if the [[Reference13r1:Concept_Number_Adjustments_%28Dialing_Location%29 |dialing location]] was configured correct.&lt;br /&gt;
&lt;br /&gt;
==Assign unique IDs for contacts entries==&lt;br /&gt;
It is recommended to upload CSV files with an additional column &#039;&#039;extAnchor&#039;&#039;. The column extAnchor allows to identify individual entries uniquely and independent of renaming operations. The column &#039;&#039;extAnchor&#039;&#039; is supposed to contain an external unique database id, alike a guid. If &#039;&#039;extAnchor&#039;&#039; was provided the import procedure will perform an UPDATE of previously existing entries, instead of deleting and re-INSERTing the entries. Entries pinned on home are going to remain functional.&lt;br /&gt;
&lt;br /&gt;
==List of Attributes==&lt;br /&gt;
The list of currently available attributes for a contacts entry follows:&lt;br /&gt;
;extAnchor&lt;br /&gt;
: unique id identifying the entry within the database&lt;br /&gt;
;givenname&lt;br /&gt;
:First name&lt;br /&gt;
;sn&lt;br /&gt;
:Surname/Family name&lt;br /&gt;
;company&lt;br /&gt;
:Corporation&lt;br /&gt;
;displayname&lt;br /&gt;
:Name to be displayed&lt;br /&gt;
;email&lt;br /&gt;
:e.g. &#039;&#039;example@example.com&#039;&#039;&lt;br /&gt;
;telephonenumber&lt;br /&gt;
:Internationalized land-line telephone number, e.g.&#039;&#039; +49 7031 730090&#039;&#039;&lt;br /&gt;
;mobile&lt;br /&gt;
:Internationalized mobile telephone number&lt;br /&gt;
;homephone&lt;br /&gt;
:Internationalized home phone number&lt;br /&gt;
;facsimiletelephonenumber&lt;br /&gt;
:Internationalized fax number&lt;br /&gt;
;city&lt;br /&gt;
:City/Town, e.g. &#039;&#039;Milano&#039;&#039;&lt;br /&gt;
;street&lt;br /&gt;
;postalcode&lt;br /&gt;
;state&lt;br /&gt;
:Federal state, e.g. some US states: &#039;&#039;Ca, Wa, Fl&#039;&#039; &lt;br /&gt;
;country&lt;br /&gt;
:e.g. &#039;&#039;Deutschland, Italia&#039;&#039;&lt;br /&gt;
;privatecity&lt;br /&gt;
:Home address&lt;br /&gt;
;privatestreet&lt;br /&gt;
;privatepostalcode&lt;br /&gt;
;privatestate&lt;br /&gt;
;privatecountry&lt;br /&gt;
;title&lt;br /&gt;
:Academic title&lt;br /&gt;
;position&lt;br /&gt;
:Position within company, department&lt;br /&gt;
;department&lt;br /&gt;
;description&lt;br /&gt;
:Common description&lt;br /&gt;
;roomnumber&lt;br /&gt;
;info&lt;br /&gt;
:Common info&lt;br /&gt;
;url&lt;br /&gt;
:Company URL&lt;br /&gt;
;sip&lt;br /&gt;
:Dialable SIP address&lt;br /&gt;
&lt;br /&gt;
==List of Text-Indexable Attributes==&lt;br /&gt;
Attributes to be considered for the full-text index&lt;br /&gt;
*cn&lt;br /&gt;
*sn&lt;br /&gt;
*givenname&lt;br /&gt;
*company&lt;br /&gt;
*displayname&lt;br /&gt;
*city&lt;br /&gt;
*street&lt;br /&gt;
*postalcode&lt;br /&gt;
*country&lt;br /&gt;
*state&lt;br /&gt;
*private_city&lt;br /&gt;
*private_street&lt;br /&gt;
*private_postalcode&lt;br /&gt;
*private_country&lt;br /&gt;
*private_state&lt;br /&gt;
*title&lt;br /&gt;
*position&lt;br /&gt;
*department&lt;br /&gt;
*description&lt;br /&gt;
*roomnumber&lt;br /&gt;
*sip&lt;br /&gt;
&lt;br /&gt;
==Built-in LDAP Server==&lt;br /&gt;
The App incorporates a proprietary LDAP server functionality. The purpose of the LDAP server functionality is to service innovaphone LDAP clients, such as desk phones.&lt;br /&gt;
The LDAP server only supports a proprietary search by means of a meta attribute&amp;lt;ref&amp;gt;Meta attribute: Here an attribute with a special meaning and that is non-physical, not existing within the database&amp;lt;/ref&amp;gt;, whereby LDAP is just utilized as a transport vehicle for a user&#039;s search input one-to-one.&lt;br /&gt;
*E.g. a user searching for &#039;&#039;John Doe innovaphone&#039;&#039;&lt;br /&gt;
**Possible user input &#039;&#039;jo do inno&#039;&#039;&lt;br /&gt;
**Resulting LDAP filter &#039;&#039;(metaSearchText=jo do inno)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Important:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Note, that access to restricted/personal phone books requires the proprietary scheme within the LDAP client, mentioned above.&lt;br /&gt;
&lt;br /&gt;
Currently, this is available in the innovaphone IP phone LDAP clients from 13r3 on, but not on 3rd party devices nor our DECT gateways (IP120x). On these clients, only contact data in unrestricted phone books is searched.&lt;br /&gt;
&lt;br /&gt;
===Sample Phone Configuration, innovaphone===&lt;br /&gt;
Phone/User-X/Directories/External LDAP Server&lt;br /&gt;
;Enable: Active&lt;br /&gt;
;Use TLS: Active&lt;br /&gt;
;Server: &amp;lt;host adddress of App Platform&amp;gt;&lt;br /&gt;
;Port: &amp;lt;can be left empty&amp;gt;&lt;br /&gt;
;Username,Pw: &amp;lt;Credentials for LDAP Bind operation&amp;gt;&lt;br /&gt;
;Search Base: &#039;&#039;dc=entries&#039;&#039;&lt;br /&gt;
;Mode: &amp;lt;can be left on &amp;quot;basic&amp;quot;&amp;gt;&lt;br /&gt;
;Object Filter: &amp;lt;leave empty&amp;gt;&lt;br /&gt;
;Sort Results: Inactive&lt;br /&gt;
;Name Attributes: &#039;&#039;givenName,sn,company&#039;&#039;&lt;br /&gt;
;Number Attributes: &amp;lt;can be left empty&amp;gt;&lt;br /&gt;
;H323 ID Attribute:&#039;&#039; sip&#039;&#039;&lt;br /&gt;
;Detail Attributes: &#039;&#039;title,company,street,postalCode,city,country,email,url&#039;&#039;&lt;br /&gt;
;Meta Name Attribute: &#039;&#039;metaSearchText&#039;&#039;&lt;br /&gt;
;Meta Number Attribute: &#039;&#039;metaSearchNumber&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Personal Address Book Details =&lt;br /&gt;
With version 13r3 it is now possible, to add, editing and delete contacts. It is also possible to create and maintain personal address book(s), as well as share them with other users or whole user groups.&lt;br /&gt;
&lt;br /&gt;
Only user/groups with sufficient rights, will be able to see other address books. An Access control list (acl) is used, to control these rights. &lt;br /&gt;
&lt;br /&gt;
Groups correspond to PBX-groups. The Contacts App gets to know only active PBX-group memberships.&lt;br /&gt;
&lt;br /&gt;
By default, only the user who created an address book, is able to see the content.&lt;br /&gt;
&lt;br /&gt;
==Maintain a Personal Address Book==&lt;br /&gt;
;Creating a Personal Address Book&lt;br /&gt;
Click on the burger menu in the top right corner inside the Contacts-App, and there on the &#039;&#039;&#039;&amp;quot;Directories&amp;quot;&#039;&#039;&#039;. Now click on the &#039;&#039;&#039;&amp;quot;+&amp;quot;&#039;&#039;&#039;-Symbol, choose a suitable name and confirm your name via &#039;&#039;&#039;&amp;quot;Save&amp;quot;&#039;&#039;&#039; button. A new address book is created.&lt;br /&gt;
;Adding a new contact&lt;br /&gt;
Click on the &#039;&#039;&#039;&amp;quot;+&amp;quot;&#039;&#039;&#039;-Symbol in the top right corner inside the Contacts-App and select an address book, where you want the contact to be stored in. Now fill in the contact information (the fields &#039;&#039;&amp;quot;name&amp;quot;&#039;&#039; and &#039;&#039;&amp;quot;last name&amp;quot;&#039;&#039; &#039;&#039;&#039;have to be filled&#039;&#039;&#039;) and save it via &#039;&#039;&#039;&amp;quot;Save&amp;quot;&#039;&#039;&#039;-button.&lt;br /&gt;
;Editing an existing contact&lt;br /&gt;
Search for the contact you want to edit via the search box inside the Contacts-App. Click on the &#039;&#039;&#039;&amp;quot;Details&amp;quot;&#039;&#039;&#039;-field on the right of the contact entry. Now click on the bottom on the &#039;&#039;&#039;&amp;quot;Edit&amp;quot;&#039;&#039;&#039;-button, click on the entry you want to edit and after your change, save it via &#039;&#039;&#039;&amp;quot;Save&amp;quot;&#039;&#039;&#039;-button on the bottom.&lt;br /&gt;
;Delete an existing contact&lt;br /&gt;
Search for the contact you want to edit via the search box inside the Contacts-App. Click on the &#039;&#039;&#039;&amp;quot;Details&amp;quot;&#039;&#039;&#039;-field on the right of the contact entry. Now click on the bottom on the &#039;&#039;&#039;&amp;quot;Edit&amp;quot;&#039;&#039;&#039;-button, and on the &#039;&#039;&#039;&amp;quot;trashcan&amp;quot;&#039;&#039;&#039;-symbol at the top. After confirmation, the entry is deleted.&lt;br /&gt;
&lt;br /&gt;
==Sharing of Address Book==&lt;br /&gt;
;Share globally&lt;br /&gt;
*Either remove all rules from a personal directory. Such a configuration corresponds to pre-13r3 capabilities. Up to 13r2 there weren&#039;t any visibility rules available.&lt;br /&gt;
*Or make every PBX user an active member of a group e.g. &amp;quot;everybody&amp;quot; and add a directory rule for that group &amp;quot;everybody&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
;Share with single user(s)&lt;br /&gt;
Click on the menu in the top right corner inside the Contacts-App, click on &#039;&#039;&#039;&amp;quot;directories&amp;quot;&#039;&#039;&#039; and select a directory, you want to share.&lt;br /&gt;
&lt;br /&gt;
Now click on the &#039;&#039;&#039;&amp;quot;+&amp;quot;&#039;&#039;&#039;-symbol and select &#039;&#039;&#039;&amp;quot;User&amp;quot;&#039;&#039;&#039; as type. In the input field, you can enter and therefore filter for all available users. Select the user, whom you want to give access and select either if the user should have admin-rights or not. Now click on &#039;&#039;&#039;Ok&#039;&#039;&#039; and submit your change with another click on &#039;&#039;&#039;Ok&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
;Share with a group&lt;br /&gt;
Click on the menu in the top right corner inside the Contacts-App, click on &#039;&#039;&#039;&amp;quot;directories&amp;quot;&#039;&#039;&#039; and select a directory, you want to share.&lt;br /&gt;
&lt;br /&gt;
Now click on the &#039;&#039;&#039;&amp;quot;+&amp;quot;&#039;&#039;&#039;-symbol and select &#039;&#039;&#039;&amp;quot;Group&amp;quot;&#039;&#039;&#039; as type. In the input field, you can enter and therefore filter for all available PBX groups. Also select, if the user should have admin-rights or not. Now click on &#039;&#039;&#039;Ok&#039;&#039;&#039; and submit your change with another click on &#039;&#039;&#039;Ok&#039;&#039;&#039;-button.&lt;br /&gt;
&lt;br /&gt;
;Revoke of granted rights&lt;br /&gt;
You can also revoke previous granted rights by just clicking on the user/group at the access control list, and click on the &#039;&#039;&#039;trashcan&#039;&#039;&#039; symbol. Now submit your change with another click on &#039;&#039;&#039;Ok&#039;&#039;&#039;-button.&lt;br /&gt;
&lt;br /&gt;
==Upload a new Directory==&lt;br /&gt;
The Contacts Admin App allows uploading a CSV file as known from the 13r2 version (&#039;&#039;&#039;Hamburger/Import&#039;&#039;&#039;). In the course of an upload operation, a new directory will be created. The newly assigned directory name will be the name of the CSV file.&lt;br /&gt;
After uploading, the visibility setting of the new directory should be administrated as stated before under [[#Sharing_of_Address_Book|Sharing of Address Book]]&lt;br /&gt;
&lt;br /&gt;
==Terminology==&lt;br /&gt;
;ACL: Access control list. Refers the database table &#039;&#039;acl&#039;&#039; and rows/entries therein.&lt;br /&gt;
;Directory: Refers the database table &#039;&#039;dbs&#039;&#039; and rows/entries therein. All contact entries referencing a &#039;&#039;dbs&#039;&#039;-row make up the content of a directory.&lt;br /&gt;
;Address Book: Synonymous with &#039;&#039;Directory&#039;&#039;&lt;br /&gt;
;Contacts Admin: A user utilizing the Contacts Admin App (via App URL, ending with ../innovaphone-contacts-admin)&lt;br /&gt;
;Directory Admin: A user entitled the admin right for a directory. Either by user-wise or by group-wise ACL entry.&lt;br /&gt;
;Directory User/Viewer: A user entitled the viewing right for a directory. Either by user-wise or by group-wise ACL entry.&lt;br /&gt;
&lt;br /&gt;
==Database Changes==&lt;br /&gt;
Three tables realize the functionality for personal directories.&lt;br /&gt;
*Table &#039;&#039;&#039;dbs&#039;&#039;&#039;. Each row represents a directory. Two new columns &#039;&#039;displayname, sip&#039;&#039; where added.&lt;br /&gt;
**&#039;&#039;&#039;displayname&#039;&#039;&#039; Name display.&lt;br /&gt;
**&#039;&#039;&#039;sip&#039;&#039;&#039; Creator&#039;s sip name, if available.&lt;br /&gt;
*Table &#039;&#039;&#039;acl&#039;&#039;&#039;.New table acting as access control list. Each row references a directory as listed by table &#039;&#039;dbs&#039;&#039; and is going to grant view- and admin-right to a specific user or group. &lt;br /&gt;
**&#039;&#039;&#039;dbsid&#039;&#039;&#039; Reference into table dbs.&lt;br /&gt;
**&#039;&#039;&#039;name&#039;&#039;&#039; The name of a user or a group.&lt;br /&gt;
**&#039;&#039;&#039;acltype&#039;&#039;&#039; A numeric value: user(0), group(1)&lt;br /&gt;
**&#039;&#039;&#039;admin&#039;&#039;&#039; Granting edit right: admin(true), non-admin(false)&lt;br /&gt;
*Table &#039;&#039;&#039;entries&#039;&#039;&#039;. Each row within this pre-exisisting table represents a contact entry. The column &#039;&#039;dbsid&#039;&#039; informs about whether an entry belongs to a specific directory.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Excerpt for an additional directory &#039;&#039;Persönliches Verzeichnis: mst&#039;&#039; with one contact entry.&lt;br /&gt;
&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select * from dbs&amp;quot;&lt;br /&gt;
 id |                         uri                          |          displayname           | sip&lt;br /&gt;
----+------------------------------------------------------+--------------------------------+-----&lt;br /&gt;
  7 | file:///4eaae395-9971-40fb-9a05-dfae1d023f12?sip=mst | Persönliches Verzeichnis: mst  | mst      # Specification for directory (&#039;Persönliches Verzeichnis: mst&#039;)&lt;br /&gt;
&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select * from acl&amp;quot;&lt;br /&gt;
 id | dbsid | name | acltype | admin&lt;br /&gt;
----+-------+------+---------+-------&lt;br /&gt;
  5 |     7 | mst  |       0 | t              #user &#039;mst&#039; can view and edit directory with dbsid=7 (&#039;Persönliches Verzeichnis: mst&#039;)&lt;br /&gt;
&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select sn,givenname,company,id,dbsid from entries where dbsid=7&amp;quot;&lt;br /&gt;
    sn    | givenname |   company    |  id   | dbsid&lt;br /&gt;
----------+-----------+--------------+-------+-------&lt;br /&gt;
 Duck     | Dagobert  | Duck Corp.   | 51394 |     7   # main table entries contains 1 entry belonging to (&#039;Persönliches Verzeichnis: mst&#039;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Reverse Number Lookup for Personal Directories==&lt;br /&gt;
Queries into directories are access-checked by looking-up and enforcing ACL-rules. The information on whose name is being queried and which group memberships are taking effect is needed for this process.&lt;br /&gt;
&lt;br /&gt;
Websocket connections to the Contacts App service carry those infos within the SDK method &#039;&#039;AppWebsocketConnectComplete()&#039;&#039;. &lt;br /&gt;
LDAP connections pass this information within a proprietary LDAP control together with an LDAP searchRequest message. &lt;br /&gt;
&lt;br /&gt;
The PBX&#039;s centralized Reverse Lookup service (see &#039;&#039;PBX/Config/General/Reverse Lookup URL&#039;&#039;) does support this mechanism.  That is, for every LDAP searchRequest the affected user&#039;s name and active group memberships are going to be sent towards the Contacts App&#039;s LDAP server.&lt;br /&gt;
&lt;br /&gt;
See also [[{{NAMESPACE}}:Concept_Reverse_Lookup|concept article on reverse lookup]].&lt;br /&gt;
&lt;br /&gt;
=Upload Data by HTTP Post=&lt;br /&gt;
A CSV file can be uploaded by means of an HTTP POST request. &lt;br /&gt;
The following powershell script aims to demonstrate this procedure with the help of CURL&amp;lt;ref&amp;gt;For a windows distribution: e.g.: https://curl.haxx.se/download.html &amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;CURL is recommended(rather required), because it supports the simple POST mechanism with an initial tentative POST with the data length of 0, in order to get through the authentication phase&amp;lt;/ref&amp;gt;&lt;br /&gt;
The required user and password content corresponds to the configuration underneath &#039;&#039;&#039;PBX Manager/AP Contacts/Configuration/User(HTTP Post)&#039;&#039;&#039; and &#039;&#039;&#039;Password(HTTP Post)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;powershell&amp;quot;&amp;gt;&lt;br /&gt;
# csv.ps1&lt;br /&gt;
# Sample powershell script demonstrating how to HTTP POST a CSV file towards the Contacts App service.&lt;br /&gt;
# .\bin\curl must be present, e.g. from https://curl.haxx.se/download.html&lt;br /&gt;
# Examples:&lt;br /&gt;
# powershell -ExecutionPolicy Bypass -Command .\csv.ps1 -Dest 172.16.18.215 -File &amp;quot;.\myContacts.utf8&amp;quot; -User &amp;quot;contacts01&amp;quot; -Pw &amp;quot;pwd01&amp;quot; -Url &amp;quot;/example.com/contacts01/post/myContacts.utf8?op=csv&amp;quot;&lt;br /&gt;
&lt;br /&gt;
param(&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;Destination host&amp;quot;)]&lt;br /&gt;
	[string]$Dest,&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;Name of file to be POSTed&amp;quot;)]&lt;br /&gt;
	[string]$File,	&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;Authentication: User&amp;quot;)]&lt;br /&gt;
	[string]$User,&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;Authentication: Password&amp;quot;)]&lt;br /&gt;
	[string]$Pw,&lt;br /&gt;
	[Parameter(Mandatory=$false, HelpMessage=&amp;quot;URL, e.g.: /example.com/contacts01/post/myContacts.csv?op=csv&amp;amp;xml-stats=true&amp;quot;)]&lt;br /&gt;
	[string]$Url&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
Add-Type -AssemblyName System.Web&lt;br /&gt;
&lt;br /&gt;
$Uri = &amp;quot;http://&amp;quot; + $Dest + $Url&lt;br /&gt;
&lt;br /&gt;
function UploadToContacts {&lt;br /&gt;
	# Ensure file&#039;s there and has content&lt;br /&gt;
	if (!(Test-Path -Path $File)) {&lt;br /&gt;
		echo $File+&amp;quot; not downloaded!&amp;quot;&lt;br /&gt;
		exit 1&lt;br /&gt;
	}&lt;br /&gt;
	$lines = 0&lt;br /&gt;
	Get-Content $File |%{ $lines++ }&lt;br /&gt;
	echo &amp;quot;Lines of $File=$lines&amp;quot;&lt;br /&gt;
	if($lines -le 2) {&lt;br /&gt;
		echo &amp;quot;No Data to upload!&amp;quot;&lt;br /&gt;
		exit 1&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	$auth = &amp;quot;${User}:${Pw}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	echo &amp;quot;POSTing towards $Uri&amp;quot;&lt;br /&gt;
	.\bin\curl &amp;quot;--digest&amp;quot; -s -S --trace-time -u $auth -i -H &amp;quot;Content-Type:application/octet-stream&amp;quot; -X POST --data-binary &amp;quot;@${File}&amp;quot; &amp;quot;${Uri}&amp;quot;&lt;br /&gt;
	echo &amp;quot;POSTed towards $Dest&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
$timeStart = Get-Date&lt;br /&gt;
echo &amp;quot;===Begin: ${timeStart} ===&amp;quot;&lt;br /&gt;
UploadToContacts&lt;br /&gt;
$timeEnd = Get-Date&lt;br /&gt;
echo &amp;quot;===End: ${timeEnd} ===&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== The URL ==&lt;br /&gt;
The first part of the URL (&#039;&#039;example.com/contacts01&#039;&#039;) is the &#039;&#039;Webserver path&#039;&#039; configured for the &#039;&#039;Contacts&#039;&#039; instance in the &#039;&#039;App Platform Manager&#039;&#039;. It must be followed by the literal &amp;lt;code&amp;gt;post&amp;lt;/code&amp;gt;. The last part (&#039;&#039;myContacts.csv&#039;&#039;) can be chosen freely. &lt;br /&gt;
&lt;br /&gt;
Note that the last part of the URL used to post the file (&#039;&#039;myContacts.csv&#039;&#039; in the example above) needs to be chose carefully.  &#039;&#039;Contacts&#039;&#039; will remember this name as source for each of the uploaded entries. When the file is posted again (that is, when a new POST using this last URL part is done), &#039;&#039;Contacts&#039;&#039; will first delete all existing entries previously uploaded with this name and then add the new ones.&lt;br /&gt;
&lt;br /&gt;
=Troubleshooting=&lt;br /&gt;
To collect debugging data, activate the &#039;&#039;&#039;&#039;&#039;App&#039;&#039;&#039;&#039;&#039; and &#039;&#039;&#039;&#039;&#039;App WebSocket&#039;&#039;&#039;&#039;&#039; trace options at the contacts instance on the App Platform Manager. Now reproduce the issue and save the logfile.&lt;br /&gt;
&lt;br /&gt;
==Manually Deleting an uploaded File==&lt;br /&gt;
If multiple files or multiple versions of a CSV file were uploaded, it might not be clear how to delete an old data set. Here is an example for how to accomplish a deletion of a particular data set related to an imported CSV file:&lt;br /&gt;
*2 Files were previously imported&lt;br /&gt;
**&#039;&#039;allcontacts.csv&#039;&#039;&lt;br /&gt;
**&#039;&#039;brs%20testimport.csv&#039;&#039;&lt;br /&gt;
*The file &#039;&#039;brs%20testimport.csv&#039;&#039; shall be deleted&lt;br /&gt;
*Hints&lt;br /&gt;
**Within the Contacts database, the table &#039;&#039;dbs&#039;&#039; contains the names of files once imported.&lt;br /&gt;
**The database name, here: &#039;&#039;innovaphone.com_contacts&#039;&#039; can be retrieved from the settings within in the App Manager for the Contacts App.&lt;br /&gt;
Establish an SSH-session by means of e.g. putty&amp;lt;ref&amp;gt;putty: https://putty.org&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#Login&lt;br /&gt;
#===================================================================&lt;br /&gt;
login as: admin&lt;br /&gt;
Using keyboard-interactive authentication.&lt;br /&gt;
Password:&lt;br /&gt;
&lt;br /&gt;
#Elevate to super-user rights, Command &#039;su&#039;&lt;br /&gt;
#===================================================================&lt;br /&gt;
admin@app-platform|/mnt/sda2/home/admin&amp;gt; su&lt;br /&gt;
Password:&lt;br /&gt;
&lt;br /&gt;
#Command &#039;psql&#039;. Printing the table &#039;dbs&#039;. Contains 2 file names.&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select * from dbs&amp;quot;&lt;br /&gt;
 id |         uri&lt;br /&gt;
----+----------------------&lt;br /&gt;
  1 | allcontacts.csv&lt;br /&gt;
  5 | brs%20testimport.csv&lt;br /&gt;
(2 rows)&lt;br /&gt;
&lt;br /&gt;
#Delete the file &amp;quot;brs%20testimport.csv&amp;quot; via its table-ID 5.&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;delete from dbs where id=5&amp;quot;&lt;br /&gt;
DELETE 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#Printing the table &#039;dbs&#039;. Contains 1 file name.&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select * from dbs&amp;quot;&lt;br /&gt;
 id |       uri&lt;br /&gt;
----+-----------------&lt;br /&gt;
  1 | allcontacts.csv&lt;br /&gt;
(1 row)&lt;br /&gt;
&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Manually Deleting all Contacts==&lt;br /&gt;
Sometimes it may become necessary to delete all contacts from the database. This task can be accomplished by simply deleting the main table &#039;&#039;entries&#039;&#039;. The deletion will cascade from there into all sub-tables.&lt;br /&gt;
*The database name, here: &#039;&#039;innovaphone.com_contacts&#039;&#039; can be retrieved from the settings within in the App Manager for the Contacts App.&lt;br /&gt;
Establish an SSH-session by means of e.g. putty&amp;lt;ref&amp;gt;putty: https://putty.org&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#Login&lt;br /&gt;
#===================================================================&lt;br /&gt;
login as: admin&lt;br /&gt;
Using keyboard-interactive authentication.&lt;br /&gt;
Password:&lt;br /&gt;
&lt;br /&gt;
#Elevate to super-user rights, Command &#039;su&#039;&lt;br /&gt;
#===================================================================&lt;br /&gt;
admin@app-platform|/mnt/sda2/home/admin&amp;gt; su&lt;br /&gt;
Password:&lt;br /&gt;
&lt;br /&gt;
#List number of contacts in main table entries&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select count(*) from entries&amp;quot;&lt;br /&gt;
 count&lt;br /&gt;
-------&lt;br /&gt;
    94&lt;br /&gt;
(1 row)&lt;br /&gt;
&lt;br /&gt;
#Delete&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;delete from entries *&amp;quot;&lt;br /&gt;
DELETE 94&lt;br /&gt;
&lt;br /&gt;
#List number of contacts in main table entries&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;select count(*) from entries&amp;quot;&lt;br /&gt;
 count&lt;br /&gt;
-------&lt;br /&gt;
     0&lt;br /&gt;
(1 row)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Manually Exporting all Contacts==&lt;br /&gt;
Sometimes it may become necessary to export all contacts from the database. &lt;br /&gt;
This task can be accomplished by reading the main table &#039;&#039;entries&#039;&#039;, separate attributes by ; and store the result in a given csv-file.&lt;br /&gt;
The csv-file has to be located in a separate folder with appropriate access rights.&lt;br /&gt;
*The database name, here: &#039;&#039;innovaphone.com_contacts&#039;&#039; can be retrieved from the settings within in the App Manager for the Contacts App.&lt;br /&gt;
Establish an SSH-session by means of e.g. putty&amp;lt;ref&amp;gt;putty: https://putty.org&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#Login&lt;br /&gt;
#===================================================================&lt;br /&gt;
login as: admin&lt;br /&gt;
Using keyboard-interactive authentication.&lt;br /&gt;
Password:&lt;br /&gt;
&lt;br /&gt;
#Elevate to super-user rights, Command &#039;su&#039;&lt;br /&gt;
#===================================================================&lt;br /&gt;
admin@app-platform|/mnt/sda2/home/admin&amp;gt; su&lt;br /&gt;
Password:&lt;br /&gt;
&lt;br /&gt;
#create new folder export and grant access rights &lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; mkdir export&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; chmod 777 export&lt;br /&gt;
&lt;br /&gt;
#Retrieve all database entries, separate them by ; and store in file&lt;br /&gt;
#===================================================================&lt;br /&gt;
root@app-platform|/mnt/sda2/home/admin&amp;gt; psql -d &amp;quot;innovaphone.com_contacts&amp;quot; -c &amp;quot;copy entries to &#039;/mnt/sda2/home/admin/export/contacts.csv&#039; delimiter &#039;;&#039; CSV HEADER&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The generated csv-file can be downloaded by use of an sftp-client (e.g. WinSCP) and login to the AP with admin credentials.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- =Known Problems=== --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Known Issues =&lt;br /&gt;
* [[Support:Contacts_on_HomeScreen_can%27t_be_open_after_modification_on_ContactsAPP | Contacts on HomeScreen can&#039;t be open after modification on ContactsAPP]]&lt;br /&gt;
* [[Support:Contacts_Upload_Fails_From_Within_myApps_Launcher | Contacts Upload Fails From Within myApps Launcher]]&lt;br /&gt;
* [[Support:Forward_search_shows_no_result | Forward Search shows &amp;quot;no result&amp;quot;]]&lt;br /&gt;
== DECT Phones and IP101/IP102 Cannot Access Personal Directories ==&lt;br /&gt;
DECT gateways and IP101/IP102 Phones do not support the mechanism required to query into directories with restricted access rules. Hence, DECT mobile phones and IP101/IP102 cannot search into such directories.&lt;br /&gt;
&lt;br /&gt;
== No automatic ACL update on name changes ==&lt;br /&gt;
If a users h323 name is changed, all ACL entries in address books, to which the user has rights, also need to be changed manually, since there is no automatic update between the PBX and the address books.&lt;br /&gt;
&lt;br /&gt;
= Related =&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference12r2:Concept_Softwarephone&amp;diff=63283</id>
		<title>Reference12r2:Concept Softwarephone</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference12r2:Concept_Softwarephone&amp;diff=63283"/>
		<updated>2022-09-06T08:44:22Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Concept|{{PAGENAME}}]]&lt;br /&gt;
&lt;br /&gt;
= General =&lt;br /&gt;
&lt;br /&gt;
Innovaphone SoftwarePhone  is the implementation of innovaphones HW phones software as a Windows process. So all the features native to the hardwarephones are present in SoftwarePhone  as well. SoftwarePhone  has no UI, it is operated via myPBX or 3rd Party CTI client (ex: Estos Procall).&lt;br /&gt;
&lt;br /&gt;
=System Requirements=&lt;br /&gt;
The innovaphone SoftwarePhone requires:&lt;br /&gt;
*Windows 7 or higher&lt;br /&gt;
*innovaphone PBX with SoftwarePhones&amp;lt;v&amp;gt; License.&lt;br /&gt;
*innovaphone myPBX UC-Client as frontend with myPBX- or UC-license&lt;br /&gt;
&lt;br /&gt;
= Installation =&lt;br /&gt;
&lt;br /&gt;
Prior to installing the  10.00  Version of  innovaphone SoftwarePhone  an eventually installed 9.00 version must be manually deinstalled. From version 10.00 to 12r1 subsequent releases can be updated without first deinstalling the older version. From 12r2 on prior versions must be manually deinstalled.&lt;br /&gt;
When updating the installation, the previous configuration (if existing) is reused. Otherwise a default configuration is installed.&lt;br /&gt;
There are 2 ways to install Softwarephone:&lt;br /&gt;
&lt;br /&gt;
* SetupSWPhone.exe. This is the preferred method if no installation parameters are required. It automatically installs all 3rd party SW to operate the headsets&lt;br /&gt;
* softwarephone.msi AND SpokesSDKNativeRuntime.msi. If the Softwarephone installation needs to be parametrized via Orca first install SpokesSDKNativeRuntime.msi, then&lt;br /&gt;
softwarephone.msi&lt;br /&gt;
* In our newest download packet, if you aren&#039;t using our exe file please install first HubSDKNativeRuntime.msi, Sennheiser_SDK_v7.5.9600.msi and than softwarephone.msi. Delete first the old pakets and install than the new ones. &lt;br /&gt;
 &lt;br /&gt;
The following items are installed:&lt;br /&gt;
&lt;br /&gt;
* SoftwarePhone .exe and related files (dll) in Program files (x86)\innovaphone\SoftwarePhone &lt;br /&gt;
* Hid.tbl (the code definitoins of supported USB headsets) in Program files (x86) \innovaphone\SoftwarePhone &lt;br /&gt;
* The config files „swphone_config.cfg“ and „swphone_command.cfg” in the User Roaming directory (if no previous configuration is located there, otherwise the old configuration is used, Roaming Directory Location : &amp;lt;drive&amp;gt;:\Users\&amp;lt;User&amp;gt;\AppData\Roaming\innovaphone\SoftwarePhone\)&lt;br /&gt;
&lt;br /&gt;
Installation Process:&lt;br /&gt;
&lt;br /&gt;
* http port 80 ist checked to be available as the SoftwarePhone ’s web configuration port. If not free, a search starting at port 10006 is executed to find a free port. The URL file, containing the configuration  servers web @ is adjusted to the determined free port&lt;br /&gt;
* SoftwarePhone  is startet.&lt;br /&gt;
&lt;br /&gt;
Resetting to defaults:&lt;br /&gt;
&lt;br /&gt;
*Resetting to default configuration could be done by deleting the config files in the Roaming Directory.&lt;br /&gt;
&lt;br /&gt;
Unattended Installation of softwarephone for ALLUSERS:&lt;br /&gt;
&lt;br /&gt;
*It&#039;s possible to install softwarephone for ALLUSERS by using the command:&lt;br /&gt;
 Msiexec /i softwarephone.msi ALLUSERS=1&lt;br /&gt;
&lt;br /&gt;
= Configuration =&lt;br /&gt;
&lt;br /&gt;
The configuration is opened by selecting “Configuration” from the start menu. A browser connection is opend to the server running as part of SoftwarePhone and the configuration menu is displayed. &lt;br /&gt;
&lt;br /&gt;
Default login is admin/swphone.&lt;br /&gt;
&lt;br /&gt;
The configuration options are the same as for the hardware phones with a few specifics referring to SoftwarePhone running as a Windows process:&lt;br /&gt;
&lt;br /&gt;
* Application&lt;br /&gt;
The Applicatons run mode and priority can be set and whether to register with the computers name at the PBX.&lt;br /&gt;
* Audio&lt;br /&gt;
The desired audio devices can be selected.&lt;br /&gt;
* Audio&lt;br /&gt;
The Audio –Input, -Output and –Ringing device can be selected. &lt;br /&gt;
* USB&lt;br /&gt;
Legacy configuration for customers who use a previous installation with a headset other than Jabra, Sennheiser or Plantronics. Headsets from these vendors are handled automatically and need not be configured.&lt;br /&gt;
&lt;br /&gt;
The default credentials are admin / swphone&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;„Audio and USB Configuration&amp;quot;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
This config GUI is unique in the way that it can only be accessed (right click on the softwarephone icon) from the computer SoftwarePhone is running on. Here the typical End User Configurations are set: Audio and USB-headset parameters.&lt;br /&gt;
&lt;br /&gt;
[[Image:default-usercfg.png]]&lt;br /&gt;
 &lt;br /&gt;
Above image shows the default configuration without any headset from vendors Jabra, Plantronics or Sennheiser plugged in. &amp;quot;Headset&amp;quot; in this case means any headset of beforementioned vendors that is detected. Note: The FIRST detected headset will become the active one, if more than 1 headset is plugged in. In case you have more than 1 headset plugged in and want to use a specific for Softwarephone operation you must configure it in the &amp;quot;USB Configuration | USB device&amp;quot; droplist. &lt;br /&gt;
The column on the right shows the actual values&lt;br /&gt;
&lt;br /&gt;
[[Image:usercfg-headset-plugged-no-preferred.png]]&lt;br /&gt;
&lt;br /&gt;
Above image shows a default configuration &amp;quot;Headset&amp;quot; with currently a &amp;quot;Sennheiser SC260 ..&amp;quot; being plugged in and detected &lt;br /&gt;
&lt;br /&gt;
[[Image:usercfg-headset-plugged-preffered-active.png]]&lt;br /&gt;
&lt;br /&gt;
Above image shows the &amp;quot;Sennheiser SC260 ..&amp;quot; configured as the prefered (USB Device) and being active.&lt;br /&gt;
&lt;br /&gt;
Note: If you have configured a specific headset and you don&#039;t plug it in but instead another one then this other is fully operational and it stays that way until the prefered one is plugged in, then it becomes the active one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Microphone:&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
The microphone selection.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Speaker:&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
	The speaker selection&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ringer:&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
	The Ringing device selection&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Handsfree:&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
	The open listening device selection. The device that plays the incoming audio stream when the speaker button is pressed in myPBX.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;USB Device:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
	The USB headset selction.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;USB Map:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Legacy for non Jabra, Plantronics and Sennheiser headsets. The codepage selection for the selected usb device. Here one or two choices are presented. If a selection item that refers to the selected USB Device use this. If only “generic HID Telephonie Page” is available you can try to use the headsets button (some headsets support the generic codes)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; If the headsets buttons do not work for call control, then call control is solely available through myPbx. Nevertheless the USB headset can be used as the audio-in/output device.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;[Tab:„Application“]&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Admin mode Application configuration.&lt;br /&gt;
&lt;br /&gt;
[[Image:swphone_application.jpg]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Application Run Mode:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Manual: SoftwarePhone needs to be started manually&lt;br /&gt;
* Login: SoftwarePhone will be started when the user logs in (don&#039;t set this option if myPBX Launcher have option &amp;quot;Run Softwarephone&amp;quot; in the same PC). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Application Priority:&#039;&#039;&#039;&lt;br /&gt;
* Normal: As every standard Windows Process. Sufficient in almost all cases&lt;br /&gt;
* High: Elevated Priority. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Register Mode:&#039;&#039;&#039; &lt;br /&gt;
* Default: Registration modes like the  HW phones.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; Anonymous registration might not work in all environments, especially those that prevent multicasts. For example, when using SoftwarePhone  over a vpn 	  connection ensure that multicast forwarding is guaranteed. Also, if a virtual machine is running on the same computer it might prevent&lt;br /&gt;
multicasts being sent on the LAN.&lt;br /&gt;
&lt;br /&gt;
* Computername: &lt;br /&gt;
The best way for registering SoftwarePhone  at the PBX. It uses the computername as it is visible on the LAN. The computername is determined by SoftwarePhone  and the appropriate parameters are set for the “Phone” modul. This configuration appears in the field “Name” under the “Phone” tab  (Example for computer„LBU-VOSTRO-W7“ ):&lt;br /&gt;
&lt;br /&gt;
[[Image:swphone_registration.jpg]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;[Tab:&amp;quot;Audio”]:&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Admin mode Audio configuration. Items see  „Audio and USB Configuration“&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;[Tab:“USB”]:&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Admin mode Audio configuration. Items see  „Audio and USB Configuration“&lt;br /&gt;
&lt;br /&gt;
= Rollout =&lt;br /&gt;
&lt;br /&gt;
Especially in larger installations it is desirable to have a mechanism for automatic configuration of the SoftwarePhones. This can be accomplished in the following way:&lt;br /&gt;
&lt;br /&gt;
SoftwarePhones installation package (softwarephone .msi)can be parametrized by creating an [https://docs.microsoft.com/en-us/windows/desktop/msi/orca-exe Orca MSI database editor] transform with the parameters:&lt;br /&gt;
URL and POLL. Theses parameters are entered in the “Property” table&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:download_orca.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Saving Embedded Streams&lt;br /&gt;
&lt;br /&gt;
By default, when saving a database to a new file with File and Save As…, Orca does not copy streams that are embedded in the database but not a member of any table. Select Copy embedded streams during &#039;Save As&#039; to save streams to the new file when saving a database using the File with the Save As… option. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:orca_openfile.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[Image:orca_addrows.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[Image:orca_rows_content.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[Image:orca_savefile.jpg]]&lt;br /&gt;
&lt;br /&gt;
It is recommended that the “POLL” value be set to “1” (shortest time:  1minute).  &lt;br /&gt;
When SoftwarePhone is installed with the transform it starts, waits 1 min (poll period) then accesses the script file specified in the “POLL” parameter and executes the commands therein. &lt;br /&gt;
To register SoftwarePhone  with the computername at the PBX the script file should look as follows (example showing the PBX @ “192.168.178.22” with the identifier  „IP800-06-25-6e” :&lt;br /&gt;
&lt;br /&gt;
 …&lt;br /&gt;
 #set the PBX @ and Identifier&lt;br /&gt;
 config change PHONE SIG /prot H323 /gk-addr 192.168.178.22 /gk-id IP800-06-25-6e&lt;br /&gt;
&lt;br /&gt;
 #register with computername&lt;br /&gt;
 mod cmd APP0 app-set /op OK /reg_mode ComputerName&lt;br /&gt;
&lt;br /&gt;
 #reset the automatic configuration update&lt;br /&gt;
 config add UP1 /url &lt;br /&gt;
&lt;br /&gt;
 #reset SoftwarePhone and apply config&lt;br /&gt;
 reset &lt;br /&gt;
&lt;br /&gt;
Another method to provide configurations to the installed SoftwarePhone s is preparing a configuration template by configuring one SoftwarePhone  entity, then using the generated “swphone_commands.cfg” file in the &amp;lt;users roaming directory &amp;gt;\innovaphone\SoftwarePhone &lt;br /&gt;
as the template, copying it to the update location  and using it in the script file:&lt;br /&gt;
&lt;br /&gt;
 #invoke configuration template&lt;br /&gt;
 mod cmd UP0 cfg  &amp;lt;update directory location&amp;gt;/swphone_commands.cfg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This method is particularly helpful when many USB headset of the same type are used.&lt;br /&gt;
&lt;br /&gt;
= Setting QoS =&lt;br /&gt;
See [[Howto:Softphone recommended settings]].&lt;br /&gt;
&lt;br /&gt;
= Supported USB headsets =&lt;br /&gt;
&lt;br /&gt;
The following USB headsets are supported for onhook/offhook and mute (MyPBX) functionality:&lt;br /&gt;
&lt;br /&gt;
All Jabra, Plantronics and Sennheiser headsets that are supported by these vendors SDKs. Please check their&lt;br /&gt;
sites for more information.&lt;br /&gt;
&lt;br /&gt;
https://www.plantronics.com/us/en/support/downloads-apps/hub-desktop&lt;br /&gt;
&lt;br /&gt;
https://developer.jabra.com/site/global/sdks/windows/documentation/core.gsp&lt;br /&gt;
&lt;br /&gt;
https://en-us.sennheiser.com/headset-software-pc&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting Connectivity Problems =&lt;br /&gt;
&lt;br /&gt;
If you experience problems with softwarephone attaching to the PBX or not being able to make calls please check the following:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;check in the “Phone” tab whether the state is “up”&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;check in the “General” tab if License is “Valid”&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Start a command window as Administrator and issue a &amp;quot;netstat –a –b &amp;gt; swphone_netstat.txt&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In the “swphone_netstat.txt” file search for “1720”. There should be an entry like this:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;TCP    0.0.0.0:1720           LBU-VOSTRO-W7:0        LISTENING&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;[softwarephone.exe].&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Please search for other occurances of “&#039;&#039;&#039;1720&#039;&#039;&#039;” to ensure that no other processes listen to this port.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Make a softwarephone trace to see if the packets are received by softwarephone&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In the “Maintenance” tab “Tracing” enable “&#039;&#039;&#039;H.323 Signaling&#039;&#039;&#039;”, “&#039;&#039;&#039;Phone&#039;&#039;&#039;” and “&#039;&#039;&#039;All TCP/UDP Traffic&#039;&#039;&#039;”. Then try to make the call. In the resulting trace you should see the events like the following:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;0:0103:337:3 - RECV RESULT[](662 from pla(192.168.178.22:60003) type: 1)&lt;br /&gt;
0:0103:337:3 - PHONE_LISTEN.1 -&amp;gt; PHONE_REG.1 : SIG_SETUP faststart=3ac8bec cmd=PROPOSAL cdpn=400&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If these events are no present in the trace it could be that the firewall settings prevent some of softwarephone’s functions. This could be the Firewall.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Check the firewall settings for softwarephone&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Please open the “System Administration\Windows-Firewall\Allow Program.. Ensure that softwarephone is enabled on the required interfaces. If this doesn’t solve the problem then temporaryly disable the firewall completely and try again. &lt;br /&gt;
Now even with the firewall disabled there could be some other security software that causes the problem. To find out if packets to the “h323hostcall” port (1720) are filtered by the firewall you can use the commands “&#039;&#039;&#039;netsh wfp capture start&#039;&#039;&#039;” to start a trace of the test and “&#039;&#039;&#039;netsh wfp capture stop&#039;&#039;&#039;” to stop the trace. The trace is written into the file: “&#039;&#039;&#039;wfpdiag.cab&#039;&#039;&#039;” . Extract the file: “&#039;&#039;&#039;wfpdiag.xml&#039;&#039;&#039;”. In this file search for “1720”. If the packet is filtered by the firewall an entry like the following can be found:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;netEvent&amp;gt;&lt;br /&gt;
   &amp;lt;header&amp;gt;&lt;br /&gt;
     &amp;lt;timeStamp&amp;gt;2013-11-05T11:20:27.367Z&amp;lt;/timeStamp&amp;gt;&lt;br /&gt;
     &amp;lt;flags numItems=&amp;quot;8&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;item&amp;gt;FWPM_NET_EVENT_FLAG_IP_PROTOCOL_SET&amp;lt;/item&amp;gt;&lt;br /&gt;
       &amp;lt;item&amp;gt;FWPM_NET_EVENT_FLAG_LOCAL_ADDR_SET&amp;lt;/item&amp;gt;&lt;br /&gt;
       &amp;lt;item&amp;gt;FWPM_NET_EVENT_FLAG_REMOTE_ADDR_SET&amp;lt;/item&amp;gt;&lt;br /&gt;
       &amp;lt;item&amp;gt;FWPM_NET_EVENT_FLAG_LOCAL_PORT_SET&amp;lt;/item&amp;gt;&lt;br /&gt;
       &amp;lt;item&amp;gt;FWPM_NET_EVENT_FLAG_REMOTE_PORT_SET&amp;lt;/item&amp;gt;&lt;br /&gt;
       &amp;lt;item&amp;gt;FWPM_NET_EVENT_FLAG_APP_ID_SET&amp;lt;/item&amp;gt;&lt;br /&gt;
       &amp;lt;item&amp;gt;FWPM_NET_EVENT_FLAG_USER_ID_SET&amp;lt;/item&amp;gt;&lt;br /&gt;
       &amp;lt;item&amp;gt;FWPM_NET_EVENT_FLAG_IP_VERSION_SET&amp;lt;/item&amp;gt;&lt;br /&gt;
     &amp;lt;/flags&amp;gt;&lt;br /&gt;
     &amp;lt;ipVersion&amp;gt;FWP_IP_VERSION_V4&amp;lt;/ipVersion&amp;gt;&lt;br /&gt;
     &amp;lt;ipProtocol&amp;gt;6&amp;lt;/ipProtocol&amp;gt;&lt;br /&gt;
     &#039;&#039;&#039;&amp;lt;localAddrV4&amp;gt;192.168.178.21&amp;lt;/localAddrV4&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
     &#039;&#039;&#039;&amp;lt;remoteAddrV4&amp;gt;192.168.178.22&amp;lt;/remoteAddrV4&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
     &amp;lt;localPort&amp;gt;&#039;&#039;&#039;1720&#039;&#039;&#039;&amp;lt;/localPort&amp;gt;&lt;br /&gt;
     &amp;lt;remotePort&amp;gt;60007&amp;lt;/remotePort&amp;gt;&lt;br /&gt;
     &amp;lt;scopeId&amp;gt;0&amp;lt;/scopeId&amp;gt;&lt;br /&gt;
     &amp;lt;appId&amp;gt;							&lt;br /&gt;
       &amp;lt;data&amp;gt; …&amp;lt;/data&amp;gt;&lt;br /&gt;
       &amp;lt;asString&amp;gt;...&amp;lt;/asString&amp;gt;&lt;br /&gt;
     &amp;lt;/appId&amp;gt;&lt;br /&gt;
     &amp;lt;userId&amp;gt;S-1-5-21-3364624427-3176291796-194291593-006&amp;lt;/userId&amp;gt;&lt;br /&gt;
   &amp;lt;/header&amp;gt;&lt;br /&gt;
   &amp;lt;type&amp;gt;FWPM_NET_EVENT_TYPE_CLASSIFY_DROP&amp;lt;/type&amp;gt;&lt;br /&gt;
   &amp;lt;classifyDrop&amp;gt;&lt;br /&gt;
     &amp;lt;filterId&amp;gt;105267&amp;lt;/filterId&amp;gt;&lt;br /&gt;
     &amp;lt;layerId&amp;gt;44&amp;lt;/layerId&amp;gt;&lt;br /&gt;
     &amp;lt;reauthReason&amp;gt;0&amp;lt;/reauthReason&amp;gt;&lt;br /&gt;
     &amp;lt;originalProfile&amp;gt;2&amp;lt;/originalProfile&amp;gt;&lt;br /&gt;
     &amp;lt;currentProfile&amp;gt;2&amp;lt;/currentProfile&amp;gt;&lt;br /&gt;
   &amp;lt;/classifyDrop&amp;gt;&lt;br /&gt;
 &amp;lt;/netEvent&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
where the &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;localAddrV4&amp;gt;192.168.178.21&amp;lt;/localAddrV4&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and the &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;remoteAddrV4&amp;gt;192.168.178.22&amp;lt;/remoteAddrV4&amp;gt; &lt;br /&gt;
&lt;br /&gt;
should be your computers and the PBX’s @. &lt;br /&gt;
&lt;br /&gt;
* Check if the setup from the PBX is received at the local computer and what happens with it&lt;br /&gt;
&lt;br /&gt;
Sometimes, Antivirus Packages can implement their own network access policy. This can result in a h323 release complete with cause “User Busy” to an incoming Setup from the PBX before any other softwarephone is reached. To see which process Sends/Receives the packets in a flow you can use the “netmon”, Microsofts free Packet tracer.&lt;br /&gt;
&lt;br /&gt;
= How to obtain debug traces of softwarephone using icollect =&lt;br /&gt;
&lt;br /&gt;
Included in the installation path (C:\Program Files (x86)\innovaphone\SoftwarePhone) there is a tool called &#039;&#039;&#039;icollect.exe&#039;&#039;&#039;(accessible via start menu entry). After we reproduce a problem we can run this tool to generate debug files that are saved in the roaming folder (C:\Users\&amp;lt;User&amp;gt;\AppData\Roaming\innovaphone) as &amp;quot;debug-info.zip&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Before you reproduce the problem, please set the appropriate trace flags. Some flags like the KEYS flag must be set at &amp;quot;http://localhost:10006/debug.xml&amp;quot;&lt;br /&gt;
Which flags for which problem:&lt;br /&gt;
&lt;br /&gt;
; Softwarephone looses registration at PBX: H.323/RAS, H.323/H.225, H.323/H.245&lt;br /&gt;
; Call setup phase: Signalling, H.323/RAS, H.323/H.225, H.323/H.245&lt;br /&gt;
; Audio problems: Signalling, H.323/ICE, H.323/DTLS, DSP trace, DSP Audiochannel. Please enable &amp;quot;DSP Audiocapture&amp;quot; only if specifically asked by innovaphone since it captures the complete audio stream and thus can generates huge files on the HD&lt;br /&gt;
; Headset button problems: Signalling, KEYS&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;NOTE: Please when providing a crash dump captured by icollect always use the latest SR (service release) of the softwarephone. Don&#039;t send us crash dumps of older versions since this will just take more time/effort to be analysed by our developer team.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Important files for support in the debug-info.zip==&lt;br /&gt;
* &#039;&#039;&#039;trace.txt&#039;&#039;&#039; -&amp;gt; Trace File, created when &#039;&#039;&#039;File Trace&#039;&#039;&#039; is activated in debug.xml. Also contains version number (to find it, search for Build: )&lt;br /&gt;
* &#039;&#039;&#039;swphone_config.cfg&#039;&#039;&#039; -&amp;gt; one part of the config, can be used to check trace-flags.&lt;br /&gt;
* &#039;&#039;&#039;swphone_commands.cfg&#039;&#039;&#039; -&amp;gt; second part of the config, can be used to check trace-flags. Also contains version number&lt;br /&gt;
* &#039;&#039;&#039;dmp&#039;&#039;&#039;-file: named innovaphone &#039;&#039;&#039;SoftwarePhone#[version]#[id].dmp&#039;&#039;&#039; contains crash dump&lt;br /&gt;
** if crash without dmp file, &#039;&#039;&#039;StartTrace.txt&#039;&#039;&#039; contains trace of swphone start&lt;br /&gt;
* &#039;&#039;&#039;Wave-in/Wave-out&#039;&#039;&#039;: created when DSP &amp;amp; DSP Audiochannel &amp;amp; DSP Audiocapture are activated.&lt;br /&gt;
&lt;br /&gt;
=Known Issue=&lt;br /&gt;
&lt;br /&gt;
=== Things to do before starting ===&lt;br /&gt;
Before starting debugging softwarephone issues, is always the best thing to:&lt;br /&gt;
&lt;br /&gt;
- check if audio drivers on the PC/Laptop are updated to the last version&lt;br /&gt;
&lt;br /&gt;
- check if the headset drivers are updated to the last version&lt;br /&gt;
&lt;br /&gt;
- check that the Headset SDK is updated to the latest version&lt;br /&gt;
&lt;br /&gt;
- check that network drivers are updated to the last version&lt;br /&gt;
&lt;br /&gt;
- change registration protocol of softwarephone from UDP (H323) to TCP or TLS (H323/TCP or H323 TLS) to avoid any signaling issue&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After updating the driver, please reboot the PC even if not requested by the OS.&lt;br /&gt;
&lt;br /&gt;
Most cases are solved after updating drivers/software, especially if softwarephone won&#039;t start or no ringtones/audio device is automatically selected.&lt;br /&gt;
&lt;br /&gt;
Also, please check that the files &amp;quot; swphone_config.cfg &amp;quot; and &amp;quot; swphone_commands.cfg &amp;quot; in the C:\Users\%user%\AppData\Roaming\innovaphone\softwarephone\ are not 0 Kbyte.&lt;br /&gt;
In this case, best is to reinstall the softwarephone with the latest version, and, after configuring it, restart it and check that the file &amp;quot; swphone_commands.cfg &amp;quot; is bigger then 6 KB.&lt;br /&gt;
If something is overwriting it (Windows policy, Antivirus), do the following:&lt;br /&gt;
&lt;br /&gt;
- uninstall softwarephone&lt;br /&gt;
&lt;br /&gt;
- reinstall it with Administrator rights&lt;br /&gt;
&lt;br /&gt;
- start softwarephone and configure it (saving the changes)&lt;br /&gt;
&lt;br /&gt;
- without closing it, navigate to the &amp;quot; C:\Users\%user%\AppData\Roaming\innovaphone\softwarephone\ &amp;quot; folder and put &amp;quot; swphone_config.cfg &amp;quot; and &amp;quot; swphone_commands.cfg &amp;quot; in read-only. Doing this, softwarephone will save the changes. Remember that doing this, if you want to changes some settings on softwarephone, you need to remove the &amp;quot;read-only&amp;quot; flag on the files (and re-apply it after the changes)&lt;br /&gt;
&lt;br /&gt;
=== G.711 only and G729 Optional===&lt;br /&gt;
The software phone does support G.711 and Opus codec only, no G.723 or G.722.&lt;br /&gt;
Optionally we can use G729 if G729 Channel licenses are present and available on the PBX.&lt;br /&gt;
&lt;br /&gt;
===Another program is blocking the softphone===&lt;br /&gt;
&lt;br /&gt;
Another program (e.g XCAPI) might be listening on tcp port 1720 as well. If you want to use both programs simultaneously you can change the signaling port of the softphone to another port like 1721.&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;nowiki&amp;gt;http://localhost/!config add PHONE SIG /ep-addr 0.0.0.0:1721&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to find out which program is listening on which port we recommend using a little tool called TCP View. You’ll find it here:&lt;br /&gt;
&lt;br /&gt;
http://technet.microsoft.com/en-us/sysinternals/bb897437.aspx&lt;br /&gt;
&lt;br /&gt;
=== No license obtained from PBX if SIP Protocol is used===&lt;br /&gt;
&lt;br /&gt;
When using Innovaphone softwarephone with SIP Protocol no license it&#039;s obtained from the PBX. It&#039;s necessary to use H.323 always.&lt;br /&gt;
&lt;br /&gt;
=== Headset Basestation doesn&#039;t Ring ===&lt;br /&gt;
&lt;br /&gt;
Often it&#039;s reported that the Basestation of Wireless Headsets doesn&#039;t Ring on incoming call, this is a feature that is missing and there exist already a Feature Request for it - [[Support:DVL-Feature_Requests#Alerting_on_Wireless_headset_base_also | Alerting on Wireless headset base also]] .&lt;br /&gt;
&lt;br /&gt;
=== Windows Volume lowers automatically when receiving a call ===&lt;br /&gt;
&lt;br /&gt;
The volume can be set for swphone exclusively by the Windows mixer. It appears in the mixer because it has a Audio stream Interface to the Windows Audio System, but no way adjust the volume by itself. When such an effect occurs it is best to check the Windows configuration: if it is set to Change volume for applications when certain Events occur:&lt;br /&gt;
&lt;br /&gt;
[http://superuser.com/questions/74116/windows-7-lowers-applications-volume-automatically Windows 7 lowers applications&#039; volume automatically]&lt;br /&gt;
&lt;br /&gt;
=== H.323/TLS Connection not Trusted by Default ===&lt;br /&gt;
&lt;br /&gt;
Please check the [[Reference11r1:Concept_H.323_over_TCP/TLS_(H.460.17)#Known_Issues|H.323/TLS Known Issues article]].&lt;br /&gt;
&lt;br /&gt;
=== Softwarephone does not work on Terminal Server ===&lt;br /&gt;
The software phone can only run once on a single system.  This also implies that it does not work for terminals server systems such as e.g. Citrix, as only the first client session running on a server would be able to start a software phone.   Furthermore, multiple RTP streams would impose quit a bit of load on the server.&lt;br /&gt;
&lt;br /&gt;
=== Softwarephone can&#039;t place calls (call setup disappear as I press the &amp;quot;call&amp;quot; button&amp;quot;) ===&lt;br /&gt;
&lt;br /&gt;
After windows major update, some windows systems had their microphone rights turned off for all the application using it. This prevent the softwarephone to properly use the microphone. &lt;br /&gt;
To check this, press &amp;quot;windows key + i&amp;quot;, navigate in &amp;quot;Privacy&amp;quot; - &amp;quot;Microphone&amp;quot; - and check that &amp;quot;Allow apps to access you microphone&amp;quot; is turned on. Sometimes, even if turned on, there is the need to turn &amp;quot;Allow apps to access you microphone&amp;quot; completely off and the on to &amp;quot;refresh&amp;quot; the app rights (softwarephone included)&lt;br /&gt;
&lt;br /&gt;
Also check that windows firewall is not blocking softwarephone communication.&lt;br /&gt;
&lt;br /&gt;
Please check also this page: &amp;quot; http://wiki.innovaphone.com/index.php?title=Howto:Softwarephone_recommended_settings#Registration_Protocol &amp;quot;. With softwarephone, is recommended to not use H323/UDP as protocol. &lt;br /&gt;
&lt;br /&gt;
=== When PC is not used for some time, softwarephone won&#039;t work anymore ===&lt;br /&gt;
&lt;br /&gt;
We noticed this behaviour on some Windows PC. This was due to the power management settings of Windows, that was turning off the USB ports to save power (this happen most on laptops)&lt;br /&gt;
To avoid this, open &amp;quot;Control Panel&amp;quot; (with Category view) - &amp;quot;Hardware and sound&amp;quot; - &amp;quot;Power options&amp;quot; . Under &amp;quot;Preferred plan&amp;quot; click the &amp;quot;Change plan settings&amp;quot; for the plan you are currently using.&lt;br /&gt;
Click the &amp;quot;Change advanced power settings&amp;quot; link&lt;br /&gt;
Expand &amp;quot;USB selective suspend settings&amp;quot;&lt;br /&gt;
Select &amp;quot;Disabled&amp;quot; form the drop-down menu&lt;br /&gt;
Click &amp;quot;Apply&amp;quot; and the &amp;quot;ok&amp;quot;&lt;br /&gt;
&lt;br /&gt;
If you&#039;re changing the settings on a laptop, you&#039;ll see two options: On Battery and Plugged in, so make sure to change those settings accordingly.&lt;br /&gt;
This will prevent Windows 10 to power off USB devices connected to your computer (so your usb bluetooth headset connector)&lt;br /&gt;
&lt;br /&gt;
=== Softwarephone doesn&#039;t start after upgrade to new version ===&lt;br /&gt;
&lt;br /&gt;
On windows 10 PC, can happen that after installing the new softwarephone version without manually uninstalling the old one, softwarephone won&#039;t start anymore, and in the Windows event viewer you will see the softwarephone app crash with relative ntdll.dll error.&lt;br /&gt;
To solve this, manually uninstall the softwarephone, reboot the PC and install the new version.&lt;br /&gt;
&lt;br /&gt;
=== Softwarephone 12r2 keep crashing on Windows 10 ===&lt;br /&gt;
&lt;br /&gt;
We noticed some issue between Softwarephone 12r2 and Windows 10. If your softwarephone after Windows 10 major update 1809, doesn&#039;t start or start and keep restarting, uninstall Softwarephone 12r2, delete the Softwarephone folder in the AppData/Roaming/Innovaphone/ path, restart the PC and install Softwarephone 12r1 with Administrator rights. This should solve the issue.&lt;br /&gt;
&lt;br /&gt;
=== Issue with permission on Appdata folder ===&lt;br /&gt;
&lt;br /&gt;
After major windows update, can happen that permission for the appdata/Roaming folder are reset. To restore them please do the following:&lt;br /&gt;
&lt;br /&gt;
Open &amp;quot;Run&amp;quot; by pressing Windows + R keys together.&lt;br /&gt;
Type: as C:\Users\USERNAME\AppData&lt;br /&gt;
Note: Replace C: with the letter of the drive where Windows is installed. Also replace USERNAME with the username of the account you’re logged in.&lt;br /&gt;
&lt;br /&gt;
Click OK&lt;br /&gt;
&lt;br /&gt;
Right-click on the Roaming folder&lt;br /&gt;
&lt;br /&gt;
Click Properties&lt;br /&gt;
&lt;br /&gt;
Go to the Security tab&lt;br /&gt;
&lt;br /&gt;
Click “Edit -&amp;gt; Add”&lt;br /&gt;
&lt;br /&gt;
Type “Everyone”&lt;br /&gt;
&lt;br /&gt;
Click “Check names -&amp;gt; Ok -&amp;gt; Full control”&lt;br /&gt;
&lt;br /&gt;
Click OK to save the changes&lt;br /&gt;
&lt;br /&gt;
Restart your computer&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now softwarephone should be able to access all necessary files again.&lt;br /&gt;
&lt;br /&gt;
=== Not removed system tray icons ===&lt;br /&gt;
Sometimes if the softwarephone loose connection, wifi/copper/vpn will be switched or crashes the application in the system tray will not removed.&lt;br /&gt;
&lt;br /&gt;
=== Headset not recognize by softwarephone on Windows 10 ===&lt;br /&gt;
&lt;br /&gt;
After Major windows update, headset is not recognize anymore. This can happen in case authorization by the OS for softwarephone to bind the headset to the softphone is denied.&lt;br /&gt;
To restore the headset detection, uninstall softwarephone 12r2 version and install the latest 12r1 softwarephone release. Doing this, NET framework 3.5 will be reinstalled, authorization restored, and headset should be recognized again.&lt;br /&gt;
Once headset is recognize, you can reinstall softwarephone 12r2 (latest) version and headset will work with the 12r2 version of softwarephone again.&lt;br /&gt;
&lt;br /&gt;
=== Softwarephone Mac address is 00000000000 ===&lt;br /&gt;
&lt;br /&gt;
To be able to obtain a Mac address, on the PC network card, netbios must be enabled.&lt;br /&gt;
&lt;br /&gt;
=== Kaspersky antivirus ===&lt;br /&gt;
&lt;br /&gt;
We have reports that this antivirus can interfere with softwarephone if the client is not configured to allow softwarephone to work properly (softwarephone start but no calls are possible). Please disable it or configure an exception for the softwarephone so softwarephone can make calls.&lt;br /&gt;
&lt;br /&gt;
=== Softwarephone doesn&#039;t ring, or does not receive call ===&lt;br /&gt;
&lt;br /&gt;
According to this wiki page, http://wiki.innovaphone.com/index.php?title=DND if you press the mute button on the headset while softwarephone is in idle (no active calls) you activate the DND mode. This information won&#039;t be displayed in myApps/myPBX but is something between headset and softwarephone. You can check in this case if this line:&lt;br /&gt;
&lt;br /&gt;
vars create PHONE/USER-DND/00000 p 1    &amp;lt;--------- 1 means DND is on, 0 is off.&lt;br /&gt;
&lt;br /&gt;
is present in the softwarephone configuration file. If this is the case, pressing the mute button in the headset again when no calls are active, will set the value to 0 and DND will be disabled.&lt;br /&gt;
&lt;br /&gt;
You can also lock the DND function on the softwarephone in PHONE/Protect/ Fine grained Function Locking and configure in the field:&lt;br /&gt;
&lt;br /&gt;
0x00080000&lt;br /&gt;
&lt;br /&gt;
Doing so the user won&#039;t be able to set the softwarephone in DND anymore.&lt;br /&gt;
&lt;br /&gt;
Update: solved with the latest softwarephone release. Now is not possible to set the softwarephone in DND mode via the headset.&lt;br /&gt;
&lt;br /&gt;
=== Crash if 4 or more network interfaces on PC ===&lt;br /&gt;
&lt;br /&gt;
The Softwarephone will crash when started continuously or crash when a call is done (and the ICE candidates for the call are generated). As a workaround, don&#039;t activate more than 3 interfaces or use the v13 myApps-softphoneApp.&lt;br /&gt;
&lt;br /&gt;
===Softwarephone doesn&#039;t start with myPBX===&lt;br /&gt;
After a Windows update, some PC requires to run myPBX as administrator in order to start softwarephone automatically. Please, run myPBX as administrator and softwarephone should start also.&lt;br /&gt;
&lt;br /&gt;
===Using + character when changing the password via myPBX===&lt;br /&gt;
When using special character + while trying to change the password via myPBX, the + sign is not correctly decrypted which results on the Softwarephone not to be able to register to the PBX.&lt;br /&gt;
Please refrain from using + characters in the password while changing it manually via myPBX menu. &lt;br /&gt;
There is no issue if the password is only changed via the UI of the PBX on the user object.&lt;br /&gt;
&lt;br /&gt;
===Softwarephone looses registration on PBX but &amp;quot;keeps&amp;quot; is registration locally ===&lt;br /&gt;
It could happen when the PC goes into sleep mode and TCP connections are stale, when the PC resumes the Softwarephone registration it&#039;s lost already (since already passed long time) but locally the Softwarephone have his &amp;quot;TCP&amp;quot; connection UP as &amp;quot;Stale&amp;quot; so you see locally at User-1 that&#039;s registered what is wrong. This would be solved with the next RAS keepalive that usually it&#039;s every 120 seconds however if we use H.323/TCP or H.323/TLS this value it&#039;s 3600 seconds instead so need to wait 1 hour for the phone retry registration on the PBX or manually restart the softwarephone.&lt;br /&gt;
&lt;br /&gt;
We can reduce the RAS TTL value to 120 seconds with the following command on the PBX.&lt;br /&gt;
&lt;br /&gt;
!config change H323 /ras-h225-factor 1&lt;br /&gt;
&lt;br /&gt;
= Related Articles =&lt;br /&gt;
* [[{{NAMESPACE}}:Concept_myPBX]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference9:Phone/User/Function-Keys/Switch&amp;diff=54975</id>
		<title>Reference9:Phone/User/Function-Keys/Switch</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference9:Phone/User/Function-Keys/Switch&amp;diff=54975"/>
		<updated>2020-02-06T12:41:50Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Switch ==&lt;br /&gt;
&lt;br /&gt;
Once several users have been registered, this function can be used to switch to another user as the active user.&lt;br /&gt;
&lt;br /&gt;
The Switch fkey parameters need to be exactly configured as the registration.&lt;br /&gt;
When pressed, the fkey parameters are compared against reg-config.&lt;br /&gt;
E.g. If no number configured on registration, you MUST NOT configure the number field on the fkey config. Otherwise the phone does not identify the registration which is to be activated.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Tip: If the new registration has become active after use, the function key assignment of the new registration also applies. It therefore makes sense to configure a deregistration on this key in the user&#039;s configuration.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_myAPPs_Search_in_local-Outlook_Contacts&amp;diff=54866</id>
		<title>Reference13r1:Concept myAPPs Search in local-Outlook Contacts</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_myAPPs_Search_in_local-Outlook_Contacts&amp;diff=54866"/>
		<updated>2020-01-28T13:36:18Z</updated>

		<summary type="html">&lt;p&gt;Aci: /* Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Concept|{{PAGENAME}}]]&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Microsoft Office Outlook&lt;br /&gt;
* PBX Version 13r1 &amp;lt;br /&amp;gt;&lt;br /&gt;
* myAPPs Windows launcher version 13r1&amp;lt;br /&amp;gt;&lt;br /&gt;
* configured MAPI profile in Outlook (Exchange Account)&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
The feature is by default always enabled.&lt;br /&gt;
&lt;br /&gt;
=== Search Attributes ===&lt;br /&gt;
&lt;br /&gt;
Search can be performed for firstname and/or lastname&lt;br /&gt;
&lt;br /&gt;
=== Result Attributes ===&lt;br /&gt;
&lt;br /&gt;
Following attributes within Outlook are displayed upon name search (if available):&lt;br /&gt;
&lt;br /&gt;
* OFFICE_TELEPHONE_NUMBER&lt;br /&gt;
* MOBILE_TELEPHONE_NUMBER&lt;br /&gt;
* BUSINESS_FAX_NUMBER&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
Outlook Search will find contacts in all exchange accounts.&lt;br /&gt;
&lt;br /&gt;
== Known limitations ==&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;Works only with windows launcher and so Windows compliant only. &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Not compatible with the reverse name resolution, based on incoming calling party numbers.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Related Articles ==&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_myAPPs_Search_in_local-Outlook_Contacts&amp;diff=54865</id>
		<title>Reference13r1:Concept myAPPs Search in local-Outlook Contacts</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_myAPPs_Search_in_local-Outlook_Contacts&amp;diff=54865"/>
		<updated>2020-01-28T13:32:45Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Concept|{{PAGENAME}}]]&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Microsoft Office Outlook&lt;br /&gt;
* PBX Version 13r1 &amp;lt;br /&amp;gt;&lt;br /&gt;
* myAPPs Windows launcher version 13r1&amp;lt;br /&amp;gt;&lt;br /&gt;
* configured MAPI profile in Outlook (Exchange Account)&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
The feature is by default always enabled.&lt;br /&gt;
&lt;br /&gt;
=== Result Attributes ===&lt;br /&gt;
&lt;br /&gt;
Following attributes within Outlook are displayed upon name search (if available):&lt;br /&gt;
&lt;br /&gt;
* OFFICE_TELEPHONE_NUMBER&lt;br /&gt;
* MOBILE_TELEPHONE_NUMBER&lt;br /&gt;
* BUSINESS_FAX_NUMBER&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
Outlook Search will find contacts in all exchange accounts.&lt;br /&gt;
&lt;br /&gt;
== Known limitations ==&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;Works only with windows launcher and so Windows compliant only. &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Not compatible with the reverse name resolution, based on incoming calling party numbers.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Related Articles ==&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Howto:Gigaset_N510_PRO_-_Gigaset_-_Testreport&amp;diff=54820</id>
		<title>Howto:Gigaset N510 PRO - Gigaset - Testreport</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Howto:Gigaset_N510_PRO_-_Gigaset_-_Testreport&amp;diff=54820"/>
		<updated>2020-01-22T16:51:55Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Summary==&lt;br /&gt;
&lt;br /&gt;
The Gigaset N510IP PRO DECT base-station supports all required innovaphone features and is therefore qualified as [[Howto:What_is_a_%22recommended_product%22%3F|recommended product]]. &lt;br /&gt;
&lt;br /&gt;
The usage of wideband codecs of the phone were tested successfully. The integration of the innovaphone voicemail in the Gigaset solution is possible. The message waiting indication will be displayed on the handsets. The handsets support 3-party conference calls.&lt;br /&gt;
&lt;br /&gt;
The Gigaset N510IP PRO DECT base-station was tested successfully also in a [[Howto:Hosting#Overview | hosted setup]]. The test results are the same as if the N510IP is used in a normal (in the same LAN as the PBX) setup. It is not required to activate MediaRelay on the Frontend.&lt;br /&gt;
&lt;br /&gt;
==Certification Status==&lt;br /&gt;
&lt;br /&gt;
{{Template:Compat Status &amp;quot;tested&amp;quot;}}&lt;br /&gt;
&amp;lt;!-- {{Template:Compat Status &amp;quot;in progress&amp;quot;}}--&amp;gt;&lt;br /&gt;
&amp;lt;!-- {{Template:Compat Status &amp;quot;certified&amp;quot;|certificate=Siemens Gigaset S685IP_-_Siemens_-_3rd_Party_Product_-_Desc-product-cert.pdf}}--&amp;gt;&lt;br /&gt;
&amp;lt;!-- {{Template:Compat Status &amp;quot;tested&amp;quot;}}--&amp;gt;&lt;br /&gt;
&amp;lt;!-- {{Template:Compat Status &amp;quot;rejected&amp;quot;}} --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Testing of this product has been finalized September 6th, 2013.&lt;br /&gt;
&lt;br /&gt;
==Version==&lt;br /&gt;
Firmware Version:&lt;br /&gt;
* 42.078 (420780000000 / V42.00)&lt;br /&gt;
&lt;br /&gt;
innovaphone Firmware:&lt;br /&gt;
* V10 SR3&lt;br /&gt;
* TSP 8150&lt;br /&gt;
&lt;br /&gt;
== Test Setup ==&lt;br /&gt;
[[Image:Testreport_Terminals_SIP_or_H323_1.PNG]]&lt;br /&gt;
&lt;br /&gt;
==Device Setup==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|Register Device w/o specific configuration (requires DHCP)&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|DHCP is default&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|DHCP yields timeserver and time displays correctly&lt;br /&gt;
|No, set static to public NTP server&lt;br /&gt;
|----&lt;br /&gt;
|SNTP config has TZ string for timezone/dst autoconfig&lt;br /&gt;
|No, set static to public NTP server&lt;br /&gt;
|----&lt;br /&gt;
|DHCP yields correct default gateway&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device supports magic registration (e.g. by serial)&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Fixed registrations works&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers w/o Extension (just by name)&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers by name with non-latin1 characters (e.g. UserÄÖÜ)&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers by extension&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers with password&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers multiple identities&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|2nd GK is supported&lt;br /&gt;
|According to [https://gigaset.atlassian.net/wiki/pages/viewpage.action?pageId=28540959 gigaset-wiki] only by DNS according to RFC3263&lt;br /&gt;
|----&lt;br /&gt;
|Device supports Redirection of Registration (Master redirects to Slave)&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Device supports STUN protocol&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device sends NAT - keepalive messages&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device refreshes the PBX registration&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device supports SIP over TCP&lt;br /&gt;
|Not tested in LAN setup. Not usable for Hosting Setup, TCP connection is close immediately after SIP-TCP messages was sent. As a result - in a hosting setup the phone is not reachable for incoming calls.&lt;br /&gt;
|----&lt;br /&gt;
|Device supports SRTP&lt;br /&gt;
|Not tested, needs SIPS&lt;br /&gt;
|----&lt;br /&gt;
|Device supports SIPS (SIP over TLS)&lt;br /&gt;
|Not OK, registration fails&lt;br /&gt;
|----&lt;br /&gt;
|Device supports HTTPS&lt;br /&gt;
|Not for Admin access on the Web-page, probably as HTTP-client to retrieve firmware/configuration from remote servers&lt;br /&gt;
|----&lt;br /&gt;
|Device supports VAD (Voice activity detection)&lt;br /&gt;
|Not tested, according to manual supported&lt;br /&gt;
|----&lt;br /&gt;
|Supported menu languages&lt;br /&gt;
|many, check [http://gigaset.com/de/de/pages/index.html product specifications]&lt;br /&gt;
|----&lt;br /&gt;
|3-party conference&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Test Results==&lt;br /&gt;
&lt;br /&gt;
=== Basic Call ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result with MR&lt;br /&gt;
|----&lt;br /&gt;
|call using g711a&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|call using g711u&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|call using g729&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|call using g722&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Overlapped sending&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Device sets up an early media channel for incoming calls&lt;br /&gt;
|N/A&lt;br /&gt;
|----&lt;br /&gt;
|Device sets up an early media channel for outgoing calls&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows called id number&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows called id name&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows called id display info&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Fax using T.38&lt;br /&gt;
|N/A&lt;br /&gt;
|----&lt;br /&gt;
|CGPN can be suppressed&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Reverse Media Negotiation&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows CDPN/CGPN on incoming call&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows CDPN/CGPN on outgoing call&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows connected number&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Device shows diverting number&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Device supports distinctive ringing&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device supports asymetric codec negotiation&lt;br /&gt;
|Not tested&lt;br /&gt;
|----&lt;br /&gt;
|Device supports codec renegotiation during a conversation&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows correct display message in case of busy CDPN&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows correct display message in case of not existing CDPN&lt;br /&gt;
|No, it says &amp;quot;Not available&amp;quot;&lt;br /&gt;
|----&lt;br /&gt;
|Device shows correct display message in case that the call is declined&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|3party conference possible&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device supports display updates during call(needed for Directory Search object)&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Long Time Call (&amp;gt;30 min) works?&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Incoming SRTP call - SRTP not enabled on DUT&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Incoming SRTP call - SRTP enabled on DUT&lt;br /&gt;
|Not tested, requires sips&lt;br /&gt;
|----&lt;br /&gt;
|Voice Quality OK?&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== DTMF ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|DTMF tones sent correctly&lt;br /&gt;
|OK&lt;br /&gt;
|----&lt;br /&gt;
|DTMF tones received correctly&lt;br /&gt;
|OK, DTMFs are sent as RTP-Events (no DTMF dependent function on Gigaset device)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Hold/Retrieve ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result &lt;br /&gt;
|----&lt;br /&gt;
|Device handles incoming hold correctly&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device can put a call on hold using correctly(inactive or sendonly)&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Transfer with consultation ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Voice Ok?&lt;br /&gt;
!MoH Ok?&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno2 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
||inno1 calls inno2. inno1 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. testphone transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. testphone transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Transfer without consultation (alerting only) ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Voice Ok?&lt;br /&gt;
!MoH Ok?&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno2 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
||inno1 calls inno2. inno1 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. testphone transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. testphone transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Blind Transfer ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Voice Ok?&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno2 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno1 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. testphone transfers to inno2.&lt;br /&gt;
|N/A, device does only transfer with consultation&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. testphone transfers to inno2.&lt;br /&gt;
|N/A, device does only transfer with consultation&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Blind Transfer (alerting only)===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Voice Ok?&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno2 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. testphone transfers to inno2.&lt;br /&gt;
|N/A, device does only transfer with consultation&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Broadcast Group &amp;amp; Waiting Queue ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result &lt;br /&gt;
|----&lt;br /&gt;
|testphone makes call to a Broadcast Group. inno1 picks up.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 makes call to a Broadcast Group. testphone picks up.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone makes call to a Waiting Queue. inno1 picks up before announcement is played.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone makes call to a Waiting Queue. inno1 picks up after announcement is played.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 makes call to a Waiting Queue. testphone picks up.&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== DTMF Features ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|CFU Activate/Deactivate            &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|CFB Activate/Deactivate        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|CFNR Activate/Deactivate        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Pickup Group&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Pickup Directed        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Park/Unpark        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Park To/Unpark From        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Call Completion Busy&lt;br /&gt;
|Nok, Gigaset rejects incoming call for starting CCBS/CCNR&lt;br /&gt;
|----&lt;br /&gt;
|Call Completion Cancel&lt;br /&gt;
|Not tested, since CCBS/CCNR does not work&lt;br /&gt;
|----&lt;br /&gt;
|Join Group/Leave Group&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Join All Groups/Leave All Groups&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Enable mobility/Disable mobility        &lt;br /&gt;
|Not tested, feature is invoked by mobile phone&lt;br /&gt;
|----&lt;br /&gt;
|Enable mobility cw/Disable mobility cw        &lt;br /&gt;
|Not tested, feature is invoked by mobile phone&lt;br /&gt;
|----&lt;br /&gt;
|Set presence&lt;br /&gt;
|Ok&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Other Features==&lt;br /&gt;
&lt;br /&gt;
===Directory===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|Device built-in directory&lt;br /&gt;
|----&lt;br /&gt;
|Exists&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Can be dialled from&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Does CLI resolution&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|display update if directory object is used?&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
*It is possible to configure a connection to an online source like DE - Klicktel. Please take a look into the manual or configuration.&lt;br /&gt;
*It is possible to import and export the local Phonebook.&lt;br /&gt;
*You can add the call to the local phonebook from the call-list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|External LDAP Server supported&lt;br /&gt;
|Yes, tested with Estos Metadir. PBX not supported as external LDAP server and LDAPS not supported.&lt;br /&gt;
|----&lt;br /&gt;
|Can be dialled from&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Does CLI resolution&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|display update if directory object is used?&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Keys===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|Device has speed dial keys&lt;br /&gt;
|Yes, depending on handset&lt;br /&gt;
|----&lt;br /&gt;
|Device has programmable function keys&lt;br /&gt;
|Yes, depending on handset&lt;br /&gt;
|----&lt;br /&gt;
|Device has partner keys&lt;br /&gt;
|No&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===CTI Features (with SOAP / TAPI / myPBX) ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|User Call - outgoing call&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Connect - Answer incoming call&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Reject - Reject alerting call&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Disconnect - Disconnect active call&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Hold - Put connected call on hold&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Hold Retrieve - Retrieve call on hold&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Transfer - Transfer with Consult&lt;br /&gt;
|Nok(myPBX), Ok(Tapi/Soap)&lt;br /&gt;
|----&lt;br /&gt;
|User Transfer - Transfer with Consult (Alerting only)&lt;br /&gt;
|Nok(myPBX), Ok(Tapi/Soap)&lt;br /&gt;
|----&lt;br /&gt;
|User Transfer - Blind Transfer&lt;br /&gt;
|Ok, Ok(Tapi/Soap)&lt;br /&gt;
|----&lt;br /&gt;
|3PTY - Make 3rd Party Call&lt;br /&gt;
|Nok(myPBX), Nok(Tapi/Soap)&lt;br /&gt;
|----&lt;br /&gt;
|Connected Number Update on Display&lt;br /&gt;
|No&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* tested with myPBX and TSP(8150)only&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== innovaphone configuration ===&lt;br /&gt;
Add a new PBX object of type &amp;quot;user&amp;quot;:&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - PBX_Userobject.png]]&lt;br /&gt;
&lt;br /&gt;
=== 3rd party product configuration ===&lt;br /&gt;
&lt;br /&gt;
====IP Configuration====&lt;br /&gt;
&lt;br /&gt;
First you have to configure the general &#039;&#039;IP Configuration&#039;&#039; for the base-station.&lt;br /&gt;
&lt;br /&gt;
* IP Address&lt;br /&gt;
* Subnet Mask&lt;br /&gt;
* Default Gateway&lt;br /&gt;
* DNS&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_IP_Configuration_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
====Telephony Connection====&lt;br /&gt;
&lt;br /&gt;
In the next step you have to create a registration from the DECT/IP base-station to the PBX. Go to &#039;&#039;Telephony-&amp;gt;Connections&#039;&#039; and &#039;&#039;edit&#039;&#039; the first entry.&lt;br /&gt;
&lt;br /&gt;
Click on &#039;&#039;Select Provider&#039;&#039; and choose your country and &#039;&#039;innovaphonePBX&#039;&#039;. This will ensure that all settings are configured correctly.&lt;br /&gt;
&lt;br /&gt;
The device still needs the IP address of the PBX to register at and the name of the user for whom the registration shall be made. Click on &#039;&#039;Show advanced settings&#039;&#039; in order to enter as &#039;&#039;Domain&#039;&#039; name the IP address of your innovaphone PBX. &lt;br /&gt;
&lt;br /&gt;
Please note that the registration credentials configured at the Gigaset phone use the &#039;&#039;number&#039;&#039; of the corresponding PBX object, not its name. Registration by using the name is also possible, but will result in CGPN display problems when making calls from the Gigaset phone to a mobility enabled user.&lt;br /&gt;
&lt;br /&gt;
When using the Reverse Proxy, you have to set the protocol to TCP instead of UDP&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_Telefonie_Connection_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
====Number Assignment====&lt;br /&gt;
&lt;br /&gt;
If you have more than one DECT handset registered to your base-station, you can use the &#039;&#039;Telephony-&amp;gt;Number Assignment&#039;&#039; menu to assign a DECT handset to a specific PBX registration.&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_Number_Assignment.png]]&lt;br /&gt;
&lt;br /&gt;
To work with CTI clients like myPBX we need to configure the Call Manager with the handset that should handle this CTI calls and the mode (headset/handsfree).&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_Call_Manager.png]]&lt;br /&gt;
&lt;br /&gt;
====Voicemail====&lt;br /&gt;
To get the current voicemail status displayed on your DECT handset, you have to enter the corresponding innovaphone voicemail number in the &#039;&#039;Telephony-&amp;gt;Network Mailbox&#039;&#039; menu.&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_VM_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
====Phone Directory - Adress Book====&lt;br /&gt;
&lt;br /&gt;
You can import/export and save the local phonebook. Have a look at the configuration description in the Gigaset manual.&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_Phone_Directory_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
====Enhanced VoIP Settings====&lt;br /&gt;
&lt;br /&gt;
If the device is used in a hosted setup, make sure that the following settings are configured:&lt;br /&gt;
* Automatic Negotiation of DTMF transmission: &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* Find target addr. automatically: &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At last you can configure some enhanced VoIP Settings like the handling of the &amp;quot;R&amp;quot; button. For more information have a look at the configuration description in the Gigaset manual.&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_advanced_VoIP_Settings_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
=== Known problems ===&lt;br /&gt;
&lt;br /&gt;
==== innovaphone PBX Version 12 ====&lt;br /&gt;
&lt;br /&gt;
With the upcoming version 12 from innovaphone AG we have implemented the security feature [https://tools.ietf.org/html/rfc3261#section-22.4 SIP digest authentication] . If the client does not support this feature the PBX will reject the registration.&lt;br /&gt;
&lt;br /&gt;
There is a config option to avoid this if you use a older firmware.&lt;br /&gt;
&lt;br /&gt;
 http://ip-of-pbx/!config change SIP /disable-digest-replay-check &lt;br /&gt;
 http://ip-of-pbx/!config write&lt;br /&gt;
 http://ip-of-pbx/!config activate&lt;br /&gt;
&lt;br /&gt;
This problem has been &#039;&#039;&#039;fixed by Gigaset with N510 Firmware 42.240&#039;&#039;&#039;, November 2016 and later&lt;br /&gt;
&lt;br /&gt;
==== MoH ====&lt;br /&gt;
Customer reported that even when choosing as Providerprofile &#039;&#039;innovaphonePBX&#039;&#039;, MoH was not audible when a call was put on hold by the Gigaset device. The reason for this is that the Gigaset signals the hold using a &amp;quot;sendonly&amp;quot; instead of an &amp;quot;inactive&amp;quot; SDP-attribute. &lt;br /&gt;
To fix this error, you can configure the innovaphone PBX to ignore the wrong hold-signaling:&lt;br /&gt;
&lt;br /&gt;
 http://ip-of-pbx/!config add SIP /take-sendonly-as-inactive&lt;br /&gt;
 http://ip-of-pbx/!config write&lt;br /&gt;
 http://ip-of-pbx/!config activate&lt;br /&gt;
&lt;br /&gt;
Please keep in mind that this option will affect all SIP/UDP communication. So if you have for example another 3rd party SIP-device, which wants to play its own MOH - it will not work anymore.&lt;br /&gt;
&lt;br /&gt;
==== Usernames with whitespace ====&lt;br /&gt;
Customer reported that when registering a Gigaset-device at an object-name with whitespace (e.g. John Doe), because of a bug on the Gigaset SIP-stack ut will not be possible to put a remote device on hold. As a workaround, don&#039;t remove the whitespace from the object-name (e.g. JohnDoe).&lt;br /&gt;
&lt;br /&gt;
==== Recalling DECT device after transfer ====&lt;br /&gt;
With firmware v43, when you make a call transfer from a DECT phone to somewhere else, ~15 seconds you receive a recall call on the DECT phone.&lt;br /&gt;
Make a downgrade to v42 to work arround the problem.&lt;br /&gt;
The same happens in the gigaset N720 multi cell environment with firmwares above 098&lt;br /&gt;
&lt;br /&gt;
==== innovaphone PBX Version 13 and Chat App ====&lt;br /&gt;
When using myApps to send chat messages to a user, the PBX broadcasts the IM-SETUP (instant-message) to all registered endpoints of the addressed user. Customer reported that Gigaset seems to take this as a regular media call and the phone starts ringing upon receiving a chat message, where in fact this is an instant messaging call. Bug needs to be reported to Gigaset. (Some newer systems of the N5xx series have an option to activate or disable the response to those IM messages.)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compat|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Howto:Gigaset_N510_PRO_-_Gigaset_-_Testreport&amp;diff=54812</id>
		<title>Howto:Gigaset N510 PRO - Gigaset - Testreport</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Howto:Gigaset_N510_PRO_-_Gigaset_-_Testreport&amp;diff=54812"/>
		<updated>2020-01-22T12:52:17Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Summary==&lt;br /&gt;
&lt;br /&gt;
The Gigaset N510IP PRO DECT base-station supports all required innovaphone features and is therefore qualified as [[Howto:What_is_a_%22recommended_product%22%3F|recommended product]]. &lt;br /&gt;
&lt;br /&gt;
The usage of wideband codecs of the phone were tested successfully. The integration of the innovaphone voicemail in the Gigaset solution is possible. The message waiting indication will be displayed on the handsets. The handsets support 3-party conference calls.&lt;br /&gt;
&lt;br /&gt;
The Gigaset N510IP PRO DECT base-station was tested successfully also in a [[Howto:Hosting#Overview | hosted setup]]. The test results are the same as if the N510IP is used in a normal (in the same LAN as the PBX) setup. It is not required to activate MediaRelay on the Frontend.&lt;br /&gt;
&lt;br /&gt;
==Certification Status==&lt;br /&gt;
&lt;br /&gt;
{{Template:Compat Status &amp;quot;tested&amp;quot;}}&lt;br /&gt;
&amp;lt;!-- {{Template:Compat Status &amp;quot;in progress&amp;quot;}}--&amp;gt;&lt;br /&gt;
&amp;lt;!-- {{Template:Compat Status &amp;quot;certified&amp;quot;|certificate=Siemens Gigaset S685IP_-_Siemens_-_3rd_Party_Product_-_Desc-product-cert.pdf}}--&amp;gt;&lt;br /&gt;
&amp;lt;!-- {{Template:Compat Status &amp;quot;tested&amp;quot;}}--&amp;gt;&lt;br /&gt;
&amp;lt;!-- {{Template:Compat Status &amp;quot;rejected&amp;quot;}} --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Testing of this product has been finalized September 6th, 2013.&lt;br /&gt;
&lt;br /&gt;
==Version==&lt;br /&gt;
Firmware Version:&lt;br /&gt;
* 42.078 (420780000000 / V42.00)&lt;br /&gt;
&lt;br /&gt;
innovaphone Firmware:&lt;br /&gt;
* V10 SR3&lt;br /&gt;
* TSP 8150&lt;br /&gt;
&lt;br /&gt;
== Test Setup ==&lt;br /&gt;
[[Image:Testreport_Terminals_SIP_or_H323_1.PNG]]&lt;br /&gt;
&lt;br /&gt;
==Device Setup==&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|Register Device w/o specific configuration (requires DHCP)&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|DHCP is default&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|DHCP yields timeserver and time displays correctly&lt;br /&gt;
|No, set static to public NTP server&lt;br /&gt;
|----&lt;br /&gt;
|SNTP config has TZ string for timezone/dst autoconfig&lt;br /&gt;
|No, set static to public NTP server&lt;br /&gt;
|----&lt;br /&gt;
|DHCP yields correct default gateway&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device supports magic registration (e.g. by serial)&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Fixed registrations works&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers w/o Extension (just by name)&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers by name with non-latin1 characters (e.g. UserÄÖÜ)&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers by extension&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers with password&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device registers multiple identities&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|2nd GK is supported&lt;br /&gt;
|According to [https://gigaset.atlassian.net/wiki/pages/viewpage.action?pageId=28540959 gigaset-wiki] only by DNS according to RFC3263&lt;br /&gt;
|----&lt;br /&gt;
|Device supports Redirection of Registration (Master redirects to Slave)&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Device supports STUN protocol&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device sends NAT - keepalive messages&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device refreshes the PBX registration&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device supports SIP over TCP&lt;br /&gt;
|Not tested in LAN setup. Not usable for Hosting Setup, TCP connection is close immediately after SIP-TCP messages was sent. As a result - in a hosting setup the phone is not reachable for incoming calls.&lt;br /&gt;
|----&lt;br /&gt;
|Device supports SRTP&lt;br /&gt;
|Not tested, needs SIPS&lt;br /&gt;
|----&lt;br /&gt;
|Device supports SIPS (SIP over TLS)&lt;br /&gt;
|Not OK, registration fails&lt;br /&gt;
|----&lt;br /&gt;
|Device supports HTTPS&lt;br /&gt;
|Not for Admin access on the Web-page, probably as HTTP-client to retrieve firmware/configuration from remote servers&lt;br /&gt;
|----&lt;br /&gt;
|Device supports VAD (Voice activity detection)&lt;br /&gt;
|Not tested, according to manual supported&lt;br /&gt;
|----&lt;br /&gt;
|Supported menu languages&lt;br /&gt;
|many, check [http://gigaset.com/de/de/pages/index.html product specifications]&lt;br /&gt;
|----&lt;br /&gt;
|3-party conference&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Test Results==&lt;br /&gt;
&lt;br /&gt;
=== Basic Call ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result with MR&lt;br /&gt;
|----&lt;br /&gt;
|call using g711a&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|call using g711u&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|call using g729&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|call using g722&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Overlapped sending&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Device sets up an early media channel for incoming calls&lt;br /&gt;
|N/A&lt;br /&gt;
|----&lt;br /&gt;
|Device sets up an early media channel for outgoing calls&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows called id number&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows called id name&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows called id display info&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Fax using T.38&lt;br /&gt;
|N/A&lt;br /&gt;
|----&lt;br /&gt;
|CGPN can be suppressed&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Reverse Media Negotiation&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows CDPN/CGPN on incoming call&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows CDPN/CGPN on outgoing call&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows connected number&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Device shows diverting number&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Device supports distinctive ringing&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device supports asymetric codec negotiation&lt;br /&gt;
|Not tested&lt;br /&gt;
|----&lt;br /&gt;
|Device supports codec renegotiation during a conversation&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows correct display message in case of busy CDPN&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device shows correct display message in case of not existing CDPN&lt;br /&gt;
|No, it says &amp;quot;Not available&amp;quot;&lt;br /&gt;
|----&lt;br /&gt;
|Device shows correct display message in case that the call is declined&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|3party conference possible&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device supports display updates during call(needed for Directory Search object)&lt;br /&gt;
|No&lt;br /&gt;
|----&lt;br /&gt;
|Long Time Call (&amp;gt;30 min) works?&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Incoming SRTP call - SRTP not enabled on DUT&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Incoming SRTP call - SRTP enabled on DUT&lt;br /&gt;
|Not tested, requires sips&lt;br /&gt;
|----&lt;br /&gt;
|Voice Quality OK?&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== DTMF ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|DTMF tones sent correctly&lt;br /&gt;
|OK&lt;br /&gt;
|----&lt;br /&gt;
|DTMF tones received correctly&lt;br /&gt;
|OK, DTMFs are sent as RTP-Events (no DTMF dependent function on Gigaset device)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Hold/Retrieve ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result &lt;br /&gt;
|----&lt;br /&gt;
|Device handles incoming hold correctly&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Device can put a call on hold using correctly(inactive or sendonly)&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Transfer with consultation ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Voice Ok?&lt;br /&gt;
!MoH Ok?&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno2 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
||inno1 calls inno2. inno1 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. testphone transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. testphone transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Transfer without consultation (alerting only) ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Voice Ok?&lt;br /&gt;
!MoH Ok?&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno2 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
||inno1 calls inno2. inno1 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. testphone transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. testphone transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Blind Transfer ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Voice Ok?&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno2 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno1 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. testphone transfers to inno2.&lt;br /&gt;
|N/A, device does only transfer with consultation&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. testphone transfers to inno2.&lt;br /&gt;
|N/A, device does only transfer with consultation&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Blind Transfer (alerting only)===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Voice Ok?&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls inno2. inno2 transfers to testphone.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 calls testphone. testphone transfers to inno2.&lt;br /&gt;
|N/A, device does only transfer with consultation&lt;br /&gt;
|----&lt;br /&gt;
|testphone calls inno1. inno1 transfers to inno2.&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Broadcast Group &amp;amp; Waiting Queue ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result &lt;br /&gt;
|----&lt;br /&gt;
|testphone makes call to a Broadcast Group. inno1 picks up.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 makes call to a Broadcast Group. testphone picks up.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone makes call to a Waiting Queue. inno1 picks up before announcement is played.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|testphone makes call to a Waiting Queue. inno1 picks up after announcement is played.&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|inno1 makes call to a Waiting Queue. testphone picks up.&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== DTMF Features ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|CFU Activate/Deactivate            &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|CFB Activate/Deactivate        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|CFNR Activate/Deactivate        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Pickup Group&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Pickup Directed        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Park/Unpark        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Park To/Unpark From        &lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Call Completion Busy&lt;br /&gt;
|Nok, Gigaset rejects incoming call for starting CCBS/CCNR&lt;br /&gt;
|----&lt;br /&gt;
|Call Completion Cancel&lt;br /&gt;
|Not tested, since CCBS/CCNR does not work&lt;br /&gt;
|----&lt;br /&gt;
|Join Group/Leave Group&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Join All Groups/Leave All Groups&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|Enable mobility/Disable mobility        &lt;br /&gt;
|Not tested, feature is invoked by mobile phone&lt;br /&gt;
|----&lt;br /&gt;
|Enable mobility cw/Disable mobility cw        &lt;br /&gt;
|Not tested, feature is invoked by mobile phone&lt;br /&gt;
|----&lt;br /&gt;
|Set presence&lt;br /&gt;
|Ok&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Other Features==&lt;br /&gt;
&lt;br /&gt;
===Directory===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|Device built-in directory&lt;br /&gt;
|----&lt;br /&gt;
|Exists&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Can be dialled from&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Does CLI resolution&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|display update if directory object is used?&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
*It is possible to configure a connection to an online source like DE - Klicktel. Please take a look into the manual or configuration.&lt;br /&gt;
*It is possible to import and export the local Phonebook.&lt;br /&gt;
*You can add the call to the local phonebook from the call-list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|External LDAP Server supported&lt;br /&gt;
|Yes, tested with Estos Metadir. PBX not supported as external LDAP server and LDAPS not supported.&lt;br /&gt;
|----&lt;br /&gt;
|Can be dialled from&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|Does CLI resolution&lt;br /&gt;
|Yes&lt;br /&gt;
|----&lt;br /&gt;
|display update if directory object is used?&lt;br /&gt;
|Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Keys===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|Device has speed dial keys&lt;br /&gt;
|Yes, depending on handset&lt;br /&gt;
|----&lt;br /&gt;
|Device has programmable function keys&lt;br /&gt;
|Yes, depending on handset&lt;br /&gt;
|----&lt;br /&gt;
|Device has partner keys&lt;br /&gt;
|No&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===CTI Features (with SOAP / TAPI / myPBX) ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Tested feature&lt;br /&gt;
!Result&lt;br /&gt;
|----&lt;br /&gt;
|User Call - outgoing call&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Connect - Answer incoming call&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Reject - Reject alerting call&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Disconnect - Disconnect active call&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Hold - Put connected call on hold&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Hold Retrieve - Retrieve call on hold&lt;br /&gt;
|Ok&lt;br /&gt;
|----&lt;br /&gt;
|User Transfer - Transfer with Consult&lt;br /&gt;
|Nok(myPBX), Ok(Tapi/Soap)&lt;br /&gt;
|----&lt;br /&gt;
|User Transfer - Transfer with Consult (Alerting only)&lt;br /&gt;
|Nok(myPBX), Ok(Tapi/Soap)&lt;br /&gt;
|----&lt;br /&gt;
|User Transfer - Blind Transfer&lt;br /&gt;
|Ok, Ok(Tapi/Soap)&lt;br /&gt;
|----&lt;br /&gt;
|3PTY - Make 3rd Party Call&lt;br /&gt;
|Nok(myPBX), Nok(Tapi/Soap)&lt;br /&gt;
|----&lt;br /&gt;
|Connected Number Update on Display&lt;br /&gt;
|No&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* tested with myPBX and TSP(8150)only&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== innovaphone configuration ===&lt;br /&gt;
Add a new PBX object of type &amp;quot;user&amp;quot;:&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - PBX_Userobject.png]]&lt;br /&gt;
&lt;br /&gt;
=== 3rd party product configuration ===&lt;br /&gt;
&lt;br /&gt;
====IP Configuration====&lt;br /&gt;
&lt;br /&gt;
First you have to configure the general &#039;&#039;IP Configuration&#039;&#039; for the base-station.&lt;br /&gt;
&lt;br /&gt;
* IP Address&lt;br /&gt;
* Subnet Mask&lt;br /&gt;
* Default Gateway&lt;br /&gt;
* DNS&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_IP_Configuration_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
====Telephony Connection====&lt;br /&gt;
&lt;br /&gt;
In the next step you have to create a registration from the DECT/IP base-station to the PBX. Go to &#039;&#039;Telephony-&amp;gt;Connections&#039;&#039; and &#039;&#039;edit&#039;&#039; the first entry.&lt;br /&gt;
&lt;br /&gt;
Click on &#039;&#039;Select Provider&#039;&#039; and choose your country and &#039;&#039;innovaphonePBX&#039;&#039;. This will ensure that all settings are configured correctly.&lt;br /&gt;
&lt;br /&gt;
The device still needs the IP address of the PBX to register at and the name of the user for whom the registration shall be made. Click on &#039;&#039;Show advanced settings&#039;&#039; in order to enter as &#039;&#039;Domain&#039;&#039; name the IP address of your innovaphone PBX. &lt;br /&gt;
&lt;br /&gt;
Please note that the registration credentials configured at the Gigaset phone use the &#039;&#039;number&#039;&#039; of the corresponding PBX object, not its name. Registration by using the name is also possible, but will result in CGPN display problems when making calls from the Gigaset phone to a mobility enabled user.&lt;br /&gt;
&lt;br /&gt;
When using the Reverse Proxy, you have to set the protocol to TCP instead of UDP&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_Telefonie_Connection_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
====Number Assignment====&lt;br /&gt;
&lt;br /&gt;
If you have more than one DECT handset registered to your base-station, you can use the &#039;&#039;Telephony-&amp;gt;Number Assignment&#039;&#039; menu to assign a DECT handset to a specific PBX registration.&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_Number_Assignment.png]]&lt;br /&gt;
&lt;br /&gt;
To work with CTI clients like myPBX we need to configure the Call Manager with the handset that should handle this CTI calls and the mode (headset/handsfree).&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_Call_Manager.png]]&lt;br /&gt;
&lt;br /&gt;
====Voicemail====&lt;br /&gt;
To get the current voicemail status displayed on your DECT handset, you have to enter the corresponding innovaphone voicemail number in the &#039;&#039;Telephony-&amp;gt;Network Mailbox&#039;&#039; menu.&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_VM_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
====Phone Directory - Adress Book====&lt;br /&gt;
&lt;br /&gt;
You can import/export and save the local phonebook. Have a look at the configuration description in the Gigaset manual.&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_Phone_Directory_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
====Enhanced VoIP Settings====&lt;br /&gt;
&lt;br /&gt;
If the device is used in a hosted setup, make sure that the following settings are configured:&lt;br /&gt;
* Automatic Negotiation of DTMF transmission: &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
* Find target addr. automatically: &#039;&#039;&#039;Yes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At last you can configure some enhanced VoIP Settings like the handling of the &amp;quot;R&amp;quot; button. For more information have a look at the configuration description in the Gigaset manual.&lt;br /&gt;
&lt;br /&gt;
[[Image:Siemens Gigaset N510IP PRO - Gigaset_advanced_VoIP_Settings_ENG.png]]&lt;br /&gt;
&lt;br /&gt;
=== Known problems ===&lt;br /&gt;
&lt;br /&gt;
==== innovaphone PBX Version 12 ====&lt;br /&gt;
&lt;br /&gt;
With the upcoming version 12 from innovaphone AG we have implemented the security feature [https://tools.ietf.org/html/rfc3261#section-22.4 SIP digest authentication] . If the client does not support this feature the PBX will reject the registration.&lt;br /&gt;
&lt;br /&gt;
There is a config option to avoid this if you use a older firmware.&lt;br /&gt;
&lt;br /&gt;
 http://ip-of-pbx/!config change SIP /disable-digest-replay-check &lt;br /&gt;
 http://ip-of-pbx/!config write&lt;br /&gt;
 http://ip-of-pbx/!config activate&lt;br /&gt;
&lt;br /&gt;
This problem has been &#039;&#039;&#039;fixed by Gigaset with N510 Firmware 42.240&#039;&#039;&#039;, November 2016 and later&lt;br /&gt;
&lt;br /&gt;
==== MoH ====&lt;br /&gt;
Customer reported that even when choosing as Providerprofile &#039;&#039;innovaphonePBX&#039;&#039;, MoH was not audible when a call was put on hold by the Gigaset device. The reason for this is that the Gigaset signals the hold using a &amp;quot;sendonly&amp;quot; instead of an &amp;quot;inactive&amp;quot; SDP-attribute. &lt;br /&gt;
To fix this error, you can configure the innovaphone PBX to ignore the wrong hold-signaling:&lt;br /&gt;
&lt;br /&gt;
 http://ip-of-pbx/!config add SIP /take-sendonly-as-inactive&lt;br /&gt;
 http://ip-of-pbx/!config write&lt;br /&gt;
 http://ip-of-pbx/!config activate&lt;br /&gt;
&lt;br /&gt;
Please keep in mind that this option will affect all SIP/UDP communication. So if you have for example another 3rd party SIP-device, which wants to play its own MOH - it will not work anymore.&lt;br /&gt;
&lt;br /&gt;
==== Usernames with whitespace ====&lt;br /&gt;
Customer reported that when registering a Gigaset-device at an object-name with whitespace (e.g. John Doe), because of a bug on the Gigaset SIP-stack ut will not be possible to put a remote device on hold. As a workaround, don&#039;t remove the whitespace from the object-name (e.g. JohnDoe).&lt;br /&gt;
&lt;br /&gt;
==== Recalling DECT device after transfer ====&lt;br /&gt;
With firmware v43, when you make a call transfer from a DECT phone to somewhere else, ~15 seconds you receive a recall call on the DECT phone.&lt;br /&gt;
Make a downgrade to v42 to work arround the problem.&lt;br /&gt;
The same happens in the gigaset N720 multi cell environment with firmwares above 098&lt;br /&gt;
&lt;br /&gt;
==== innovaphone PBX Version 13 and Chat App ====&lt;br /&gt;
When using myApps to send chat messages to a user, the PBX broadcasts the IM-SETUP (instant-message) to all registered endpoints of the addressed user. Customer reported that Gigaset seems to take this as a regular media call and the phone starts ringing upon receiving a chat message, where in fact this is an instant messaging call. Bug needs to be reported to Gigaset.&lt;br /&gt;
&lt;br /&gt;
[[Category:Compat|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r1:Apps/PbxManager/Waiting_Queues&amp;diff=54697</id>
		<title>Reference13r1:Apps/PbxManager/Waiting Queues</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r1:Apps/PbxManager/Waiting_Queues&amp;diff=54697"/>
		<updated>2020-01-09T08:48:11Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Configure your Waiting Queues&lt;br /&gt;
&lt;br /&gt;
== Add a Waiting Queue ==&lt;br /&gt;
; Waiting Queue&lt;br /&gt;
: Long Name of the PBX object&lt;br /&gt;
&lt;br /&gt;
; SIP&lt;br /&gt;
: Name of the PBX object&lt;br /&gt;
&lt;br /&gt;
; Number&lt;br /&gt;
: Number of the PBX object&lt;br /&gt;
&lt;br /&gt;
== Edit a Waiting Queue ==&lt;br /&gt;
; Waiting Queue&lt;br /&gt;
: Long Name of the PBX object&lt;br /&gt;
&lt;br /&gt;
; SIP&lt;br /&gt;
: Name of the PBX object&lt;br /&gt;
&lt;br /&gt;
; Number&lt;br /&gt;
: Number of the PBX object&lt;br /&gt;
&lt;br /&gt;
=== Call forwarding ===&lt;br /&gt;
Configure Call forwardings&lt;br /&gt;
&lt;br /&gt;
Structure of a forwarding rule:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
! Parameter&lt;br /&gt;
! Type&lt;br /&gt;
! Target&lt;br /&gt;
! Condition&lt;br /&gt;
! Boolean&lt;br /&gt;
! Save&lt;br /&gt;
! Delete&lt;br /&gt;
|-&lt;br /&gt;
! Hint&lt;br /&gt;
| Always (cfu)&amp;lt;br /&amp;gt;On busy (cfb)&amp;lt;br /&amp;gt;On no repsonse (cfnr)&lt;br /&gt;
| Number or Name&lt;br /&gt;
| true/false&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Announcements ===&lt;br /&gt;
&lt;br /&gt;
The 1st announcement is played once when the call is connected. When the 1st announcement is complete, the 2nd announcement is played repeatedly. If there is no 2nd announcement, the caller will be disconnected when the 1st announcement is completed.&lt;br /&gt;
&lt;br /&gt;
; Announcement 1&lt;br /&gt;
: [[{{NAMESPACE}}:PBX/Objects/Waiting_Queue#Announcements|See Announcement specific configuration]]&lt;br /&gt;
&lt;br /&gt;
; Announcement 2&lt;br /&gt;
: [[{{NAMESPACE}}:PBX/Objects/Waiting_Queue#Announcements|See Announcement specific configuration]]&lt;br /&gt;
&lt;br /&gt;
=== Agents ===&lt;br /&gt;
Select the Agents&lt;br /&gt;
&lt;br /&gt;
=== Settings === &lt;br /&gt;
[[{{NAMESPACE}}:PBX/Objects/Waiting_Queue|See Waiting Queue specific configuration options]]&lt;br /&gt;
&lt;br /&gt;
=== DMTF two stage dialing ===&lt;br /&gt;
[[{{NAMESPACE}}:PBX/Objects/Waiting_Queue##DTMF_destinations|See DTMF specific configuration]]&lt;br /&gt;
&lt;br /&gt;
= Related Articles = &lt;br /&gt;
* [[Course13:IT_Connect_-_07_Waiting_Queues]]&lt;br /&gt;
* [[{{NAMESPACE}}:PBX/Objects/Waiting_Queue]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r1:Apps/PbxManager/Trunks&amp;diff=54696</id>
		<title>Reference13r1:Apps/PbxManager/Trunks</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r1:Apps/PbxManager/Trunks&amp;diff=54696"/>
		<updated>2020-01-09T08:44:27Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Configure your Trunklines&lt;br /&gt;
&lt;br /&gt;
== Add Trunk ==&lt;br /&gt;
&lt;br /&gt;
Create a new Trunk object on the PBX&lt;br /&gt;
&lt;br /&gt;
; Name&lt;br /&gt;
: The Long Name of the PBX object&lt;br /&gt;
&lt;br /&gt;
; Number&lt;br /&gt;
: The number of the object&lt;br /&gt;
&lt;br /&gt;
; Loopback&lt;br /&gt;
: [[{{NAMESPACE}}:PBX/Objects/Trunk_Line#Trunk_Object_specific_configuration|See Trunk specific configurations]]&lt;br /&gt;
&lt;br /&gt;
; Incomplete&lt;br /&gt;
: [[{{NAMESPACE}}:PBX/Objects/Trunk_Line#Trunk_Object_specific_configuration|See Trunk specific configurations]]&lt;br /&gt;
&lt;br /&gt;
; Invalid&lt;br /&gt;
: [[{{NAMESPACE}}:PBX/Objects/Trunk_Line#Trunk_Object_specific_configuration|See Trunk specific configurations]]&lt;br /&gt;
&lt;br /&gt;
; Busy&lt;br /&gt;
: [[{{NAMESPACE}}:PBX/Objects/Trunk_Line#Trunk_Object_specific_configuration|See Trunk specific configurations]]&lt;br /&gt;
&lt;br /&gt;
; Rejected&lt;br /&gt;
: [[{{NAMESPACE}}:PBX/Objects/Trunk_Line#Trunk_Object_specific_configuration|See Trunk specific configurations]]&lt;br /&gt;
&lt;br /&gt;
; No anwser&lt;br /&gt;
: [[{{NAMESPACE}}:PBX/Objects/Trunk_Line#Trunk_Object_specific_configuration|See Trunk specific configurations]]&lt;br /&gt;
&lt;br /&gt;
; Interfaces/SBC&lt;br /&gt;
: You have first to create the Trunk. Afterwards you can reopen the Trunk configuration and configure the connected Interface/SBC&lt;br /&gt;
&lt;br /&gt;
== Edit Trunk ==&lt;br /&gt;
&lt;br /&gt;
; Interfaces/SBC&lt;br /&gt;
: Select the target Gateway and the Interface (BRI/PRI/TEL) or an SBC Interface (SIP1-SIP16) for the Trunk&lt;br /&gt;
&lt;br /&gt;
= Related Articles = &lt;br /&gt;
* [[Course13:IT_Connect_-_05_Using_Trunks]]&lt;br /&gt;
* [[{{NAMESPACE}}:PBX/Objects/Trunk_Line]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r1:Apps/PbxManager/APs&amp;diff=54695</id>
		<title>Reference13r1:Apps/PbxManager/APs</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r1:Apps/PbxManager/APs&amp;diff=54695"/>
		<updated>2020-01-09T08:41:55Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Configure connected App Platforms&lt;br /&gt;
&lt;br /&gt;
== Add App Platform ==&lt;br /&gt;
&lt;br /&gt;
Create a new AP object on the PBX&lt;br /&gt;
&lt;br /&gt;
; Title&lt;br /&gt;
: The Long Name of the PBX object&lt;br /&gt;
&lt;br /&gt;
; SIP ID&lt;br /&gt;
: The Name of the PBX object&lt;br /&gt;
&lt;br /&gt;
; Host name&lt;br /&gt;
: The Hostname of the target AP without &amp;quot;https://&amp;quot; &lt;br /&gt;
&lt;br /&gt;
== App Platforms ==&lt;br /&gt;
&lt;br /&gt;
You see your configured AP Platforms&lt;br /&gt;
&lt;br /&gt;
; Title&lt;br /&gt;
: The Long Name of the PBX object&lt;br /&gt;
&lt;br /&gt;
; Host name&lt;br /&gt;
: The Hostname of the target AP without &amp;quot;https://&amp;quot; &lt;br /&gt;
&lt;br /&gt;
; Checkmark&lt;br /&gt;
: If the checkmark is shown then the AP is successfully connected&lt;br /&gt;
&lt;br /&gt;
= Related Articles = &lt;br /&gt;
* [[Course13:IT_Connect_-_13_Design_of_the_Application_Platform]]&lt;br /&gt;
* [[Reference13r1:Concept_App_Platform]]&lt;br /&gt;
* [[Howto:V13_Hosting_-_Central_AP_for_multiple_customers]]&lt;br /&gt;
* [[Howto:V13_Hosting_-_Dedicated_AP_for_every_customer]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Howto13r1:Firewall_Settings&amp;diff=53262</id>
		<title>Howto13r1:Firewall Settings</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Howto13r1:Firewall_Settings&amp;diff=53262"/>
		<updated>2019-08-20T13:39:22Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!-- Keywords: firewall settings, ports, workload, turn config, policies, firewall rules, firewall --&amp;gt;&lt;br /&gt;
==Applies To==&lt;br /&gt;
This information applies to&lt;br /&gt;
&lt;br /&gt;
V13 and up&lt;br /&gt;
&lt;br /&gt;
==Scenario: Reverse Proxy in a DMZ==&lt;br /&gt;
&lt;br /&gt;
Here we would like to give an overview of the necessary ports and protocols for a reverse proxy in a DMZ.&lt;br /&gt;
&lt;br /&gt;
The scenario would be that a reverse proxy is used in a DMZ. The DMZ has a link to the WAN and LAN.&lt;br /&gt;
&lt;br /&gt;
===Configuration===&lt;br /&gt;
&lt;br /&gt;
*Before you can setup your Firewall you have to read the book [[Course13:IT_Connect_-_10.0_Reverse_Proxy|Reverse Proxy]] in the [[Special:Prefixindex/Course13:|V13 IT Connect Training]].&lt;br /&gt;
*You can see the full [http://class.innovaphone.com/moodle2/file.php/701/Course_Data%2FReverse_Proxy%2FInnovaphone_Workload.png visual presentation] in the book of the [[Course12:Advanced_-_Reverse_Proxy|V12 Reverse Proxy Lesson]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;10&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color: #EAECF0;text-align:center&amp;quot;|WAN &amp;amp;rArr; DMZ (Reverse Proxy) !! style=&amp;quot;background-color: #EAECF0;text-align:center&amp;quot;|DMZ (Reverse Proxy) &amp;amp;rArr; inside (PBX) !! style=&amp;quot;background-color: #EAECF0;text-align:center&amp;quot;|DMZ (Reverse Proxy) &amp;amp;rArr; inside (Application Platform) !! style=&amp;quot;background-color: #EAECF0;text-align:center&amp;quot;|inside &amp;amp;rArr; DMZ (Reverse Proxy) !! style=&amp;quot;background-color: #EAECF0;text-align:center&amp;quot;|DMZ (Reverse Proxy) &amp;amp;rArr; WAN&lt;br /&gt;
|-&lt;br /&gt;
| STUN/TURN (udp/tcp/3478) || / || / || STUN/TURN (udp/tcp/3478) || /&lt;br /&gt;
|-&lt;br /&gt;
| LDAPS (tcp/636)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally LDAP (tcp/389) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to offer LDAP lookups&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|| LDAPS (tcp/636)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally LDAP (tcp/389) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to offer LDAP lookups&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|| LDAPS (tcp/636)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally LDAP (tcp/389) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to offer LDAP lookups&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|| / &lt;br /&gt;
|| /&lt;br /&gt;
|-&lt;br /&gt;
| HTTPS (tcp/443)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally HTTP (tcp/80) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to offer myApps&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;please also allow wss/ws (websocket) connections&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|| HTTPS (tcp/443)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally HTTP (tcp/80) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to offer myApps&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;please also allow wss/ws (websocket) connections&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|| HTTPS (tcp/443)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally HTTP (tcp/80) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to offer myApps&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;please also allow wss/ws (websocket) connections&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|| HTTPS (tcp/&amp;lt;your custom port&amp;gt;)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;Advanced UI admin access&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|| / &lt;br /&gt;
|-&lt;br /&gt;
| H.323 (tcp/1300)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally H.323 (tcp/1720) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to offer Phone registrations&amp;lt;/span&amp;gt;&#039;&#039; &lt;br /&gt;
|| H.323 (tcp/1300)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally H.323 (tcp/1720) if you need plaintext or username/password auths with invalid certificates&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to offer Phone registrations&amp;lt;/span&amp;gt;&#039;&#039; &lt;br /&gt;
|| / &lt;br /&gt;
|| / &lt;br /&gt;
|| /&lt;br /&gt;
|-&lt;br /&gt;
| SIPS (tcp/5061)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally SIP (tcp/5060) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed &#039;&#039;&#039;only&#039;&#039;&#039; if you want to accept SIP registrations&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|| SIPS (tcp/5061)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally SIP (tcp/5060) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed &#039;&#039;&#039;only&#039;&#039;&#039; if you want to accept SIP registrations&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|| / &lt;br /&gt;
|| /&lt;br /&gt;
|| SIPS (tcp/5061)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;optionally SIP (tcp/5060) if you need plaintext&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to register a SIP Trunk from the RP to Provider and your Provider doesn&#039;t support TURN&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| / || / || / || RTP (udp/16384-32767)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to register a SIP Trunk from the RP to Provider and your Provider doesn&#039;t support TURN&amp;lt;/span&amp;gt;&#039;&#039; &lt;br /&gt;
|| RTP (udp/16384-32767)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&amp;amp;bull; &amp;lt;span style=&amp;quot;font-size:11px;&amp;quot;&amp;gt;needed if you want to register a SIP Trunk from the RP to Provider and your Provider doesn&#039;t Support TURN&amp;lt;/span&amp;gt;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Related Articles ==&lt;br /&gt;
* [[Course13:IT_Connect_-_10.0_Reverse_Proxy]]&lt;br /&gt;
* [[Course12:Advanced_-_Reverse_Proxy]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference12r2:Concept_myPBX_for_iOS&amp;diff=52852</id>
		<title>Reference12r2:Concept myPBX for iOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference12r2:Concept_myPBX_for_iOS&amp;diff=52852"/>
		<updated>2019-07-24T07:16:55Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Concept|iOS Softwarephone]]&lt;br /&gt;
Version 12r1 introduces myPBX for iOS, an iOS app for iPhone and iPad that provides similar features than the desktop phones IP222 and IP232 in the WLAN via H.323.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
=== PBX ===&lt;br /&gt;
* myPBX license matching the PBX version (enabled at the user object)&lt;br /&gt;
* Uses Port-Lic since does an active registration on the PBX like an IP Phone.&lt;br /&gt;
&lt;br /&gt;
=== iPhone/iPad ===&lt;br /&gt;
* An iPhone or iPad running iOS 8.0 or higher for best user experience but interoperability with earlier iOS versions beginning with 6.0 is supported.&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
For a feature overview refer to [[{{NAMESPACE}}:Concept_myPBX_derviates_and_features|myPBX derivates and features]].&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
Install the app from the App Store. Search for &amp;quot;innovaphone&amp;quot; and &amp;quot;myPBX&amp;quot; to locate it.&lt;br /&gt;
Start the myPBX for iOS app and enter the credentials for registration on your PBX in the setup screen.&lt;br /&gt;
&lt;br /&gt;
== Configuration via WEB browser ==&lt;br /&gt;
For configuration via WEB browser determine the IP address that has been assigned to the iPhone in the WLAN. It&#039;s shown on the setup screen of the app and in the WLAN settings. Access http on port 10006 or https on port 10007 from the browser of an iMac or PC. Make sure that myPBX for iOS is started and running in the foreground on the iPhone:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://xx.xx.xx.xx:10006&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;https://xx.xx.xx.xx:10007&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To log in to the configuration enter&lt;br /&gt;
 User name: admin&lt;br /&gt;
 Password: mypbx&lt;br /&gt;
&lt;br /&gt;
== Configuration via e-mail ==&lt;br /&gt;
Since 12r1 sr 8 and 12r2 beta 4 configuration commands can be passed to the app via an URI. The URI might be sent to the iPhone by e-mail or made available as link in a web page. The URI must start with&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;com.innovaphone.commands://&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
I.e. URI scheme &amp;quot;com.innovaphone.commands&amp;quot;. It might be followed by any sequence of configuration commands to set module parameters or variables. Please refer to the update script documentation. Commands must be separated by newline which needs to be replaced by &amp;quot;%0d%0a&amp;quot;. Spaces might be replaced by &#039;+&#039;. E.g.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;ser&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config change PHONE SIG /h323 user /prot SH323 /gk-addr thepbx.company.com /gk-id company.com&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;vars create PHONE/USER-PWD/00000 pc 1234567890abcdef&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config change MEDIA /stun thestun.company.com /turn theturn.company.com /turn-user turnuser&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;vars create MEDIA/TURN-PWD pc 8cb5df61335a13ea6a9f540db8224d99cecfe54ec663f29ea94df478ccc1c285&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config change UP1 /url http://updateserver.company.com/init /poll 1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config change MAIN /deny-uri-commands 1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config activate&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config write&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
Results in the following prepared link&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;com.innovaphone.commands://ser%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config+change+PHONE+SIG+/h323+user+/prot+SH323+/gk-addr+thepbx.company.com+/gk-id+company.com%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;vars+create+PHONE/USER-PWD/00000+pc+1234567890abcdef%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config+change+MEDIA+/stun+thestun.company.com+/turn+theturn.company.com+/turn-user+turnuser%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;vars+create+MEDIA/TURN-PWD+pc+8cb5df61335a13ea6a9f540db8224d99cecfe54ec663f29ea94df478ccc1c285%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config+change+UP1+/url+http://updateserver.company.com/init+/poll+1%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config+change+MAIN+/deny-uri-commands+1%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config+activate%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config+write%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;reset%0d%0a&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
It might be placed as hypertext link into a mail and sent to the iPhone for first provisioning. Once the user clicks the link, the app starts and carries out the commands.&lt;br /&gt;
&lt;br /&gt;
Note: [[{{NAMESPACE}}:Concept_myPBX_for_iOS#Configuration_via_e-mail_not_working_with_all_mail_clients]]&lt;br /&gt;
&lt;br /&gt;
Note that the command&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;config change MAIN /deny-uri-commands 1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
prevents further provisioning commands via this mechanism.&lt;br /&gt;
&lt;br /&gt;
=== Considerations for vars create ===&lt;br /&gt;
The vars create command needs its value URL encoded. Spaces must be denoted as %2520 to leave %20 after the first step of URL decoding or as %2b to leave + which means space. A plus seen as %2b in the command must we re-written as %252b. E.g. the configuration command&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;vars create PHONE/USER-REG/00001 p %3creg+gk-addr=%27172.16.1.1%27+e164=%27123%27+h323=%27user%2btest%27+/%3e&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
needs to be embedded in the mail as one of these&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;vars+create+PHONE/USER-REG/00001+p+%3creg%2bgk-addr=%27172.16.1.1%27%2be164=%27123%27%2bh323=%27user%252btest%27%2b/%3e&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;vars+create+PHONE/USER-REG/00001+p+%3creg%2520gk-addr=%27172.16.1.1%27%2520e164=%27123%27%2520h323=%27user%252btest%27%2520/%3e&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Issue with some older myPBX iOS Versions ===&lt;br /&gt;
Some older myPBX iOS versions garble the first command.  It is therefore recommended that you insert a first, useless command (e.g. &amp;lt;code&amp;gt;ser&amp;lt;/code&amp;gt;) as first command in to your command sequence.&lt;br /&gt;
&lt;br /&gt;
== Settings ==&lt;br /&gt;
Most of the configuration of myPBX for iOS in the config screen is identical to the one of the desktop telephone IP222. Instead of the device settings you will find the app settings, which are specific to iOS.&lt;br /&gt;
&lt;br /&gt;
[[Image:mypbx_ios_app_settings_reference.jpg]]&lt;br /&gt;
&lt;br /&gt;
==== Start automatically ====&lt;br /&gt;
This setting controls when myPBX for iOS should be active in background. Note that incoming calls are only indicated if the app is started and either visible or put in background via short press of the home button. If it has been stopped via the &amp;quot;Off&amp;quot; button at the headline of the settings screen or kicked away in the task manager, incoming calls are not indicated.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;If connected to WiFi&amp;quot;: The app stays active in background if connectivity is through WiFi. It quits background activity if connectivity changes to other than WiFi to make sure that it doesn&#039;t generate charges due to mobile data traffic. This is the default.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;If mobile data/WiFi available&amp;quot;:  It stays active in background if connectivity is through WiFi or mobile data. Note that this may generate charges due to mobile data traffic.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;Always&amp;quot;: It always stays active in background.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;Never&amp;quot;: It never stays active in background. If telephone functions are needed myPBX for iOS must be started manually by click on its app icon.&lt;br /&gt;
&lt;br /&gt;
==== GSM use ====&lt;br /&gt;
These are the options in which situation a call initiated in myPBX for iOS is deferred to the GSM dialer of the iPhone. The options are&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;Never&amp;quot;: myPBX for iOS dials all calls itself and presents &amp;quot;no channel available&amp;quot; if the registration is not up. This is the default.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;If registering isn&#039;t possible&amp;quot;: Calls are deferred to GSM if the registration is not up, i.e. if no WiFi or mobile data connectivity exists.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;Always for external calls&amp;quot;: External calls are deferred to GSM.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;For all calls&amp;quot;: All calls are deferred to the GSM dialer.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;If not connected to WiFi&amp;quot;: myPBX for iOS dials all calls itself only if connectivity is through WiFi. Without WiFi all calls are deferred to the GSM dialer.&lt;br /&gt;
&lt;br /&gt;
The last three options are useful if the WiFi or mobile data performance is not good enough for VoIP or if there is a quota on the mobile data traffic. Then the directory and presence information is still available and the calls use the GSM network.&lt;br /&gt;
&lt;br /&gt;
==== Hang up with docking station ====&lt;br /&gt;
If the iPhone is used with a docking or charging station this option enables automatic call acceptance if the iPhone is lift from the dock and call disconnection if it is put back to the dock. Keep this setting off if the iPhone might be plugged for re-charging during a call as plugging would disconnect the call. The default of this setting if &amp;quot;off&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==== Auto-rotate screen ====&lt;br /&gt;
Keep this setting on if you want myPBX to automatically react to orientation changes. &lt;br /&gt;
&lt;br /&gt;
==== Display brightness in docking station ====&lt;br /&gt;
This setting is useful in conjunction with a docking or charging station on the desk. It lets the iPhone keep its screen on while it is put in the station.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;Display off&amp;quot;: The iPhone doesn&#039;t keep its screen on when it is in the docking station. This is the default.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;Dimmed&amp;quot;: The iPhone keeps its screen on with lower brightness while it is in the docking station.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;Bright&amp;quot;: The iPhone keeps its screen bright while it is in the docking station.&lt;br /&gt;
&lt;br /&gt;
==== Text ====&lt;br /&gt;
For iOS versions prior to 7.0 this setting chooses the font size used in the app. Large (&amp;quot;L&amp;quot;) is the default.&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;XS&amp;quot;: Very small&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;S&amp;quot;: Small&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;M&amp;quot;: Medium&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;L&amp;quot;: Large&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;XL&amp;quot;: Extra large&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;XXL&amp;quot;: Extra, extra large&lt;br /&gt;
&lt;br /&gt;
- &amp;quot;XXXL&amp;quot;: Largest possible&lt;br /&gt;
&lt;br /&gt;
==== WLAN MAC Address ====&lt;br /&gt;
The iOS operating system doesn&#039;t disclose the real WLAN MAC address to an application. It pretends on all devices that it&#039;s 020000000000. In this case myPBX for iOS assumes a random value based on the timestamp at installation of the app. This might be overwritten e.g. with the real value that is still shown in the iOS settings app.&lt;br /&gt;
&lt;br /&gt;
==== Save log ====&lt;br /&gt;
Starts and stops saving a debug trace on the iPhone. To get the trace files connect the iPhone via USB to the iMac or PC, start iTunes and locate &amp;quot;Apps&amp;quot;, &amp;quot;Shared Files&amp;quot;, &amp;quot;myPBX&amp;quot;. The file names are trace.txt, trace0.txt, trace1.txt, trace2.txt, trace3.txt.&lt;br /&gt;
&lt;br /&gt;
==== Send logs via e-mail ====&lt;br /&gt;
Prepares an e-mail that contains all log files ready to send after a support ticket has been opened at innovaphone. Please insert the ticket number in the e-mail subject line prior to sending it.&lt;br /&gt;
&lt;br /&gt;
== Update ==&lt;br /&gt;
App updates of myPBX for iOS are distributed regularly via iTunes.&lt;br /&gt;
&lt;br /&gt;
Update scripts may be used with myPBX for iOS in the same manner as with the desktop phones. The default name of the script is&lt;br /&gt;
 update-MYPBXI.htm&lt;br /&gt;
&lt;br /&gt;
App updates via update script are not possible. These script lines are ignored.&lt;br /&gt;
&lt;br /&gt;
== Push Service ==&lt;br /&gt;
&lt;br /&gt;
As of V12r2sr20 push notifications are supported. For details please refer to [[Reference12r2:Concept_Push_Notifications_for_myPBX_on_iOS]]&lt;br /&gt;
&lt;br /&gt;
== Taking traces ==&lt;br /&gt;
innovaphone always works on improving myPBX for iOS and making it as stable as possible on every iPhone and iPad model. If there is a problem please try to capture a trace by turning trace logging on (Settings/App settings/Save log). Re-do the steps to reproduce the problem. Stop logging and get the trace files via USB connection to iMac or PC or send them by e-mail (Settings/App settings/Send logs via e-mail).&lt;br /&gt;
&lt;br /&gt;
=== Mobile Data (3G/4G) pcap traces ===&lt;br /&gt;
&lt;br /&gt;
If there are iOS problems in 3G / 4G which do not occur in the WLAN, you can still create with our trace options pcaps.&lt;br /&gt;
1. myPBX app under &amp;quot;Settings&amp;quot; -&amp;gt; &amp;quot;Web Configuration&amp;quot;. In our webGUI (For my Android 6.0.1 only with chrome usable not with the Android browser (easy chrome open and&lt;br /&gt;
127.0.0.1 if no default) and the necessary trace options.&lt;br /&gt;
&lt;br /&gt;
2. myPBX app -&amp;gt; app settings -&amp;gt; &amp;quot;save log&amp;quot;&lt;br /&gt;
&lt;br /&gt;
3. Make calls and in the app settings &amp;quot;Send logs via mail&amp;quot; or even via USB.&lt;br /&gt;
&lt;br /&gt;
4. Important! Deactivate the trace options in the webgui or deactivate logging again!&lt;br /&gt;
Otherwise, the phone_logcat gradually becomes too large ... even without calls.&lt;br /&gt;
&lt;br /&gt;
== Adding ring tones ==&lt;br /&gt;
&lt;br /&gt;
To add a ring tone create a MP3 file with a few seconds of audio and place it into the Ringtones subdirectory of myPBX for iOS. This directory is accessible via the browser of an iMAC or PC via&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;http://xx.xx.xx.xx:10006/drive/cf0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;https://xx.xx.xx.xx:10007/drive/cf0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
myPBX for iOS must be running in the foreground for this and must be terminated and started again to make the new file selectable as ring tone.&lt;br /&gt;
&lt;br /&gt;
== Known limitations ==&lt;br /&gt;
&lt;br /&gt;
=== H.323/UDP not supported ===&lt;br /&gt;
H.323/UDP is not supported on myPBX for iOS. The signalling link to the PBX must be TCP or TLS.&lt;br /&gt;
&lt;br /&gt;
=== SIP protocol not supported as User-1 ===&lt;br /&gt;
If we set the protocol SIP the application will not obtain the mypbx license from the PBX and for that reason will not work, H.323/TCP or H323/TLS must be used.&lt;br /&gt;
&lt;br /&gt;
=== No synchronisation with GSM call list ===&lt;br /&gt;
It is not possible to synchronize myPBX for iOS and GSM call list.&lt;br /&gt;
&lt;br /&gt;
=== Button on Bluetooth headsets not functional ===&lt;br /&gt;
The button of Bluetooth headsets doesn&#039;t provide for accepting or disconnecting calls. The button on wired earphones does.&lt;br /&gt;
&lt;br /&gt;
=== H.323/TLS Connection not Trusted by Default ===&lt;br /&gt;
Please check the [[Reference11r1:Concept_H.323_over_TCP/TLS_(H.460.17)#Known_Issues|H.323/TLS Known Issues article]].&lt;br /&gt;
&lt;br /&gt;
=== Delayed re-registration if mobile data use not permitted ===&lt;br /&gt;
The option &amp;quot;Start automatically&amp;quot; set to &amp;quot;If connected to WiFi&amp;quot; means that the use of mobile data traffic is not permitted. In this case it can take up to 10 minutes to re-gain registration if WiFi is available again after connectivity had been through mobile data.&lt;br /&gt;
&lt;br /&gt;
=== Some WebUI operations are not possible on the iPhone itself ===&lt;br /&gt;
The button &amp;quot;Web Configuration&amp;quot; of the app shows the Web UI which allows extended configuration but has some limitations due to the browser window. E.g. it is not possible to download a certificate. These operations might be carried out via a Web browser on a remote computer. Note that myPBX iOS needs to be running in foreground to be accessible.&lt;br /&gt;
&lt;br /&gt;
=== Configuration via e-mail not working with all mail clients ===&lt;br /&gt;
Configuration via e-mail doesn&#039;t work with all e-mail clients. It does however work with the native mail client of iOS.&lt;br /&gt;
&lt;br /&gt;
== Known issues ==&lt;br /&gt;
===Incoming GSM calls===&lt;br /&gt;
:An incoming GSM call, puts the VoIP app in background and the remote IP-peer hears nothing until you switch back to the VoIP app.&lt;br /&gt;
&lt;br /&gt;
[[Category:Problem|{{PAGENAME}}]]&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
*[[{{NAMESPACE}}:Concept myPBX for Android]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference12r2:Concept_Push_Notifications_for_myPBX_iOS_and_Android&amp;diff=52454</id>
		<title>Reference12r2:Concept Push Notifications for myPBX iOS and Android</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference12r2:Concept_Push_Notifications_for_myPBX_iOS_and_Android&amp;diff=52454"/>
		<updated>2019-06-11T09:50:01Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Concept|iOS Softwarephone]]&lt;br /&gt;
With firmware version 12r2 sr20 the PBX is able to send Push notifications to the Apple (APNs) or Android Push Notification services. As a result, incoming calls are also indicated when the myPBX app is not started or runs in the background mode. The PBX is using a service provided by innovaphone AG at &#039;&#039;services.innovaphone.com&#039;&#039; to send the push notifications to the vendors Notification Service. No call meta data is transmitted, the push notification is only used to wake up the myPBX app. Only one Push object is needed for a system.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
=== PBX ===&lt;br /&gt;
* Firmware version 12r2sr20 [125501] or higher&lt;br /&gt;
* Internet access via HTTPS&lt;br /&gt;
&lt;br /&gt;
=== myPBX for iOS or Android ===&lt;br /&gt;
* iOS since Version 12r2sr20&lt;br /&gt;
* Android since Version 12r2sr23&lt;br /&gt;
&lt;br /&gt;
=== Smartphone ===&lt;br /&gt;
* iOS Version 12.0.1 or higher&lt;br /&gt;
* Android Version 6.0 or higher&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== PBX ===&lt;br /&gt;
* Check the &#039;&#039;&#039;System Name&#039;&#039;&#039; of the PBX - it must be globally unique. We recommend to use the DNS domain name of the company using the PBX.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;For the next steps, do not use &#039;&#039;Internet Explorer&#039;&#039;, &#039;&#039;Edge&#039;&#039; or &#039;&#039;FrontMotion Firefox&#039;&#039; Browser at the moment. It will not work!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Create a new PBX object of type [[Reference12r2:PBX/Objects/Push|Push]]. &lt;br /&gt;
** The Name of the Push object is case sensitive and will be used in the User objects to identify the push service. &lt;br /&gt;
** Do &#039;&#039;&#039;NOT&#039;&#039;&#039; set a password - this is later-on filled-in automatically!&lt;br /&gt;
** Make sure to click on &#039;&#039;OK&#039;&#039; or &#039;&#039;Apply&#039;&#039; button before proceeding with next steps.&lt;br /&gt;
* Navigate to the Push tab of the Push object and provide a valid E-Mail address that can be used to send an HTTP link for verification.&lt;br /&gt;
** E-Mail must not be an E-Mail already used as E-Mail of another object.&lt;br /&gt;
* Press &#039;&#039;Connect&#039;&#039; button, &#039;&#039;&#039;do not close the window&#039;&#039;&#039; until E-Mail verification is done.&lt;br /&gt;
* Wait for the E-Mail and open the verification link in the browser.&lt;br /&gt;
* Press &#039;&#039;OK&#039;&#039; button after &#039;&#039;Connect succeeded&#039;&#039; appears.&lt;br /&gt;
* Navigate to [[Reference9:General/Certificates]] and trust to certificate &#039;&#039;*.innovaphone.com&#039;&#039; that should appear on the list of rejected certificates. You have to do this on every slave and/or standby PBX. &lt;br /&gt;
(as of version 12r2 SR22 the certificate &#039;&#039;*.innovaphone.com&#039;&#039; is already included in the firmware, so you can skip this step)&lt;br /&gt;
&lt;br /&gt;
[[Image:Rejected certs.png]]&lt;br /&gt;
* The trust list should look like this afterwards:&lt;br /&gt;
[[Image:Trusted certs.png]]&lt;br /&gt;
&lt;br /&gt;
=== User Objects ===&lt;br /&gt;
* For each user who is to receive push notifications on his myPBX-application, the &#039;&#039;Name&#039;&#039; of the push-object must be entered in his userobject at the &#039;&#039;Push&#039;&#039; field in the &#039;&#039;User&#039;&#039; tab.&lt;br /&gt;
&lt;br /&gt;
=== iOS specific settings ===&lt;br /&gt;
* On the iOS device make sure to allow push notifications for the myPBX app.&lt;br /&gt;
&lt;br /&gt;
=== Android specific settings ===&lt;br /&gt;
Push notifications are now better supported. There are new parameters in myPBX for Android &amp;quot;Settings/App Settings/Push notifications&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* Auto: (default setting) Operation without push with transition to &amp;quot;Active&amp;quot; at the first reception of a push notification.&lt;br /&gt;
&lt;br /&gt;
* On: Operation with Push. myPBX terminates after 10 seconds of idle time and switches to &amp;quot;Active&amp;quot; the first time a push notification is received.&lt;br /&gt;
&lt;br /&gt;
* Off: Operation without Push. myPBX tries to keep the registration permanently active.&lt;br /&gt;
&lt;br /&gt;
* Active: Operation with Push. Notifications have already been received successfully.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
* Check the trust list for certificate of the innovaphone AG.&lt;br /&gt;
* Make sure the PBX can resolve the DNS host &#039;&#039;services.innovaphone.com&#039;&#039;.&lt;br /&gt;
* Make sure the PBX can reach &#039;&#039;services.innovaphone.com&#039;&#039; via HTTPS.&lt;br /&gt;
* Make sure you do not use Internet Explorer or Edge.&lt;br /&gt;
* Make sure the mail used for Push is not used by another PBX object.&lt;br /&gt;
* If there are problems with setting up the Push Service or if individual subscribers can not be reached, open a Support Ticket.&lt;br /&gt;
* Only if you are not sure if the push service is operational at the moment, open a support ticket and send an email to &#039;&#039;push-support@innovaphone.com&#039;&#039;.&lt;br /&gt;
* Make sure the myPBX App has Push Notifications allowed in the OS settings. &lt;br /&gt;
** iOS: Also make sure, the iOS device has a valid GSM data connection or a WiFi connection with the internet, especially TCP port 5223 (see [https://developer.apple.com/library/archive/technotes/tn2265/_index.html Troubleshooting Push Notifications] article by Apple).&lt;br /&gt;
* Once a domain is already registered with an email address, &amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;this domain cannot be authenticated with another email address.&amp;lt;/span&amp;gt; In this case you will not receive any email from our push service.&lt;br /&gt;
&lt;br /&gt;
== Known limitations ==&lt;br /&gt;
=== Push object creation and configuration of the connection is not working with Internet Explorer/Edge.===&lt;br /&gt;
Use Firefox or Chrome to create and configure the Push object.&lt;br /&gt;
&lt;br /&gt;
=== Call accept time for users with myPBX client only ===&lt;br /&gt;
In case no other endpoints are registered on the User object, but only the myPBX client, the PBX will not provide any alerting message to the calling party, until the myPBX client on the device restores the registration to the PBX via push notification. In case no registration appears after 10 seconds, the PBX will send &amp;quot;no user responding&amp;quot; as cause code to the calling party.&lt;br /&gt;
&lt;br /&gt;
=== Push is not working if no device registered and a CFNR is configured  ===&lt;br /&gt;
In case no endpoints are registered on the User object, and there is also a CFNR configured. The Push will not be executed and as result the CFNR will be exectuted immediately.&lt;br /&gt;
&lt;br /&gt;
This is a known limitation and is under investigation.&lt;br /&gt;
&lt;br /&gt;
A temporary workarround which will fix this issue has been found.&lt;br /&gt;
 &lt;br /&gt;
Solution: Create a Forking on the users object to its own number !&lt;br /&gt;
&lt;br /&gt;
Push will work and if the device is able to register within 10 seconds the myPBX app will ring and the CFNR will be executed with the configured timer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Push does work even when the myPBX app is switched off ===&lt;br /&gt;
The Push mechanism will also work when the myPBX app is turned off. This can lead to complains about receiving calls after working ours or during holidays.&lt;br /&gt;
&lt;br /&gt;
There is one solution to prevent the myPBX app from ringing. During Off-bussines hours you can select the DND do not disturb option. Calls will be still signaled, but the phone will not ring.&lt;br /&gt;
&lt;br /&gt;
For longer periods or if you don&#039;t want the myPBX to receive calls at all during Holidays.&lt;br /&gt;
&lt;br /&gt;
First shut it down within the app (and swipe to close) so that the myPBX is realy not running anymore.&lt;br /&gt;
&lt;br /&gt;
Then in the iPhone settings, within notifactions, disable the notification for myPBX.&lt;br /&gt;
&lt;br /&gt;
This will prevent the myPBX app to be started again.&lt;br /&gt;
&lt;br /&gt;
This is a way how the user can stop the push-functionality themself. Ofcourse after the holiday they have to enable the push notification in the iPhone again themself.&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Howto:SIP_redundancy_/_failover&amp;diff=52118</id>
		<title>Howto:SIP redundancy / failover</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Howto:SIP_redundancy_/_failover&amp;diff=52118"/>
		<updated>2019-05-14T15:01:30Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{FIXME|reason= this article is still in progress and not finished yet}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Keywords: enter keywords, foreign translations and/or synoyms not appearing in the article here for better search results --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Overview==&lt;br /&gt;
We often encounter scenarios in which the reliability of the SIP connection is to be ensured. There are several approaches and scenarios how to achieve this SIP redundancy or failover.&lt;br /&gt;
&lt;br /&gt;
How well SIP redundancy and/or failover works, depends on the interaction between the PBX and the carrier providing the SIP account.&lt;br /&gt;
&lt;br /&gt;
==PBX / Gateway==&lt;br /&gt;
To support various carriers, innovaphone has already implemented the following configurable features:&lt;br /&gt;
* Accepting trunk registrations from multiples Sources (GWs)&lt;br /&gt;
* Always place the call on a primary trunk and in case of an error, on a secondary trunk or round robin&lt;br /&gt;
* Receive calls from multiple trunk registrations&lt;br /&gt;
* Route calls between GWs back and forth&lt;br /&gt;
* Rerouting of failed calls&lt;br /&gt;
&lt;br /&gt;
==Carrier scenarios==&lt;br /&gt;
Of course your possibilities here depend on the carrier&#039;s feature-set &lt;br /&gt;
&lt;br /&gt;
=== Two permanent active SIP Interfaces ===&lt;br /&gt;
&lt;br /&gt;
The best practice would be if the Carrier accepts two registrations from different sources with the same credentials&lt;br /&gt;
&lt;br /&gt;
* SIP Interfaces on two Gateways with identical configuration&lt;br /&gt;
** Both Interfaces register to the Trunk Object in the PBX&lt;br /&gt;
* The routing configuration on the Gateway should be identical&lt;br /&gt;
* The call distribution is not critical, but needs to be considered in the configuration&lt;br /&gt;
** Some carriers send all incoming calls on the &#039;&#039;primary&#039;&#039; trunk only and expect all outgoing calls over the same &#039;&#039;primary&#039;&#039; trunk&lt;br /&gt;
*** Outgoing Calls must be first sent to the &#039;&#039;primary&#039;&#039; Interface, then to the &#039;&#039;secondary&#039;&#039; one&lt;br /&gt;
** Some carriers use both trunks for incoming and outgoing calls&lt;br /&gt;
&lt;br /&gt;
=== Active SIP Interface, secondary disabled SIP Interface===&lt;br /&gt;
&lt;br /&gt;
If the Carrier doesn&#039;t accept two registrations from different sources with the same credentials then you can prepare the failover scenario, but you have to switch here manually.&lt;br /&gt;
&lt;br /&gt;
* SIP Interfaces on two Gateways with identical configuration&lt;br /&gt;
** The &#039;&#039;primary&#039;&#039; Interface should be enabled&lt;br /&gt;
** The &#039;&#039;secondary&#039;&#039; Interface should be disabled&lt;br /&gt;
** Both Interfaces register to the Trunk Object in the PBX&lt;br /&gt;
* Routing on the Gateway should be identical&lt;br /&gt;
* The call distribution is straight-forward because there is only one single active Interface at the same time&lt;br /&gt;
* If the &#039;&#039;primary&#039;&#039; trunk fails, it must be disabled manually and the secondary one activated&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
- There are some ideas to achieve this with the help of some lines of codes and your monitoring appliance which would trigger and be able to disable/enable these Interfaces via HTTP(S) commands.&lt;br /&gt;
&lt;br /&gt;
- There are some ideas to achieve this with the help of [[Reference13r1:Concept_App_Platform|V13 App Platform]] and the [https://github.com/innovaphone/13r1-SDK SDK] by developing your own App to automate this process suiting your needs&lt;br /&gt;
&lt;br /&gt;
- Today we have no automatic mechanism for SIP Interfaces which enable a SIP interface if the other one fails, but there is a [http://forum.innovaphone.com/moodle2/mod/forum/discuss.php?d=22972 feature request] where you can vote for it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- == Related Articles == --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Concept|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference9:Services/HTTP/Client&amp;diff=51252</id>
		<title>Reference9:Services/HTTP/Client</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference9:Services/HTTP/Client&amp;diff=51252"/>
		<updated>2019-02-12T12:26:00Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Authenticated URLs ==&lt;br /&gt;
Some files that the device must access via HTTP (update commands, MoH, announcements, voicemail, etc.) may be located in a password-protected area. A list of URLs with the respective user names and passwords can be configured. The URLs in the list usually specify only the path to a file (or a part of it). The longest string match of the list defines the user name and the password used for authentication. &lt;br /&gt;
&lt;br /&gt;
Note that the log server always includes the port number in the URL. If a URL for the logserver needs a password a version the URL that includes the port number needs be specified here to generate a match. &lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;URL&#039;&#039;&#039;&lt;br /&gt;
|An URL, for example &amp;lt;nowiki&amp;gt;http://192.168.0.1/update&amp;lt;/nowiki&amp;gt;, specifying a password protected folder&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;User/Password&#039;&#039;&#039;&lt;br /&gt;
|Authentication needed for the folder (The length of the password is limited to 16 characters)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Proxy Servers ==&lt;br /&gt;
Individual proxy servers can be configured for HTTP and HTTPS operations.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Host&#039;&#039;&#039;&lt;br /&gt;
|The domain name (e.g. proxy.example.com) or IP address (e.g. 192.168.0.1) of the proxy server.&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Port&#039;&#039;&#039;&lt;br /&gt;
|The port of the proxy server.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== No Proxy Server for ==&lt;br /&gt;
Here you can define networks and domains that shall be accessed directly without using a proxy server.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Address&#039;&#039;&#039;/&#039;&#039;&#039;Mask&#039;&#039;&#039;&lt;br /&gt;
|The base address and network mask of a network (e.g. 192.168.0.0 / 255.255.255.0)&lt;br /&gt;
|-&lt;br /&gt;
|valign=top nowrap=true|&#039;&#039;&#039;Domain suffix&#039;&#039;&#039;&lt;br /&gt;
|The suffix of a DNS name (e.g. .example.com or host.example.com)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that exceptions that are defined using base address and network mask only apply to requests using an IP address (e.g. &amp;lt;nowiki&amp;gt;http://192.168.0.1/update&amp;lt;/nowiki&amp;gt;). &lt;br /&gt;
Exceptions that are defined using a domain suffix only apply to requests using a domain name (e.g. &amp;lt;nowiki&amp;gt;http://host.example.com/update&amp;lt;/nowiki&amp;gt;).&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Howto:How_to_customize_the_From/Identity_header_value_at_SIP_interfaces&amp;diff=51075</id>
		<title>Howto:How to customize the From/Identity header value at SIP interfaces</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Howto:How_to_customize_the_From/Identity_header_value_at_SIP_interfaces&amp;diff=51075"/>
		<updated>2019-01-17T08:22:38Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In some cases, SIP providers ask for From/Identity Header values which we cannot build automatically. &lt;br /&gt;
In such circumstances we can use the &amp;quot;add UUI&amp;quot; in Route Map and a specific configuration in the SIP interface for this.&lt;br /&gt;
&lt;br /&gt;
==Applies To==&lt;br /&gt;
This information applies to all innovaphone gateways&lt;br /&gt;
&lt;br /&gt;
* V12r2 and higher&lt;br /&gt;
&lt;br /&gt;
==More Information==&lt;br /&gt;
&lt;br /&gt;
===Problem Details===&lt;br /&gt;
&lt;br /&gt;
If we look into the configuration of From or Identity Header in the SIP interface, we see that the innovaphone system tries to build these headers with either one of the following:&lt;br /&gt;
* for FROM: Fixed AOR, AOR with CGPN as Display, CGPN in user part of URI&lt;br /&gt;
* for IDENTITY: CGPN in user part of URI, Fixed AOR&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this case, the header is built automatically with parts of information already known by the system as CGPN or AOR.&lt;br /&gt;
But in some cases, the provider requires a value in these Headers which is not related to any other known values. In such an event, we need a way to store and apply this &amp;quot;fixed&amp;quot; value.&lt;br /&gt;
So we will use both configuration parameters:&lt;br /&gt;
* &amp;quot;add UUI&amp;quot; in route map : [http://wiki.innovaphone.com/index.php?title=Reference12r2:Gateway/Routes/Map]&lt;br /&gt;
* the UUI option in the SIP interface configuration : [http://wiki.innovaphone.com/index.php?title=Reference12r2:Gateway/Interfaces/SIP]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Route Map Configuration===&lt;br /&gt;
The goal here is to use a MAP &#039;&#039;&#039;generally used for all outgoing calls&#039;&#039;&#039;. In order to achieve this, the better approach is to use the last one, which should be the MAP that sends the call to the SIP interface. &lt;br /&gt;
&lt;br /&gt;
[[Image:Routesmaps.PNG]] &lt;br /&gt;
&lt;br /&gt;
Open this map and add the required value in &amp;quot;add UUI&amp;quot; field.&lt;br /&gt;
&lt;br /&gt;
[[Image:AddUUI.PNG]]&lt;br /&gt;
&lt;br /&gt;
As the UUI will be used in the SIP header, we should write here a valid SIP URI: &amp;quot;&amp;lt;sip:UriUserPart@UriDomainPart&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== SIP interface configuration ===&lt;br /&gt;
&lt;br /&gt;
In SIP interface select the UUI options in &amp;quot;From/Identity Header when Sending INVITE&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
[[Image:IdentityUUI.PNG]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At this point, you should also check your provider&#039;s requirements, as we have also a few other possibilities to adjust: UUI in From or UUI in Identity. &lt;br /&gt;
We can also go further with Advanced Tweaks like &amp;quot;/pai on&amp;quot; used for P-Asserted-Identity or P-Preferred-Identity as Identity header.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_Offline_Provisioning&amp;diff=50878</id>
		<title>Reference13r1:Concept Offline Provisioning</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_Offline_Provisioning&amp;diff=50878"/>
		<updated>2018-12-20T12:36:53Z</updated>

		<summary type="html">&lt;p&gt;Aci: /* Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In some cases or environments, PBXs, Gateways and phones do not have Internet access. In this case &#039;&#039;service.innovaphone.com&#039;&#039; will not be reachable and a provisioning of new devices is not possible.&lt;br /&gt;
&lt;br /&gt;
In order to be able to provision devices without Internet access, there is an option to provide the service itself in the local environment.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
* Version 13r1 (Phone and PBX)&lt;br /&gt;
* a running App Platform&lt;br /&gt;
&lt;br /&gt;
= How it works =&lt;br /&gt;
* The client (e.g. Phone) which is waiting for a provisioning, logs into the local provisioning service which is located on a gateway.&lt;br /&gt;
* As soon as the user adds a new device via the &#039;&#039;User App&#039;&#039;, a new code is fetched from the local provisioning system.&lt;br /&gt;
* When the code is entered on the phone, the client sends the code to the local provisioning system.&lt;br /&gt;
** If the code is valid, the client will receive some configuration about the environment and connect himself to the &#039;&#039;Devices App&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This is the same flow like we use it on the regular provisioning with Internet access.&lt;br /&gt;
&lt;br /&gt;
=Configuration=&lt;br /&gt;
&lt;br /&gt;
== Provisioning System ==&lt;br /&gt;
&lt;br /&gt;
There is no need to activate the Provisioning System on a Gateway.&lt;br /&gt;
It&#039;s already available and you can use it on every Gateway.&lt;br /&gt;
&lt;br /&gt;
== Devices APP ==&lt;br /&gt;
&lt;br /&gt;
You need to configure your own Provisioning Service in the Devices App&lt;br /&gt;
&lt;br /&gt;
# Open the &#039;&#039;Devices APP&#039;&#039; from your myApps Launcher&lt;br /&gt;
# Select the desired domain from the list and use the tab &#039;&#039;edit&#039;&#039;&lt;br /&gt;
##Here you can insert you own Provisioning URL: &amp;lt;code&amp;gt;https://&amp;lt;span style=&amp;quot;background-color: yellow&amp;quot;&amp;gt;pbx.domain.tld&amp;lt;/span&amp;gt;/INSTALL/get-provisioning-code.htm&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Client Setup==&lt;br /&gt;
&lt;br /&gt;
You need to tell the Client, that he should not try to connect to the global Provisioning System. Instead he must connect to your local System.&lt;br /&gt;
&lt;br /&gt;
Set the [[{{NAMESPACE}}:Services/Update|Update URL]] in the Client to: &amp;lt;code&amp;gt;https://&amp;lt;span style=&amp;quot;background-color: yellow&amp;quot;&amp;gt;pbx.domain.tld&amp;lt;/span&amp;gt;/INSTALL/provisioning.htm?mac=#m&amp;amp;provisioning-code=#p&amp;amp;localip=#i&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the same way to distribute the Update URL to multiple Clients:&lt;br /&gt;
* Use a local [[{{NAMESPACE}}:DHCP_client#Supported_Options | DHCP Server]] with vendor options&lt;br /&gt;
* Use [[Reference:My_Innovaphone#Properties | my.innovaphone.com redirection]] (works only if the client is able to connect to &#039;&#039;https://config.innovaphone.com&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=Related Articles=&lt;br /&gt;
* [[{{NAMESPACE}}:Services/Provisioning]]&lt;br /&gt;
* [[{{NAMESPACE}}:Services/Update]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_Offline_Provisioning&amp;diff=50877</id>
		<title>Reference13r1:Concept Offline Provisioning</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_Offline_Provisioning&amp;diff=50877"/>
		<updated>2018-12-20T12:36:28Z</updated>

		<summary type="html">&lt;p&gt;Aci: /* Provisioning System */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In some cases or environments, PBXs, Gateways and phones do not have Internet access. In this case &#039;&#039;service.innovaphone.com&#039;&#039; will not be reachable and a provisioning of new devices is not possible.&lt;br /&gt;
&lt;br /&gt;
In order to be able to provision devices without Internet access, there is an option to provide the service itself in the local environment.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
* Version 13r1 (Phone and PBX)&lt;br /&gt;
* Running App Platform&lt;br /&gt;
&lt;br /&gt;
= How it works =&lt;br /&gt;
* The client (e.g. Phone) which is waiting for a provisioning, logs into the local provisioning service which is located on a gateway.&lt;br /&gt;
* As soon as the user adds a new device via the &#039;&#039;User App&#039;&#039;, a new code is fetched from the local provisioning system.&lt;br /&gt;
* When the code is entered on the phone, the client sends the code to the local provisioning system.&lt;br /&gt;
** If the code is valid, the client will receive some configuration about the environment and connect himself to the &#039;&#039;Devices App&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This is the same flow like we use it on the regular provisioning with Internet access.&lt;br /&gt;
&lt;br /&gt;
=Configuration=&lt;br /&gt;
&lt;br /&gt;
== Provisioning System ==&lt;br /&gt;
&lt;br /&gt;
There is no need to activate the Provisioning System on a Gateway.&lt;br /&gt;
It&#039;s already available and you can use it on every Gateway.&lt;br /&gt;
&lt;br /&gt;
== Devices APP ==&lt;br /&gt;
&lt;br /&gt;
You need to configure your own Provisioning Service in the Devices App&lt;br /&gt;
&lt;br /&gt;
# Open the &#039;&#039;Devices APP&#039;&#039; from your myApps Launcher&lt;br /&gt;
# Select the desired domain from the list and use the tab &#039;&#039;edit&#039;&#039;&lt;br /&gt;
##Here you can insert you own Provisioning URL: &amp;lt;code&amp;gt;https://&amp;lt;span style=&amp;quot;background-color: yellow&amp;quot;&amp;gt;pbx.domain.tld&amp;lt;/span&amp;gt;/INSTALL/get-provisioning-code.htm&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Client Setup==&lt;br /&gt;
&lt;br /&gt;
You need to tell the Client, that he should not try to connect to the global Provisioning System. Instead he must connect to your local System.&lt;br /&gt;
&lt;br /&gt;
Set the [[{{NAMESPACE}}:Services/Update|Update URL]] in the Client to: &amp;lt;code&amp;gt;https://&amp;lt;span style=&amp;quot;background-color: yellow&amp;quot;&amp;gt;pbx.domain.tld&amp;lt;/span&amp;gt;/INSTALL/provisioning.htm?mac=#m&amp;amp;provisioning-code=#p&amp;amp;localip=#i&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the same way to distribute the Update URL to multiple Clients:&lt;br /&gt;
* Use a local [[{{NAMESPACE}}:DHCP_client#Supported_Options | DHCP Server]] with vendor options&lt;br /&gt;
* Use [[Reference:My_Innovaphone#Properties | my.innovaphone.com redirection]] (works only if the client is able to connect to &#039;&#039;https://config.innovaphone.com&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=Related Articles=&lt;br /&gt;
* [[{{NAMESPACE}}:Services/Provisioning]]&lt;br /&gt;
* [[{{NAMESPACE}}:Services/Update]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_Offline_Provisioning&amp;diff=50876</id>
		<title>Reference13r1:Concept Offline Provisioning</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r1:Concept_Offline_Provisioning&amp;diff=50876"/>
		<updated>2018-12-20T12:24:09Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In some cases or environments, PBXs, Gateways and phones do not have Internet access. In this case &#039;&#039;service.innovaphone.com&#039;&#039; will not be reachable and a provisioning of new devices is not possible.&lt;br /&gt;
&lt;br /&gt;
In order to be able to provision devices without Internet access, there is an option to provide the service itself in the local environment.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
* Version 13r1 (Phone and PBX)&lt;br /&gt;
* Running App Platform&lt;br /&gt;
&lt;br /&gt;
= How it works =&lt;br /&gt;
* The client (e.g. Phone) which is waiting for a provisioning, logs into the local provisioning service which is located on a gateway.&lt;br /&gt;
* As soon as the user adds a new device via the &#039;&#039;User App&#039;&#039;, a new code is fetched from the local provisioning system.&lt;br /&gt;
* When the code is entered on the phone, the client sends the code to the local provisioning system.&lt;br /&gt;
** If the code is valid, the client will receive some configuration about the environment and connect himself to the &#039;&#039;Devices App&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This is the same flow like we use it on the regular provisioning with Internet access.&lt;br /&gt;
&lt;br /&gt;
=Configuration=&lt;br /&gt;
&lt;br /&gt;
== Provisioning System ==&lt;br /&gt;
&lt;br /&gt;
There is no need to activate the Provisioning System on a Gateway.&lt;br /&gt;
It pre-activated and you can use it on every Gateway.&lt;br /&gt;
&lt;br /&gt;
== Devices APP ==&lt;br /&gt;
&lt;br /&gt;
You need to configure your own Provisioning Service in the Devices App&lt;br /&gt;
&lt;br /&gt;
# Open the &#039;&#039;Devices APP&#039;&#039; from your myApps Launcher&lt;br /&gt;
# Select the desired domain from the list and use the tab &#039;&#039;edit&#039;&#039;&lt;br /&gt;
##Here you can insert you own Provisioning URL: &amp;lt;code&amp;gt;https://&amp;lt;span style=&amp;quot;background-color: yellow&amp;quot;&amp;gt;pbx.domain.tld&amp;lt;/span&amp;gt;/INSTALL/get-provisioning-code.htm&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Client Setup==&lt;br /&gt;
&lt;br /&gt;
You need to tell the Client, that he should not try to connect to the global Provisioning System. Instead he must connect to your local System.&lt;br /&gt;
&lt;br /&gt;
Set the [[{{NAMESPACE}}:Services/Update|Update URL]] in the Client to: &amp;lt;code&amp;gt;https://&amp;lt;span style=&amp;quot;background-color: yellow&amp;quot;&amp;gt;pbx.domain.tld&amp;lt;/span&amp;gt;/INSTALL/provisioning.htm?mac=#m&amp;amp;provisioning-code=#p&amp;amp;localip=#i&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the same way to distribute the Update URL to multiple Clients:&lt;br /&gt;
* Use a local [[{{NAMESPACE}}:DHCP_client#Supported_Options | DHCP Server]] with vendor options&lt;br /&gt;
* Use [[Reference:My_Innovaphone#Properties | my.innovaphone.com redirection]] (works only if the client is able to connect to &#039;&#039;https://config.innovaphone.com&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=Related Articles=&lt;br /&gt;
* [[{{NAMESPACE}}:Services/Provisioning]]&lt;br /&gt;
* [[{{NAMESPACE}}:Services/Update]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference13r1:Services/Provisioning&amp;diff=50875</id>
		<title>Reference13r1:Services/Provisioning</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference13r1:Services/Provisioning&amp;diff=50875"/>
		<updated>2018-12-20T12:13:21Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Overview of all devices which currently use the local provisioning system.&lt;br /&gt;
&lt;br /&gt;
* MAC Address&lt;br /&gt;
* IP Address&lt;br /&gt;
&lt;br /&gt;
=Related Articles=&lt;br /&gt;
* [[{{NAMESPACE}}:Concept_Offline_Provisioning]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Reference9:DECT2/Config/Phone_Book&amp;diff=50618</id>
		<title>Reference9:DECT2/Config/Phone Book</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Reference9:DECT2/Config/Phone_Book&amp;diff=50618"/>
		<updated>2018-10-02T09:35:35Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this menu the LDAP directory to be searched for telephone numbers of remote parties can be configured and enabled.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Keywords: DECT LDAP IP1202 central phone book corporate directory phonebook telefonbuch--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;General settings&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Introductory Text: This text is added to the message with returned phone book entries. It is not used in all device models. The maximum length is 20 characters.&lt;br /&gt;
* No Search Result Text: This text is used as a response to the portable device when there is no match. It is not used in all device models. The maximum length is 20 characters.&lt;br /&gt;
* Discarded Results Text: This text is added to the message when there are too many matches. It is not used in all device models. The maximum length is 20 characters.&lt;br /&gt;
* Result Format: The format of the displayed entry.&lt;br /&gt;
* Phone Book Number: Number used by the phone to access the phone book, this number shall not conflict with any of the handsets in the system. &#039;&#039;&#039;Important:&#039;&#039;&#039; &#039;&#039;*&#039;&#039; and &#039;&#039;#&#039;&#039; must not be used in the number, number length must be 6 digits. &#039;&#039;&#039;Please do not change the default value if not necessary.&#039;&#039;&#039; If nevertheless the parameter is changed here, it must be also &#039;&#039;&#039;changed on the DECT handsets&#039;&#039;&#039; (using WinPDM Software, under &#039;&#039;Systems / System X / PBX Settings / Numbers / Central Phonebook Number&#039;&#039; ).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PBX&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Enable: Enable usage of the innovaphone PBX directory.&lt;br /&gt;
* Server: The IP and port of the LDAP server (IP:port).&lt;br /&gt;
* User: User name for authentication at the LDAP server.&lt;br /&gt;
* Password: Password for authentication at the LDAP server.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;External LDAP Server&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Enable: Enable usage of the external LDAP directory.&lt;br /&gt;
* Server: The IP and port of the LDAP server (IP:port).&lt;br /&gt;
* User: User name for authentication at the LDAP server.&lt;br /&gt;
* Password: Password for authentication at the LDAP server.&lt;br /&gt;
* Search Base: The search base for your LDAP query, e.g. &#039;&#039;dn=base&#039;&#039;.&lt;br /&gt;
* Search Filter: The search filter for your LDAP query.&lt;br /&gt;
* Search Attributes: The search attributes, which are used to search in, e.g. &#039;&#039;givenName,sn&#039;&#039;.&amp;lt;br/&amp;gt;The IP61 and IP63 have got two search line inputs. The first line is assigned the first search attribute, the second line to the second attribute. To use more than two search attributes the further ones can be appended in the second search line delimited with blanks.&lt;br /&gt;
* Number Attributes: The number attributes, which are returned by queries (optional with a description of the number, e.g. &#039;&#039;e164: (office),mobile: (mobile)&#039;&#039;).&lt;br /&gt;
* Display/Sort Attributes: The display attributes, which are returned by queries, used to sort the results and are shown in the search result.&lt;br /&gt;
(for LDAP directory look up for incoming calls is used &amp;quot;LDAP Directory Search&amp;quot; in [[Reference11r1:DECT2/Config/Master]]) &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Dialing Location&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The dialing location is an optional setting. If a directory maintains telephone numbers in international form with a leading &#039;+&#039; sign, a mechanism must be available to convert or normalize such a number into a dialable number with all the required prefixes.&lt;br /&gt;
* Country Code: The country code (e.g. &#039;&#039;49&#039;&#039; for Germany).&lt;br /&gt;
* Area Code: The area code (e.g. &#039;&#039;30&#039;&#039; for Berlin).&lt;br /&gt;
* National Prefix: The national trunk prefix (&#039;&#039;0&#039;&#039; in Germany).&lt;br /&gt;
* International Prefix: The international trunk prefix (&#039;&#039;00&#039;&#039; in Germany).&lt;br /&gt;
* External Line: The prefix, necessary to access a trunk line. This prefix equals &#039;&#039;0&#039;&#039; in most PBX configurations.&lt;br /&gt;
* Subscriber Numbers: For the conversion of international numbers to internal extensions, the relevant subscriber numbers (comma-separated) may be configured here (e.g &#039;&#039;4321,4322,4323&#039;&#039;).&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Howto:License_Summary&amp;diff=50559</id>
		<title>Howto:License Summary</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Howto:License_Summary&amp;diff=50559"/>
		<updated>2018-09-24T07:38:28Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;-   &lt;br /&gt;
 &#039;&#039;&#039;This article is still under construction and will be available soon&#039;&#039;&#039;&lt;br /&gt;
 - &lt;br /&gt;
&lt;br /&gt;
==Summary==&lt;br /&gt;
Sometimes you want to have a detailed overview of PBX user licenses.&lt;br /&gt;
In V12, the PBX only shows a global overview of available and used licenses. For an exact view, you have to look in the PBX object in the tab License.&lt;br /&gt;
This PHP solution was initially included as a feature request in the [http://class.innovaphone.com/moodle2/mod/forum/discuss.php?d=17316 innovaphone forum], and maintained by the community. &lt;br /&gt;
{{FIXME|reason=switch link to final post if ready}} &lt;br /&gt;
&lt;br /&gt;
Thanks a lot for this. With the consent of all involved, we are now officially providing this solution.&lt;br /&gt;
&lt;br /&gt;
==Applies To==&lt;br /&gt;
This information applies to&lt;br /&gt;
&lt;br /&gt;
* innovapnone PBX running V12&lt;br /&gt;
* innovaphone Linux Application Platform V10&lt;br /&gt;
&lt;br /&gt;
===Requirements===&lt;br /&gt;
* Linux Application Platform (or Webserver with PHP, XML and CURL)&lt;br /&gt;
* Same admin/pass combination on all PBXes&lt;br /&gt;
&lt;br /&gt;
==More Information==&lt;br /&gt;
&lt;br /&gt;
===Installation===&lt;br /&gt;
* [http://download.innovaphone.com/ice/wiki-src#licsummary Download] all needed files&lt;br /&gt;
* Connect via SSH (putty) to your Linux Application Platform&lt;br /&gt;
*# Create a new folder: &amp;lt;code&amp;gt;mkdir /var/www/innovaphone/licsummary&amp;lt;/code&amp;gt;&lt;br /&gt;
*# Upload all files to the new folder (Use SCP to upload all files via SSH, otherwise you can upload it via webdav and move the files via SSH to the correct folder)&lt;br /&gt;
*# Change file permissions: &amp;lt;code&amp;gt;chown www-data:www-data -R /var/www/innovaphone/licsummary&amp;lt;/code&amp;gt;&lt;br /&gt;
*# Check access: http://x.x.x.x/licsummary&lt;br /&gt;
&lt;br /&gt;
===Setup===&lt;br /&gt;
&lt;br /&gt;
* Edit index.php and add your custom configuration&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
$config = (object) array(&lt;br /&gt;
    &#039;master_pbx&#039;    =&amp;gt; &#039;172.16.80.233&#039;,&lt;br /&gt;
    &#039;username&#039;      =&amp;gt; &#039;admin&#039;,&lt;br /&gt;
    &#039;password&#039;      =&amp;gt; &#039;ip811&#039;,&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
By default, we show all users who have a license assigned. The following object types are hidden: Config template&lt;br /&gt;
&lt;br /&gt;
* Show also users without licenses &lt;br /&gt;
* Check &amp;quot;unlicensed&amp;quot; licenses (takes a long time)&lt;br /&gt;
&lt;br /&gt;
{{FIXME|reason=screenshot}} &lt;br /&gt;
&lt;br /&gt;
===Troubleshooting===&lt;br /&gt;
*Error: PBX not reachable&lt;br /&gt;
:Check IP/DNS in your configuration object&lt;br /&gt;
&lt;br /&gt;
*Error: Wrong user/pass for Master PBX&lt;br /&gt;
:Fix Login information&lt;br /&gt;
&lt;br /&gt;
*Error: Wrong user/pass for Slave PBX (&amp;lt;pbx name&amp;gt;)&lt;br /&gt;
:Fix Login information for your Slave PBX&lt;br /&gt;
&lt;br /&gt;
===Known Problems===&lt;br /&gt;
&lt;br /&gt;
== Download ==&lt;br /&gt;
*[http://download.innovaphone.com/ice/wiki-src#licsummary http://download.innovaphone.com/ice/wiki-src#licsummary] - download the complete file package of scripts and files described in this article.&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Sample|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
	<entry>
		<id>https://wiki.innovaphone.com/index.php?title=Howto:License_Summary&amp;diff=50558</id>
		<title>Howto:License Summary</title>
		<link rel="alternate" type="text/html" href="https://wiki.innovaphone.com/index.php?title=Howto:License_Summary&amp;diff=50558"/>
		<updated>2018-09-24T07:36:51Z</updated>

		<summary type="html">&lt;p&gt;Aci: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;-   &lt;br /&gt;
 &#039;&#039;&#039;This article is still under construction and will be available soon&#039;&#039;&#039;&lt;br /&gt;
 - &lt;br /&gt;
&lt;br /&gt;
==Summary==&lt;br /&gt;
Sometimes you want to have a detailed overview of PBX user licenses.&lt;br /&gt;
In V12, the PBX only shows a global overview of available and used licenses. For an exact view, you have to look in the PBX object in the tab License.&lt;br /&gt;
This PHP solution was initially included as a feature request in the [http://class.innovaphone.com/moodle2/mod/forum/discuss.php?d=17316 innovaphone forum], and maintained by the community. &lt;br /&gt;
{{FIXME|reason=switch link to final post if ready}} &lt;br /&gt;
&lt;br /&gt;
Thanks a lot for this. With the consent of all involved, we are now officially providing this solution.&lt;br /&gt;
&lt;br /&gt;
==Applies To==&lt;br /&gt;
This information applies to&lt;br /&gt;
&lt;br /&gt;
* innovapnone PBX running V12&lt;br /&gt;
* innovaphone Linux Application Platform V10&lt;br /&gt;
&lt;br /&gt;
===Requirements===&lt;br /&gt;
* Linux Application Platform (or Webserver with PHP, XML and CURL)&lt;br /&gt;
* Same admin/pass combination on all PBXes&lt;br /&gt;
&lt;br /&gt;
==More Information==&lt;br /&gt;
&lt;br /&gt;
===Installation===&lt;br /&gt;
* [http://download.innovaphone.com/ice/wiki-src#licsummary Download] all needed files&lt;br /&gt;
* Connect via SSH (putty) to your Linux Application Platform&lt;br /&gt;
*# Create a new folder: &amp;lt;code&amp;gt;mkdir /var/www/innovaphone/licsummary&amp;lt;/code&amp;gt;&lt;br /&gt;
*# Upload all files to the new folder (Use SCP to upload all files via SSH, otherwise you can upload it via webdav and move the files via SSH to the correct folder)&lt;br /&gt;
*# Change file permissions: &amp;lt;code&amp;gt;chown www-data:www-data -R /var/www/innovaphone/licsummary&amp;lt;/code&amp;gt;&lt;br /&gt;
*# Check access: http://x.x.x.x/licsummary&lt;br /&gt;
&lt;br /&gt;
===Setup===&lt;br /&gt;
&lt;br /&gt;
* Edit index.php and add your custom configuration&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
$config = (object) array(&lt;br /&gt;
    &#039;master_pbx&#039;    =&amp;gt; &#039;172.16.80.233&#039;,&lt;br /&gt;
    &#039;username&#039;      =&amp;gt; &#039;admin&#039;,&lt;br /&gt;
    &#039;password&#039;      =&amp;gt; &#039;ip811&#039;,&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
By default, we show all users who have a license assigned. The following object types are hidden: Config template&lt;br /&gt;
&lt;br /&gt;
* Show also users without licenses &lt;br /&gt;
* Check &amp;quot;unlicensed&amp;quot; licenses (takes long time)&lt;br /&gt;
&lt;br /&gt;
{{FIXME|reason=screenshot}} &lt;br /&gt;
&lt;br /&gt;
===Troubleshooting===&lt;br /&gt;
*Error: PBX not reachable&lt;br /&gt;
:Check IP/DNS in your configuration object&lt;br /&gt;
&lt;br /&gt;
*Error: Wrong user/pass for Master PBX&lt;br /&gt;
:Fix Login information&lt;br /&gt;
&lt;br /&gt;
*Error: Wrong user/pass for Slave PBX (&amp;lt;pbx name&amp;gt;)&lt;br /&gt;
:Fix Login information for your Slave PBX&lt;br /&gt;
&lt;br /&gt;
===Known Problems===&lt;br /&gt;
&lt;br /&gt;
== Download ==&lt;br /&gt;
*[http://download.innovaphone.com/ice/wiki-src#licsummary http://download.innovaphone.com/ice/wiki-src#licsummary] - download the complete file package of scripts and files described in this article.&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Sample|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Aci</name></author>
	</entry>
</feed>