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.
| Parameter | Type | Required | Description |
|---|---|---|---|
text | string | Yes | The message text to deliver to the recipient(s) |
userEmail | string | No | Recipient email. Omit to broadcast to everyone in the tenant. |
severity | string | No | Severity 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.
| Parameter | Type | Required | Description |
|---|---|---|---|
limit | number | No | Maximum number of notifications (default: 50, max: 500) |
appointmentId | number | No | Appointment id to filter by |
taskId | number | No | Task id to filter by |
jobId | number | No | Job 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.
| Parameter | Type | Required | Description |
|---|---|---|---|
text | string | Yes | Notification body text (max 4000 characters) |
type | string | No | Free-form type label (e.g. Info, Warning, Reminder) |
code | string | No | Short code for grouping or filtering downstream (e.g. FOLLOWUP, OVERTIME) |
appointmentNo | string | No | Hashed appointment number (as returned by search_appointments / get_appointment_details) to attach the notification to one appointment |
taskNo | string | No | Task number (e.g. TASK-024) to attach the notification to a task |
jobNo | string | No | Job number (e.g. JOB-001) to attach the notification to a job |
idempotencyKey | string | No | Letters, 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."