SlideShare a Scribd company logo
1 of 58
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)

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 Customisationwbarthol
 
ServiceNow Knowledge11 Advanced Scripting & Debugging Lab
ServiceNow Knowledge11 Advanced Scripting & Debugging LabServiceNow Knowledge11 Advanced Scripting & Debugging Lab
ServiceNow Knowledge11 Advanced Scripting & Debugging LabJohn 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 OnMauricio (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 - MalwareArchaeologyMichael Gough
 
Windows logging cheat sheet
Windows logging cheat sheetWindows logging cheat sheet
Windows logging cheat sheetMichael 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 AWSIan 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 AWSIan 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 AWSIan 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 AWSIan Massingham
 
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 AWSIan 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 LeeSalesforce Admins
 
Flex 360 Rules Engine
Flex 360 Rules EngineFlex 360 Rules Engine
Flex 360 Rules EngineEffectiveUI
 
Flex 360 Rules Engine
Flex 360 Rules EngineFlex 360 Rules Engine
Flex 360 Rules EngineEffective
 
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 ClearbitJanBogaert8
 
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
 

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 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
 
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
 
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

Search for Clarify/Dovetail
Search for Clarify/DovetailSearch for Clarify/Dovetail
Search for Clarify/DovetailGary 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 RulesGary 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 CenterGary Sherman
 
Dovetail Webinar Data Management & Optimization
Dovetail Webinar Data Management & OptimizationDovetail Webinar Data Management & Optimization
Dovetail Webinar Data Management & OptimizationGary Sherman
 
Upgrade Your Database Without Upgrading Clarify
Upgrade Your Database Without Upgrading ClarifyUpgrade Your Database Without Upgrading Clarify
Upgrade Your Database Without Upgrading ClarifyGary 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

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 

Recently uploaded (20)

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 

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.