ContactCenterComplianceAPI.TrustCall 1.0.1

dotnet add package ContactCenterComplianceAPI.TrustCall --version 1.0.1
NuGet\Install-Package ContactCenterComplianceAPI.TrustCall -Version 1.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ContactCenterComplianceAPI.TrustCall" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ContactCenterComplianceAPI.TrustCall --version 1.0.1
#r "nuget: ContactCenterComplianceAPI.TrustCall, 1.0.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// 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
    var client = new BasicService("--- API Key ---");
    
    or
    var client = new PremierService("--- API Key ---");
    
    Usage of both services is similar. The difference is only in returned results.

Using API

The process to use the API is the following:

  1. Add the numbers you wish to monitor by calling StartMonitor.
  2. When your system has a requirement to check numbers, call the CheckScore method.
  3. 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 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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