Category Archives: Install

Role secured features

You probably want to restrict what settings and controls normal users can see in Dynamics Telephony.

To do this, you must add some security roles in CRM as detailed below. If you do not add these roles and assign them to certain users, then all users will have full access.

Dynamics Telephony uses 2 CRM roles to enable security features.

roles_for_dt

NOTE: These roles just need to exist. They do not need any permissions assigned.

ROLE: Dynamics Telephony Admin, when assigned to a CRM user will enable the “Admin Only Access” settings area for that user. Use this area to restrict other CRM users from seeing various settings.

settings_access

 

For full lockdown you might restrict all but Log File and  Provider Account (to allow telephony re-configuration)

This Role also enables Developer Tools on Dynamics Telephony windows to give you access to JavaScript Developer Tools. Note, this menu item is not available on the first Dynamics Telephony window to open.

developer_tools

 

ROLE:Dynamics Telephony Uninstall, when assigned to a CRM user will enable the “Uninstall” button in Dynamics Telephony for that user. “Uninstall” will completely remove the Dynamics Telephony Solution from CRM.

The best is not to assign this role to any user until you need it.

IT planing for CRM impact

Dynamics Telephony policy is to have as little impact on your CRM as possible. Here are the impacts you need to consider.

As part of or submission to the Microsoft AppSource Store, install and basic tests were carried out by Microsoft Engineers. this led us to be a Preferred Solution on the AppSource

Admin Level User will be required during the install phase. This is to allow for the installation of the entities described later. This user needs to be allowed install a solution in your CRM.

Authentication. Dynamics Telephony supports all authentication methods supported by CRM online or on-premises. When users use Dynamics Telephony, they simply logon to CRM as normal.

HTTPS and HTTP are both supported. The certificate for HTTPS needs to be trusted by Internet Explorer.

Install procedure is described HERE

Entities Installed by Dynamics Telephony are listed HERE. The entities, fields and dashboards are all standalone with no impact on your standard entities on the Dynamics Telephony entities. They are installed as a solution that you can request to inspect. They can be uninstalled with no impact on your CRM.

Entities written by dynamics Telephony during operation:
– Dynamics Telephony entity records.
Phonecall due to click-to-dial or incoming calls.
Note due to click-to-dial or incoming calls.
– (optional) create lead/contact for unknown caller.
These records are written using the logged-on user. See relationships below:

entities for click to dial

DT Entities installed in CRM

The following items are installed in your CRM by Dynamics Telephony for its own use. They are stand-alone entities that can be uninstalled without affecting your own data.

  1. DialerCall – data for every call made or received
  2. DialerCallEvent – every telephony event (dial, answer, etc.)
  3. DialerCallResult – every reported Outcome
  4. DialerCallOutcome – Outcome buttons configuration
  5. DialerDNIS – configure inbound lines
  6. DialerUser – realtime user status for RTD
  7. DialerKV – Global and per user settings
  8. DialerPhonebook – user extension numbers for easy transfers
  9. DialerQueue – callbacks for the progressive dialer
  10. DialerQueueEvent – Dynamics Telephony Phone system and Asterisk only. Event log of agent joining or leaving an inbound call queue.
  11. DialerQueueSettings – progressive dialer settings based on CRM queues
  12. dtThisWeek, month, day, year dashboards – Dashboards to display statistics
  13. dtRTD – web resource to display agent realtime status
  14. Phonecall fields – fields added to phonecall entity for telephony data and the call recording link
  15. Phonecall form – a simplified form for users to take notes on a call.
  16. Webresources, including our API and images for our dashboards.

Troubleshooting Client Install

For troubleshooting, you may need to access the log file. It is on the DT Menu in the DT Client. Alternatively, the last 30 days of logs are in folder: C:\Users\Aidan\AppData\Roaming\CT Solutions\DynamicsTelephony

1. Getting message “Cannot connect to CRM…” AND logfile has “..An unsecured or incorrectly secured fault was received from the other party..”
Solution 1: Check client PC and server properly synced to a time server. Check Microsoft KBs for updates related to time / DST for your country.
Solution 2: The Service User (background user) must not use 2-factor authentication. Make a special Service User, with a very strong password,  for Dynamics Telephony to use, that does not use 2-factor authentication. See here.


2. Application won’t start
Solution 1: Check .NET 4.6.2 is installed. If not, you can use this link to install it: https://www.microsoft.com/en-ie/download/details.aspx?id=42642

Solution 2: Check Visual C Runtime 2015 installed. If not, install the 32-Bit (X86) version from https://learn.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist


3. Application won’t start
Solution: Full reinstall client, including deleting folder CONTENTS of C:\Users\user_name\AppData\Local\Apps\2.0  and  C:\Users\user_name\AppData\Roaming\CT Solutions


4. Error message “..entry point ucrtbase.terminate …not be located …api-ms-win-crt-runtime…”
Solution: Try installing the X86 Visual C++ runtime from https://learn.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist
IMPORTANT: For both 64-bit and 32-bit systems, you need the 32-bit (X86) version of the install.


5. SIP settings not saving and Log file says: “Unable to load DLL ‘pjsipDll.dll‘: The specified module could not be found.”
Solution: Try installing VC 2015 Redistributables: https://learn.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist
IMPORTANT: For both 64-bit and 32-bit systems, you need the 32-bit (X86) version of the install.


6. There is no log file in same directory as DynamicsTelephony.exe
Solution: Make the parent folder read-write for All Users


7. Cannot logon. Logfile has “…a reference that cannot be resolved: ‘https:…” when connecting to a CRM with Certificate issues.
Solution: Fix the certificate issue. Temporarily try entering the “Organization Url” in settings. You get this from CRM at Settings > Customization > Developer Resources – Organization Service.


8. Getting message “Invalid URL
Solution: Append main.aspx to the URL. e.g. https://mycrmfullurl/main.aspx


9. Getting message “User is not a System Administrator” on non-English CRM
Solution: Make sure the role the user is assigned is exactly named System Administrator


10. Getting message “Cannot connect to CRM…”.
Solution: Check CRM connection in a browser. If it is OK, then run DynamicsTelephony.exe /admin and re-enter the Service User credentials..see here
IMPORTANT: ONLY do this if ALL users are having this EXACT issue. Otherwise, Dynamics Telephony may stop for ALL USERS. This issue usually only arises during first client installs.

11. Log file has message “The located assembly’s manifest definition does not match the assembly reference“. This problem is found with MSI based installations.
Solution Make sure the file DynamicsTelephony.exe.config in the application folder has these lines near the bottom.
<dependentAssembly>
<assemblyIdentity name=”Newtonsoft.Json” publicKeyToken=”30ad4fe6b2a6aeed” culture=”neutral” />
<bindingRedirect oldVersion=”0.0.0.0-12.0.0.0″ newVersion=”12.0.0.0″ />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name=”Microsoft.Xrm.Sdk” publicKeyToken=”31bf3856ad364e35″ culture=”neutral” />
<bindingRedirect oldVersion=”0.0.0.0-9.0.0.0″ newVersion=”9.0.0.0″ />
</dependentAssembly>

Application Directories / Uninstall Client

Application Cache

Default settings, dialer queue cache:
%AppData%\CT Solutions\DynamicsTelephony

NOTE: files in this folder are preserved through upgrades. The Config.crm file in this folder is the connection to CRM so it can be pushed out to users (from a working client), so that new users do not have to enter connection info.

If you want to clear the cache, delete all files and folders, in this folder except Config.crm (the connection to CRM)

Also, these might exist…they are cache and can be deleted to clear cache:
C:\Users\user_name\AppData\Local\VirtualStore\Program Files (x86)\Dynamics Telephony
and
C:\Users\user_name\AppData\Local\Dynamics_Telephony

New log file location (V3+):
%AppData%\CT Solutions\DynamicsTelephony

User settings like initial size and position, and initial Application in any folder like
C:\Users\user_name\AppData\Local\Apps\2.0\Data\7X1XODNL.P6J\16BDL8WP.16B\dyna..tion_0000000000000000_0003.0000_cfc039bd3cf200e1

Client Uninstall

Uninstall is from the Programs And Features Control Panel

For complete uninstall, you should also clear the cache mentioned above and the following directories.

ClickOnce Application:
C:\Users\user_name\AppData\Local\Apps\2.0\24K624J6.1JJ\C96BM7WW.MRL\dyna..tion_8855e60ab9a52988_0002.0000_9c0f5092a33ef22f

System Uninstall

To uninstall all entities from CRM, you use the Uninstall System on the Dynamics Telephony COG Menu.

NOTE: You will not see this item unless your CRM user has a Role called “Dynamics Telephony Uninstall” – the role does not need any special permissions.
ALSO, you need to have it allowed under Admin Only Access in the Dynamics Telephony settings

Files for making your own MSI/Setup

Some sites have had success simply copying the application files to the users PC and running from a shortcut. Others make a setup or MSI. In all cases, here are the files you will need.

  1. Install from ClickOnce URL as normal
  2. Run DT Client at least once and quit it
  3. Run DT Client again and select App Folder from the DT menu
  4. Select all files and folders and copy to your MSI/Setup source directory.
  5. Delete .manifest and .cdf-ms files…EXCEPT dynamicstelephony.exe.manifest from your MSI/Setup source directory

Use the above files for your MSI/Setup

The shortcut you make should refer to dynamicstelephony.exe and should run the application in the same folder as dynamicstelephony.exe

If you include %AppData%\CT Solutions\DynamicsTelephony\config.crm in the MSI (copy from a working DT Client), then the user will not be prompted for the CRM URL when they first start the DT Client.








Phone Number Matching in CRM

Dynamics Telephony uses an advanced algorithm to match incoming phone numbers with phone numbers in your CRM. Dynamics Telephony will successfully math in the vast majority of situations. It can handle number formats in your CRM such as

(613) 555 1212
+44 1628 555 1212
45 56 67 78

Sometimes you will find that the callers number is not found in your CRM due to pattern matching problems. For example, you might find that the callers number is coming in with a “Tel:” or “Sip:” prefix and the phone numbers in your CRM do not have this prefix. In these cases, use the RegEx pattern match setting to fix the incoming number as follows:

Settings > Inbound Configuration : Regex Phone Number:

  • For Lync or Skype you must use: tel:\+(\d+)
  • For SIP you must use: sip:(\d+);.*
  • For all other CTI Providers use: sip:(\d+);.*

 

 








Log file retrieval

The Dynamics Telephony log file is required if you have to report an issue. There are two ways to locate it.

Method 1

There is a link in the application to retrieve it. Use “Save As..” to save it to a convenient location and then attach it to the email to us.

retrieveLogFile

Method 2

The log file is named: DynamicsTelephony.NN.log  Where NN is the day of the month.

The file can be retrieved at the following location. If you do not have permission to access this location then you need to speak with your IT Administrator.

C:\Users\user_name\AppData\Roaming\
CT Solutions\DynamicsTelephony

Users on SIP (Asterisk, FreePBX etc.) may also be asked to retrieve the SIP log.  Go to the App Folder on the DT Menu and retrieve pjsip.log








First Client Install

The FIRST time you install a client requires special procedures. Follow the instructions below.

What you will need:
  • Telephony Registration Details (e.g. for SIP you need the SIP server/host, username and password)
  • URL to your CRM instance. 
  • The Service User details. See here for more. This user is referred to as dt_user below. 
  • Once you have the above, the install will take less than 10 minutes.
Steps
  1. Install the CRM Solution from the link sent to you.
  2. Client install. Go to the link sent to you in your contract email and click Install to download the  click-once installer (setup.exe). You can do this in parallel with step 1 above but pause at step 6 below until the solution import is completed OK.
  3. You may be prompted to install Visual C++ Runtime before the main install of Dynamics Telephony, if it is not already present on your PC.
  4. Run the installer, and follow on-screen instructions. It takes less than a minute. Depending on your virus checker and environment, you may have to click to trust the publisher a few times.
  5. Dynamics Telephony starts automatically.
  6. Enter the base CRM URL determined in “What you will need” above in the screen shown
    enter_crm_uri
  7. Only for first time install of the first client, you need to enter username and password as shown below. Pick Auth Type OAuth or Client Secret. Microsoft no longer support Office 365 for this type of user.



    NOTE: If this step has been done before, then all the fields in the screen above will auto-fill once you enter the CRM URL and click/tab out of that field.

  8. This part can take a minute or 2 (only for the first client)
  9. From within Dynamics Telephony, logon to Dynamics CRM as a normal user, (not the “dt_user”, although this is allowed).
  10. Go to Menu > Settings, in the default (General Settings) tab, select the type of telephony provider you want to use.
    settings_general
  11. Then click the Provider Account tab. Fill in your own Specific telephony settings as highlighted below. 
    settings_provider_account
  12. If you have Windows Firewall running, you may be presented with an “Allow Access” dialog. You must allow this access for Dynamics Telephony to run.
  13. Make a test call by clicking on a phone number in CRM