SlideShare a Scribd company logo
Advanced Rulemanager &Business Rules(Part 2) Join the conversation:http://backnoise.com/?rulemanager
BackChannel Join the conversation: http://backnoise.com/?rulemanager
Me Gary Sherman, Clarify
Previously, on Days of Our Lives… Intro to Rulemanager and Business Rules Advanced Business Rules (Part 1) Both presentations are available on the Rulemanager wiki: http://rulemanager.wikispaces.com
Custom Notification methodS
Baseline notification methods Email  Notifier Tone Pager Digital Pager Text Pager None Forward to my Supervisor
1990 called and wants their pagers back Email  Notifier Tone Pager Digital Pager Text Pager None Forward to my Supervisor
1990 called and wants their pagers back Rulemanager uses an external app to send pages This means we can take over that method And we can do whatever we want!
Paging Application Configuration Clarify Rulemanager: 	SvcConfig.exe (Windows) 	Rulemansvc.env (UNIX) Dovetail Rulemanager: 	<add key="NotificationConfig.PagerApplicationPath" value=“c:ypager.bat" />
Paging Application {paging application}  	-p <pager_type>  	-t <employees pager number>  	-m <message to be sent>  	-e <employees email address> pager_clerk.exe -p SKY_WORD -t 512-123-4567 -m “This is a message” -e “gary@dovetailsoftware.com”
Paging Application {paging application}  	-p <pager_type>  	-t <employees pager number>  	-m <message to be sent>  	-e <employees email address> pager types:text pager: SKY_WORD 	digital pager: DIGITAL 	tone pager: SKY_PAGER
My Paging Application DOS batch file Powershell script  UNIX shell script Java or .NET executable cbbatch script Javascript script Ruby script
My Paging Application Send an SMS message  Send an email to a user’s mobile device (email to SMS gateway) Make a phone (voice) call Send a direct Twitter message Send an Instant Message Send a message to a beeper (in case you’re still stuck in 1990)  Third party APIs and services make this easy
Additional Nicety – Modify the UI
Which Message? Tip If sending to a text pager, then the full message is used. If sending to a tone or digital pager, then the abbreviated message is used.
Custom Notification Methods There are a couple of examples on the rulemanager wiki http://rulemanager.wikispaces.com
	Lets see this in action…
CUSTOM BUSINESS Rule EVENTS
Example Fire a business rule when the Priority of a Case is changed
Custom Events
User-Defined Business Rule Events Steps Add your event to the business rule GUI Create a business rule for your event Optional: Create an act_entry for your event Create time bomb for your event
Add your event to the business rule GUI
Add your event to the business rule GUI
Create a business rule for your event Object: 	Case Event: Change Priority Condition:  Action: 	Notify someone
Create time bomb (ClearBasic) dim TimeBombRecord     	as New Record dim TimeBombSave       	as New BulkSave TimeBombRecord.RecordType = "time_bomb" TimeBombRecord.SetField "focus_lowid", caseRecord.GetField("objid") TimeBombRecord.SetField "focus_type", 0 TimeBombRecord.SetField "escalate_time", "1/1/1753 " TimeBombRecord.SetField "end_time", App.CurrentDate TimeBombRecord.SetField "flags", 65601538 ‘Optional field TimeBombRecord.SetField "time_period", actRecord.GetField("objid") TimeBombSave.InsertRecordTimeBombRecord TimeBombSave.RelateRecordsToIdTimeBombRecord, "employee",  _ App.EmployeeObjid, "cmit_creator2employee" TimeBombSave.Save
Time Bomb Flags flags = (n * 65536) + 2 for our example of event id 1001: (1001 * 65536) + 2 = 65601538
User-Defined Events The User-Defined Business Rule Events document on the rulemanager wiki has all the gory details that I just covered. http://rulemanager.wikispaces.com
	Lets see this in action…
Additional Customizations
Adding new object types to Biz Rules For example, create business rules for your custom object, such as widget license_key build
Adding new object types to Biz Rules
Adding new object types to Biz Rules Customize the Business Rules form (472) Add a new entry to the Object Type List Add your custom events to the event List Add your custom rule properties  Add your custom recipient aliases Create your business rule Create your custom time bomb
Adding new object types to Biz Rules Refer to the Adding new Object Types to Business Rules document on the rulemanager wiki: http://rulemanager.wikispaces.com
Adding Event Creation Times Examples: Fire an action -30 days fromcontract expiration date Fire an action -30 days fromlicense key expiration date Fire an action 180 days froma site’s last onsite visit date
Adding Event Creation Times
Adding Event Creation Times Customize the Business Rule Action Form (474), adding a new entry to the List Add a Property Name Object for this new Event Creation (@USERTIME150)
Adding Event Creation Times The User-Defined Business Rule Event Creation Times document on the rulemanager wiki has all the details. http://rulemanager.wikispaces.com
Adding Custom Calendars For example, fire a rule based on the business hours of a queue
Adding Custom Calendars
Adding Custom Calendars Edit the Business Rule Actions form (474) Add your new business calendar to the List Create a new rule property for the path to find the new business calendar entry Create a new rule property for the time zone for the calendar
Adding Custom Calendars The creating user-defined calendars page on the rulemanager wiki has all the details. http://rulemanager.wikispaces.com
Time Bombs
What the heck is a Time Bomb? A time bomb is the mechanism used to tell Rulemanager that something happened in the system
What the heck is a Time Bomb? A time bomb is simply a row inserted into the time_bomb table
Different kinds of Time Bombs Rule Scheduling Time Bomb Indicates an end-user event, such as Case Create Rule Time Bomb 	Reflect the upcoming action of a business rule Message Time Bomb Internal communication to rulemanager, such as telling it to re-cache information
Time Bomb Flow An event happens in the system (such as case is created) A new time bomb is created Rulemanager looks at all of the business rules in the system, to see if this event matches to any business rules If a start event matches, then Rulemanager evaluates the rule conditions If all of the conditions match, then a new time bomb is created for the rule action (this may be now, or in the future) When this time bomb expires, then the business rule action is fired
Time Bomb Data The flags field indicates: which kind of time bomb it is What event occurred The escalate field says when this time bomb will “go off” Other data : objid of the “act_entry” for this event objid and type of focus object (case 268435457)
Time Bomb Data The Business Rule Time Bombs document on the rulemanager wiki has all the gory details http://rulemanager.wikispaces.com
troubleshooting
Common Issues Rules not firing at all Rules firing at wrong time Rules fire, but notifications are not set Bad Time Bombs
Troubleshooting Tip
Logging is your friend Clarify Rulemanager:  	set the Logging Level to Verbose 	make sure the admin email address is set Dovetail Rulemanager :  	set the logging level to DEBUG 	log warnings and errors to a separate log file 	send email to admin on errors
Rules fire, but notifications are not set Check: User’s email address User’s Notification Preferences User’s Business Hours User’s Site’s Business Hours
Bad Time Bomb A bad time bomb will have it’s expiration date set way in the future (1/1/2999) This allows you to diagnose it Typically caused by custom time bombs Review log file (search the logs for the time bomb’s objid) Review the data in the time_bomb record
Future shows
Future Sessions (under consideration) Performance Tuning of Rulemanager Monitoring cbbatch Your Ideas?
Learn More Wiki:http://rulemanager.wikispaces.com/
Questions, Comments, Queries? http://backnoise.com/?rulemanager

More Related Content

Similar to Advanced business rules (part2)

QSpiders - Installation and Brief Dose of Load Runner
QSpiders - Installation and Brief Dose of Load RunnerQSpiders - Installation and Brief Dose of Load Runner
QSpiders - Installation and Brief Dose of Load Runner
Qspiders - Software Testing Training Institute
 
Having fun with Google Tag Manager (implement cool things like weather tracki...
Having fun with Google Tag Manager (implement cool things like weather tracki...Having fun with Google Tag Manager (implement cool things like weather tracki...
Having fun with Google Tag Manager (implement cool things like weather tracki...
Eventz.Digital
 
Introduction To Work Item Customisation
Introduction To Work Item CustomisationIntroduction To Work Item Customisation
Introduction To Work Item Customisation
wbarthol
 
ServiceNow Knowledge11 Advanced Scripting & Debugging Lab
ServiceNow Knowledge11 Advanced Scripting & Debugging LabServiceNow Knowledge11 Advanced Scripting & Debugging Lab
ServiceNow Knowledge11 Advanced Scripting & Debugging Lab
John Roberts
 
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands OnjBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
Mauricio (Salaboy) Salatino
 
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
Amazon Web Services
 
Windows Logging Cheat Sheet ver Jan 2016 - MalwareArchaeology
Windows Logging Cheat Sheet ver Jan 2016 - MalwareArchaeologyWindows Logging Cheat Sheet ver Jan 2016 - MalwareArchaeology
Windows Logging Cheat Sheet ver Jan 2016 - MalwareArchaeology
Michael Gough
 
Windows logging cheat sheet
Windows logging cheat sheetWindows logging cheat sheet
Windows logging cheat sheet
Michael Gough
 
AWS RoadShow Manchester Part 3 - Getting Started with AWS
AWS RoadShow Manchester Part 3 - Getting Started with AWSAWS RoadShow Manchester Part 3 - Getting Started with AWS
AWS RoadShow Manchester Part 3 - Getting Started with AWS
Ian Massingham
 
AWS RoadShow Bristol - Part 2 Getting Started with AWS
AWS RoadShow Bristol - Part 2 Getting Started with AWSAWS RoadShow Bristol - Part 2 Getting Started with AWS
AWS RoadShow Bristol - Part 2 Getting Started with AWS
Ian Massingham
 
AWS RoadShow Dublin - Part 3 Getting Started with AWS
AWS RoadShow Dublin - Part 3 Getting Started with AWSAWS RoadShow Dublin - Part 3 Getting Started with AWS
AWS RoadShow Dublin - Part 3 Getting Started with AWS
Ian Massingham
 
AWS RoadShow Cambridge Part 4 - Getting Started with AWS
AWS RoadShow Cambridge Part 4 - Getting Started with AWSAWS RoadShow Cambridge Part 4 - Getting Started with AWS
AWS RoadShow Cambridge Part 4 - Getting Started with AWS
Ian Massingham
 
Large Data Management Strategies
Large Data Management StrategiesLarge Data Management Strategies
Large Data Management Strategies
Salesforce Developers
 
AWS RoadShow Edinburgh Part 3 - Getting Started with AWS
AWS RoadShow Edinburgh Part 3 - Getting Started with AWSAWS RoadShow Edinburgh Part 3 - Getting Started with AWS
AWS RoadShow Edinburgh Part 3 - Getting Started with AWS
Ian Massingham
 
Process Builder is an #AwesomeAdmin's Swiss Army Knife by Jennifer Lee
Process Builder is an #AwesomeAdmin's Swiss Army Knife by Jennifer LeeProcess Builder is an #AwesomeAdmin's Swiss Army Knife by Jennifer Lee
Process Builder is an #AwesomeAdmin's Swiss Army Knife by Jennifer Lee
Salesforce Admins
 
Flex 360 Rules Engine
Flex 360 Rules EngineFlex 360 Rules Engine
Flex 360 Rules Engine
EffectiveUI
 
Flex 360 Rules Engine
Flex 360 Rules EngineFlex 360 Rules Engine
Flex 360 Rules Engine
Effective
 
Customer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
Customer Automation Masterclass - Workshop 1: Data Enrichment using ClearbitCustomer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
Customer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
JanBogaert8
 
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Amazon Web Services
 
Refactoring a web application with Python
Refactoring a web application with PythonRefactoring a web application with Python
Refactoring a web application with Python
Cristian Gonzalez Sanchez
 

Similar to Advanced business rules (part2) (20)

QSpiders - Installation and Brief Dose of Load Runner
QSpiders - Installation and Brief Dose of Load RunnerQSpiders - Installation and Brief Dose of Load Runner
QSpiders - Installation and Brief Dose of Load Runner
 
Having fun with Google Tag Manager (implement cool things like weather tracki...
Having fun with Google Tag Manager (implement cool things like weather tracki...Having fun with Google Tag Manager (implement cool things like weather tracki...
Having fun with Google Tag Manager (implement cool things like weather tracki...
 
Introduction To Work Item Customisation
Introduction To Work Item CustomisationIntroduction To Work Item Customisation
Introduction To Work Item Customisation
 
ServiceNow Knowledge11 Advanced Scripting & Debugging Lab
ServiceNow Knowledge11 Advanced Scripting & Debugging LabServiceNow Knowledge11 Advanced Scripting & Debugging Lab
ServiceNow Knowledge11 Advanced Scripting & Debugging Lab
 
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands OnjBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
 
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
 
Windows Logging Cheat Sheet ver Jan 2016 - MalwareArchaeology
Windows Logging Cheat Sheet ver Jan 2016 - MalwareArchaeologyWindows Logging Cheat Sheet ver Jan 2016 - MalwareArchaeology
Windows Logging Cheat Sheet ver Jan 2016 - MalwareArchaeology
 
Windows logging cheat sheet
Windows logging cheat sheetWindows logging cheat sheet
Windows logging cheat sheet
 
AWS RoadShow Manchester Part 3 - Getting Started with AWS
AWS RoadShow Manchester Part 3 - Getting Started with AWSAWS RoadShow Manchester Part 3 - Getting Started with AWS
AWS RoadShow Manchester Part 3 - Getting Started with AWS
 
AWS RoadShow Bristol - Part 2 Getting Started with AWS
AWS RoadShow Bristol - Part 2 Getting Started with AWSAWS RoadShow Bristol - Part 2 Getting Started with AWS
AWS RoadShow Bristol - Part 2 Getting Started with AWS
 
AWS RoadShow Dublin - Part 3 Getting Started with AWS
AWS RoadShow Dublin - Part 3 Getting Started with AWSAWS RoadShow Dublin - Part 3 Getting Started with AWS
AWS RoadShow Dublin - Part 3 Getting Started with AWS
 
AWS RoadShow Cambridge Part 4 - Getting Started with AWS
AWS RoadShow Cambridge Part 4 - Getting Started with AWSAWS RoadShow Cambridge Part 4 - Getting Started with AWS
AWS RoadShow Cambridge Part 4 - Getting Started with AWS
 
Large Data Management Strategies
Large Data Management StrategiesLarge Data Management Strategies
Large Data Management Strategies
 
AWS RoadShow Edinburgh Part 3 - Getting Started with AWS
AWS RoadShow Edinburgh Part 3 - Getting Started with AWSAWS RoadShow Edinburgh Part 3 - Getting Started with AWS
AWS RoadShow Edinburgh Part 3 - Getting Started with AWS
 
Process Builder is an #AwesomeAdmin's Swiss Army Knife by Jennifer Lee
Process Builder is an #AwesomeAdmin's Swiss Army Knife by Jennifer LeeProcess Builder is an #AwesomeAdmin's Swiss Army Knife by Jennifer Lee
Process Builder is an #AwesomeAdmin's Swiss Army Knife by Jennifer Lee
 
Flex 360 Rules Engine
Flex 360 Rules EngineFlex 360 Rules Engine
Flex 360 Rules Engine
 
Flex 360 Rules Engine
Flex 360 Rules EngineFlex 360 Rules Engine
Flex 360 Rules Engine
 
Customer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
Customer Automation Masterclass - Workshop 1: Data Enrichment using ClearbitCustomer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
Customer Automation Masterclass - Workshop 1: Data Enrichment using Clearbit
 
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
 
Refactoring a web application with Python
Refactoring a web application with PythonRefactoring a web application with Python
Refactoring a web application with Python
 

More from Gary Sherman

Schema201 webinar
Schema201 webinarSchema201 webinar
Schema201 webinar
Gary Sherman
 
Schema webinar
Schema webinarSchema webinar
Schema webinar
Gary Sherman
 
Search for Clarify/Dovetail
Search for Clarify/DovetailSearch for Clarify/Dovetail
Search for Clarify/Dovetail
Gary Sherman
 
Product overview
Product overview Product overview
Product overview
Gary Sherman
 
Advanced business rules (part1)
Advanced business rules (part1)Advanced business rules (part1)
Advanced business rules (part1)
Gary Sherman
 
Rulemanager And Business Rules
Rulemanager And Business RulesRulemanager And Business Rules
Rulemanager And Business Rules
Gary Sherman
 
Rulemanager
RulemanagerRulemanager
Rulemanager
Gary Sherman
 
Solutions 101
Solutions 101Solutions 101
Solutions 101
Gary Sherman
 
Delivering Cost Effective Clarify Access Beyond The Support Center
Delivering Cost Effective Clarify Access Beyond The Support CenterDelivering Cost Effective Clarify Access Beyond The Support Center
Delivering Cost Effective Clarify Access Beyond The Support Center
Gary Sherman
 
Dovetail Webinar Data Management & Optimization
Dovetail Webinar Data Management & OptimizationDovetail Webinar Data Management & Optimization
Dovetail Webinar Data Management & Optimization
Gary Sherman
 
Upgrade Your Database Without Upgrading Clarify
Upgrade Your Database Without Upgrading ClarifyUpgrade Your Database Without Upgrading Clarify
Upgrade Your Database Without Upgrading Clarify
Gary Sherman
 

More from Gary Sherman (11)

Schema201 webinar
Schema201 webinarSchema201 webinar
Schema201 webinar
 
Schema webinar
Schema webinarSchema webinar
Schema webinar
 
Search for Clarify/Dovetail
Search for Clarify/DovetailSearch for Clarify/Dovetail
Search for Clarify/Dovetail
 
Product overview
Product overview Product overview
Product overview
 
Advanced business rules (part1)
Advanced business rules (part1)Advanced business rules (part1)
Advanced business rules (part1)
 
Rulemanager And Business Rules
Rulemanager And Business RulesRulemanager And Business Rules
Rulemanager And Business Rules
 
Rulemanager
RulemanagerRulemanager
Rulemanager
 
Solutions 101
Solutions 101Solutions 101
Solutions 101
 
Delivering Cost Effective Clarify Access Beyond The Support Center
Delivering Cost Effective Clarify Access Beyond The Support CenterDelivering Cost Effective Clarify Access Beyond The Support Center
Delivering Cost Effective Clarify Access Beyond The Support Center
 
Dovetail Webinar Data Management & Optimization
Dovetail Webinar Data Management & OptimizationDovetail Webinar Data Management & Optimization
Dovetail Webinar Data Management & Optimization
 
Upgrade Your Database Without Upgrading Clarify
Upgrade Your Database Without Upgrading ClarifyUpgrade Your Database Without Upgrading Clarify
Upgrade Your Database Without Upgrading Clarify
 

Recently uploaded

A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
TIPNGVN2
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 

Recently uploaded (20)

A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 

Advanced business rules (part2)

  • 1. Advanced Rulemanager &Business Rules(Part 2) Join the conversation:http://backnoise.com/?rulemanager
  • 2. BackChannel Join the conversation: http://backnoise.com/?rulemanager
  • 4. Previously, on Days of Our Lives… Intro to Rulemanager and Business Rules Advanced Business Rules (Part 1) Both presentations are available on the Rulemanager wiki: http://rulemanager.wikispaces.com
  • 6. Baseline notification methods Email Notifier Tone Pager Digital Pager Text Pager None Forward to my Supervisor
  • 7. 1990 called and wants their pagers back Email Notifier Tone Pager Digital Pager Text Pager None Forward to my Supervisor
  • 8. 1990 called and wants their pagers back Rulemanager uses an external app to send pages This means we can take over that method And we can do whatever we want!
  • 9. Paging Application Configuration Clarify Rulemanager: SvcConfig.exe (Windows) Rulemansvc.env (UNIX) Dovetail Rulemanager: <add key="NotificationConfig.PagerApplicationPath" value=“c:ypager.bat" />
  • 10. Paging Application {paging application} -p <pager_type> -t <employees pager number> -m <message to be sent> -e <employees email address> pager_clerk.exe -p SKY_WORD -t 512-123-4567 -m “This is a message” -e “gary@dovetailsoftware.com”
  • 11. Paging Application {paging application} -p <pager_type> -t <employees pager number> -m <message to be sent> -e <employees email address> pager types:text pager: SKY_WORD digital pager: DIGITAL tone pager: SKY_PAGER
  • 12. My Paging Application DOS batch file Powershell script UNIX shell script Java or .NET executable cbbatch script Javascript script Ruby script
  • 13. My Paging Application Send an SMS message Send an email to a user’s mobile device (email to SMS gateway) Make a phone (voice) call Send a direct Twitter message Send an Instant Message Send a message to a beeper (in case you’re still stuck in 1990) Third party APIs and services make this easy
  • 14. Additional Nicety – Modify the UI
  • 15. Which Message? Tip If sending to a text pager, then the full message is used. If sending to a tone or digital pager, then the abbreviated message is used.
  • 16. Custom Notification Methods There are a couple of examples on the rulemanager wiki http://rulemanager.wikispaces.com
  • 17. Lets see this in action…
  • 19. Example Fire a business rule when the Priority of a Case is changed
  • 21. User-Defined Business Rule Events Steps Add your event to the business rule GUI Create a business rule for your event Optional: Create an act_entry for your event Create time bomb for your event
  • 22. Add your event to the business rule GUI
  • 23. Add your event to the business rule GUI
  • 24. Create a business rule for your event Object: Case Event: Change Priority Condition: Action: Notify someone
  • 25. Create time bomb (ClearBasic) dim TimeBombRecord as New Record dim TimeBombSave as New BulkSave TimeBombRecord.RecordType = "time_bomb" TimeBombRecord.SetField "focus_lowid", caseRecord.GetField("objid") TimeBombRecord.SetField "focus_type", 0 TimeBombRecord.SetField "escalate_time", "1/1/1753 " TimeBombRecord.SetField "end_time", App.CurrentDate TimeBombRecord.SetField "flags", 65601538 ‘Optional field TimeBombRecord.SetField "time_period", actRecord.GetField("objid") TimeBombSave.InsertRecordTimeBombRecord TimeBombSave.RelateRecordsToIdTimeBombRecord, "employee", _ App.EmployeeObjid, "cmit_creator2employee" TimeBombSave.Save
  • 26. Time Bomb Flags flags = (n * 65536) + 2 for our example of event id 1001: (1001 * 65536) + 2 = 65601538
  • 27. User-Defined Events The User-Defined Business Rule Events document on the rulemanager wiki has all the gory details that I just covered. http://rulemanager.wikispaces.com
  • 28. Lets see this in action…
  • 30. Adding new object types to Biz Rules For example, create business rules for your custom object, such as widget license_key build
  • 31. Adding new object types to Biz Rules
  • 32. Adding new object types to Biz Rules Customize the Business Rules form (472) Add a new entry to the Object Type List Add your custom events to the event List Add your custom rule properties Add your custom recipient aliases Create your business rule Create your custom time bomb
  • 33. Adding new object types to Biz Rules Refer to the Adding new Object Types to Business Rules document on the rulemanager wiki: http://rulemanager.wikispaces.com
  • 34. Adding Event Creation Times Examples: Fire an action -30 days fromcontract expiration date Fire an action -30 days fromlicense key expiration date Fire an action 180 days froma site’s last onsite visit date
  • 36. Adding Event Creation Times Customize the Business Rule Action Form (474), adding a new entry to the List Add a Property Name Object for this new Event Creation (@USERTIME150)
  • 37. Adding Event Creation Times The User-Defined Business Rule Event Creation Times document on the rulemanager wiki has all the details. http://rulemanager.wikispaces.com
  • 38. Adding Custom Calendars For example, fire a rule based on the business hours of a queue
  • 40. Adding Custom Calendars Edit the Business Rule Actions form (474) Add your new business calendar to the List Create a new rule property for the path to find the new business calendar entry Create a new rule property for the time zone for the calendar
  • 41. Adding Custom Calendars The creating user-defined calendars page on the rulemanager wiki has all the details. http://rulemanager.wikispaces.com
  • 43. What the heck is a Time Bomb? A time bomb is the mechanism used to tell Rulemanager that something happened in the system
  • 44. What the heck is a Time Bomb? A time bomb is simply a row inserted into the time_bomb table
  • 45. Different kinds of Time Bombs Rule Scheduling Time Bomb Indicates an end-user event, such as Case Create Rule Time Bomb Reflect the upcoming action of a business rule Message Time Bomb Internal communication to rulemanager, such as telling it to re-cache information
  • 46. Time Bomb Flow An event happens in the system (such as case is created) A new time bomb is created Rulemanager looks at all of the business rules in the system, to see if this event matches to any business rules If a start event matches, then Rulemanager evaluates the rule conditions If all of the conditions match, then a new time bomb is created for the rule action (this may be now, or in the future) When this time bomb expires, then the business rule action is fired
  • 47. Time Bomb Data The flags field indicates: which kind of time bomb it is What event occurred The escalate field says when this time bomb will “go off” Other data : objid of the “act_entry” for this event objid and type of focus object (case 268435457)
  • 48. Time Bomb Data The Business Rule Time Bombs document on the rulemanager wiki has all the gory details http://rulemanager.wikispaces.com
  • 50. Common Issues Rules not firing at all Rules firing at wrong time Rules fire, but notifications are not set Bad Time Bombs
  • 52. Logging is your friend Clarify Rulemanager: set the Logging Level to Verbose make sure the admin email address is set Dovetail Rulemanager : set the logging level to DEBUG log warnings and errors to a separate log file send email to admin on errors
  • 53. Rules fire, but notifications are not set Check: User’s email address User’s Notification Preferences User’s Business Hours User’s Site’s Business Hours
  • 54. Bad Time Bomb A bad time bomb will have it’s expiration date set way in the future (1/1/2999) This allows you to diagnose it Typically caused by custom time bombs Review log file (search the logs for the time bomb’s objid) Review the data in the time_bomb record
  • 56. Future Sessions (under consideration) Performance Tuning of Rulemanager Monitoring cbbatch Your Ideas?
  • 58. Questions, Comments, Queries? http://backnoise.com/?rulemanager

Editor's Notes

  1. http://bit.ly/rulemanager Twitter hashtag: #rulemanagerTweets using that hashtag will also show up in the backnoise chat
  2. I am the VP of productsWorking in Clarify for 15 years2 years as a customer, 4 years at Clarify as a Principal Consultant, 9 years here at DovetailI love sharing my knowledge of all things ClarifyMy blog at dovetailsoftware.comI actively participate in the Clarify forum on IT Toolbox
  3. If sending to a tone or digital pager, then the abbreviated message is used. If sending to a text pager, then the full message is used.
  4. If sending to a tone or digital pager, then the abbreviated message is used. If sending to a text pager, then the full message is used.
  5. If sending to a tone or digital pager, then the abbreviated message is used. If sending to a text pager, then the full message is used.
  6. If sending to a tone or digital pager, then the abbreviated message is used. If sending to a text pager, then the full message is used.
  7. Skype, clickatell, twitter, twilio, office communicator, jabber, Google, GChat
  8. Simple – just a little UI editing
  9. Technically, act_entry is optional. But I think it’s a good practice.
  10. USERxxxx, where xxxx is a number between 1000 and 4999
  11. This is more FYI – we won’t be covering these in detail today, as they are rarely used
  12. Customize the Business Rules form (472)Add a new entry to the Object Type List (this is new)Add your custom events to the event List (same as earlier)Add your custom rule properties (we covered this last week in Part 1)Add your custom recipient aliases (we covered this last week in Part 1)Create your business ruleCreate your custom time bomb (same as earlier)
  13. The value in the prop_name object will tell the rulemgr how to find a date-time field relative to the focus object (e.g. Case) to use as the Event Creation time. If prop_name is a date-time field:  Time bomb trigger time = this date-time value + elapsed time indicated in Business Rule action If this prop_name is an elapsed time or long integer field:  Time bomb trigger time = original event time + this elapsed-time/long integer value (taken in seconds) + elapsed time as indicated in the Business Rule action
  14. One of our customers posed an interesting problem to me this week. They have offices in different locations, in different time zones, with different business hours. The employees in these offices work on different hours from one another, meaning that while one group is working, another group is not working, and vice-versa. The issue comes in when one group dispatches a case to a queue to be worked by the other group. More specifically, the issue is when the queue members should get notified by RuleManager. If the queue members are off-hours, then they should get notified as soon as their next work day startshttp://blogs.dovetailsoftware.com/blogs/gsherman/archive/2007/11/06/firing-business-rules-based-on-the-business-hours-of-a-queue.aspx
  15. This is an easy way to tell if your rule action fired
  16. A bad time bomb is one that can’t be successfully evaluated by rulemanager
  17. I will be posting these slides on my blog, so you can get them there.