ContactCenterComplianceAPI.TrustCall
1.0.1
dotnet add package ContactCenterComplianceAPI.TrustCall --version 1.0.1
NuGet\Install-Package ContactCenterComplianceAPI.TrustCall -Version 1.0.1
<PackageReference Include="ContactCenterComplianceAPI.TrustCall" Version="1.0.1" />
paket add ContactCenterComplianceAPI.TrustCall --version 1.0.1
#r "nuget: ContactCenterComplianceAPI.TrustCall, 1.0.1"
// Install ContactCenterComplianceAPI.TrustCall as a Cake Addin
#addin nuget:?package=ContactCenterComplianceAPI.TrustCall&version=1.0.1
// Install ContactCenterComplianceAPI.TrustCall as a Cake Tool
#tool nuget:?package=ContactCenterComplianceAPI.TrustCall&version=1.0.1
Package to check telephone spam scores and Caller ID labeling using the TrustCall API of Contact Center Compliance. Usage requires an account with Contact Center Compliance.
See www.dnc.com to sign up.
Introduction
DNCScrub® provides an API to check phone number’s spam scores, FTC complaints, and app scores. There are two versions of the service: basic and premier. The Premier version of TrustCall will return scores for the three major mobile carriers in addition to an average score, historical score, max score, app scores, and FTC complaints. Both versions of the service are included in this library.
Getting Started
- Import the
ContactCenterCompliance.TrustCall
API package from NuGet. - Reference
CCCApi.TrustCall
namespace in your program, e.g.using CCCApi.TrustCall;
- Instantiate basic or premier API client by calling appropriate constructor
orvar client = new BasicService("--- API Key ---");
Usage of both services is similar. The difference is only in returned results.var client = new PremierService("--- API Key ---");
Using API
The process to use the API is the following:
- Add the numbers you wish to monitor by calling
StartMonitor
. - When your system has a requirement to check numbers, call the
CheckScore
method. - Once you no longer wish to monitor a phone number, call the
StopMonitor
.
1. Start Monitor Phone Number(s)
var client = new PremierService("--- API Key ---");
//sample phone numbers with labels
AddPhoneRequest[] phoneNumbers =
{
new AddPhoneRequest{ Phone = "7867056421", Label = "Customer Service" },
new AddPhoneRequest{ Phone = "3862847537", Label = "Marketing" }
};
List<PremierResponseRecord> results = client.StartMonitor(phoneNumbers);
Call to StartMonitor
adds phone numbers to monitoring queue.
Response objects (Premier|Basic)ResponseRecord
are defined later in this document and contain following information:
Response – String response of action taken
Phone – 10 digit phone number
VerizonScore** – A value of Clean, Flagged, or Processing*
ATTScore** – A value of Clean, Flagged, or Processing*
TMobileScore** – A value of Clean, Flagged, or Processing*
CurrScore – Average spam score across all carriers. Values are Clean, Medium, High, or Processing*
MaxScore – Max spam score in last 15 days. Values are Clean, Medium, High, or Processing*
HistoricalScore – A value from 0 to 5 or “Processing” of the historical spam score in last 15 days with 0 to 1 being no issue and 5 being at least 50% of times the number had a high spam score
RoboKillerStatus – A value of either Clean or Flagged indicating the phone number’s scoring with RoboKiller Phone App
NomoroboStatus - A value of either Clean or Flagged indicating the phone number’s scoring with Nomorobo Phone App
FTCComplaints – A list of FTC Complaints
* - When a phone number is first added to TrustCall Premier, it’s scores will be Processing until it is checked with each carrier.
Checking of each carrier will occur within 24 hours.
** - Only for Premier service
Exceptions
- If the API Key is invalid, a response will be returned indicating invalid API Key
2. Check Current Scores
var client = new PremierService("--- API Key ---");
//sample phone numbers
List<string> phoneNumbers = new List<string>() {
"6234928976",
"9545031806",
"2675466417"
};
List<PremierResponseRecord> results = client.CheckScore(phoneNumbers);
Call to CheckScore
checks scores of phone number(s) under monitor. Response objects (Premier|Basic)ResponseRecord
are defined later in this document.
Exceptions
- If the API Key is invalid, a response will be returned indicating invalid API Key.
- If the phone number is not a 10 digit value, a response will be returned indicating invalid phone number.
- If the phone number is not under monitor, a response is returned indicating phone number is not under monitor.
3. Stop Monitoring Phone Numbers
var client = new PremierService("--- API Key ---");
//sample phone numbers
List<string> phoneNumbers = new List<string>() {
"6234928976",
"9545031806",
"2675466417"
};
List<RemovePhoneResponse> results = client.StopMonitor(phoneNumbers);
Once you no longer wish to monitor a phone number, call the StopMonitor
. This call returns list of RemovePhoneResponse
objects that contain:
Phone - 10 digit phone number
Response - String response of action taken. If the phone number is under monitor, response field indicates phone number has been
removed from being monitored. If the phone number is not under monitor, response field indicates phone number is not under monitor.
Exceptions
- If the API Key is invalid, a response will be returned indicating invalid API Key.
- If the phone number is not a 10 digit value, a response will be returned indicating invalid phone number.
- If the phone number is not under monitor, a response is returned indicating phone number is not under monitor.
Response Records
There are two types of responses depending on which client you use: PremierResponseRecord
and BasicResponseRecord
public class PremierResponseRecord
{
/// <summary>
/// Response of action taken: If phone number is not yet under monitor, response field indicates phone number is now monitored. If phone number
/// already under monitor, response field indicates phone number is already under monitor.
/// </summary>
public string Response { get; set; }
/// <summary>
/// 10 digit phone number
/// </summary>
public string Phone { get; set; }
/// <summary>
/// Average spam score across all carriers. Values are Clean, Medium, High, or Processing. When a phone number is first added to TrustCall Premier,
/// it’s scores will be Processing until it is checked with each carrier. Checking of each carrier will occur within 24 hours.
/// </summary>
public string CurrScore { get; set; }
/// <summary>
/// Max spam score in last 15 days. Values are Clean, Medium, High, or Processing.When a phone number is first added to TrustCall Premier,
/// it’s scores will be Processing until it is checked with each carrier. Checking of each carrier will occur within 24 hours.
/// </summary>
public string MaxScore { get; set; }
/// <summary>
/// A value from 0 to 5 or “Processing” of the historical spam score in last 15 days with 0 to 1 being no issue and 5 being
/// at least 50% of times the number had a high spam score.
/// </summary>
public string HistoricalScore { get; set; }
/// <summary>
/// A value of Clean, Flagged, or Processing. When a phone number is first added to TrustCall Premier, it’s scores will be Processing until it is
/// checked with each carrier. Checking of each carrier will occur within 24 hours.
/// </summary>
public string VerizonScore { get; set; }
/// <summary>
/// A value of Clean, Flagged, or Processing. When a phone number is first added to TrustCall Premier, it’s scores will be Processing until it is
/// checked with each carrier. Checking of each carrier will occur within 24 hours.
/// </summary>
public string ATTScore { get; set; }
/// <summary>
/// A value of Clean, Flagged, or Processing. When a phone number is first added to TrustCall Premier, it’s scores will be Processing until it is
/// checked with each carrier. Checking of each carrier will occur within 24 hours.
/// </summary>
public string TMobileScore { get; set; }
/// <summary>
/// A value of either Clean or Flagged indicating the phone number’s scoring with RoboKiller Phone App.
/// </summary>
public string RoboKillerStatus { get; set; }
/// <summary>
/// A value of either Clean or Flagged indicating the phone number’s scoring with Nomorobo Phone App.
/// </summary>
public string NomoroboStatus { get; set; }
/// <summary>
/// A list of FTC Complaints
/// </summary>
public List<FTCComplaint> FTCComplaints { get; set; }
}
public class BasicResponseRecord
{
/// <summary>
/// Response of action taken: If phone number is not yet under monitor, response field indicates phone number is now monitored. If phone number
/// already under monitor, response field indicates phone number is already under monitor.
/// </summary>
public string Response { get; set; }
/// <summary>
/// 10 digit phone number
/// </summary>
public string Phone { get; set; }
/// <summary>
/// Current spam score of None, Medium, or High
/// </summary>
public string CurrScore { get; set; }
/// <summary>
/// Max spam score in last 15 days of None, Medium, or High
/// </summary>
public string MaxScore { get; set; }
/// <summary>
/// A value from 0 to 5 of the historical spam score in last 15 days with 0 to 1 being
/// no issue and 5 being at least 50% of times the number had a high spam score
/// </summary>
public string HistoricalScore { get; set; }
/// <summary>
/// Date and time the record’s spam score was last checked
/// </summary>
public string LastChecked { get; set; }
/// <summary>
/// A value of either Clean or Flagged indicating the phone number’s scoring with RoboKiller Phone App
/// </summary>
public string RoboKillerStatus { get; set; }
/// <summary>
/// A value of either Clean or Flagged indicating the phone number’s scoring with Nomorobo Phone App
/// </summary>
public string NomoroboStatus { get; set; }
/// <summary>
/// A list of FTC Complaints
/// </summary>
public List<FTCComplaint> FTCComplaints { get; set; }
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Newtonsoft.Json (>= 13.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.1 | 173 | 10/22/2022 |