Skip to main content

Messaging

Use these tools to push real-time notifications to users, to read back notificationsNotificationA message from the back office attached to a task, an appointment or the whole tenant. The notifications component lists them, and a colored vertical bar on the appointment signals their severity. that Dime.Scheduler has attached to entities (appointmentsAppointmentA task scheduled to a resource for a specific period - the scheduled instance you see on the planning board., tasksTaskA unit of work that belongs to a job. It appears in the open task list until it is scheduled to a resource., jobsJobA high-level container, comparable to a project, that bundles related tasks together with common information such as customer, billing, and address.), and to log new notifications yourself.

Send message​

Tool: send_message

Sends a real-time SignalR message to a specific user (by email) or broadcasts to everyone in the current tenant. Use to notify users of schedule changes, urgent updates, or operational events.

ParameterTypeRequiredDescription
textstringYesThe message text to deliver to the recipient(s)
userEmailstringNoRecipient email. Omit to broadcast to everyone in the tenant.
severitystringNoSeverity level. One of: Verbose, Debug, Info (default), Warning, Error, Fatal.

When the recipient has no active SignalR connections, the response notes that the message was not delivered.

Example prompt

"Tell John his 14:00 appointment moved to 15:00."

Search notifications​

Tool: search_notifications

Searches notifications filtered by entity (appointment, task, or job). At least one of appointmentId, taskId, or jobId is required.

For the most recent notifications without entity filtering, prefer reading the dimescheduler://notifications/recent data source - it returns the same data without consuming a tool call.

ParameterTypeRequiredDescription
limitnumberNoMaximum number of notifications (default: 50, max: 500)
appointmentIdnumberNoAppointment id to filter by
taskIdnumberNoTask id to filter by
jobIdnumberNoJob id to filter by

Example prompt

"Show notifications related to job 42."

Create notification​

Tool: create_notification

Writes a new, persistent notification record to the notification log. It shows up in the recent-notifications feed and in the notification view of any entity it is attached to. Attach it to an appointment, task, and/or job by passing appointmentNo, taskNo, and/or jobNo in any combination; leave all three blank to create a global notification that is not attached to anything. The response returns the created record: type, code, text, date, and the entity numbers it is scoped to.

Do not confuse this with send_message: create_notification writes a record, it does not push anything to a connected client.

ParameterTypeRequiredDescription
textstringYesNotification body text (max 4000 characters)
typestringNoFree-form type label (e.g. Info, Warning, Reminder)
codestringNoShort code for grouping or filtering downstream (e.g. FOLLOWUP, OVERTIME)
appointmentNostringNoHashed appointment number (as returned by search_appointments / get_appointment_details) to attach the notification to one appointment
taskNostringNoTask number (e.g. TASK-024) to attach the notification to a task
jobNostringNoJob number (e.g. JOB-001) to attach the notification to a job
idempotencyKeystringNoLetters, digits, - and _, max 64 characters. Retrying with the same key within about 10 minutes returns the cached response instead of creating a duplicate.

Example prompt

"Flag job JOB-001 for follow-up: the customer asked to be called before the visit."