This article describes a workaround for the issue when seeing "library attachment upload error".
Issue: Sending an email with library attachment, logs the error ‘Failed to load library attachment.’ in the router logs.
Solution:
This could be due to the following.
- The environment has two IP addresses assigned to the application server: xx.xx.xx.230 and xx.xx.xx.231
- Channels Server is installed on xx.xx.xx.230
The method "GetLocalMachineIpV4Address()" returns the first IP address in InterNetwork AddressFamily.
If Channels Server is installed on the second IP address in the list (secondary IP address) then GetInstallPathValue() could return an exception and result in the reported issue.
Workaround
Make sure that Channels Server installation uses the primary IP address.
When adding IP addresses to the NIC use the netsh script with skipsource flag set to true as in the following example:
netsh int ipv4 add address "Ethernet0" xx.xx.xx.xxx 255.255.255.0 skipassource=true
Run the following PS command and make sure that only one IP address is returned and that it is the same as the one assigned to Channels Server IP in Channels server registry.
[System.Net.Dns]::GetHostAddresses([System.Net.Dns]::GetHostName()) | Where-Object {$_.AddressFamily -eq [System.Net.Sockets.AddressFamily]::InterNetwork}
In case of servers that have more than one IP addresses, they must be manually deleted and added afresh using the netsh command as in the example above.