Documente Academic
Documente Profesional
Documente Cultură
• RightNow Interface
– Windows app (Agent Desktop / AD)
— used by enterprise staff to interact with a
RightNow site
– Web site (Customer Portal / CP)
— used by enterprise customers to interact with a
RightNow site
NOT
• Internal RNT developers who write native code that runs the
RightNow product itself
Change
• Theme
– Colors, logo, etc.
– Not contents
Change
• Template
– Placement of "standard" items on page
— Sidebar
— Tabs
— Header
— Footer
Change/add
• Widgets
– Functional component individual units
— Announcements
— Search box
— Calendar
— Poll
Change
• Message Bases
– To use company-preferred terminology
– Changed via the AD
Custom Fields
• New data item to be stored with existing object type
– Frequent flyer miles field added to Contact
– Credit score field added to Contact
Custom Fields
• New data item to be stored with existing object type
– Frequent flyer miles field added to Contact
– Credit score field added to Contact
Custom Objects
• Whole new object type
– Warranty
– Training Class
– Mortgage
To protect database
• Custom fields and custom objects can be created only by
using tools in the Agent Desktop like the Object Designer:
— Naming
— Data types and sizes
— Relationships between new/old objects
— Indexing
— Other possible issues
— Stakeholders
— Admins, developers, architects, analysts (system and business),,
possibly others
Configuration:
• Set up profiles and and individual staff accounts
• Set up workspaces, menus
• Establish workflows
• Build business rules
• Define queues
• Much more
Custom Processes
• Execute custom code based on pre-defined triggers
– Create / update / delete
– Contact / Answer /Incident / Opportunity / Organization
• Examples:
– Write to external DB when an Incident is solved
– Set properties automatically when new Contact is created
– Escalate Incidents based on keywords
Configurations
• RNT administrators or developers
– No programming skills required
Extensions
• Developers only
– Add-Ins
— Require C# / Visual Studio programming skills
– Custom Processes
— Require PHP scripting skills
Hooks
• Trigger actions at certain points as the framework runs during
the CP lifecycle
– After login/out
– After Contact creation
– Before submitting feedback
– Before requesting report
– Others
• Examples
– Send an email when new Contact is created
– Have a user verify before retrieving a report
Mitigation
• No direct external code access to knowledgebase or code
• Indirect access via proprietary RNT tools providing
– Validation
– Control
Contact
Incident
1 1..* ID 0..*
1
CreatedTime
Title Organization
Name (PersonName)
Organization
Emails (Email)
...
Contact
Incident
1 1..* ID 0..*
1
CreatedTime
Title Organization
Name (PersonName)
Organization
Emails (Email)
PersonName ... 0..1
1 0..1 1..3
First
Last Email
Type
Address
Actual schema is
• Huge and awkward
• Subject to change
CCOM
• Easier to conceptualize and use
• Shields user from schema changes
CCOM
Query
CCOM
• Easier to conceptualize and use
• Shields user from schema changes
• Standard throughout Connect toolset
– All APIs use same logical model
– Syntax varies by language
— Contact.Name.First
— Contact->Name->First
List
• Wrapper for list of sub-objects
– EmailList
– PhoneList Contact
– AnswerLinkList ID
– NoteList CreatedTime
– ThreadList Title
Name (PersonName)
• Like typed array Organization
Email
Emails (EmailList)
Type
Email
...
Email
Address
Type
Address
Type
Address
NamedID
• A compound type
– ID with associated name
— ID is a sub-object
– Country
ID Name
– Email AddressType
0 Email – Primary
– Language
1 Alternate Email 1
– Incident Queue
2 Alternate Email 2
– many others
• Purpose
– Access KB from application code
— To integrate data storage systems
— To provide data to AD Add-Ins
— To provide data to stand-alone applications
• Data types
– Any -- Contact, Incident, . . .
• Operations
– Create – Read – Update - Delete (CRUD) functions
– Run reports previously defined in the AD
– Execute marketing flows
– Reset Contact Passwords
– Send Mailing to Contact
– others
• Languages
– C#, Java
Hartley, B, Chicago,
Borden, H, Chicago,
Gianforte, G, Bozeman,
Enterprise ...
Data System
ABC
• Purpose
– Access KB from CP pages
— To provide data to custom widgets
— Typically small amounts of data
— AJAX, JSON
• Data types
– Any
• Operations
– CRUD
• Languages
– PHP
function greetContact()
{
require_once(get_cfg_var("doc_root").
"/include/ConnectPHP/Connect_init.phph");
initConnectAPI(); // RNT PHP API
$contact = RightNow\Connect\v1_2\Contact::fetch(42);
echo $contact->Name->First." ".$contact->Name->Last;
}
• Purpose
– Read from KB to provide data to applications
• Data types
– Any
• Operations
– Read only
• Languages
– C#, Java
object to fetch
• Embedded in C#
...
• Embedded in PHP
$res = RNCPHP\ROQL::queryObject(
"SELECT Contact.Address.City FROM Contact
WHERE Contact.Name.Last = 'Crown'")
-> next();
...
<script type="text/javascript">
function populate() {
var c = window.external.Contact;
if (c == null)
alert("null contact");
var msg = "Name: "+c.FullName+"\nc_id: "+c.Id;
data.ta.value = msg;
}
</script>
Most popular
• Knowledge
– Information about Answers
• Knowledge
– Information about Answers
– Generated using
— Number of times Answer is selected by user
• Knowledge
– Information about Answers
– Generated using
— Number of times Answer is selected by user
• Knowledge
– Information about Answers
– Generated using
— Number of times Answer is selected by user
• Knowledge
– Information about Answers
– Generated using
— Number of times Answer is selected by user
• Knowledge
– Information about Answers
– Generated using
— Number of times Answer is selected by user
• Knowledge
– Used to
— Rank search results
• Knowledge
– Used to
— Rank search results
• Knowledge
– Used to
— Rank search results
• Knowledge
– Used to
— Rank search results
— SmartAssistant
• Purpose
– Access "knowledge" from applications, web pages, other
— Re-create rich CP experience in non-CP settings
Special purpose
PC app Web app Mobile device
console
• Purpose
– Access "knowledge"
• Languages
– C#, PHP
• Data types
– Answers only
• Operations
– Read only for Answers
— Viewed count is incremented
– Set Ranking
• Multi-Channel Toolkit
• Chat Consumer Interface API
• Chat Third Party Queue Integration
Used for
• Auto-dialing
• Call queuing and routing
• Automatic population of screens based
on telephone number/caller ID
• Media bar
• more
Integration Tool
• Multi-Channel Toolkit
– Interfaces
– Reference implementation
– Additional sample code
– Hardware simulator
public void HandleInteraction(IInteraction interaction)
{
switch (interaction.Type)
{
case MediaType.Email:
RightNowGlobalContext.AutomationContext.
EditWorkspaceRecord(WorkspaceRecordType.Incident,
long.Parse(interaction.AdditionalIdentifiers
["ReferenceId"]));
1 - 100 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Chat Integration
1 - 101 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Chat Integration Coding
ChatCustomerInformation customerInfo;
String inputText;
String SessionID;
customerInfo = waitForNewEndUserChat();
sessionID = testChat.requestChat(customerInfo, chatToken);
if (sessionID != null) {
testChat.startGetMessages();
while (endUserWantsToChat) {
inputText = getInputFromEndUser();
testChat.PostChatMessage(inputText);
}
testChat.TerminateChat();
1 - 102 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Non-API Functionality
• Syndicated Widgets
• Pass-Through Authentication
1 - 103 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
RNT Widgets External to CP
Syndicated Widgets
• Widgets that can be used on web pages other than CP
• Simple configuration via CP Admin pages
• Pre-written, limited functionality
1 - 104 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Pass Through Authentication (PTA)
1 - 105 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Pass Through Authentication (PTA)
1 - 106 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Skills Needed for these Customizations
1 - 107 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Customizing RNT
1 - 108 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Oracle Learning Library
free online courses, tutorials, more
*requires free registration